[PATCH] D25576: Add 64-bit MS _Interlocked functions as builtins again

Albert Gutowski via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 13 13:49:33 PDT 2016


agutowski added inline comments.


================
Comment at: lib/CodeGen/CGBuiltin.cpp:2730
+        llvm::AtomicOrdering::SequentiallyConsistent);
+    return Builder.CreateSub(RMWI, ConstantInt::get(IntTy, 1));
   }
----------------
rnk wrote:
> Can you make a helper similar to MakeBinaryAtomicValue for inc/dec and share this code with the 16 and 32-bit atomic increment implementations? You can do something like `Builder.CreateBinOp(Inc ? Instruction::Add : Instruction::Sub, ...)`
I thought about putting all the _Interlocked intrinsics here. Or do we want all the others to remain target-independent?


https://reviews.llvm.org/D25576





More information about the cfe-commits mailing list