search for: getfalse

Displaying 11 results from an estimated 11 matches for "getfalse".

2013 May 13
3
[LLVMdev] Q: When is a boolean not a boolean?
...= false; - Value *TrueVal = ConstantInt::getTrue(TrueSucc->getContext()); + Value *TrueVal = ConstantInt::getTrue(BranchCond->getContext()); BasicBlockEdge TrueE(Parent, TrueSucc); Changed |= propagateEquality(BranchCond, TrueVal, TrueE); - Value *FalseVal = ConstantInt::getFalse(FalseSucc->getContext()); + Value *FalseVal = ConstantInt::getFalse(BranchCond->getContext()); BasicBlockEdge FalseE(Parent, FalseSucc); Changed |= propagateEquality(BranchCond, FalseVal, FalseE); Any other ideas about where I should look for the root problem? Is there any bette...
2013 May 13
0
[LLVMdev] Q: When is a boolean not a boolean?
...eVal = ConstantInt::getTrue(TrueSucc->getContext()); > + Value *TrueVal = ConstantInt::getTrue(BranchCond->getContext()); > BasicBlockEdge TrueE(Parent, TrueSucc); > Changed |= propagateEquality(BranchCond, TrueVal, TrueE); > > - Value *FalseVal = ConstantInt::getFalse(FalseSucc->getContext()); > + Value *FalseVal = ConstantInt::getFalse(BranchCond->getContext()); > BasicBlockEdge FalseE(Parent, FalseSucc); > Changed |= propagateEquality(BranchCond, FalseVal, FalseE); > > Any other ideas about where I should look for the root p...
2010 Aug 06
2
[LLVMdev] PR5373
Hello again :) It's been some time since I sent you last patch, but here I'm again. I send the patch for PR5373. Regards -- Jakub Staszak -------------- next part -------------- A non-text attachment was scrubbed... Name: pr5373.patch Type: application/octet-stream Size: 5913 bytes Desc: not available URL:
2010 Aug 06
0
[LLVMdev] PR5373
...// returns different exit blocks. It means that the loop isn't trivial, + // just quit then. + if (LoopExitBB != LoopExitBB2) + return false; + } else if (Val) { + // if LoopExitBB == LoopExitBB2 pick the first one (true). + *Val = ConstantInt::getFalse(Context); doesn't do what the comment says it does; the store into *Val is done when !LoopExitBB, not when LoopExitBB == LoopExitBB2. On Aug 6, 2010, at 12:54 AMPDT, Jakub Staszak wrote: > Hello again :) > > It's been some time since I sent you last patch, but here I'm aga...
2010 Aug 06
2
[LLVMdev] PR5373
...exit blocks. It means that the loop isn't trivial, > + // just quit then. > + if (LoopExitBB != LoopExitBB2) > + return false; > + } else if (Val) { > + // if LoopExitBB == LoopExitBB2 pick the first one (true). > + *Val = ConstantInt::getFalse(Context); > Actually it does. It is written that if LoopExitBB == LoopExitBB2 we should pick TRUE value: *Val = ConstantInt::getTrue(Context); so..there is not need to generate FALSE value. I know that this comment might be a little bit misleading. Probably the best idea is to delete it. &gt...
2010 Aug 11
0
[LLVMdev] PR5373
...at the loop isn't trivial, >> + // just quit then. >> + if (LoopExitBB != LoopExitBB2) >> + return false; >> + } else if (Val) { >> + // if LoopExitBB == LoopExitBB2 pick the first one (true). >> + *Val = ConstantInt::getFalse(Context); >> > > Actually it does. It is written that if LoopExitBB == LoopExitBB2 we should pick TRUE value: > *Val = ConstantInt::getTrue(Context); > > so..there is not need to generate FALSE value. > I know that this comment might be a little bit misleading. Probably t...
2011 Jan 03
1
[LLVMdev] Erasing dead blocks
Dear LLVM developers, I have a question regarding the IPSCCP class and the handling of dead blocks: The file lib/Transforms/Scalar/SCCP.cpp of llvm 2.8 from contains some code to deal with a dead block which could not be folded (line 1909ff). This happens when a user of this dead block is a branch or switch with an undef condition. The action taken than is to replace this terminator with an
2015 Sep 18
2
GlobalOPT and sections
...ew global, initializing it to false. GlobalVariable *NewGV = new GlobalVariable(Type::getInt1Ty(GV->getContext()), false, GlobalValue::InternalLinkage, ConstantInt::getFalse(GV->getContext()), GV->getName()+".b", GV->getThreadLocalMode(), GV->getType()->getAddressSpace()); GV->getParent()->getGlobalList(...
2016 Jul 04
2
Path condition propagation
Sure On Mon, Jul 4, 2016, 9:40 AM Carlos Liam <carlos at aarzee.me> wrote: > It looks like there's already something similar in PropagateEquality which > eg X >= Y == true and replaces X < Y == false, which is somewhat similar - > could I base an addition off of that? > > > - CL > > On Jul 3, 2016, at 7:13 PM, Daniel Berlin <dberlin at dberlin.org>
2006 Nov 16
0
[LLVMdev] LLVM 1.9 Release Announcement [draft #1]
...rem' into frem/srem/urem. We hope that LLVM 2.0 will split all instructions that vary behavior based on the signedness of their operands. See http://llvm.org/PR950 for more details. *. ConstantBool::True and False have been renamed to ConstantBool::getTrue() and ConstantBool::getFalse(). LLVM Build System Changes: *. The LLVM library dependency graph is now acyclic, allowing llvm-config to always work. The LLVM build system itself now internally uses llvm-config. *. Reid updated autoconf/libtool to newer versions. *. Reid contributed changes to rid several li...
2006 Nov 20
0
LLVM 1.9 Release!
...;rem' into frem/srem/urem. We hope that LLVM 2.0 will split all instructions that vary behavior based on the signedness of their operands. See http://llvm.org/PR950 for more details. 36. ConstantBool::True and False have been renamed to ConstantBool::getTrue() and ConstantBool::getFalse(). LLVM Build System Changes: 37. The LLVM library dependency graph is now acyclic, allowing llvm-config to always work. The LLVM build system itself now internally uses llvm-config. 38. Reid updated autoconf/libtool to newer versions. 39. Reid contributed changes to eliminate C++ exc...