Displaying 5 results from an estimated 5 matches for "truedest".
2018 Aug 30
4
crash problem when using IndirectBrInst to replace BranchInst
...n IR is as the following:
br i1 %1, label %2, label %3
And the transformed IR is as the follwoing:
%4 = select i1 %1, i8* blockaddress(@func, %2), i8* blockaddress(@func,
%3)
indirectbr i8* %4, [label %2, label %3]
The pass's core function is as the following:
BasicBlock *TrueDest = BI->getSuccessor(0);//BI is a conditional
branch
BasicBlock *FalseDest = BI->getSuccessor(1);
BlockAddress * TrueDestAddr = BlockAddress::get(TrueDest);
BlockAddress * FalseDestAddr = BlockAddress::get(FalseDest);
Value * ConditionValue = BI->getCondition()...
2018 Aug 31
2
crash problem when using IndirectBrInst to replace BranchInst
...t;
> And the transformed IR is as the follwoing:
>
> %4 = select i1 %1, i8* blockaddress(@func, %2), i8* blockaddress(@func,
> %3)
>
> indirectbr i8* %4, [label %2, label %3]
>
>
>
> The pass's core function is as the following:
>
>
> BasicBlock *TrueDest = BI->getSuccessor(0);//BI is a conditional
> branch
>
> BasicBlock *FalseDest = BI->getSuccessor(1);
>
>
>
> BlockAddress * TrueDestAddr = BlockAddress::get(TrueDest);
>
> BlockAddress * FalseDestAddr = BlockAddress::get(FalseDest);
>
>
>...
2004 Aug 27
1
[LLVMdev] Help getting condition of branch instructions in pass
Hi, this is a bit of a newbie question:
I am trying to discover, given a block with a conditional and its
successors, which condition (T/F) each successor applies to.
There's almost identical code in CFGPrinter.cpp, but where it gets
called in GraphWriter.h, the child_iterator type is a pretty hairy
thing, so I still don't quite understand how to get one from a
BasicBlock in my own
2012 Sep 26
0
[LLVMdev] [PATCH / PROPOSAL] bitcode encoding that is ~15% smaller for large bitcode files...
...turn null in case of an error? Not sure the name is the best
either, it doesn't suggest at all to me that it doesn't increment the slot
number, it sounds like it's for handling constants.
> return Error("Invalid BR record");
> I = BranchInst::Create(TrueDest, FalseDest, Cond);
> InstructionList.push_back(I);
> @@ -2276,9 +2293,10 @@ bool BitcodeReader::ParseFunctionBody(Function *F) {
> Type *OpTy = getTypeByID(Record[1]);
> unsigned ValueBitWidth = cast<IntegerType>(OpTy)->getBitWidth();
>
> -...
2012 Sep 26
9
[LLVMdev] [PATCH / PROPOSAL] bitcode encoding that is ~15% smaller for large bitcode files...
Hi all,
I've been looking into how to make llvm bitcode files smaller. There is
one simple change that appears to shrink linked bitcode files by about 15%.
See this spreadsheet for some rough data:
https://docs.google.com/spreadsheet/ccc?key=0AjRrJHQc4_bddEtJdjdIek5fMDdIdFFIZldZXzdWa0E
The change is in how operand ids are encoded in bitcode files. Rather than
use an "absolute