Add (currently disabled) code for canFoldSetCC
llvm-svn: 18820
This commit is contained in:
parent
1cbd5be7a1
commit
e5351ad5f0
|
@ -1016,6 +1016,16 @@ static inline BasicBlock *getBlockAfter(BasicBlock *BB) {
|
||||||
///
|
///
|
||||||
static SetCondInst *canFoldSetCCIntoBranch(Value *V) {
|
static SetCondInst *canFoldSetCCIntoBranch(Value *V) {
|
||||||
return 0; // disable.
|
return 0; // disable.
|
||||||
|
if (SetCondInst *SCI = dyn_cast<SetCondInst>(V))
|
||||||
|
if (SCI->hasOneUse()) {
|
||||||
|
BranchInst *User = dyn_cast<BranchInst>(SCI->use_back());
|
||||||
|
if (User
|
||||||
|
&& (SCI->getNext() == User)
|
||||||
|
&& (getClassB(SCI->getOperand(0)->getType()) != cLong)
|
||||||
|
&& User->isConditional() && (User->getCondition() == V))
|
||||||
|
return SCI;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// visitBranchInst - Handles conditional and unconditional branches.
|
/// visitBranchInst - Handles conditional and unconditional branches.
|
||||||
|
|
Loading…
Reference in New Issue