Changeset 55 for sources/test_regression/07052005
- Timestamp:
- May 28, 2013, 11:17:14 AM (11 years ago)
- Location:
- sources/test_regression/07052005
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
sources/test_regression/07052005/Makefile
r15 r55 1 1 2 include ../env.mk 3 include ../Makefile.common 2 4 3 SYSTEM = system.cpp 4 EXE_SCASS = $(SYSTEM:.cpp=_systemcass.x) 5 EXE_SC = $(SYSTEM:.cpp=_systemc.x) 6 EXE = ${EXE_SCASS} ${EXE_SC} 7 LOG = $(SYSTEM:.cpp=.log) 8 OBJECTS = $(EXE:.x=.o) 9 LINKS = $(OBJECTS:.o=.cpp) 5 test: all 6 @echo -ne "| Testing $$(basename $$(pwd)): " ; 7 @./$(EXE_SCASS) > $(LOG_SCASS) 2> /dev/null ; 8 @./$(EXE_SC) > $(LOG_SC) 2> /dev/null 9 @if diff $(LOG_SC) $(LOG_SCASS) > /dev/null ; then \ 10 echo "OK" ; \ 11 else echo "KO" ; \ 12 fi ; 10 13 11 .SECONDARY:12 13 main : $(EXE)14 15 test : ${LOG}16 @echo Test OK.17 18 %.log : %_systemcass.x %_systemc.x19 ./$*_systemcass.x20 touch $*.log21 22 %.gif : %.dot23 dot -Tgif -o $*.gif $*.dot24 25 %_systemc.x : %_systemc.o $(SYSTEMC_LIB)26 $(CXX) -o $@ $*_systemc.o $(LFLAGS_SYSTEMC) 2>&1 | $(CPPFILT)27 28 %_systemcass.x : %_systemcass.o $(SYSTEMCASS_LIB)29 $(CXX) -o $@ $*_systemcass.o $(LFLAGS_SYSTEMCASS) 2>&1 | $(CPPFILT)30 31 -include Makefile.deps32 33 %_systemc.cpp : %.cpp34 ln -s $*.cpp $*_systemc.cpp35 36 %_systemcass.cpp : %.cpp37 ln -s $*.cpp $*_systemcass.cpp38 39 %_systemc.o : %_systemc.cpp40 $(CXX) $(CFLAGS_SYSTEMC) -MM $*_systemc.cpp >> Makefile.deps41 $(CXX) $(CFLAGS_SYSTEMC) -c $*_systemc.cpp -o $*_systemc.o42 43 %_systemcass.o : %_systemcass.cpp44 $(CXX) $(CFLAGS_SYSTEMCASS) -MM $*_systemcass.cpp >> Makefile.deps45 $(CXX) $(CFLAGS_SYSTEMCASS) -c $*_systemcass.cpp -o $*_systemcass.o46 47 clean :48 rm -f Makefile.deps49 -rm -f *.o gmon.out *~50 -rm -f ${LOG}51 -rm -f signal_order.txt module_order.dot signal_graph.dot52 -rm -f module_order.gif signal_graph.gif53 -rm -f $(EXE) $(OBJECTS)54 -for i in $(LINKS) ; do unlink $$i ; done 2> /dev/null55 -rm -f core*56 -rm -rf system_systemcass.x.vcd system_systemc.x.vcd57 -rm -rf generated_by_systemcass58 -
sources/test_regression/07052005/system.cpp
r1 r55 1 #include <systemc.h> 1 2 2 3 #include <iostream> 4 5 #include "systemc.h" 6 #include "test.h" 3 7 4 8 … … 6 10 7 11 8 int 9 sc_main (int argc, char ** argv) 10 { 11 int errnum = 0; 12 13 sc_uint<17> a; 14 sc_uint<3> b; 15 sc_uint<2> c1; 16 sc_uint<2> c2; 17 sc_uint<5> d; 18 sc_uint<7> e; 19 sc_uint<1> f; 20 sc_uint<16> g; 21 sc_uint<8> h; 12 int sc_main (int argc, char ** argv) { 22 13 23 b = 0x7; 24 c1 = 0x3; 25 c2 = 0x1; 26 d = 0xA0; 27 e = 0x11; 28 g = 0xabcd; 14 sc_uint<17> a; 15 sc_uint<3> b; 16 sc_uint<2> c1; 17 sc_uint<2> c2; 18 sc_uint<5> d; 19 sc_uint<7> e; 20 sc_uint<1> f; 21 sc_uint<16> g; 22 sc_uint<8> h; 29 23 30 // bit vector concatenation and boolean concatenation 31 a = (b, 32 (c1 | c2), 33 d & (b,c1), 34 e); 35 36 f = b.range (0,0); 24 b = 0x7; 25 c1 = 0x3; 26 c2 = 0x1; 27 d = 0xA0; 28 e = 0x11; 29 g = 0xabcd; 37 30 38 h = g.range (11,4); 31 // bit vector concatenation and boolean concatenation 32 a = (b, (c1 | c2), d & (b, c1), e); 39 33 40 errnum++; 41 cerr << "a = 0x" << hex << (unsigned int)a << " = " << a.to_string (SC_BIN) << "\n"; 42 if (a.to_string (SC_BIN) != "0b000000111100010001") 43 { 44 exit (errnum); 45 } 34 f = b.range (0, 0); 46 35 47 errnum++; 48 cerr << "f = 0x" << hex << (unsigned int)f << " = " << f.to_string (SC_BIN) << "\n"; 49 if (f.to_string (SC_BIN) != "0b01") 50 { 51 exit (errnum); 52 } 36 h = g.range (11, 4); 53 37 54 errnum++; 55 cerr << "h = 0x" << hex << (unsigned int)h << " = " << h.to_string (SC_BIN) << "\n"; 56 if (h.to_string (SC_BIN) != "0b010111100") 57 { 58 exit (errnum); 59 } 38 cout << "a = 0x" << hex << (unsigned int) a << " = " << a.to_string(SC_BIN) << "\n"; 39 //ASSERT(a.to_string(SC_BIN) == "0b000000111100010001"); 60 40 61 cerr << "Test OK.\n"; 62 return 0; 41 cout << "f = 0x" << hex << (unsigned int) f << " = " << f.to_string(SC_BIN) << "\n"; 42 //ASSERT(f.to_string(SC_BIN) == "0b01"); 43 44 cout << "h = 0x" << hex << (unsigned int) h << " = " << h.to_string(SC_BIN) << "\n"; 45 //ASSERT(h.to_string(SC_BIN) == "0b010111100"); 46 47 cout << "Test OK.\n"; 48 49 return 0; 63 50 } 64 51 52 53 /* 54 # Local Variables: 55 # tab-width: 4; 56 # c-basic-offset: 4; 57 # c-file-offsets:((innamespace . 0)(inline-open . 0)); 58 # indent-tabs-mode: nil; 59 # End: 60 # 61 # vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=4:softtabstop=4 62 */ 63
Note: See TracChangeset
for help on using the changeset viewer.