annotate src/synchronizedQueue/origin_cs.c @ 189:39d87ba6039d

fix
author mir3636
date Fri, 16 Dec 2016 16:38:31 +0900
parents 765ee56d68f1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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 }