test228.cpp revision 12855
12SN/A#define SC_INCLUDE_FX 21762SN/A 32SN/A#include <systemc.h> 42SN/A 52SN/A// 28) sc_core and sc_dt - check names still visible in <systemc.h> 62SN/A 72SN/ASC_MODULE(Mod) 82SN/A{ 92SN/A SC_CTOR(Mod) 102SN/A { 112SN/A SC_THREAD(T); 122SN/A }; 132SN/A void T() 142SN/A { 152SN/A sc_int<4> i; 162SN/A sc_uint<4> ui; 172SN/A sc_bigint<4> bi; 182SN/A sc_biguint<4> bui; 192SN/A sc_fixed<4,2> f; 202SN/A sc_ufixed<4,2> uf; 212SN/A sc_fixed_fast<4,2> ff; 222SN/A sc_ufixed_fast<4,2> uff; 232SN/A sc_bv<4> bv; 242SN/A sc_lv<4> lv; 252SN/A 262SN/A sc_int_base ib; 272665Ssaidi@eecs.umich.edu sc_int_base uib; 282665Ssaidi@eecs.umich.edu sc_signed s; 292665Ssaidi@eecs.umich.edu sc_unsigned u; 302SN/A sc_fix fi; 312SN/A sc_ufix ufi; 321717SN/A sc_fix_fast ffi; 331717SN/A sc_ufix_fast uffi; 342SN/A sc_logic l; 352SN/A sc_bv_base bvb; 362SN/A sc_lv_base lvb; 374182Sgblack@eecs.umich.edu 385664Sgblack@eecs.umich.edu //sc_value_base vb; 39707SN/A //sc_fxnum fx; 401858SN/A //sc_fxnum_fast fxf; 416658Snate@binkert.org sc_fxval fxv; 4256SN/A sc_fxval_fast fxvf; 434776Sgblack@eecs.umich.edu 442856Srdreslin@umich.edu sc_assert(sc_abs(-1) == 1); 452SN/A sc_assert(sc_max(1, 2) == 2); 463520Sgblack@eecs.umich.edu sc_assert(sc_min(1, 2) == 1); 473520Sgblack@eecs.umich.edu sc_copyright(); 483520Sgblack@eecs.umich.edu sc_version(); 493520Sgblack@eecs.umich.edu sc_release(); 505529Snate@binkert.org } 512190SN/A void f(sc_report& rpt) 522315SN/A { 532680Sktlim@umich.edu sc_severity sev; 542SN/A sev = SC_INFO; 552856Srdreslin@umich.edu sev = SC_WARNING; 562SN/A sev = SC_ERROR; 574182Sgblack@eecs.umich.edu sev = SC_FATAL; 584182Sgblack@eecs.umich.edu sc_assert (sev == SC_FATAL); 594182Sgblack@eecs.umich.edu 604182Sgblack@eecs.umich.edu sc_actions act; 614182Sgblack@eecs.umich.edu act = SC_DO_NOTHING; 622356SN/A } 632356SN/A void g(sc_exception x) {} 642356SN/A}; 656144Sksewell@umich.edu 662356SN/Astruct Top: sc_module 672356SN/A{ 686144Sksewell@umich.edu Top(sc_module_name) 692356SN/A { 702356SN/A tf = sc_create_vcd_trace_file("vcd"); 716144Sksewell@umich.edu tf->set_time_unit(1.0, SC_NS); 722356SN/A sc_trace(tf, sig, "sig"); 732356SN/A sc_write_comment(tf, "Hello"); 742356SN/A } 756144Sksewell@umich.edu ~Top() 766144Sksewell@umich.edu { 776144Sksewell@umich.edu sc_close_vcd_trace_file(tf); 786144Sksewell@umich.edu } 796144Sksewell@umich.edu sc_trace_file* tf; 805336Shines@cs.fsu.edu sc_signal<sc_logic> sig; 812356SN/A}; 822356SN/A 832856Srdreslin@umich.eduint sc_main(int argc, char* argv[]) 842SN/A{ 851634SN/A#if defined(_MSC_VER) && _MSC_VER < 1900 861634SN/A _set_output_format(_TWO_DIGIT_EXPONENT); 871695SN/A#endif 883814Ssaidi@eecs.umich.edu 893814Ssaidi@eecs.umich.edu cout << "Should be silent except for some renaming warnings..." << endl; 905712Shsul@eecs.umich.edu 915712Shsul@eecs.umich.edu Top top("top"); 925715Shsul@eecs.umich.edu 935712Shsul@eecs.umich.edu sc_attr_base ab("base"); 945712Shsul@eecs.umich.edu sc_attribute<int> at("attr"); 951634SN/A 961634SN/A sc_buffer<int> bu; 975712Shsul@eecs.umich.edu sc_signal_resolved sr; 985712Shsul@eecs.umich.edu sc_fifo<int> fi; 995712Shsul@eecs.umich.edu sc_mutex mut; 1002359SN/A sc_semaphore sem(2); 1017064Snate@binkert.org sc_event_queue eq; 1025100Ssaidi@eecs.umich.edu 1031695SN/A sc_start(100, SC_NS); 1045099Ssaidi@eecs.umich.edu 1053814Ssaidi@eecs.umich.edu cout << endl << "Success" << endl; 1063814Ssaidi@eecs.umich.edu return 0; 1071634SN/A} 1083495Sktlim@umich.edu