[PATCH] D66318: [SDAG] Update generic code to conservatively check for isAtomic in addition to isVolatile
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 10 12:37:16 PDT 2019
reames updated this revision to Diff 219585.
reames added a comment.
Add the nonvolatile_load/store cases. I'll rename them in a separate commit so as not to clutter the diff on this one.
With that, we're catching *most* of the atomic vs non-atomic differences. Skimming the remaining test diffs, I clearly need to adjust my test lines to hide O3 <https://reviews.llvm.org/owners/package/3/> vs experimental O3 <https://reviews.llvm.org/owners/package/3/> differences. There do appear to be a few remaining cases that are being miscompiled, mostly around widenable store idioms. Need to track that down in a future patch.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D66318/new/
https://reviews.llvm.org/D66318
Files:
include/llvm/Target/TargetSelectionDAG.td
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
lib/CodeGen/SelectionDAG/TargetLowering.cpp
test/CodeGen/X86/atomic-unordered.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66318.219585.patch
Type: text/x-patch
Size: 25711 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190910/b841cd71/attachment.bin>
More information about the llvm-commits
mailing list