mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
[Attributor][NFC] Move some trivial checks up
This commit is contained in:
parent
a8bee9c76c
commit
c92d3580fd
@ -1600,6 +1600,19 @@ static int64_t getKnownNonNullAndDerefBytesForUse(
|
||||
if (!UseV->getType()->isPointerTy())
|
||||
return 0;
|
||||
|
||||
// We need to follow common pointer manipulation uses to the accesses they
|
||||
// feed into. We can try to be smart to avoid looking through things we do not
|
||||
// like for now, e.g., non-inbounds GEPs.
|
||||
if (isa<CastInst>(I)) {
|
||||
TrackUse = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (isa<GetElementPtrInst>(I)) {
|
||||
TrackUse = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
Type *PtrTy = UseV->getType();
|
||||
const Function *F = I->getFunction();
|
||||
bool NullPointerIsDefined =
|
||||
@ -1631,19 +1644,6 @@ static int64_t getKnownNonNullAndDerefBytesForUse(
|
||||
return DerefAA.getKnownDereferenceableBytes();
|
||||
}
|
||||
|
||||
// We need to follow common pointer manipulation uses to the accesses they
|
||||
// feed into. We can try to be smart to avoid looking through things we do not
|
||||
// like for now, e.g., non-inbounds GEPs.
|
||||
if (isa<CastInst>(I)) {
|
||||
TrackUse = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (isa<GetElementPtrInst>(I)) {
|
||||
TrackUse = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int64_t Offset;
|
||||
const Value *Base =
|
||||
getMinimalBaseOfAccsesPointerOperand(A, QueryingAA, I, Offset, DL);
|
||||
|
Loading…
Reference in New Issue
Block a user