systemc: Use the "catch action" and the handler func outside sc_main.
authorGabe Black <gabeblack@google.com>
Fri, 5 Oct 2018 23:45:55 +0000 (16:45 -0700)
committerGabe Black <gabeblack@google.com>
Tue, 16 Oct 2018 00:59:54 +0000 (00:59 +0000)
commitcb1cd5af89548fa7132ae29ebd5e2a357bbaef73
treee4d2028c34cc416d19fe304679f7bfbb0062f625
parent98b74c4e51f7cb573ec93d22d0def4ee12aa0c7f
systemc: Use the "catch action" and the handler func outside sc_main.

If an exception escapes sc_main, Accellera catches it and feeds it
into the report handler, telling it to run the catch actions. This
seems like it sets up lots of dangerous scenarios, and also makes a
vital error detecting path more complex and error prone.

On the other hand, it makes one of the tests pass.

Change-Id: I7f9d07e01e63c7abeee903febe2e434041ec49a4
Reviewed-on: https://gem5-review.googlesource.com/c/13307
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
src/systemc/core/sc_main.cc
src/systemc/tests/config.py