[llvm-commits] [llvm] r49050 - /llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Dan Gohman gohman at apple.com
Tue Apr 1 13:56:18 PDT 2008


Author: djg
Date: Tue Apr  1 15:56:18 2008
New Revision: 49050

URL: http://llvm.org/viewvc/llvm-project?rev=49050&view=rev
Log:
Don't use __bzero for memset if the second argument isn't zero.

Modified:
    llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=49050&r1=49049&r2=49050&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Tue Apr  1 15:56:18 2008
@@ -4562,8 +4562,9 @@
       (I && I->getValue() > Subtarget->getMaxInlineSizeThreshold())) {
 
     // Check to see if there is a specialized entry-point for memory zeroing.
-    const char *bzeroEntry = Subtarget->getBZeroEntry();
     ConstantSDNode *V = dyn_cast<ConstantSDNode>(Op.getOperand(2));
+    const char *bzeroEntry = 
+      V && V->isNullValue() ? Subtarget->getBZeroEntry() : 0;
 
     MVT::ValueType IntPtr = getPointerTy();
     const Type *IntPtrTy = getTargetData()->getIntPtrType();





More information about the llvm-commits mailing list