From: Andreas Sandberg Date: Tue, 4 Jul 2017 10:04:49 +0000 (+0100) Subject: config, arm: Don't import timing models for missing CPUs X-Git-Tag: v19.0.0.0~2720 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=97187fa814167906ed168a02aad09ff6fd0ed17c;p=gem5.git config, arm: Don't import timing models for missing CPUs When importing the cores.arm package, we currently throw an exception if a timing model can't be imported due to a missing dependency (e.g., the required CPU model wasn't included in the build). This is undesirable since it prevents other, working, timing models from being added to the package. Wrap the import_module call in a try-except block and skip timing models that have missing dependencies. Change-Id: I92bab62c989f433a8a4a7bf59207d9d81b3d19e1 Signed-off-by: Andreas Sandberg Reviewed-on: https://gem5-review.googlesource.com/3946 Reviewed-by: Jason Lowe-Power Maintainer: Jason Lowe-Power --- diff --git a/configs/common/cores/arm/__init__.py b/configs/common/cores/arm/__init__.py index 96388f731..582e6b859 100644 --- a/configs/common/cores/arm/__init__.py +++ b/configs/common/cores/arm/__init__.py @@ -43,6 +43,12 @@ _cpu_modules = [ ] for c in _cpu_modules: - import_module("." + c, package=__package__) + try: + import_module("." + c, package=__package__) + except NameError: + # Failed to import a CPU model due to a missing + # dependency. This typically happens if gem5 has been compiled + # without a CPU model needed by the timing model. + pass __all__ = _cpu_modules