Add hasSideEffects=0 to some atomic instructions.
authorCraig Topper <craig.topper@gmail.com>
Wed, 26 Dec 2012 23:08:12 +0000 (23:08 +0000)
committerCraig Topper <craig.topper@gmail.com>
Wed, 26 Dec 2012 23:08:12 +0000 (23:08 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171122 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrCompiler.td

index 9e6f27988f71569f170d1708605d0bab17482d3d..e9e1e10d121ca61a60328401d7100a55cc5c5553 100644 (file)
@@ -559,7 +559,7 @@ defm : PSEUDO_ATOMIC_LOAD_BINOP_PATS<"ATOMUMAX", "atomic_load_umax">;
 defm : PSEUDO_ATOMIC_LOAD_BINOP_PATS<"ATOMUMIN", "atomic_load_umin">;
 
 multiclass PSEUDO_ATOMIC_LOAD_BINOP6432<string mnemonic> {
-  let usesCustomInserter = 1, mayLoad = 1, mayStore = 1 in
+  let usesCustomInserter = 1, mayLoad = 1, mayStore = 1, hasSideEffects = 0 in
     def #NAME#6432 : I<0, Pseudo, (outs GR32:$dst1, GR32:$dst2),
                        (ins i64mem:$ptr, GR32:$val1, GR32:$val2),
                        !strconcat(mnemonic, "6432 PSEUDO!"), []>;