mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-01 08:28:19 +00:00
Keep iterating over all uses when meeting a phi node in AllUsesOfValueWillTrapIfNull().
This bug was exposed by my inliner cost changes in r94615, and caused failures of lencod on most architectures when building with LTO. This patch fixes lencod and 464.h264ref on x86-64 (and likely others). llvm-svn: 94858
This commit is contained in:
parent
b0a870919b
commit
e3fd8b5848
@ -638,8 +638,8 @@ static bool AllUsesOfValueWillTrapIfNull(Value *V,
|
||||
} else if (PHINode *PN = dyn_cast<PHINode>(*UI)) {
|
||||
// If we've already seen this phi node, ignore it, it has already been
|
||||
// checked.
|
||||
if (PHIs.insert(PN))
|
||||
return AllUsesOfValueWillTrapIfNull(PN, PHIs);
|
||||
if (PHIs.insert(PN) && !AllUsesOfValueWillTrapIfNull(PN, PHIs))
|
||||
return false;
|
||||
} else if (isa<ICmpInst>(*UI) &&
|
||||
isa<ConstantPointerNull>(UI->getOperand(1))) {
|
||||
// Ignore setcc X, null
|
||||
|
Loading…
Reference in New Issue
Block a user