[llvm-branch-commits] [llvm-branch] r228504 - Merging r228500:
Hans Wennborg
hans at hanshq.net
Sat Feb 7 11:39:14 PST 2015
Author: hans
Date: Sat Feb 7 13:39:14 2015
New Revision: 228504
URL: http://llvm.org/viewvc/llvm-project?rev=228504&view=rev
Log:
Merging r228500:
------------------------------------------------------------------------
r228500 | bsteinbr | 2015-02-07 09:54:36 -0800 (Sat, 07 Feb 2015) | 5 lines
Properly update AA metadata when performing call slot optimization
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D7482
------------------------------------------------------------------------
Added:
llvm/branches/release_36/test/Transforms/MemCpyOpt/callslot_aa.ll
- copied unchanged from r228500, llvm/trunk/test/Transforms/MemCpyOpt/callslot_aa.ll
Modified:
llvm/branches/release_36/ (props changed)
llvm/branches/release_36/lib/Transforms/Scalar/MemCpyOptimizer.cpp
Propchange: llvm/branches/release_36/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sat Feb 7 13:39:14 2015
@@ -1,3 +1,3 @@
/llvm/branches/Apple/Pertwee:110850,110961
/llvm/branches/type-system-rewrite:133420-134817
-/llvm/trunk:155241,226023,226029,226044,226046,226048,226058,226075,226170-226171,226182,226473,226664,226708,226711,226755,226809,227005,227085,227250,227260-227261,227290,227294,227299,227319,227339,227491,227584,227603,227628,227670,227809,227815,227903,227934,227972,227983,228049,228129,228168,228331,228411,228444,228490
+/llvm/trunk:155241,226023,226029,226044,226046,226048,226058,226075,226170-226171,226182,226473,226664,226708,226711,226755,226809,227005,227085,227250,227260-227261,227290,227294,227299,227319,227339,227491,227584,227603,227628,227670,227809,227815,227903,227934,227972,227983,228049,228129,228168,228331,228411,228444,228490,228500
Modified: llvm/branches/release_36/lib/Transforms/Scalar/MemCpyOptimizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_36/lib/Transforms/Scalar/MemCpyOptimizer.cpp?rev=228504&r1=228503&r2=228504&view=diff
==============================================================================
--- llvm/branches/release_36/lib/Transforms/Scalar/MemCpyOptimizer.cpp (original)
+++ llvm/branches/release_36/lib/Transforms/Scalar/MemCpyOptimizer.cpp Sat Feb 7 13:39:14 2015
@@ -750,6 +750,16 @@ bool MemCpyOpt::performCallSlotOptzn(Ins
// its dependence information by changing its parameter.
MD->removeInstruction(C);
+ // Update AA metadata
+ // FIXME: MD_tbaa_struct and MD_mem_parallel_loop_access should also be
+ // handled here, but combineMetadata doesn't support them yet
+ unsigned KnownIDs[] = {
+ LLVMContext::MD_tbaa,
+ LLVMContext::MD_alias_scope,
+ LLVMContext::MD_noalias,
+ };
+ combineMetadata(C, cpy, KnownIDs);
+
// Remove the memcpy.
MD->removeInstruction(cpy);
++NumMemCpyInstr;
More information about the llvm-branch-commits
mailing list