summaryrefslogtreecommitdiff
path: root/src/python/m5/__init__.py
diff options
context:
space:
mode:
authorSteve Reinhardt <stever@eecs.umich.edu>2006-06-15 11:45:51 -0400
committerSteve Reinhardt <stever@eecs.umich.edu>2006-06-15 11:45:51 -0400
commit88e22ee081f1b0259b624fe320af22a58f144251 (patch)
treee475bfefa76fa4af2f1c147225c012798193583c /src/python/m5/__init__.py
parent185ec39f792386d8b30f3288f2c2e4eaf0b43d02 (diff)
downloadgem5-88e22ee081f1b0259b624fe320af22a58f144251.tar.xz
Get Port stuff working with full-system scripts.
Key was adding support for cloning port references (trickier than it sounds). Got rid of class/instance thing and go back to instance cloning... still don't allow changing SimObject parameters/children after a class (instance) has been subclassed or instantiated (or cloned), which should avoid bizarre unintended behavior. configs/test/fs.py: Add ".port" to busses to get a port reference. Get rid of commented-out code. src/python/m5/__init__.py: resolveSimObject should call getCCObject() instead of createCCObject() to avoid cycles in recursively creating objects. src/python/m5/config.py: Get rid of class/instance thing and go back to instance cloning. Deep copy has to happen only on instance cloning then (and not on subclassing). Add getCCObject() method to force creation of C++ SimObject without recursively creating its children. Add support for cloning port references (trickier than it sounds). Also clean up some very obsolete comments. src/python/m5/objects/Bridge.py: src/python/m5/objects/Device.py: Add ports. --HG-- extra : convert_revision : 4816d05ead0de520748aace06dbd1911a33f0af8
Diffstat (limited to 'src/python/m5/__init__.py')
-rw-r--r--src/python/m5/__init__.py6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/python/m5/__init__.py b/src/python/m5/__init__.py
index a4fc9a5e3..f849a899b 100644
--- a/src/python/m5/__init__.py
+++ b/src/python/m5/__init__.py
@@ -107,11 +107,7 @@ env.update(os.environ)
# Function to provide to C++ so it can look up instances based on paths
def resolveSimObject(name):
obj = config.instanceDict[name]
- if not obj._ccObject:
- obj.createCCObject()
- if obj._ccObject == -1:
- panic("resolveSimObject: recursive lookup error on %s" % name)
- return obj._ccObject
+ return obj.getCCObject()
# The final hook to generate .ini files. Called from the user script
# once the config is built.