summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/SafeStackColoring.cpp
diff options
context:
space:
mode:
authorMichael Kruse <llvm@meinersbur.de>2017-05-13 11:49:34 +0000
committerMichael Kruse <llvm@meinersbur.de>2017-05-13 11:49:34 +0000
commitf263610b82648e1a4c6ae11f29dd82579cb4c390 (patch)
treee6dae8dcbe75c5b37e5f3ad36fcb4b5d559fb93d /llvm/lib/CodeGen/SafeStackColoring.cpp
parent1d12790f37e3a57efc351acfb5d11a4e5a519757 (diff)
downloadbcm5719-llvm-f263610b82648e1a4c6ae11f29dd82579cb4c390.tar.gz
bcm5719-llvm-f263610b82648e1a4c6ae11f29dd82579cb4c390.zip
[Simplify] Remove writes that are overwritten.
Remove memory writes that are overwritten by later writes. This works for StoreInsts: store double 21.0, double* %A store double 42.0, double* %A scalar writes at the end of a statement and mixes of these. Multiple writes can be the result of DeLICM, which might map multiple writes to the same location when it knows that these do no conflict (for instance because they write the same value). Such writes interfere with pattern-matched optimization such as gemm and may not get removed by other LLVM passes after code generation. Differential Revision: https://reviews.llvm.org/D33142 llvm-svn: 302986
Diffstat (limited to 'llvm/lib/CodeGen/SafeStackColoring.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud