|
|
|
|
@ -174,7 +174,7 @@ namespace llvm { |
|
|
|
|
SE = &getAnalysis<ScalarEvolution>(); |
|
|
|
|
PT = &getAnalysis<PointerTracking>(); |
|
|
|
|
DT = &getAnalysis<DominatorTree>(); |
|
|
|
|
expander = new SCEVExpander(*SE); |
|
|
|
|
expander = new SCEVExpander(*SE OPT("SCEVexpander")); |
|
|
|
|
|
|
|
|
|
std::vector<Instruction*> insns; |
|
|
|
|
|
|
|
|
|
@ -474,7 +474,7 @@ namespace llvm { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (LoadInst *LI = dyn_cast<LoadInst>(Base)) { |
|
|
|
|
Value *V = LI->getPointerOperand()->stripPointerCasts()->getUnderlyingObject(); |
|
|
|
|
Value *V = GetUnderlyingObject(LI->getPointerOperand()->stripPointerCasts(), TD); |
|
|
|
|
if (Argument *A = dyn_cast<Argument>(V)) { |
|
|
|
|
if (A->getArgNo() == 0) { |
|
|
|
|
// pointers from hidden ctx are trusted to be at least the
|
|
|
|
|
@ -870,7 +870,7 @@ INITIALIZE_AG_DEPENDENCY(CallGraph) |
|
|
|
|
INITIALIZE_PASS_DEPENDENCY(CallGraph) |
|
|
|
|
#endif |
|
|
|
|
INITIALIZE_PASS_DEPENDENCY(PointerTracking) |
|
|
|
|
INITIALIZE_PASS_END(PtrVerifier, "clambcrtchecks", "ClamBC RTchecks", false, false) |
|
|
|
|
INITIALIZE_PASS_END(PtrVerifier, "clambc-rtchecks", "ClamBC RTchecks", false, false) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|