Displaying 8 results from an estimated 8 matches for "emitbuiltinexpr".
2012 Jul 10
2
[LLVMdev] question about Type::canLoslesslyBitCastTo
...2 to <2 x i16> is probably just an oversight. Please
feel free to send in a patch fixing it.
Ciao, Duncan.
>
>
> I am trying to change all vector types (v2i16 and v4i8) in
> include/llvm/IntrinsicsMips.td to i32, but I can't do that because the code in
> CodeGenFunction::EmitBuiltinExpr (in clang/CGBuiltin.cpp) raises an assertion
> when it calls Type::canLoslesslyBitCastTo to check whether conversion between
> v2i16 (or v4i8) and i32 is legal.
>
> To work around this problem, I can put back CodeGenFunction::EmitMipsBuiltinExpr
> which was removed in r159368 and add...
2012 Jul 10
0
[LLVMdev] question about Type::canLoslesslyBitCastTo
...uence of instructions (which I think is
lossless)?
store i32 %src, i32* %ptr
%ptr2 = bitcast i32* %ptr to v2i16*
%dst = load v2i16* %ptr2
I am trying to change all vector types (v2i16 and v4i8) in
include/llvm/IntrinsicsMips.td to i32, but I can't do that because the code
in CodeGenFunction::EmitBuiltinExpr (in clang/CGBuiltin.cpp) raises an
assertion when it calls Type::canLoslesslyBitCastTo to check whether
conversion between v2i16 (or v4i8) and i32 is legal.
To work around this problem, I can put back
CodeGenFunction::EmitMipsBuiltinExpr which was removed in r159368 and add
code to do type convers...
2012 Jul 03
2
[LLVMdev] question about Type::canLoslesslyBitCastTo
Type::canLoslesslyBitCastTo(Type *Ty) in lib/VMCore/Type.cpp always returns
false when it checks whether an integer can be bitcast to a vector or vice
versa.
For example, (i32 => v2i16) or (v2i16 => i32) is false.
But it seems that it returns true if it is checking conversion between two
vector types which have the same size.
For example, (v4i8 => v2i16) would return true.
What is the
2012 Jul 16
0
[LLVMdev] question about Type::canLoslesslyBitCastTo
...gt; Please
> feel free to send in a patch fixing it.
>
> Ciao, Duncan.
>
> >
> >
> > I am trying to change all vector types (v2i16 and v4i8) in
> > include/llvm/IntrinsicsMips.td to i32, but I can't do that because the
> code in
> > CodeGenFunction::EmitBuiltinExpr (in clang/CGBuiltin.cpp) raises an
> assertion
> > when it calls Type::canLoslesslyBitCastTo to check whether conversion
> between
> > v2i16 (or v4i8) and i32 is legal.
> >
> > To work around this problem, I can put back
> CodeGenFunction::EmitMipsBuiltinExpr
> &...
2013 Oct 10
3
[LLVMdev] A new builtin: __builtin_stack_pointer()
...quot;iv**", "j")
BUILTIN(__builtin_longjmp, "vv**i", "r")
diff --git a/lib/CodeGen/CGBuiltin.cpp b/lib/CodeGen/CGBuiltin.cpp
index d187678..f66f506 100644
--- a/lib/CodeGen/CGBuiltin.cpp
+++ b/lib/CodeGen/CGBuiltin.cpp
@@ -736,6 +736,11 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
Value *F = CGM.getIntrinsic(Intrinsic::frameaddress);
return RValue::get(Builder.CreateCall(F, Depth));
}
+ case Builtin::BI__builtin_stack_pointer: {
+ Value *StackAddr =
+ Builder.CreateCall(CGM.getIntrinsic(Intrinsic::stacksave));
+ return RValue:...
2012 Feb 21
5
[LLVMdev] buildbot failure in LLVM on clang-x86_64-debian-fnt
...m::Module*, llvm::Intrinsic::ID,
llvm::ArrayRef<llvm::Type*>) + 172
7 clang 0x0000000001da8476
llvm::IRBuilderBase::CreateMemCpy(llvm::Value*, llvm::Value*,
llvm::Value*, unsigned int, bool, llvm::MDNode*) + 278
8 clang 0x0000000000917059
clang::CodeGen::CodeGenFunction::EmitBuiltinExpr(clang::FunctionDecl
const*, unsigned int, clang::CallExpr const*) + 13001
9 clang 0x000000000085491c
clang::CodeGen::CodeGenFunction::EmitCallExpr(clang::CallExpr const*,
clang::CodeGen::ReturnValueSlot) + 236
10 clang 0x0000000000879146
11 clang 0x00000000008807ae
12...
2012 Feb 21
0
[LLVMdev] buildbot failure in LLVM on clang-x86_64-debian-fnt
...D,
> llvm::ArrayRef<llvm::Type*>) + 172
> 7 clang 0x0000000001da8476
> llvm::IRBuilderBase::CreateMemCpy(llvm::Value*, llvm::Value*,
> llvm::Value*, unsigned int, bool, llvm::MDNode*) + 278
> 8 clang 0x0000000000917059
> clang::CodeGen::CodeGenFunction::EmitBuiltinExpr(clang::FunctionDecl
> const*, unsigned int, clang::CallExpr const*) + 13001
> 9 clang 0x000000000085491c
> clang::CodeGen::CodeGenFunction::EmitCallExpr(clang::CallExpr const*,
> clang::CodeGen::ReturnValueSlot) + 236
> 10 clang 0x0000000000879146
> 11 clang...
2014 Mar 07
3
[LLVMdev] [RFC] Add second "failure" AtomicOrdering to cmpxchg instruction
...eInst *StoreVal1 = CGF.Builder.CreateStore(CXI, Val1);
StoreVal1->setAlignment(Align);
diff --git a/lib/CodeGen/CGBuiltin.cpp b/lib/CodeGen/CGBuiltin.cpp
index 3966419..7649325 100644
--- a/lib/CodeGen/CGBuiltin.cpp
+++ b/lib/CodeGen/CGBuiltin.cpp
@@ -964,6 +964,7 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
Args[2] = EmitToInt(*this, EmitScalarExpr(E->getArg(2)), T, IntType);
Value *Result = Builder.CreateAtomicCmpXchg(Args[0], Args[1], Args[2],
+ llvm::SequentiallyConsistent,...