[DAGCombiner] Eliminate dead stores to stack.
commit739d3f23c3d9eec687d86dbbdfa1ce2b0f8eddef
authorClement Courbet <courbet@google.com>
Mon, 18 Feb 2019 07:59:01 +0000 (18 07:59 +0000)
committerClement Courbet <courbet@google.com>
Mon, 18 Feb 2019 07:59:01 +0000 (18 07:59 +0000)
treefe3fd59deff0a9c4b4d8c18d4b76f729a912415f
parent469b4c29b7ef91bfcb309d843278d8ef8aa17764
[DAGCombiner] Eliminate dead stores to stack.

Summary:
A store to an object whose lifetime is about to end can be removed.

See PR40550 for motivation.

Reviewers: niravd

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D57541

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@354244 91177308-0d34-0410-b5e6-96231b3b80d8
12 files changed:
include/llvm/CodeGen/SelectionDAG.h
include/llvm/CodeGen/SelectionDAGAddressAnalysis.h
include/llvm/CodeGen/SelectionDAGNodes.h
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
test/CodeGen/BPF/remove_truncate_5.ll
test/CodeGen/X86/swap.ll
test/DebugInfo/COFF/inlining.ll
test/DebugInfo/COFF/lexicalblock.ll