Mercurial > hg > Members > kono > Cerium
diff TaskManager/kernel/ppe/Task.h @ 625:60aa3f241b10
64bit mode worked on Mac OS X.
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 16 Nov 2009 10:59:55 +0900 |
parents | f7d78b3c1106 |
children | 0558abba673c |
line wrap: on
line diff
--- a/TaskManager/kernel/ppe/Task.h Sun Nov 15 04:56:09 2009 +0900 +++ b/TaskManager/kernel/ppe/Task.h Mon Nov 16 10:59:55 2009 +0900 @@ -4,30 +4,27 @@ #include "base.h" #include "types.h" #include "ListData.h" +#include "SimpleTask.h" #define MAX_PARAMS 8 -class TaskQueue; - -class Task { +class Task : public SimpleTask { public: // variables BASE_NEW_DELETE(Task); - int command; // 4 byte - memaddr self; // 4 byte (or 8byte on 64bit mode) - - int param_size; // 4 byte - memaddr param[MAX_PARAMS]; // 4*MAX_PARAMS byte - ListData inData __attribute__ ((aligned (DEFAULT_ALIGNMENT))); // 4 byte 64bit であるべき - ListData outData __attribute__ ((aligned (DEFAULT_ALIGNMENT))); // 4 byte 64bit であるべき + ListData inData __attribute__ ((aligned (DEFAULT_ALIGNMENT))); + ListData outData __attribute__ ((aligned (DEFAULT_ALIGNMENT))); public: // functions int add_inData_t(memaddr addr, int size); // unsigned int ではなく 64bit int add_outData_t(memaddr addr, int size); // unsigned int ではなく 64bit int add_data(ListData &list, memaddr addr, int size); - int add_param(memaddr param); // obsolete. do not use. - int add_param(int index, memaddr param); + int add_param0(memaddr param); // obsolete. do not use. + int set_param0(int index, memaddr param); + +#define add_param(param) add_param0((memaddr)(param)) +#define set_param(index,param) set_param0(index, (memaddr) (param)) #define add_inData(addr, size) \ add_inData_t((memaddr)(addr), (size));