Mercurial > hg > Papers > 2015 > kaito-lola
comparison presentation/presen.html @ 23:5fa7d8240579
fixxxxxx
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 05 Jul 2015 03:27:07 +0900 |
parents | 26e2376219e0 |
children | 9d2adb662adb |
comparison
equal
deleted
inserted
replaced
22:26e2376219e0 | 23:5fa7d8240579 |
---|---|
188 <h2>code segment syntax with data segments</h2> | 188 <h2>code segment syntax with data segments</h2> |
189 <p>data segments are arguments of a code segment and a goto statement.</p> | 189 <p>data segments are arguments of a code segment and a goto statement.</p> |
190 <table border='1' align='center' width='80%'> | 190 <table border='1' align='center' width='80%'> |
191 <tr><td width='50%'> | 191 <tr><td width='50%'> |
192 <pre class='small_code'> | 192 <pre class='small_code'> |
193 __code code1(struct Allocate* allocate, | 193 __code code1(<font color='red'>struct Allocate* allocate, |
194 struct Element* element) { | 194 struct Element* element</font>) { |
195 element ->value = 10; | 195 element ->value = 10; |
196 struct List* list = (struct List *)malloc(sizeof( struct List)); | 196 struct List* list = (struct List *)malloc(sizeof( struct List)); |
197 goto append(allocate,list, element); | 197 goto append(<font color='red'>allocate,list, element</font>); |
198 } | 198 } |
199 | 199 |
200 __code append(struct Allocate* allocate, struct List* list, struct Element* element) { | 200 __code append(struct Allocate* allocate, struct List* list, struct Element* element) { |
201 if(list->head) { | 201 if(list->head) { |
202 list->tail->next = element; | 202 list->tail->next = element; |
206 list->tail = element; | 206 list->tail = element; |
207 list->tail->next = 0; | 207 list->tail->next = 0; |
208 goto code2(allocate,list, element); | 208 goto code2(allocate,list, element); |
209 } | 209 } |
210 </pre> | 210 </pre> |
211 </td><td valign='top'> | 211 </tr> |
212 </td></tr> | |
213 </table> | 212 </table> |
214 </div> | 213 </div> |
215 | 214 |
216 <div class='slide'> | 215 <div class='slide'> |
217 <h2>CbC meta computation</h2> | 216 <h2>CbC meta computation</h2> |
448 <tr><td valign='top'> | 447 <tr><td valign='top'> |
449 <ul> | 448 <ul> |
450 <li>Use new keywords __return and __environment. | 449 <li>Use new keywords __return and __environment. |
451 <li>__return is a code segment pointer for C functions caller. | 450 <li>__return is a code segment pointer for C functions caller. |
452 <li>__environment is a environment for C functions caller. | 451 <li>__environment is a environment for C functions caller. |
453 <li>G use a continuation with environments to return main function. | 452 <li>G use a continuation with environments to return main function (f's caller). |
454 </ul> | 453 </ul> |
455 <td style="border: double;"> | 454 <td style="border: double;"> |
456 <pre class='small_code'><div class='highlight'>__code g(int n,__code(*exit_code)(int,void *),void *exit_env){ | 455 <pre class='small_code'><div class='highlight'>__code g(int n,__code(*exit_code)(int,void *),void *exit_env){ |
457 printf("code1 : code entry1\n"); | 456 printf("code1 : code entry1\n"); |
458 goto exit_code(n,exit_env); | 457 goto exit_code(n,exit_env); |
541 <div class='slide'> | 540 <div class='slide'> |
542 <h2>Usage of CbC : as an instruction description</h2> | 541 <h2>Usage of CbC : as an instruction description</h2> |
543 <p>CbC can be used as a hardware description language (RTL level)</p> | 542 <p>CbC can be used as a hardware description language (RTL level)</p> |
544 <ul> | 543 <ul> |
545 <li>VU (Vector unit) in PS2 | 544 <li>VU (Vector unit) in PS2 |
546 <li>SPU (Sound Processing Unit) in PS3 | 545 <li>SPU (Synergistic Processing Unit) in PS3 |
547 </ul> | 546 </ul> |
548 </div> | 547 </div> |
549 | 548 |
550 <div class='slide'> | 549 <div class='slide'> |
551 <h2>Usage of CbC : Parallel Task representation</h2> | 550 <h2>Usage of CbC : Parallel Task representation</h2> |