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; _______________________________________________ llvm-branch-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/llvm-branch-commits
