systemc: Implement most of sc_object.

To avoid making it hard to change sc_object's implementation in the
future, this change keeps most of the data members out of sc_object and
keeps them in a seperate Object which is managed independently but
still matches to the sc_objects one to one.

This change also moves away from the SystemC/sc_gem5 namespace pair in
favor of sc_gem5. Having two namespaces with classes, etc, living in
both was complicating things. Having to use a namespace that doesn't
fit in one scheme or the other isn't great, but it's the lesser of two
evils.

Change-Id: Ib59c3c515ca98c7fe519c59e9fe9270304b71cc0
Reviewed-on: https://gem5-review.googlesource.com/11611
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
Gabe Black
2018-06-22 14:19:44 -07:00
parent 97018a3b20
commit 9bd3bb7bc8
8 changed files with 456 additions and 77 deletions

View File

@@ -32,6 +32,7 @@ if env['USE_SYSTEMC']:
Source('kernel.cc')
Source('module.cc')
Source('object.cc')
Source('sc_attr.cc')
Source('sc_event.cc')