Re: r281401 - Temporary fix for MS _Interlocked intrinsics
Buildbot failure - http://lab.llvm.org:8011/builders/clang-x86-windows-msvc2015/builds/323 On Tue, Sep 13, 2016 at 3:05 PM, David Majnemerwrote: > What issue is this addressing? > > On Tue, Sep 13, 2016 at 2:51 PM, Albert Gutowski via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: agutowski >> Date: Tue Sep 13 16:51:37 2016 >> New Revision: 281401 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=281401=rev >> Log: >> Temporary fix for MS _Interlocked intrinsics >> >> Modified: >> cfe/trunk/include/clang/Basic/Builtins.def >> cfe/trunk/lib/CodeGen/CGBuiltin.cpp >> cfe/trunk/lib/Headers/intrin.h >> cfe/trunk/test/CodeGen/ms-intrinsics.c >> >> Modified: cfe/trunk/include/clang/Basic/Builtins.def >> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/ >> Basic/Builtins.def?rev=281401=281400=281401=diff >> >> == >> --- cfe/trunk/include/clang/Basic/Builtins.def (original) >> +++ cfe/trunk/include/clang/Basic/Builtins.def Tue Sep 13 16:51:37 2016 >> @@ -719,7 +719,6 @@ LANGBUILTIN(__GetExceptionInfo, "v*.", " >> LANGBUILTIN(_InterlockedAnd8, "ccD*c","n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedAnd16, "ssD*s","n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedAnd,"LiLiD*Li", "n", ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedAnd64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedCompareExchange8, "ccD*cc", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedCompareExchange16, "ssD*ss", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedCompareExchange,"LiLiD*LiLi", "n", >> ALL_MS_LANGUAGES) >> @@ -727,31 +726,24 @@ LANGBUILTIN(_InterlockedCompareExchange6 >> LANGBUILTIN(_InterlockedCompareExchangePointer, "v*v*D*v*v*", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedDecrement16,"ssD*", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedDecrement, "LiLiD*", "n", >> ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedDecrement64,"LLiLLiD*", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchange, "LiLiD*Li", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchange8, "ccD*c","n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchange16, "ssD*s","n", >> ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedExchange64, "LLiLLiD*LLi", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchangeAdd8, "ccD*c", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchangeAdd16, "ssD*s", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchangeAdd,"LiLiD*Li", "n", >> ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedExchangeAdd64, "LLiLLiD*LLi","n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchangePointer,"v*v*D*v*", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchangeSub8, "ccD*c","n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchangeSub16, "ssD*s","n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedExchangeSub,"LiLiD*Li", "n", >> ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedExchangeSub64, "LLiLLiD*LLi", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedIncrement16,"ssD*", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedIncrement, "LiLiD*", "n", >> ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedIncrement64,"LLiLLiD*", "n", >> ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedOr8, "ccD*c","n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedOr16, "ssD*s","n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedOr, "LiLiD*Li", "n", ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedOr64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedXor8, "ccD*c", "n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedXor16, "ssD*s", "n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_InterlockedXor, "LiLiD*Li","n", ALL_MS_LANGUAGES) >> -LANGBUILTIN(_InterlockedXor64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) >> LANGBUILTIN(__noop, "i.", "n", ALL_MS_LANGUAGES) >> LANGBUILTIN(__readfsdword,"ULiULi", "n", ALL_MS_LANGUAGES) >> LANGBUILTIN(_rotl8, "UcUcUc","n", ALL_MS_LANGUAGES) >> >> Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp >> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CG >> Builtin.cpp?rev=281401=281400=281401=diff >> >> == >> --- cfe/trunk/lib/CodeGen/CGBuiltin.cpp (original) >> +++ cfe/trunk/lib/CodeGen/CGBuiltin.cpp Tue Sep 13 16:51:37 2016 >> @@ -1963,7 +1963,6 @@ RValue CodeGenFunction::EmitBuiltinExpr( >>case Builtin::BI_InterlockedExchange8: >>case Builtin::BI_InterlockedExchange16: >>case Builtin::BI_InterlockedExchange: >> - case Builtin::BI_InterlockedExchange64: >>case
Re: r281401 - Temporary fix for MS _Interlocked intrinsics
What issue is this addressing? On Tue, Sep 13, 2016 at 2:51 PM, Albert Gutowski via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: agutowski > Date: Tue Sep 13 16:51:37 2016 > New Revision: 281401 > > URL: http://llvm.org/viewvc/llvm-project?rev=281401=rev > Log: > Temporary fix for MS _Interlocked intrinsics > > Modified: > cfe/trunk/include/clang/Basic/Builtins.def > cfe/trunk/lib/CodeGen/CGBuiltin.cpp > cfe/trunk/lib/Headers/intrin.h > cfe/trunk/test/CodeGen/ms-intrinsics.c > > Modified: cfe/trunk/include/clang/Basic/Builtins.def > URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/ > clang/Basic/Builtins.def?rev=281401=281400=281401=diff > > == > --- cfe/trunk/include/clang/Basic/Builtins.def (original) > +++ cfe/trunk/include/clang/Basic/Builtins.def Tue Sep 13 16:51:37 2016 > @@ -719,7 +719,6 @@ LANGBUILTIN(__GetExceptionInfo, "v*.", " > LANGBUILTIN(_InterlockedAnd8, "ccD*c","n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedAnd16, "ssD*s","n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedAnd,"LiLiD*Li", "n", ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedAnd64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedCompareExchange8, "ccD*cc", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedCompareExchange16, "ssD*ss", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedCompareExchange,"LiLiD*LiLi", "n", > ALL_MS_LANGUAGES) > @@ -727,31 +726,24 @@ LANGBUILTIN(_InterlockedCompareExchange6 > LANGBUILTIN(_InterlockedCompareExchangePointer, "v*v*D*v*v*", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedDecrement16,"ssD*", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedDecrement, "LiLiD*", "n", > ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedDecrement64,"LLiLLiD*", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchange, "LiLiD*Li", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchange8, "ccD*c","n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchange16, "ssD*s","n", > ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedExchange64, "LLiLLiD*LLi", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchangeAdd8, "ccD*c", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchangeAdd16, "ssD*s", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchangeAdd,"LiLiD*Li", "n", > ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedExchangeAdd64, "LLiLLiD*LLi","n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchangePointer,"v*v*D*v*", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchangeSub8, "ccD*c","n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchangeSub16, "ssD*s","n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedExchangeSub,"LiLiD*Li", "n", > ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedExchangeSub64, "LLiLLiD*LLi", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedIncrement16,"ssD*", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedIncrement, "LiLiD*", "n", > ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedIncrement64,"LLiLLiD*", "n", > ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedOr8, "ccD*c","n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedOr16, "ssD*s","n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedOr, "LiLiD*Li", "n", ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedOr64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedXor8, "ccD*c", "n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedXor16, "ssD*s", "n", ALL_MS_LANGUAGES) > LANGBUILTIN(_InterlockedXor, "LiLiD*Li","n", ALL_MS_LANGUAGES) > -LANGBUILTIN(_InterlockedXor64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) > LANGBUILTIN(__noop, "i.", "n", ALL_MS_LANGUAGES) > LANGBUILTIN(__readfsdword,"ULiULi", "n", ALL_MS_LANGUAGES) > LANGBUILTIN(_rotl8, "UcUcUc","n", ALL_MS_LANGUAGES) > > Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp > URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/ > CGBuiltin.cpp?rev=281401=281400=281401=diff > > == > --- cfe/trunk/lib/CodeGen/CGBuiltin.cpp (original) > +++ cfe/trunk/lib/CodeGen/CGBuiltin.cpp Tue Sep 13 16:51:37 2016 > @@ -1963,7 +1963,6 @@ RValue CodeGenFunction::EmitBuiltinExpr( >case Builtin::BI_InterlockedExchange8: >case Builtin::BI_InterlockedExchange16: >case Builtin::BI_InterlockedExchange: > - case Builtin::BI_InterlockedExchange64: >case Builtin::BI_InterlockedExchangePointer: > return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Xchg, E); >case Builtin::BI_InterlockedCompareExchangePointer: { > @@ -2007,8 +2006,7 @@ RValue CodeGenFunction::EmitBuiltinExpr( >return
r281401 - Temporary fix for MS _Interlocked intrinsics
Author: agutowski Date: Tue Sep 13 16:51:37 2016 New Revision: 281401 URL: http://llvm.org/viewvc/llvm-project?rev=281401=rev Log: Temporary fix for MS _Interlocked intrinsics Modified: cfe/trunk/include/clang/Basic/Builtins.def cfe/trunk/lib/CodeGen/CGBuiltin.cpp cfe/trunk/lib/Headers/intrin.h cfe/trunk/test/CodeGen/ms-intrinsics.c Modified: cfe/trunk/include/clang/Basic/Builtins.def URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/Builtins.def?rev=281401=281400=281401=diff == --- cfe/trunk/include/clang/Basic/Builtins.def (original) +++ cfe/trunk/include/clang/Basic/Builtins.def Tue Sep 13 16:51:37 2016 @@ -719,7 +719,6 @@ LANGBUILTIN(__GetExceptionInfo, "v*.", " LANGBUILTIN(_InterlockedAnd8, "ccD*c","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedAnd16, "ssD*s","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedAnd,"LiLiD*Li", "n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedAnd64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedCompareExchange8, "ccD*cc", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedCompareExchange16, "ssD*ss", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedCompareExchange,"LiLiD*LiLi", "n", ALL_MS_LANGUAGES) @@ -727,31 +726,24 @@ LANGBUILTIN(_InterlockedCompareExchange6 LANGBUILTIN(_InterlockedCompareExchangePointer, "v*v*D*v*v*", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedDecrement16,"ssD*", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedDecrement, "LiLiD*", "n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedDecrement64,"LLiLLiD*", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchange, "LiLiD*Li", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchange8, "ccD*c","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchange16, "ssD*s","n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedExchange64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchangeAdd8, "ccD*c", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchangeAdd16, "ssD*s", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchangeAdd,"LiLiD*Li", "n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedExchangeAdd64, "LLiLLiD*LLi","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchangePointer,"v*v*D*v*", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchangeSub8, "ccD*c","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchangeSub16, "ssD*s","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedExchangeSub,"LiLiD*Li", "n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedExchangeSub64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedIncrement16,"ssD*", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedIncrement, "LiLiD*", "n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedIncrement64,"LLiLLiD*", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedOr8, "ccD*c","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedOr16, "ssD*s","n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedOr, "LiLiD*Li", "n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedOr64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedXor8, "ccD*c", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedXor16, "ssD*s", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_InterlockedXor, "LiLiD*Li","n", ALL_MS_LANGUAGES) -LANGBUILTIN(_InterlockedXor64, "LLiLLiD*LLi", "n", ALL_MS_LANGUAGES) LANGBUILTIN(__noop, "i.", "n", ALL_MS_LANGUAGES) LANGBUILTIN(__readfsdword,"ULiULi", "n", ALL_MS_LANGUAGES) LANGBUILTIN(_rotl8, "UcUcUc","n", ALL_MS_LANGUAGES) Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGBuiltin.cpp?rev=281401=281400=281401=diff == --- cfe/trunk/lib/CodeGen/CGBuiltin.cpp (original) +++ cfe/trunk/lib/CodeGen/CGBuiltin.cpp Tue Sep 13 16:51:37 2016 @@ -1963,7 +1963,6 @@ RValue CodeGenFunction::EmitBuiltinExpr( case Builtin::BI_InterlockedExchange8: case Builtin::BI_InterlockedExchange16: case Builtin::BI_InterlockedExchange: - case Builtin::BI_InterlockedExchange64: case Builtin::BI_InterlockedExchangePointer: return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Xchg, E); case Builtin::BI_InterlockedCompareExchangePointer: { @@ -2007,8 +2006,7 @@ RValue CodeGenFunction::EmitBuiltinExpr( return RValue::get(Builder.CreateExtractValue(CXI, 0)); } case Builtin::BI_InterlockedIncrement16: - case Builtin::BI_InterlockedIncrement: - case Builtin::BI_InterlockedIncrement64: { + case Builtin::BI_InterlockedIncrement: { llvm::Type *IntTy = ConvertType(E->getType()); AtomicRMWInst *RMWI = Builder.CreateAtomicRMW( AtomicRMWInst::Add,