This is an archive of the discontinued LLVM Phabricator instance.

Revert "[SDAG] Relax conditions under stores of loaded values can be merged"
ClosedPublic

Authored by dlj on May 10 2017, 5:04 PM.

Details

Summary

This reverts commit a7aa63a594edfea5321d289b05e074e41c167312.

The change fails with ASAN enabled:

ERROR: AddressSanitizer: use-after-poison on address ... at ...
READ of size 2 at ... thread T0

#0 ... in llvm::SDNode::getNumValues() const <snip>/include/llvm/CodeGen/SelectionDAGNodes.h:855:42
#1 ... in llvm::SDNode::hasAnyUseOfValue(unsigned int) const <snip>/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:7270:3
#2 ... in llvm::SDValue::use_empty() const <snip> include/llvm/CodeGen/SelectionDAGNodes.h:1042:17
#3 ... in (anonymous namespace)::DAGCombiner::MergeConsecutiveStores(llvm::StoreSDNode*) <snip>/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:12944:7

Event Timeline

dlj created this revision.May 10 2017, 5:04 PM
This revision was automatically updated to reflect the committed changes.