Nikos Nikoleris has submitted this change and it was merged. ( https://gem5-review.googlesource.com/2906 )

Change subject: scons: Make MOESI_CMP_directory the default ARM ruby protocol
......................................................................

scons: Make MOESI_CMP_directory the default ARM ruby protocol

Previously ARM binaries were by default compiled with the MI_example
protocol. The MI_example protocol cannot properly support load/store
exclusive instructions and therefore it cannot be used to simulate
multicore ARM systems. This change changes to MOESI_CMP_directory as
the default ruby protocol for ARM systems.

Change-Id: I942d950ba466aea9a75f3d8764f9f3eddd0c3baa
Reviewed-by: Andreas Sandberg <[email protected]>
Reviewed-on: https://gem5-review.googlesource.com/2906
Maintainer: Andreas Sandberg <[email protected]>
Reviewed-by: Jason Lowe-Power <[email protected]>
---
M build_opts/ARM
M tests/testing/tests.py
2 files changed, 17 insertions(+), 4 deletions(-)

Approvals:
  Jason Lowe-Power: Looks good to me, approved
  Andreas Sandberg: Looks good to me, approved



diff --git a/build_opts/ARM b/build_opts/ARM
index b175fd0..c473078 100644
--- a/build_opts/ARM
+++ b/build_opts/ARM
@@ -1,3 +1,3 @@
 TARGET_ISA = 'arm'
 CPU_MODELS = 'AtomicSimpleCPU,TimingSimpleCPU,O3CPU,MinorCPU'
-PROTOCOL = 'MI_example'
+PROTOCOL = 'MOESI_CMP_directory'
diff --git a/tests/testing/tests.py b/tests/testing/tests.py
old mode 100644
new mode 100755
index c9a2a06..a83f598
--- a/tests/testing/tests.py
+++ b/tests/testing/tests.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python2
 #
-# Copyright (c) 2016 ARM Limited
+# Copyright (c) 2016-2017 ARM Limited
 # All rights reserved
 #
 # The license below extends only to copyright in the software and shall
@@ -161,6 +161,16 @@
     'learning-gem5-p1-two-level',
 )

+default_ruby_protocol = {
+    "arm" : "MOESI_CMP_directory",
+}
+
+def get_default_protocol(arch):
+    try:
+        return default_ruby_protocol[arch]
+    except KeyError:
+        return 'MI-example'
+
 all_categories = ("quick", "long")
 all_modes = ("fs", "se")

@@ -337,8 +347,11 @@
     else:
         configs += generic_configs

-    if ruby_protocol == 'MI_example':
-        configs += [ "%s-ruby" % (c, ) for c in configs ]
+    if ruby_protocol == get_default_protocol(isa):
+        if ruby_protocol == 'MI_example':
+            configs += [ "%s-ruby" % (c, ) for c in configs ]
+        else:
+ configs += [ "%s-ruby-%s" % (c, ruby_protocol) for c in configs ]
     elif ruby_protocol is not None:
         # Override generic ISA configs when using Ruby (excluding
         # MI_example which is included in all ISAs by default). This

--
To view, visit https://gem5-review.googlesource.com/2906
To unsubscribe, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I942d950ba466aea9a75f3d8764f9f3eddd0c3baa
Gerrit-Change-Number: 2906
Gerrit-PatchSet: 3
Gerrit-Owner: Nikos Nikoleris <[email protected]>
Gerrit-Reviewer: Andreas Sandberg <[email protected]>
Gerrit-Reviewer: Jason Lowe-Power <[email protected]>
Gerrit-Reviewer: Nikos Nikoleris <[email protected]>
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to