Fix some bugs andrew noticed legalizing memset for alpha
authorChris Lattner <sabre@nondot.org>
Tue, 1 Feb 2005 18:38:28 +0000 (18:38 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 1 Feb 2005 18:38:28 +0000 (18:38 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19969 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

index 56ed08e680f4377c9fa55c4af326ce0f065b1073..fb667f0081744598770ff6d28aaa1cdc82f8fbe7 100644 (file)
@@ -710,17 +710,17 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
   case ISD::MEMSET:
   case ISD::MEMCPY:
   case ISD::MEMMOVE: {
-    Tmp1 = LegalizeOp(Node->getOperand(0));      // Function
+    Tmp1 = LegalizeOp(Node->getOperand(0));      // Chain
     Tmp2 = LegalizeOp(Node->getOperand(1));      // Pointer
 
     if (Node->getOpcode() == ISD::MEMSET) {      // memset = ubyte
       switch (getTypeAction(Node->getOperand(2).getValueType())) {
       case Expand: assert(0 && "Cannot expand a byte!");
       case Legal:
-        Tmp3 = LegalizeOp(Node->getOperand(1));
+        Tmp3 = LegalizeOp(Node->getOperand(2));
         break;
       case Promote:
-        Tmp3 = PromoteOp(Node->getOperand(1));
+        Tmp3 = PromoteOp(Node->getOperand(2));
         break;
       }
     } else {