diff options
author | Andreas Sandberg <andreas.sandberg@arm.com> | 2019-01-26 09:23:16 +0000 |
---|---|---|
committer | Andreas Sandberg <andreas.sandberg@arm.com> | 2019-02-25 10:04:32 +0000 |
commit | f4d3080f4586147b9ee962770110944467b26c0c (patch) | |
tree | fecd701421c6d678e1f6af5e745e540a85ace7ce /src/python/m5/params.py | |
parent | a3c81f90556143dc6de1e8114c0a613b4010c05c (diff) | |
download | gem5-f4d3080f4586147b9ee962770110944467b26c0c.tar.xz |
python: Fix params/proxy import loop
There is a circular dependency between params and proxy at import
time. This causes issues for Python 3. Add the imports to the specific
methods with the dependencies to make the import happen when the
method is executed instead.
Change-Id: I770112fd3c07c395459e204976942bda3dc7236f
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/15993
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-by: Juha Jäykkä <juha.jaykka@arm.com>
Diffstat (limited to 'src/python/m5/params.py')
-rw-r--r-- | src/python/m5/params.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/python/m5/params.py b/src/python/m5/params.py index 72cc0b2ad..757a4f238 100644 --- a/src/python/m5/params.py +++ b/src/python/m5/params.py @@ -73,12 +73,15 @@ from . import ticks from .util import * def isSimObject(*args, **kwargs): + from . import SimObject return SimObject.isSimObject(*args, **kwargs) def isSimObjectSequence(*args, **kwargs): + from . import SimObject return SimObject.isSimObjectSequence(*args, **kwargs) def isSimObjectClass(*args, **kwargs): + from . import SimObject return SimObject.isSimObjectClass(*args, **kwargs) allParams = {} @@ -175,6 +178,7 @@ class ParamDesc(object): def __getattr__(self, attr): if attr == 'ptype': + from . import SimObject ptype = SimObject.allClasses[self.ptype_str] assert isSimObjectClass(ptype) self.ptype = ptype @@ -2158,5 +2162,3 @@ __all__ = ['Param', 'VectorParam', 'NextEthernetAddr', 'NULL', 'MasterPort', 'SlavePort', 'VectorMasterPort', 'VectorSlavePort'] - -from . import SimObject |