NFC: use AtomicOrdering isStrongerThan
authorJF Bastien <jfb@google.com>
Wed, 6 Apr 2016 23:37:36 +0000 (23:37 +0000)
committerJF Bastien <jfb@google.com>
Wed, 6 Apr 2016 23:37:36 +0000 (23:37 +0000)
Summary: As discussed in D18775.

Reviewers: jyknight

Differential Revision: http://reviews.llvm.org/D18840

llvm-svn: 265617

clang/lib/CodeGen/CGAtomic.cpp

index 626f6a6..6a13224 100644 (file)
@@ -447,8 +447,9 @@ static void emitAtomicCmpXchgFailureSet(CodeGenFunction &CGF, AtomicExpr *E,
       FailureOrder = llvm::AtomicOrdering::SequentiallyConsistent;
       break;
     }
-    if (FailureOrder >= SuccessOrder) {
-      // Don't assert on undefined behaviour.
+    if (isStrongerThan(FailureOrder, SuccessOrder)) {
+      // Don't assert on undefined behavior "failure argument shall be no
+      // stronger than the success argument".
       FailureOrder =
         llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(SuccessOrder);
     }
@@ -1496,8 +1497,9 @@ AtomicInfo::EmitAtomicCompareExchangeLibcall(llvm::Value *ExpectedAddr,
 std::pair<RValue, llvm::Value *> AtomicInfo::EmitAtomicCompareExchange(
     RValue Expected, RValue Desired, llvm::AtomicOrdering Success,
     llvm::AtomicOrdering Failure, bool IsWeak) {
-  if (Failure >= Success)
-    // Don't assert on undefined behavior.
+  if (isStrongerThan(Failure, Success))
+    // Don't assert on undefined behavior "failure argument shall be no stronger
+    // than the success argument".
     Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(Success);
 
   // Check whether we should use a library call.