[llvm-commits] [llvm] r100521 - /llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

Mon P Wang wangmp at apple.com
Tue Apr 6 01:27:51 PDT 2010


Author: wangmp
Date: Tue Apr  6 03:27:51 2010
New Revision: 100521

URL: http://llvm.org/viewvc/llvm-project?rev=100521&view=rev
Log:
Remove assert to treat memmove and memset like memcpy

Modified:
    llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

Modified: llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp?rev=100521&r1=100520&r2=100521&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp (original)
+++ llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp Tue Apr  6 03:27:51 2010
@@ -3571,8 +3571,10 @@
   if (Result.getNode())
     return Result;
 
+  // FIXME: If the memmove is volatile, lowering it to plain libc memmove may
+  // not be safe.  See memcpy above for more details.
+
   // Emit a library call.
-  assert(!isVol && "library memmove does not support volatile");
   TargetLowering::ArgListTy Args;
   TargetLowering::ArgListEntry Entry;
   Entry.Ty = TLI.getTargetData()->getIntPtrType(*getContext());
@@ -3620,8 +3622,7 @@
   if (Result.getNode())
     return Result;
 
-  // Emit a library call.
-  assert(!isVol && "library memset does not support volatile");
+  // Emit a library call.  
   const Type *IntPtrTy = TLI.getTargetData()->getIntPtrType(*getContext());
   TargetLowering::ArgListTy Args;
   TargetLowering::ArgListEntry Entry;





More information about the llvm-commits mailing list