[PATCH] D62910: [DAGCombine] MergeConsecutiveStores - improve non-temporal load\store handling (PR42123)

Nirav Dave via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 5 12:12:07 PDT 2019


niravd accepted this revision.
niravd added inline comments.
This revision is now accepted and ready to land.


================
Comment at: lib/CodeGen/SelectionDAG/DAGCombiner.cpp:15600
+
+      MachineMemOperand::Flags StMMOFlags =
+          IsNonTemporalStore ? MachineMemOperand::MONonTemporal
----------------
RKSimon wrote:
> niravd wrote:
> > Looks like we were erroneously transferring dereferencable from load to store on merge before. I think we need to do a store version of the isDereferencable calculation or we'll only preserve it on truncstores. 
> Were we? The getStore() didn't use any MMO flags before.
Oh right! We're still being a bit weird about Dereferencable handling and that seems worth more of a look, but if we're being consistent with the past, there's no sense in delaying this patch.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D62910/new/

https://reviews.llvm.org/D62910





More information about the llvm-commits mailing list