sim: fail on implicit creation of orphans via ports
authorSteve Reinhardt <steve.reinhardt@amd.com>
Tue, 17 Aug 2010 12:06:22 +0000 (05:06 -0700)
committerSteve Reinhardt <steve.reinhardt@amd.com>
Tue, 17 Aug 2010 12:06:22 +0000 (05:06 -0700)
commitc2cce96a0bb4878a9e6a4ae635096b5ce62e41c3
treee4e9a5b2f49de0209dd9f5bf871266a8432d7248
parent1fbe466345b43caabece9730c1f0456f1b57b82f
sim: fail on implicit creation of orphans via ports
Orphan SimObjects (not in the config hierarchy) could get
created implicitly if they have a port connection to a SimObject
that is in the hierarchy.  This means that there are objects on
the C++ SimObject list (created via the C++ SimObject
constructor call) that are unknown to Python and will get
skipped if we walk the hierarchy from the Python side (as we are
about to do).  This patch detects this situation and prints an
error message.

Also fix the rubytester config script which happened to rely on
this behavior.
src/python/m5/SimObject.py
src/python/m5/params.py
tests/configs/rubytest-ruby.py