bool AliasSetTracker::add(CallSite CS) { if (Function *F = CS.getCalledFunction()) if (AA.doesNotAccessMemory(F)) return true; // doesn't alias anything AliasSet *AS = findAliasSetForCallSite(CS); if (!AS) { AliasSets.push_back(new AliasSet()); AS = &AliasSets.back(); AS->addCallSite(CS, AA); return true; } else { AS->addCallSite(CS, AA); return false; } }
bool AliasSetTracker::add(CallSite CS) { if (isa<DbgInfoIntrinsic>(CS.getInstruction())) return true; // Ignore DbgInfo Intrinsics. if (AA.doesNotAccessMemory(CS)) return true; // doesn't alias anything AliasSet *AS = findAliasSetForCallSite(CS); if (AS) { AS->addCallSite(CS, AA); return false; } AliasSets.push_back(new AliasSet()); AS = &AliasSets.back(); AS->addCallSite(CS, AA); return true; }