Displaying 5 results from an estimated 5 matches for "getconstantint".
2009 Jul 30
2
[LLVMdev] Vector logic regression in r73431
...ed the real bug. Right at the end of
InstCombiner::SimplifyDemandedUseBits, there's this piece of code:
// If the client is only demanding bits that we know, return the known
// constant.
if ((DemandedMask & (RHSKnownZero|RHSKnownOne)) == DemandedMask) {
Constant *C = Context->getConstantInt(RHSKnownOne);
if (isa<PointerType>(V->getType()))
C = Context->getConstantExprIntToPtr(C, V->getType());
return C;
}
return false;
}
Note that C is a scalar integer, and so when V is actually a vector the type
isn't preserved.
I'm not entirely sure how thi...
2009 Jul 30
0
[LLVMdev] Vector logic regression in r73431
...the end of
> InstCombiner::SimplifyDemandedUseBits, there's this piece of code:
>
> // If the client is only demanding bits that we know, return the known
> // constant.
> if ((DemandedMask & (RHSKnownZero|RHSKnownOne)) == DemandedMask) {
> Constant *C = Context->getConstantInt(RHSKnownOne);
> if (isa<PointerType>(V->getType()))
> C = Context->getConstantExprIntToPtr(C, V->getType());
> return C;
> }
> return false;
> }
>
> Note that C is a scalar integer, and so when V is actually a vector the type
> isn't preser...
2009 Jul 29
0
[LLVMdev] Vector logic regression in r73431
On Wed, Jul 29, 2009 at 3:45 AM, Nicolas Capens<nicolas at capens.net> wrote:
> So could anyone who knows the ins and outs of this code have a look at how
> to make it handle vectors correctly? Or if that’s not an option right now,
> please revert the broken optimizations. Note that there might be more things
> affected than visitAnd, visitOr and vistXor, I’ve only been able to
2009 Jul 29
3
[LLVMdev] Vector logic regression in r73431
Hi All,
I found a regression which triggers the asserts: "Binary operator types must
match!" and "Op types should be identical!". It's happening with a piece of
vector code, and the asserts happen because a logic operation is attempted
between a vector and a scalar (which is not present in the original code,
but created by InstCombine).
It's caused by revision
2011 May 06
0
[LLVMdev] Question about linking llvm-mc when porting a new backend
...LibCalls.cpp.o)
llvm::EmitStrNCmp(llvm::Value*, llvm::Value*, llvm::Value*,
llvm::IRBuilder<true, llvm::ConstantFolder,
llvm::IRBuilderDefaultInserter<true> >&, llvm::TargetData const*)in
libLLVMTransformUtils.a(BuildLibCalls.cpp.o)
(anonymous namespace)::SimplifyCFGOpt::GetConstantInt(llvm::Value*)
in libLLVMTransformUtils.a(SimplifyCFG.cpp.o)
(anonymous
namespace)::SimplifyCFGOpt::isValueEqualityComparison(llvm::TerminatorInst*)
in libLLVMTransformUtils.a(SimplifyCFG.cpp.o)
(anonymous
namespace)::SimplifyCFGOp...