Alec Roelke has uploaded this change for review. ( https://gem5-review.googlesource.com/7181

Change subject: arch-riscv: Change AMO request flags
......................................................................

arch-riscv: Change AMO request flags

This patch adds the LOCKED_RMW flag to atomic memory operations to
ensure that they are atomic.  It does not change their memory ordering
flags.

Change-Id: Ibc01091f83e3ff7c5b1e6153beb62291eba9dde4
---
M src/arch/riscv/isa/formats/amo.isa
1 file changed, 5 insertions(+), 4 deletions(-)



diff --git a/src/arch/riscv/isa/formats/amo.isa b/src/arch/riscv/isa/formats/amo.isa
index e3be237..241dab4 100644
--- a/src/arch/riscv/isa/formats/amo.isa
+++ b/src/arch/riscv/isa/formats/amo.isa
@@ -43,8 +43,7 @@
         // Constructor
         %(class_name)s(ExtMachInst machInst);

-    protected:
-
+      protected:
         class %(class_name)sLoad : public %(base_class)sMicro
         {
           public:
@@ -101,8 +100,9 @@
         %(constructor)s;
         flags[IsFirstMicroop] = true;
         flags[IsDelayedCommit] = true;
+        memAccessFlags = memAccessFlags | Request::LOCKED_RMW;
         if (AQ)
-            memAccessFlags = Request::ACQUIRE;
+            memAccessFlags = memAccessFlags | Request::ACQUIRE;
     }
 }};

@@ -114,8 +114,9 @@
         %(constructor)s;
         flags[IsLastMicroop] = true;
         flags[IsNonSpeculative] = true;
+        memAccessFlags = memAccessFlags | Request::LOCKED_RMW;
         if (RL)
-            memAccessFlags = Request::RELEASE;
+            memAccessFlags = memAccessFlags | Request::RELEASE;
     }
 }};


--
To view, visit https://gem5-review.googlesource.com/7181
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibc01091f83e3ff7c5b1e6153beb62291eba9dde4
Gerrit-Change-Number: 7181
Gerrit-PatchSet: 1
Gerrit-Owner: Alec Roelke <ar...@virginia.edu>
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to