[LLVMdev] AA bug?
Vikram Adve
vadve at illinois.edu
Wed Jul 20 20:18:17 PDT 2011
I was reading the code in AliasAnalysis.cpp and happened to notice what looks like a bug. See the line marked by '*' below:
AliasAnalysis::ModRefResult
AliasAnalysis::getModRefInfo(const VAArgInst *V, const Location &Loc) {
// If the va_arg address cannot alias the pointer in question, then the
// specified memory cannot be accessed by the va_arg.
if (!alias(getLocation(V), Loc))
return NoModRef;
// If the pointer is a pointer to constant memory, then it could not have been
// modified by this va_arg.
if (pointsToConstantMemory(Loc))
return NoModRef; *************
// Otherwise, a va_arg reads and writes.
return ModRef;
}
************* It looks like that line should be
return Ref;
I don't have a test case to reproduce this since I was just reading.
--Vikram
Professor, Computer Science
University of Illinois at Urbana-Champaign
http://llvm.org/~vadve
More information about the llvm-dev
mailing list