diff options
author | Dan Gohman <dan433584@gmail.com> | 2017-12-20 01:36:25 +0000 |
---|---|---|
committer | Dan Gohman <dan433584@gmail.com> | 2017-12-20 01:36:25 +0000 |
commit | 06400502e2d6e764bef0ff1135a9478a928e98ce (patch) | |
tree | 89425517edc42ece4572268324b0dadc25fe97aa /test/CodeGen/PowerPC | |
parent | 81228ec56132601d7ce2f650bed027c8e727b7dc (diff) |
[memcpyopt] Teach memcpyopt to optimize across basic blocks
This teaches memcpyopt to make a non-local memdep query when a local query
indicates that the dependency is non-local. This notably allows it to
eliminate many more llvm.memcpy calls in common Rust code, often by 20-30%.
This is r319482 and r319483, along with fixes for PR35519: fix the
optimization that merges stores into memsets to preserve cached memdep
info, and fix memdep's non-local caching strategy to not assume that larger
queries are always more conservative than smaller ones.
Fixes PR28958 and PR35519.
Differential Revision: https://reviews.llvm.org/D40802
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@321138 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/PowerPC')
0 files changed, 0 insertions, 0 deletions