diff src/parallel_execution/examples/mult.cbc @ 370:59c694722ce6

Rename Code Gears
author Tatsuki IHA <innparusu@cr.ie.u-ryukyu.ac.jp>
date Thu, 06 Jul 2017 16:40:02 +0900
parents src/parallel_execution/examples/Mult.cbc@45afe5d70956
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/parallel_execution/examples/mult.cbc	Thu Jul 06 16:40:02 2017 +0900
@@ -0,0 +1,18 @@
+#include "../../context.h"
+#include <stdio.h>
+__code mult(struct Integer* input1, struct Integer* input2, __code next(struct Integer* output, ...)) {
+    struct Integer* output = *O_output;
+    output->value = input1->value * input2->value;
+    printf("%d * %d = %d\n", input1->value, input2->value, output->value);
+    *O_output = output;
+    goto meta(context, next);
+}
+
+__code mult_stub(struct Context* context) {
+    Integer** O_output = (struct Integer **)&context->data[context->odg];
+    goto mult(context,
+            &context->data[context->idg]->Integer,
+            &context->data[context->idg + 1]->Integer,
+            context->next,
+            O_output);
+}