comparison src/parallel_execution/stack.c @ 148:473b7d990a1f

fix data gears type enum
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 10 Nov 2016 12:07:53 +0900
parents cc071cf1ba85
children 119c035e0e36
comparison
equal deleted inserted replaced
147:f2275f5777f4 148:473b7d990a1f
37 stack->top = NULL; 37 stack->top = NULL;
38 goto meta(context, next); 38 goto meta(context, next);
39 } 39 }
40 40
41 __code clearSingleLinkedStack_stub(struct Context* context) { 41 __code clearSingleLinkedStack_stub(struct Context* context) {
42 goto clearSingleLinkedStack(context, (struct SingleLinkedStack *)context->data[Stack]->stack.stack->stack.stack, context->data[Stack]->stack.next); 42 goto clearSingleLinkedStack(context, (struct SingleLinkedStack *)context->data[D_Stack]->stack.stack->stack.stack, context->data[D_Stack]->stack.next);
43 } 43 }
44 44
45 __code pushSingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, struct Element* element, union Data* data, enum Code next) { 45 __code pushSingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, struct Element* element, union Data* data, enum Code next) {
46 element->next = stack->top; 46 element->next = stack->top;
47 element->data = data; 47 element->data = data;
50 } 50 }
51 51
52 __code pushSingleLinkedStack_stub(struct Context* context) { 52 __code pushSingleLinkedStack_stub(struct Context* context) {
53 struct Element* element = &ALLOCATE(context, Element)->element; 53 struct Element* element = &ALLOCATE(context, Element)->element;
54 goto pushSingleLinkedStack(context, 54 goto pushSingleLinkedStack(context,
55 (struct SingleLinkedStack *)context->data[Stack]->stack.stack->stack.stack, 55 (struct SingleLinkedStack *)context->data[D_Stack]->stack.stack->stack.stack,
56 element, 56 element,
57 context->data[Stack]->stack.data, 57 context->data[D_Stack]->stack.data,
58 context->data[Stack]->stack.next); 58 context->data[D_Stack]->stack.next);
59 } 59 }
60 60
61 __code popSingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, enum Code next) { 61 __code popSingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, enum Code next) {
62 if (stack->top) { 62 if (stack->top) {
63 *data = stack->top->data; 63 *data = stack->top->data;
68 goto meta(context, next); 68 goto meta(context, next);
69 } 69 }
70 70
71 __code popSingleLinkedStack_stub(struct Context* context) { 71 __code popSingleLinkedStack_stub(struct Context* context) {
72 goto popSingleLinkedStack(context, 72 goto popSingleLinkedStack(context,
73 (struct SingleLinkedStack *)context->data[Stack]->stack.stack->stack.stack, 73 (struct SingleLinkedStack *)context->data[D_Stack]->stack.stack->stack.stack,
74 &context->data[Stack]->stack.data, 74 &context->data[D_Stack]->stack.data,
75 context->data[Stack]->stack.next); 75 context->data[D_Stack]->stack.next);
76 } 76 }
77 77
78 __code pop2SingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, union Data** data1, enum Code next) { 78 __code pop2SingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, union Data** data1, enum Code next) {
79 if (stack->top) { 79 if (stack->top) {
80 *data = stack->top->data; 80 *data = stack->top->data;
91 goto meta(context, next); 91 goto meta(context, next);
92 } 92 }
93 93
94 __code pop2SingleLinkedStack_stub(struct Context* context) { 94 __code pop2SingleLinkedStack_stub(struct Context* context) {
95 goto pop2SingleLinkedStack(context, 95 goto pop2SingleLinkedStack(context,
96 (struct SingleLinkedStack *)context->data[Stack]->stack.stack->stack.stack, 96 (struct SingleLinkedStack *)context->data[D_Stack]->stack.stack->stack.stack,
97 &context->data[Stack]->stack.data, 97 &context->data[D_Stack]->stack.data,
98 &context->data[Stack]->stack.data1, 98 &context->data[D_Stack]->stack.data1,
99 context->data[Stack]->stack.next); 99 context->data[D_Stack]->stack.next);
100 } 100 }
101 101
102 __code getSingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, enum Code next) { 102 __code getSingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, enum Code next) {
103 if (stack->top) 103 if (stack->top)
104 *data = stack->top->data; 104 *data = stack->top->data;
107 goto meta(context, next); 107 goto meta(context, next);
108 } 108 }
109 109
110 __code getSingleLinkedStack_stub(struct Context* context) { 110 __code getSingleLinkedStack_stub(struct Context* context) {
111 goto getSingleLinkedStack(context, 111 goto getSingleLinkedStack(context,
112 (struct SingleLinkedStack *)context->data[Stack]->stack.stack->stack.stack, 112 (struct SingleLinkedStack *)context->data[D_Stack]->stack.stack->stack.stack,
113 &context->data[Stack]->stack.data, 113 &context->data[D_Stack]->stack.data,
114 context->data[Stack]->stack.next); 114 context->data[D_Stack]->stack.next);
115 } 115 }
116 116
117 __code get2SingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, union Data** data1, enum Code next) { 117 __code get2SingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, union Data** data, union Data** data1, enum Code next) {
118 if (stack->top) { 118 if (stack->top) {
119 *data = stack->top->data; 119 *data = stack->top->data;
129 goto meta(context, next); 129 goto meta(context, next);
130 } 130 }
131 131
132 __code get2SingleLinkedStack_stub(struct Context* context) { 132 __code get2SingleLinkedStack_stub(struct Context* context) {
133 goto get2SingleLinkedStack(context, 133 goto get2SingleLinkedStack(context,
134 (struct SingleLinkedStack *)context->data[Stack]->stack.stack->stack.stack, 134 (struct SingleLinkedStack *)context->data[D_Stack]->stack.stack->stack.stack,
135 &context->data[Stack]->stack.data, 135 &context->data[D_Stack]->stack.data,
136 &context->data[Stack]->stack.data1, 136 &context->data[D_Stack]->stack.data1,
137 context->data[Stack]->stack.next); 137 context->data[D_Stack]->stack.next);
138 } 138 }
139 139
140 __code isEmptySingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, enum Code next,enum Code whenEmpty) { 140 __code isEmptySingleLinkedStack(struct Context* context, struct SingleLinkedStack* stack, enum Code next,enum Code whenEmpty) {
141 if (stack->top) 141 if (stack->top)
142 goto meta(context, next); 142 goto meta(context, next);
144 goto meta(context, whenEmpty); 144 goto meta(context, whenEmpty);
145 } 145 }
146 146
147 __code isEmptySingleLinkedStack_stub(struct Context* context) { 147 __code isEmptySingleLinkedStack_stub(struct Context* context) {
148 goto isEmptySingleLinkedStack(context, 148 goto isEmptySingleLinkedStack(context,
149 (struct SingleLinkedStack *)context->data[Stack]->stack.stack->stack.stack, 149 (struct SingleLinkedStack *)context->data[D_Stack]->stack.stack->stack.stack,
150 context->data[Stack]->stack.next, 150 context->data[D_Stack]->stack.next,
151 context->data[Stack]->stack.whenEmpty); 151 context->data[D_Stack]->stack.whenEmpty);
152 } 152 }
153 153