Mercurial > hg > GearsTemplate
annotate src/synchronizedQueue/origin_cs.c @ 139:c13b07d15d86
fix
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 09 Nov 2016 10:13:31 +0900 |
parents | 765ee56d68f1 |
children |
rev | line source |
---|---|
78
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 #include <stdlib.h> |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 #include "synchronizedQueueContext.h" |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 __code meta(struct Context* context, enum Code next) { |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 goto (context->code[next])(context); |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 } |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 __code start_code(struct Context* context, enum Code next) { |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 goto meta(context, next); |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 } |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11 |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 __code exit_code(struct Context* context) { |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 free(context->code); |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
14 free(context->data); |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 free(context->heapStart); |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
16 goto exit(0); |
765ee56d68f1
Add origin_cs to synchronizedQueue
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
17 } |