Displaying 12 results from an estimated 12 matches for "isunconditional".
Did you mean:
isconditional
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
... for (BasicBlock *BB = ExitBr->getParent(); BB; ) {
> + //Check if the one of the successor of the exit branch has the is a block
> + //that has only one predecessor and has an unconditional branch to the
> + //loop header
> + if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
> + BrFirstSucc->getSuccessor(0) == L->getHeader() &&
> + BrFirstSucc->getParent()->getUniquePredecessor())
> + Ok = true;
> + if (BrSecondSucc && BrSecondSucc->isUnconditional() &&
> + BrSecondSucc->...
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...ExitBr->getSuccessor(1) != L->getHeader() &&
- ExitBr->getParent() != L->getHeader()) {
- // The simple checks failed, try climbing the unique predecessor chain
+ ExitBr->getParent() != L->getHeader() &&
+ !((BrFirstSucc && BrFirstSucc->isUnconditional() &&
+ BrFirstSucc->getSuccessor(0) == L->getHeader()) ||
+ (BrSecondSucc && BrSecondSucc->isUnconditional() &&
+ BrSecondSucc->getSuccessor(0) == L->getHeader())) ) {
+ // The simple checks failed, try climbing the unique predecesso...
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...bool Ok = false;
- for (BasicBlock *BB = ExitBr->getParent(); BB; ) {
+ //Check if the one of the successor of the exit branch has the is a block
+ //that has only one predecessor and has an unconditional branch to the
+ //loop header
+ if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
+ BrFirstSucc->getSuccessor(0) == L->getHeader() &&
+ BrFirstSucc->getParent()->getUniquePredecessor())
+ Ok = true;
+ if (BrSecondSucc && BrSecondSucc->isUnconditional() &&
+ BrSecondSucc->getSuccessor(0) == L->...
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...t; > + //Check if the one of the successor of the exit branch has the is a
>> > block
>> > + //that has only one predecessor and has an unconditional branch to
>> > the
>> > + //loop header
>> > + if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
>> > + BrFirstSucc->getSuccessor(0) == L->getHeader() &&
>> > + BrFirstSucc->getParent()->getUniquePredecessor())
>> > + Ok = true;
>> > + if (BrSecondSucc && BrSecondSucc->isUnconditional() &&...
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...Br->getParent(); BB; ) {
> > + //Check if the one of the successor of the exit branch has the is a
> block
> > + //that has only one predecessor and has an unconditional branch to
> the
> > + //loop header
> > + if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
> > + BrFirstSucc->getSuccessor(0) == L->getHeader() &&
> > + BrFirstSucc->getParent()->getUniquePredecessor())
> > + Ok = true;
> > + if (BrSecondSucc && BrSecondSucc->isUnconditional() &&
> > +...
2012 Feb 09
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...t; > is a
>> >> > block
>> >> > + //that has only one predecessor and has an unconditional branch
>> >> > to
>> >> > the
>> >> > + //loop header
>> >> > + if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
>> >> > + BrFirstSucc->getSuccessor(0) == L->getHeader() &&
>> >> > + BrFirstSucc->getParent()->getUniquePredecessor())
>> >> > + Ok = true;
>> >> > + if (BrSecondSucc && BrSec...
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...the successor of the exit branch has the
> is a
> >> > block
> >> > + //that has only one predecessor and has an unconditional branch
> to
> >> > the
> >> > + //loop header
> >> > + if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
> >> > + BrFirstSucc->getSuccessor(0) == L->getHeader() &&
> >> > + BrFirstSucc->getParent()->getUniquePredecessor())
> >> > + Ok = true;
> >> > + if (BrSecondSucc && BrSecondSucc->isUn...
2012 Feb 09
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...; >> > block
>>> >> > + //that has only one predecessor and has an unconditional branch
>>> >> > to
>>> >> > the
>>> >> > + //loop header
>>> >> > + if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
>>> >> > + BrFirstSucc->getSuccessor(0) == L->getHeader() &&
>>> >> > + BrFirstSucc->getParent()->getUniquePredecessor())
>>> >> > + Ok = true;
>>> >> > + if (BrSecondSucc...
2012 Feb 09
1
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...k
>>>> >> > + //that has only one predecessor and has an unconditional branch
>>>> >> > to
>>>> >> > the
>>>> >> > + //loop header
>>>> >> > + if (BrFirstSucc && BrFirstSucc->isUnconditional() &&
>>>> >> > + BrFirstSucc->getSuccessor(0) == L->getHeader() &&
>>>> >> > + BrFirstSucc->getParent()->getUniquePredecessor())
>>>> >> > + Ok = true;
>>>> >> > + i...
2010 Jun 04
5
[LLVMdev] Inserting a function call into bitcode
...or/last
instruction of BasicBlock
if(isa<BranchInst>(bi))
{
BranchInst *brInst = cast<BranchInst>(bi);
// We are interested in conditional branch only
if(brInst->isUnconditional()) continue;
Value *condRes = brInst->getCondition();
errs()<<"Type:"<<condRes->getType()->getDescription()<<"\n";
// Looking for a function in Module Symbol table
Cons...
2010 Jun 04
0
[LLVMdev] Inserting a function call into bitcode
...lock::iterator bi = fi->end();
>
> bi--; // Getting the terminator/last instruction of BasicBlock
>
> if(isa<BranchInst>(bi))
>
> {
>
> BranchInst *brInst = cast<BranchInst>(bi);
>
> // We are interested in conditional branch only
>
> if(brInst->isUnconditional()) continue;
>
> Value *condRes = brInst->getCondition();
>
> errs()<<"Type:"<<condRes->getType()->getDescription()<<"\n";
>
> // Looking for a function in Module Symbol table
>
> Constant *PrintFn = M.getOrInsertFunction("...
2010 Jun 04
0
[LLVMdev] Inserting a function call into bitcode
... if(isa<BranchInst>(bi))
>
> {
>
> BranchInst *brInst = cast<BranchInst>(bi);
>
>
>
> // We are interested in conditional branch only
>
> if(brInst->isUnconditional()) continue;
>
>
>
> Value *condRes = brInst->getCondition();
>
>
> errs()<<"Type:"<<condRes->getType()->getDescription()<<"\n";
>
>
>
> // Looking for a function in Module...