OSDN Git Service

Revert r319482 and r319483 "[memcpyopt] Teach memcpyopt to optimize across basic...
authorHans Wennborg <hans@hanshq.net>
Wed, 6 Dec 2017 01:47:55 +0000 (01:47 +0000)
committerHans Wennborg <hans@hanshq.net>
Wed, 6 Dec 2017 01:47:55 +0000 (01:47 +0000)
commitd5bd8eeafe60aa50ebe365f80e302f578ea96a35
tree98e1afd34d25a3e7f8c1f4c85395208f80da2e4a
parentf07b02f909c8a0edfbc55dc71253d18624db91a8
Revert r319482 and r319483 "[memcpyopt] Teach memcpyopt to optimize across basic blocks"

This caused PR35519.

> [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%.
>
> Fixes PR28958.
>
> Differential Revision: https://reviews.llvm.org/D38374
>

> [memcpyopt] Commit file missed in r319482.
>
> This change was meant to be included with r319482 but was accidentally
> omitted.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@319873 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/MemoryDependenceAnalysis.h
lib/Analysis/MemoryDependenceAnalysis.cpp
lib/Transforms/Scalar/MemCpyOptimizer.cpp
test/Transforms/MemCpyOpt/memcpy-invoke-memcpy.ll [deleted file]
test/Transforms/MemCpyOpt/nonlocal-memcpy-memcpy.ll [deleted file]