diff TaskManager/kernel/schedule/SchedTask.cc @ 629:8843edf37c0e

Cell 64 bit tried, but not yet worked. Cell's list DMA is 32bit.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 18 Nov 2009 13:32:58 +0900
parents 60aa3f241b10
children 0558abba673c
line wrap: on
line diff
--- a/TaskManager/kernel/schedule/SchedTask.cc	Tue Nov 17 01:35:12 2009 +0900
+++ b/TaskManager/kernel/schedule/SchedTask.cc	Wed Nov 18 13:32:58 2009 +0900
@@ -172,7 +172,7 @@
 SchedTask::get_input(void *buff, int index)
 {
     if (buff != NULL) {
-        return (void*)((memaddr)buff + inListData->bound[index]);
+        return (void*)((char*)buff + inListData->bound[index]);
     } else {
         return NULL;
     }
@@ -184,7 +184,11 @@
 memaddr
 SchedTask::get_inputAddr(int index)
 {
+#ifdef __CERIUM_CELL__
+    return (memaddr)inListData->element[index].addr;
+#else
     return inListData->element[index].addr;
+#endif
 }
 
 /**
@@ -203,7 +207,7 @@
 SchedTask::get_output(void *buff, int index)
 {
     if (buff != NULL) {
-        return (void*)((memaddr)buff + outListData->bound[index]);
+        return (void*)((char *)buff + outListData->bound[index]);
     } else {
         return NULL;
     }
@@ -215,7 +219,11 @@
 memaddr
 SchedTask::get_outputAddr(int index)
 {
+#ifdef __CERIUM_CELL__
+    return (memaddr)outListData->element[index].addr;
+#else
     return outListData->element[index].addr;
+#endif
 }
 
 /**
@@ -269,7 +277,7 @@
     scheduler->mainMem_wait();
 }
 
-void*
+memaddr
 SchedTask::mainMem_get(int id) {
     return scheduler->mainMem_get(id);
 }