[LLVMdev] "Best" alias analysis algorithm
sabre at nondot.org
Mon Apr 25 08:48:20 PDT 2005
On Mon, 25 Apr 2005, Vladimir Prus wrote:
> On Monday 25 April 2005 14:43, Vladimir Prus wrote:
> The GlobalsModRef::getModRefInfo has this logic:
> // If we are asking for mod/ref info of a direct call with a pointer to a
> // global we are tracking, return information if we have it.
> if (GlobalValue *GV = const_cast<GlobalValue*>(getUnderlyingObject(P)))
> if (GV->hasInternalLinkage())
> So, no information is produced for external variables, the function calls
> Aliasanalysis::getModRefInfo, which sees that called function may write to
> memory, and returns true for all global variables.
> Anything I can do about it? What I what is minimally accurate information
> about all global variables a function may modify. "Modifies them all" is
> clearly not even minimally accurate.
I will take a look at this and fix globals-modref. This is definitely
over conservative! Thanks for pointing it out!
More information about the llvm-dev