[PATCH] D57596: [CodeGen] Be conservative about atomic accesses as for volatile
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 1 09:45:22 PST 2019
reames created this revision.
reames added reviewers: jlebar, kzhuravl, stoklund.
Herald added subscribers: jfb, bollu, mcrosier, MatzeB.
Background: At the moment, we record the AtomicOrdering of an access in the MMO, but also mark any atomic access as volatile in SelectionDAG. I'm working towards separating that.
Update all usages of isVolatile in lib/CodeGen - except for DAGCombiner which is large enough to need a separate change - to preserve behaviour once atomic MMOs stop being also volatile. This is NFC in it's current form, but is essential for correctness once we make that final change.
I'm deliberately being conservative about handling. I want the change to stop adding volatile to be NFC itself, and then will work through places where we can be less conservative for atomics one by one in separate changes w/tests.
https://reviews.llvm.org/D57596
Files:
include/llvm/CodeGen/SelectionDAGNodes.h
lib/CodeGen/MachineInstr.cpp
lib/CodeGen/MachinePipeliner.cpp
lib/CodeGen/ScheduleDAGInstrs.cpp
lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
lib/CodeGen/SelectionDAG/TargetLowering.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57596.184774.patch
Type: text/x-patch
Size: 4471 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190201/d195e9c5/attachment.bin>
More information about the llvm-commits
mailing list