diff CbC-examples/parallel_check/c-int.c @ 42:9e4f9e20b8f1

add some examples.
author kent@teto.cr.ie.u-ryukyu.ac.jp
date Mon, 25 Jan 2010 17:13:59 +0900
parents
children 5d30d517ebed
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/CbC-examples/parallel_check/c-int.c	Mon Jan 25 17:13:59 2010 +0900
@@ -0,0 +1,71 @@
+#include<stdio.h>
+#define dprint(f, args...) \
+	printf("in %s env=%p: "f, __FUNCTION__, __builtin_frame_address(1), ## args)
+
+void
+callee(int a, int b, int c, int d)
+{
+	int r;
+	dprint("a=%d,b=%d,c=%d,d=%d\n", a,b,c,d);
+	r = a+b+c+d;
+	printf("r = %d\n", r);
+	return;
+}
+
+void
+caller1(int a, int b, int c, int d)
+{
+	int x,y,z,w;
+	x=a, y=b;
+	z=c, w=d;
+
+	callee(x,y,z,w);
+	return;
+}
+
+void
+caller2(int a, int b, int c, int d)
+{
+	int x,y,z,w;
+	x=a, y=b;
+	z=c, w=d;
+
+	callee(y,z,w,x);
+	return;
+}
+
+void
+caller3(int a, int b, int c, int d)
+{
+	callee(b,c,d,a);
+	return;
+}
+
+void
+caller4(int a, int b, int c, int d)
+{
+	callee(a+b,b+c,c+d,d+a);
+	return;
+}
+
+void
+caller5(int a, int b, int c, int d)
+{
+	int x,y,z,w;
+	x = a+b;
+	y = b+c;
+	z = c+d;
+	w = d+a;
+
+	callee(x,y,z,w);
+	return;
+}
+
+int
+main (int argc, char **argv)
+{
+	int r;
+	caller(11,22,33,44);
+	//r = caller(11,22,33,44, 55,66,77,88);
+}
+