# Node ID b90448378de59b7cf4752d2e15db8b756b54faba # Parent b4d5f13cff19493e918b31678f5390170d24f2fc diff --git a/configs/ruby/Ruby.py b/configs/ruby/Ruby.py --- a/configs/ruby/Ruby.py +++ b/configs/ruby/Ruby.py @@ -39,6 +39,7 @@ # # Authors: Brad Beckmann +import importlib import math import m5 from m5.objects import * @@ -182,15 +183,15 @@ routers = [], ext_links = [], int_links = [], netifs = []) ruby.network = network - protocol = buildEnv['PROTOCOL'] - exec "import %s" % protocol + protocol_name = buildEnv['PROTOCOL'] + protocol = importlib.import_module(protocol_name) try: (cpu_sequencers, dir_cntrls, topology) = \ - eval("%s.create_system(options, full_system, system, dma_ports,\ - ruby)" - % protocol) + protocol.create_system(options, full_system, system, dma_ports, + ruby) except: - print "Error: could not create sytem for ruby protocol %s" % protocol + print "Error: could not create sytem for ruby protocol %s" % \ + protocol_name raise # Create a port proxy for connecting the system port. This is