aboutsummaryrefslogtreecommitdiff
path: root/backend/unittests/CodeGen/MachineValueTypesTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backend/unittests/CodeGen/MachineValueTypesTest.cpp')
-rw-r--r--backend/unittests/CodeGen/MachineValueTypesTest.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/backend/unittests/CodeGen/MachineValueTypesTest.cpp b/backend/unittests/CodeGen/MachineValueTypesTest.cpp
index 50482ba..64d4465 100644
--- a/backend/unittests/CodeGen/MachineValueTypesTest.cpp
+++ b/backend/unittests/CodeGen/MachineValueTypesTest.cpp
@@ -174,6 +174,11 @@ void testMachineMemOperand(TestContext &Context) {
Context.expect(rcc::MachineMemOperand::create(CompareExchange).has_value(),
"compatible compare-exchange orderings must be accepted");
+ CompareExchange.FailureOrdering = rcc::AtomicOrdering::NotAtomic;
+ Context.expect(rcc::MachineMemOperand::create(CompareExchange).has_value(),
+ "LLVM MIR compare-exchange MMO without failure ordering must be accepted");
+
+ CompareExchange.FailureOrdering = rcc::AtomicOrdering::Acquire;
CompareExchange.SuccessOrdering = rcc::AtomicOrdering::Release;
Context.expect(!rcc::MachineMemOperand::create(CompareExchange),
"failure ordering stronger than success must be rejected");