diff options
| author | Chris Lattner <sabre@nondot.org> | 2010-12-06 01:48:06 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2010-12-06 01:48:06 +0000 |
| commit | 94fbdf3814741b465e9513ad972f7f7c1f03e315 (patch) | |
| tree | eb25e87f112e663ec865c951e2b7f6f054c9ff49 /clang/lib/CodeGen/CodeGenModule.cpp | |
| parent | fa64f120ad5f832ced07193e028f35f755cd9607 (diff) | |
| download | bcm5719-llvm-94fbdf3814741b465e9513ad972f7f7c1f03e315.tar.gz bcm5719-llvm-94fbdf3814741b465e9513ad972f7f7c1f03e315.zip | |
Fix PR8728, a miscompilation I recently introduced. When optimizing
memcpy's like:
memcpy(A, B)
memcpy(A, C)
we cannot delete the first memcpy as dead if A and C might be aliases.
If so, we actually get:
memcpy(A, B)
memcpy(A, A)
which is not correct to transform into:
memcpy(A, A)
This patch was heavily influenced by Jakub Staszak's patch in PR8728, thanks
Jakub!
llvm-svn: 120974
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions

