[PATCH] D8705: ScheduleDAGInstrs::buildSchedGraph() handling of memory dependecies rewritten.
Jonas Paulsson via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 3 02:54:18 PST 2015
jonpa added a comment.
Andy,
I think that when looking for underlying objects, objects will only be considered to not alias only if PSV->mayAlias(MFI) returns false:
if (!PSV->isAliased(MFI)) {
bool MayAlias = PSV->mayAlias(MFI);
Objects.push_back(UnderlyingObjectsVector::value_type(PSV, MayAlias));
}
Any other cases will either return either empty Objects, or aliasing objects. So, if MFI->hasTailCall(), an empty objects list is returned instead, which will make the instruction be treated as unknown store / load.
So I believe this is correct as long as the memory operands are correct, of course.
What do you think?
http://reviews.llvm.org/D8705
More information about the llvm-commits
mailing list