Jump to content

vasu_c

Members
  • Content count

    6
  • Joined

  • Last visited

About vasu_c

  • Rank
    Member

Recent Profile Visitors

46 profile views
  1. Hi, With the writer policy set to SC_MANY_WRITERS, the following code in sc_signal.h ends up calling request_update() because policy_type::needs_update() always returns true for SC_MANY_WRITERS though there is no value change This is different from SystemC-2.3.1. Is this an intentional change ? I looked through the LRM but did not come across anything that mentions about this. 289 sc_signal_t<T,POL>::write( const T& value_ ) 290 { 291 // first write per eval phase: m_new_val == m_cur_val 292 bool value_changed = !( m_new_val == value_ ); 293 if ( !policy_type::check_write(this, value_changed) ) 294 return; 295 296 m_new_val = value_; 297 if( value_changed || policy_type::needs_update() ) { 298 request_update(); 299 } 300 } Thanks for all the help.
  2. Ameya, I was using "CentOS Linux release 7.4.1708 (AltArch)" for the aarch64 build. Here is the ABI specification for gcc-5.4.0 that I was using. #define __GXX_ABI_VERSION 1009 Thanks.
  3. Than you Joshua. I missed this update. Just applied the patch and it works fine. Appreciate the help.
  4. I had gcc-4.8.5 available on the ARM machine we are using. I could reproduce the crash with gcc-4.8.5 as well. Thanks in advance for any suggestions.
  5. Thanks for the quick response Philipp. Configuration options for the library: ../configure --prefix=/path/to/install --enable-debug --disable-silent-rules --disable-optimize The only warning that stands out is : libtool: compile: g++ -DSC_INCLUDE_FX -DSC_BUILD -I. -I../../../src/sysc -I../../../src -Wall -g -pthread -MT kernel/sc_thread_process.lo -MD -MP -MF kernel/.deps/sc_thread_process.Tpo -c ../../../src/sysc/kernel/sc_thread_process.cpp -fPIC -DPIC -o kernel/.libs/sc_thread_process.o ../../../src/sysc/kernel/sc_thread_process.cpp:107:34: warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes] void sc_thread_cor_fn( void* arg ) The other warning that I see is (i think i can safely ignore this) : libtool: link: warning: library `/u/prod/gnu/gcc/20180108/gcc-5.4.0-linux_aarch64/bin/../lib/gcc/aarch64-unknown-linux-gnu/5.4.0/../../../../lib64/libstdc++.la' was moved. The build log file for the library is greater than 0.49 Mb hence I am unable to attach it. Stack trace: Unfortunately there is nothing in the stack trace, but on single stepping through the instructions in "aarch64.s" 77 ldp d8, d9, [sp, #-160] <-- it is this line that eventually leads to thecrash 78 79 _qt_align: 80 qt_align: 81 ret gdb stack trace: SystemC 2.3.2-Accellera --- Apr 10 2018 11:05:10 Copyright (c) 1996-2017 by all Contributors, ALL RIGHTS RESERVED Program received signal SIGSEGV, Segmentation fault. 0x0000ffffffffe440 in ?? () (gdb) where #0 0x0000ffffffffe440 in ?? () #1 0x0000ffffffffe440 in ?? () I don't have gcc-4.5.0 built, but will try that as well. Thanks again for the response. Appreciate it. Regards.
  6. HI, I am seeing a crash with an aarch64 debug SystemC-2.3.2 build (built using gcc-5.4.0). The crash is somewhere in the quickthreads code. Would appreciate any help resolving this. Below is the test case I am using with gcc-5.4.0 #include "systemc.h" SC_MODULE(top) { void thread() { cout << "thread executing ..." << endl; } SC_CTOR(top) { SC_THREAD(thread); } }; int sc_main(int argc, char** argv) { top t1("t1"); sc_start(10, SC_NS); return 0; } Thanks
×