Mercurial > hg > Members > kono > Cerium
diff example/get_segment/spe/spe-main.cc @ 441:7bae2117f239
slightly worked...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 25 Sep 2009 03:49:01 +0900 |
parents | 95c0457a7d31 |
children | 95a856a2d552 |
line wrap: on
line diff
--- a/example/get_segment/spe/spe-main.cc Fri Sep 25 01:47:03 2009 +0900 +++ b/example/get_segment/spe/spe-main.cc Fri Sep 25 03:49:01 2009 +0900 @@ -2,8 +2,12 @@ #include "Scheduler.h" #include "LoadEntry.h" -SchedExternDynamicTask(Hello,segment1); -SchedExternDynamicTask(Hello1,segment2); +#include "createTask_offset.h" + +SchedExternDynamicTask(Hello,0); +SchedExternDynamicTask(Hello1,1); + +void print_ovly_table(); /** * この関数は SpeScheduler から呼ばれるので @@ -12,7 +16,46 @@ void task_init(Scheduler *scheduler) { - SchedRegisterDynamicTask(HELLO_TASK, Hello, segment1); - SchedRegisterDynamicTask(HELLO_TASK1, Hello1, segment2); + SchedRegisterDynamicTask(HELLO_TASK, Hello, 0); + SchedRegisterDynamicTask(HELLO_TASK1, Hello1, 1); scheduler->allocate_code_segment(4,1024); + print_ovly_table(); } + +typedef unsigned int u32; +extern unsigned long long _EAR_; + +/* +extern struct tbl1 { + u32 vma; + u32 size; + u32 file_offset; + u32 buf; +} _ovly_table; + */ + +#if 0 +unsigned long long _EAR_ = 0; +struct tbl _ovly_table; +#endif + +void +print_ovly_table() +{ + int i; + struct tbl *ov; + + ov = _ovly_table; + + fprintf(stderr,"memaddr = %d\n",sizeof(memaddr)); + for(i=0;i<2;i++) { + unsigned long long adr = _EAR_; + fprintf(stderr,"ovly_table[%d] vma=%08x size=%08x offset=%08x address=%08llx\n", + i, + ov[i].vma, + ov[i].size, ov[i].file_offset, + (adr) + ov[i].file_offset); + } +} + +/* end */