Index: sources/test_regression/24082009/Makefile
===================================================================
--- sources/test_regression/24082009/Makefile	(revision 41)
+++ sources/test_regression/24082009/Makefile	(revision 55)
@@ -1,51 +1,16 @@
+
 include ../env.mk
+include ../Makefile.common
 
-EXE_SCASS = system_systemcass.x
-EXE_SC    = system_systemc.x
-EXE       = ${EXE_SCASS}
-OBJECTS   = $(EXE:.x=.o)
-LINKS     = $(OBJECTS:.o=.cpp)
+test : all
+	@echo -ne "| Testing $$(basename $$(pwd)): " ;
+	@./$(EXE_SCASS) > $(LOG_SCASS) 2> /dev/null
+	@./$(EXE_SC) > $(LOG_SC) 2> /dev/null
+	@if diff $(LOG_SC) $(LOG_SCASS) > /dev/null ; then \
+      time_scass=$$(/usr/bin/time -f "%e" 2>&1 ./$(EXE_SCASS) --nodynamiclink | tail -n 1) ; \
+      time_sc=$$(/usr/bin/time -f "%e" 2>&1 ./$(EXE_SC) | tail -n 1) ; \
+      echo "OK (time SystemCass: $$time_scass - time SystemC : $$time_sc)" ; \
+   else echo "KO" ; \
+   fi ;
+ 
 
-RESULTS   = perf
-
-.SECONDARY:
-
-main : $(EXE) 
-
-test : ${RESULTS}
-	@echo OK
-
-perf : system_systemcass.x
-	time (./system_systemcass.x --nobanner --p --nodynamiclink 1000000 )
-
-%_systemc.x : %_systemc.o $(SYSTEMC_LIB)
-	$(CXX) -o $@ $*_systemc.o $(LFLAGS_SYSTEMC) 2>&1 | $(CPPFILT)
-
-%_systemcass.x : %_systemcass.o  $(SYSTEMCASS_LIB)
-	$(CXX) -o $@ $*_systemcass.o $(LFLAGS_SYSTEMCASS) 2>&1 | $(CPPFILT)
-
--include Makefile.deps
-
-%_systemc.cpp : %.cpp 
-	ln -s $*.cpp $*_systemc.cpp
-
-%_systemcass.cpp : %.cpp 
-	ln -s $*.cpp $*_systemcass.cpp
-
-%_systemc.o : %_systemc.cpp 
-	$(CXX) $(CFLAGS_SYSTEMC) -MM $*_systemc.cpp >> Makefile.deps
-	$(CXX) $(CFLAGS_SYSTEMC) -c $*_systemc.cpp -o $*_systemc.o
-
-%_systemcass.o : %_systemcass.cpp
-	$(CXX) $(CFLAGS_SYSTEMCASS) -MM $*_systemcass.cpp >> Makefile.deps
-	$(CXX) $(CFLAGS_SYSTEMCASS) -c $*_systemcass.cpp -o $*_systemcass.o
-
-clean :
-	rm -f Makefile.deps
-	-rm -f *.o gmon.out
-	-rm -f $(EXE) $(OBJECTS) 
-	-for i in $(LINKS) ; do unlink $$i ; done 2> /dev/null
-	-rm -f core*
-	-rm -rf generated_by_systemcass
-	-rm -rf tracesystem_systemcass.x.vcd tracesystem_systemc.x.vcd
-	-rm -rf ${RESULTS}
Index: sources/test_regression/24082009/system.cpp
===================================================================
--- sources/test_regression/24082009/system.cpp	(revision 41)
+++ sources/test_regression/24082009/system.cpp	(revision 55)
@@ -1,67 +1,80 @@
-#include <systemc.h>
+
 #include <signal.h>
 
+#include "systemc.h"
+#include "test.h"
+
 using namespace std;
-  
+
 struct A : sc_module {
-  sc_in_clk                       clk;
-  sc_in     <int>                 i1;
-  sc_signal <int>                 r1;
-  sc_out    <int>                 o1;
+    sc_in_clk clk;
+    sc_in <int> i1;
+    sc_signal <int> r1;
+    sc_out <int> o1;
 
-  void transition () {
-    int i;
-    for (i = 0; i < 1000; ++i)
-      ;
-    r1 = i1;
-  }
-  void gen_moore () {
-    int i;
-    for (i = 0; i < 1000; ++i)
-      ;
-    o1 = r1;
-  }
+    void transition() {
+        int i;
+        for (i = 0; i < 1000; ++i);
+        r1 = i1;
+    }
 
-  SC_CTOR (A) : clk ("clk"), o1("o1") {
-    SC_METHOD(transition);
-    sensitive << clk.pos();
-    SC_METHOD(gen_moore);
-    sensitive << clk.neg();
-  };
+    void gen_moore() {
+        int i;
+        for (i = 0; i < 1000; ++i);
+        o1 = r1;
+    }
+
+    SC_CTOR (A) : clk("clk"), o1("o1") {
+        SC_METHOD(transition);
+        sensitive << clk.pos();
+        dont_initialize();
+
+        SC_METHOD(gen_moore);
+        sensitive << clk.neg();
+        dont_initialize();
+    }
+
 };
 
-int sc_main (int argc, char *argv[])
-{
-  sc_clock                     signal_clk("my_clock",1, 0.5);
-  sc_signal<int>               s1("s1"),s2("s2"),s3("s3"),s4("s4");
 
-  A      a("a");
-  A      b("b");
-  
-  a.clk         (signal_clk);
-  b.clk         (signal_clk);
-  
-  a.i1          (s1);
-  a.o1          (s2);
+int sc_main (int argc, char * argv[]) {
+    sc_clock signal_clk("my_clock");
+    sc_signal<int> s1("s1"), s2("s2"), s3("s3"), s4("s4");
 
-  b.i1          (s3);
-  b.o1          (s4);
+    A a("a");
+    A b("b");
 
-  // Init & run
-  sc_initialize ();
+    a.clk(signal_clk);
+    b.clk(signal_clk);
 
-  if (argc == 1)
-  {
-    cout << "Usage :\n" << argv[0] << " [#cycles]\n";
+    a.i1(s1);
+    a.o1(s2);
+
+    b.i1(s3);
+    b.o1(s4);
+
+    // Init & run
+    sc_start(sc_time(0, sc_core::SC_NS));
+
+    s1.write(1);
+
+    sc_start(sc_time(100000, sc_core::SC_NS));
+
+    cout << s1.read() << endl;
+    cout << s2.read() << endl;
+
     return EXIT_SUCCESS;
-  }
+}
 
-  s1.write (1);
 
-  sc_start (atoi(argv[1]));
+/*
+# Local Variables:
+# tab-width: 4;
+# c-basic-offset: 4;
+# c-file-offsets:((innamespace . 0)(inline-open . 0));
+# indent-tabs-mode: nil;
+# End:
+#
+# vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=4:softtabstop=4
+*/
 
-  cout << s1.read() << endl;
-  cout << s2.read() << endl;
-
-  return EXIT_SUCCESS;
-}
