Index: benchmark/schedint/cfa1.cfa
===================================================================
--- benchmark/schedint/cfa1.cfa	(revision 6e540ea6f2eb5e8c7c9342b94e6f036ca964f3ec)
+++ benchmark/schedint/cfa1.cfa	(revision 2316525c0ab1029715c0c8bc2f6fe53ca84525fe)
@@ -4,35 +4,30 @@
 #include <stdio.h>
 
-#include "bench.h"
+#include "../bench.h"
 
 volatile int go = 0;
+condition c;
+monitor M {} m1;
 
-condition c;
-monitor M {};
-M m1;
-
-void __attribute__((noinline)) call( M & mutex a1 ) {
-	signal(c);
+void __attribute__((noinline)) call( M & mutex p1 ) {
+	signal( c );
 }
 
-int  __attribute__((noinline)) wait( M & mutex a1 ) {
+void __attribute__((noinline)) wait( M & mutex p1 ) {
 	go = 1;
+	for ( times ) {
+		wait( c );
+	}
+	go = 0;
+}
+
+thread T {};
+void main( T & ) {
+	while ( go == 0 ) { yield(); }
 	BENCH(
-		for ( i; times ) {
-			wait(c);
-		},
+		while ( go == 1 ) { call( m1 ); },
 		result
 	)
 	printf( "%g\n", result );
-	go = 0;
-	return 0;
-}
-
-thread T {};
-void ^?{}( T & mutex ) {}
-void main( T & ) {
-	while(go == 0) { yield(); }
-	while(go == 1) { call(m1); }
-
 }
 
@@ -40,5 +35,5 @@
 	BENCH_START()
 	T t;
-	return wait(m1);
+	wait( m1 );
 }
 
Index: benchmark/schedint/cfa2.cfa
===================================================================
--- benchmark/schedint/cfa2.cfa	(revision 6e540ea6f2eb5e8c7c9342b94e6f036ca964f3ec)
+++ benchmark/schedint/cfa2.cfa	(revision 2316525c0ab1029715c0c8bc2f6fe53ca84525fe)
@@ -4,35 +4,30 @@
 #include <stdio.h>
 
-#include "bench.h"
+#include "../bench.h"
 
 volatile int go = 0;
+condition c;
+monitor M {} m1, m2;
 
-condition c;
-monitor M {};
-M m1, m2;
-
-void __attribute__((noinline)) call( M & mutex a1, M & mutex a2 ) {
-	signal(c);
+void __attribute__((noinline)) call( M & mutex p1, M & mutex p2 ) {
+	signal( c );
 }
 
-int  __attribute__((noinline)) wait( M & mutex a1, M & mutex a2 ) {
+void __attribute__((noinline)) wait( M & mutex p1, M & mutex p2 ) {
 	go = 1;
+	for ( times ) {
+		wait( c );
+	}
+	go = 0;
+}
+
+thread T {};
+void main( T & ) {
+	while ( go == 0 ) { yield(); }
 	BENCH(
-		for ( i; times ) {
-			wait(c);
-		},
+		while ( go == 1 ) { call( m1, m2 ); },
 		result
 	)
 	printf( "%g\n", result );
-	go = 0;
-	return 0;
-}
-
-thread T {};
-void ^?{}( T & mutex this ) {}
-void main( T & ) {
-	while(go == 0) { yield(); }
-	while(go == 1) { call(m1, m2); }
-
 }
 
@@ -40,5 +35,5 @@
 	BENCH_START()
 	T t;
-	return wait(m1, m2);
+	wait( m1, m2 );
 }
 
Index: benchmark/schedint/cfa4.cfa
===================================================================
--- benchmark/schedint/cfa4.cfa	(revision 6e540ea6f2eb5e8c7c9342b94e6f036ca964f3ec)
+++ benchmark/schedint/cfa4.cfa	(revision 2316525c0ab1029715c0c8bc2f6fe53ca84525fe)
@@ -7,32 +7,27 @@
 
 volatile int go = 0;
+condition c;
+monitor M {} m1, m2, m3, m4;
 
-condition c;
-monitor M {};
-M m1, m2, m3, m4;
-
-void __attribute__((noinline)) call( M & mutex a1, M & mutex a2, M & mutex a3, M & mutex a4 ) {
-	signal(c);
+void __attribute__((noinline)) call( M & mutex p1, M & mutex p2, M & mutex p3, M & mutex p4 ) {
+	signal( c );
 }
 
-int  __attribute__((noinline)) wait( M & mutex a1, M & mutex a2, M & mutex a3, M & mutex a4 ) {
+void __attribute__((noinline)) wait( M & mutex p1, M & mutex p2, M & mutex p3, M & mutex p4 ) {
 	go = 1;
+	for ( times ) {
+		wait( c );
+	}
+	go = 0;
+}
+
+thread T {};
+void main( T & ) {
+	while ( go == 0 ) { yield(); }
 	BENCH(
-		for ( i; times ) {
-			wait(c);
-		},
+		while ( go == 1 ) { call( m1, m2, m3, m4 ); },
 		result
 	)
 	printf( "%g\n", result );
-	go = 0;
-	return 0;
-}
-
-thread T {};
-void ^?{}( T & mutex this ) {}
-void main( T & ) {
-	while(go == 0) { yield(); }
-	while(go == 1) { call(m1, m2, m3, m4); }
-
 }
 
@@ -40,5 +35,5 @@
 	BENCH_START()
 	T t;
-	return wait(m1, m2, m3, m4);
+	wait( m1, m2, m3, m4 );
 }
 
