From: Eli Friedman Date: Thu, 6 Oct 2011 23:12:03 +0000 (+0000) Subject: llvm.memory.barrier is going away; remove the wrapper intrinsic __builtin_llvm_memory... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=51c3b79caa493a53d324190c0d7e3cd1fe93d4f3;p=clang llvm.memory.barrier is going away; remove the wrapper intrinsic __builtin_llvm_memory_barrier. __atomic_thread_fence will be landing soon as a replacement, wrapping around the new fence instruction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141332 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Basic/Builtins.def b/include/clang/Basic/Builtins.def index eb5c604294..50b51c7a4f 100644 --- a/include/clang/Basic/Builtins.def +++ b/include/clang/Basic/Builtins.def @@ -589,8 +589,6 @@ BUILTIN(__sync_swap_16, "LLLiLLLiD*LLLi.", "n") // Non-overloaded atomic builtins. BUILTIN(__sync_synchronize, "v.", "n") -// LLVM instruction builtin [Clang extension]. -BUILTIN(__builtin_llvm_memory_barrier,"vbbbbb", "n") // GCC does not support these, they are a Clang extension. BUILTIN(__sync_fetch_and_min, "iiD*i", "n") BUILTIN(__sync_fetch_and_max, "iiD*i", "n") diff --git a/lib/CodeGen/CGBuiltin.cpp b/lib/CodeGen/CGBuiltin.cpp index dfe4c4ce99..3ec4efef76 100644 --- a/lib/CodeGen/CGBuiltin.cpp +++ b/lib/CodeGen/CGBuiltin.cpp @@ -951,18 +951,6 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD, return RValue::get(0); } - case Builtin::BI__builtin_llvm_memory_barrier: { - Value *C[5] = { - EmitScalarExpr(E->getArg(0)), - EmitScalarExpr(E->getArg(1)), - EmitScalarExpr(E->getArg(2)), - EmitScalarExpr(E->getArg(3)), - EmitScalarExpr(E->getArg(4)) - }; - Builder.CreateCall(CGM.getIntrinsic(Intrinsic::memory_barrier), C); - return RValue::get(0); - } - // Library functions with special handling. case Builtin::BIsqrt: case Builtin::BIsqrtf: