[PATCH] D14797: [BranchFolding] Add volatile checking when clearing memory references
Chad Rosier via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 19 05:40:30 PST 2015
mcrosier added a comment.
In http://reviews.llvm.org/D14797#292428, @flyingforyou wrote:
> Thanks Geoff.
>
> Is that safe for other optimization passes? Actually, I am not sure that merging memref lists is safe.
> If you think it is safe, I will do that. please let me know.
Checkout the commit message for r231799.
Merging multiple MMO's onto a single MI should not cause any correctness issues. However, the MI scheduler doesn't know how to handle multiple MMOs, so it makes conservative assumptions in this case (see the FIXME comment in ScheduleDAGInstrs.cpp:MIsNeedChainEdge()).
In r231799, Ana and I added the == operator for MMOs. When merging the MMO into the MI you could check for redundant MMOs and not merge them. I don't know if this is necessary for your use case, however.
HTH, Chad
http://reviews.llvm.org/D14797
More information about the llvm-commits
mailing list