summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorSteve Reinhardt <stever@eecs.umich.edu>2005-03-16 23:10:17 -0500
committerSteve Reinhardt <stever@eecs.umich.edu>2005-03-16 23:10:17 -0500
commit090301366974386da75fe806a346d3ff953e1e2d (patch)
tree2755d2f1792353820297f50355c78fa4bc4d473c /python
parent14c461c93c9b83fffb0d629d347a28d4f7b79198 (diff)
downloadgem5-090301366974386da75fe806a346d3ff953e1e2d.tar.xz
Allow proxies to refer to proxies in config files.
python/m5/config.py: Allow proxies to refer to other proxies and resolve by recurseivly calling unproxy(). Not sure this works completely (since I don't have any examples to test it on) but it doesn't seem to break any existing config scripts. --HG-- extra : convert_revision : d7fc272d0777d85f89104dfb5d1c5e4d8ddd6d6f
Diffstat (limited to 'python')
-rw-r--r--python/m5/config.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/python/m5/config.py b/python/m5/config.py
index e6ad5a0ba..8e7576c41 100644
--- a/python/m5/config.py
+++ b/python/m5/config.py
@@ -197,12 +197,13 @@ class Proxy(object):
raise AttributeError, \
'Parent of %s type %s not found at path %s' \
% (base.name, ptype, self._path)
- found, done = obj.find(ptype, self._path)
- if isinstance(found, Proxy):
- done = False
+ result, done = obj.find(ptype, self._path)
obj = obj.parent
- return self._mulcheck(found)
+ if isinstance(result, Proxy):
+ result = result.unproxy(obj, ptype)
+
+ return self._mulcheck(result)
def getindex(obj, index):
if index == None: