annotate TaskManager/kernel/schedule/SchedTaskArrayLoad.cc @ 708:56487849ea2d

cleean up SchedTasks.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 15 Dec 2009 10:49:30 +0900
parents e4d2b823903c
children 8ab63ded2c3f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #include "SchedTaskArrayLoad.h"
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #include "SchedTaskArray.h"
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 #include "Task.h"
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4
706
e4d2b823903c no compile error on Cell. Regression Test.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 699
diff changeset
5 #ifdef SIMPLE_TASK
e4d2b823903c no compile error on Cell. Regression Test.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 699
diff changeset
6
699
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 697
diff changeset
7 SchedTaskArrayLoad::SchedTaskArrayLoad(Scheduler *s, SchedTaskBase *savedTask_)
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 {
699
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 697
diff changeset
9 scheduler = s;
697
257ad1a518e3 TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 695
diff changeset
10 savedTask = savedTask_;
708
56487849ea2d cleean up SchedTasks.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 706
diff changeset
11 task = savedTask->task;
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 }
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13
697
257ad1a518e3 TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 695
diff changeset
14 SchedTaskArrayLoad::~SchedTaskArrayLoad() {}
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 void
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 SchedTaskArrayLoad::read()
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 {
697
257ad1a518e3 TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 695
diff changeset
19 // if (task->r_size == 0) return; cannot happen...
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 // load Task Array Data
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 readbuf = scheduler->allocate(task->r_size);
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 scheduler->dma_load(readbuf, task->rbuf,task->r_size, DMA_READ);
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 }
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
24
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 void
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 SchedTaskArrayLoad::exec() {} // to empty the pipeline
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
27
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 void
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 SchedTaskArrayLoad::write() {} // to empty the pipeline
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
30
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
31 SchedTaskBase*
697
257ad1a518e3 TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 695
diff changeset
32 SchedTaskArrayLoad::next(Scheduler *scheduler, SchedTaskBase *p)
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 {
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 Task *nextTask = (Task *)readbuf;
699
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 697
diff changeset
35 return new SchedTaskArray(scheduler, savedTask, nextTask, nextTask);
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 }
706
e4d2b823903c no compile error on Cell. Regression Test.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 699
diff changeset
37 #endif
695
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
38
cbcf0182635e TaskArray on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 /* end */