summaryrefslogtreecommitdiff
path: root/configs
diff options
context:
space:
mode:
authorNilay Vaish <nilay@cs.wisc.edu>2012-01-28 19:33:37 -0600
committerNilay Vaish <nilay@cs.wisc.edu>2012-01-28 19:33:37 -0600
commitce336fae6a2c89310038d6fdd80902b771cf7ffa (patch)
tree46bac0d40ad81efe4a05c611800f334f234a829e /configs
parentf19b3f30b4fdbf464334f6a8c5b86210d675c9ec (diff)
downloadgem5-ce336fae6a2c89310038d6fdd80902b771cf7ffa.tar.xz
Config: Enable O3 CPU and Ruby in FS mode
Diffstat (limited to 'configs')
-rw-r--r--configs/example/ruby_fs.py17
1 files changed, 6 insertions, 11 deletions
diff --git a/configs/example/ruby_fs.py b/configs/example/ruby_fs.py
index e6ac5f8c8..a7d0a26cd 100644
--- a/configs/example/ruby_fs.py
+++ b/configs/example/ruby_fs.py
@@ -82,6 +82,7 @@ Ruby.define_options(parser)
execfile(os.path.join(config_root, "common", "Options.py"))
(options, args) = parser.parse_args()
+options.ruby = True
if args:
print "Error: script doesn't take any positional arguments"
@@ -97,17 +98,11 @@ if options.benchmark:
else:
bm = [SysConfig()]
-#
-# currently ruby fs only works in simple timing mode because ruby does not
-# support atomic accesses by devices. Also ruby_fs currently assumes
-# that is running a checkpoints that were created by ALPHA_FS under atomic
-# mode. Since switch cpus are not defined in these checkpoints, we don't
-# fast forward with the atomic cpu and instead set the FutureClass to None.
-# Therefore the cpus resolve to the correct names and unserialize correctly.
-#
-class CPUClass(TimingSimpleCPU): pass
-test_mem_mode = 'timing'
-FutureClass = None
+# Check for timing mode because ruby does not support atomic accesses
+if not (options.cpu_type == "detailed" or options.cpu_type == "timing"):
+ print >> sys.stderr, "Ruby requires TimingSimpleCPU or O3CPU!!"
+ sys.exit(1)
+(CPUClass, test_mem_mode, FutureClass) = Simulation.setCPUClass(options)
CPUClass.clock = options.clock