[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