systemc-clang
systemc-clang copied to clipboard
This is a Clang tool that parses SystemC models, and synthesizes Verilog from it.
In file: https://github.com/intel/systemc-compiler/blob/main/designs/tests/cthread/test_cthread_for_if.cpp#L27 The original C++ code: ```c++ sc_signal sleep_time; //... void for_in_if3() { sc_uint arr[4]; for (int i = 0; i < 4; i++) { arr[i] =i; } wait();...
https://github.com/intel/systemc-compiler/blob/main/designs/tests/method/test_fcall.cpp globFunc1 has no function body, thus in the function definition hcode, the body is omitted. However, an empty body is not accepted by hcode parser. Should the hcode plugin...
The design file: https://github.com/intel/systemc-compiler/blob/main/designs/tests/cthread/test_cthread_for_other_types.cpp Currently, it generates function call to `top__for_stmt_no_wait_func_20` without their definition: ```c++ void for_stmt_other_types_fns() { wait(); while (true) { for_stmt_no_wait(sc_uint(0)); for_stmt_no_wait(sc_int(0)); for_stmt_no_wait(sc_bigint(0)); for_stmt_no_wait(sc_biguint(0)); for_stmt_wait0(sc_uint(0)); for_stmt_wait0(sc_int(0)); for_stmt_wait0(sc_bigint(0)); for_stmt_wait0(sc_biguint(0));...
File: https://github.com/intel/systemc-compiler/blob/main/designs/tests/cthread/test_cthread_read_defined_ref.cpp ``` template void const_ref(const T& par) { auto i = par; } // Assign through reference template void ref_assign(T& par) { par = 0; } void fcall_ref_assign() {...
https://github.com/intel/systemc-compiler/blob/main/designs/tests/cthread/test_if.cpp Notice that there is an `always` following the `posedge_event`: ```c++ SC_THREAD(if_stmt_wait0); sensitive
https://github.com/intel/systemc-compiler/blob/main/designs/tests/cthread/test_if.cpp The original thread code ```c++ void variable_read_in_binaryop() { bool closeWaLine = 0; wait(); while (true) { bool updateLine = in; // No IF generated as condition is always false...