[PATCH] Relax atomic restrictions on memory dependence analysis

Robin Morisset morisset at google.com
Tue Aug 5 14:43:34 PDT 2014


Hi jfb,

Currently, any atomic store/load above unordered kills all information in the
analysis. With this patch, the analysis is only killed by a release store
followed by an acquire load, or a RMW, or a fence
(see reference in the comments for why that is correct)
This appear to only impact DSE and GVN, see tests for examples.

This fixes the second part of http://llvm.org/bugs/show_bug.cgi?id=17281

http://reviews.llvm.org/D4797

Files:
  lib/Analysis/MemoryDependenceAnalysis.cpp
  test/Transforms/DeadStoreElimination/atomic.ll
  test/Transforms/GVN/atomic.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D4797.12210.patch
Type: text/x-patch
Size: 9390 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140805/7750d314/attachment.bin>


More information about the llvm-commits mailing list