comparison presentation/presen.html @ 12:40be058f9df8

fix
author Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
date Sat, 04 Jul 2015 21:20:22 +0900
parents 4cff1ef8fbf6
children 607acd92b8eb
comparison
equal deleted inserted replaced
11:4cff1ef8fbf6 12:40be058f9df8
280 </div> 280 </div>
281 281
282 <div class='slide'> 282 <div class='slide'>
283 <h2>Clang AST</h2> 283 <h2>Clang AST</h2>
284 <ul> 284 <ul>
285 <li>Abstract Syntax Tree. 285 <li>The first intermidiate representation.
286 <li>Representation of the source codes structure. 286 <li>Representation of the source codes structure.
287 <li>Basic node type: Stmt, Decl, Expr. 287 <li>Basic node type: Stmt, Decl, Expr.
288 </ul> 288 </ul>
289 </div> 289 </div>
290 290
314 <h2>Basic strategy of implementating</h2> 314 <h2>Basic strategy of implementating</h2>
315 <ul> 315 <ul>
316 <li>Code segments are implemented by C functions. 316 <li>Code segments are implemented by C functions.
317 <li>Data segments are implemented by C structs. 317 <li>Data segments are implemented by C structs.
318 <li>Transition is implemented by tail call elimination. 318 <li>Transition is implemented by tail call elimination.
319 <!--
319 <li>Goto with environment is implemented by setjmp and longjmp. 320 <li>Goto with environment is implemented by setjmp and longjmp.
320 <ul> 321 <ul>
321 <li>Goto with environment enable code segments to return C functions. 322 <li>Goto with environment enable code segments to return C functions.
322 </ul> 323 </ul>
324 -->
323 </ul> 325 </ul>
324 </div> 326 </div>
325 327
326 <!-- 328 <!--
327 <div class='slide'> 329 <div class='slide'>
349 <div class='slide'> 351 <div class='slide'>
350 <h2>__code type</h2> 352 <h2>__code type</h2>
351 <table width='100%'> 353 <table width='100%'>
352 <tr> 354 <tr>
353 <ul> 355 <ul>
354 <li>Code segments as __code type functions. 356 <li>Code segments are implemented __code type functions.
355 <li>Handled like void functions. 357 <li>Handled like void functions.
356 </ul> 358 </ul>
357 </tr> 359 </tr>
358 </table> 360 </table>
359 </div> 361 </div>
360 362
361 <div class='slide'> 363 <div class='slide'>
362 <h2>Prototype declaration generating</h2> 364 <h2>Prototype declaration generating</h2>
363 <ul> 365 <ul>
364 <li>In CbC, programmer write a lot of code segments. 366 <li>In CbC, programmer write a lot of code segments.
365 <li>When function pointer's arguments are omitted, TCE was failed sometimes. 367 <li>Automatically prototype declarator support it.
366 <li>Automatically prototype declaration generating saves a lot of effort. 368 <!-- <li>When parser meet a code segment call, it stop current parsing and search called code segment declaration.-->
367 <li>When parser meet a code segment call, it stop current parsing and search called code segment declaration.
368 <li>If the declaration was not found, search definision and generate declaration. 369 <li>If the declaration was not found, search definision and generate declaration.
369 <ul> 370 <ul>
370 <li>Of course you can write declaration yourself too. 371 <li>Of course you can write declaration yourself too.
371 </ul> 372 </ul>
372 </ul> 373 </ul>
505 <li>All the code segments return value type is void. 506 <li>All the code segments return value type is void.
506 </ul> 507 </ul>
507 </div> 508 </div>
508 509
509 <div class='slide'> 510 <div class='slide'>
510 <h2>What is a Goto with environment?</h2> 511 <h2>Goto with environment</h2>
511 <ul> 512 <ul>
512 <li>Code segments can reutn C functions by Goto with environment. 513 <li>Code segments do not have return.
513 <ul> 514 <li>Code segments can return C functions by Goto with environment.
514 Code segment do not have return.
515 </ul>
516 <li>In the GCC, use nested functions. 515 <li>In the GCC, use nested functions.
517 <li>In the LLVM and Clang, use setjmp and longjmp. 516 <li>In the LLVM and Clang, use setjmp and longjmp.
518 </ul> 517 </ul>
519 </div> 518 </div>
520 519