fix an apparently real bug exposed by a warning in -asserts mode.
authorChris Lattner <sabre@nondot.org>
Thu, 26 Mar 2009 05:28:14 +0000 (05:28 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 26 Mar 2009 05:28:14 +0000 (05:28 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67737 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Mips/MipsISelLowering.cpp

index e50c04215439add36932c26feb1f742b2d41bb33..8489ad249f9586dd1f645e659606d47649b3308e 100644 (file)
@@ -948,13 +948,14 @@ LowerFORMAL_ARGUMENTS(SDValue Op, SelectionDAG &DAG)
       // to 32 bits.  Insert an assert[sz]ext to capture this, then 
       // truncate to the right size.
       if (VA.getLocInfo() != CCValAssign::Full) {
-        unsigned Opcode;
+        unsigned Opcode = 0;
         if (VA.getLocInfo() == CCValAssign::SExt)
           Opcode = ISD::AssertSext;
         else if (VA.getLocInfo() == CCValAssign::ZExt)
           Opcode = ISD::AssertZext;
-        ArgValue = DAG.getNode(Opcode, dl, RegVT, ArgValue, 
-                               DAG.getValueType(VA.getValVT()));
+        if (Opcode)
+          ArgValue = DAG.getNode(Opcode, dl, RegVT, ArgValue, 
+                                 DAG.getValueType(VA.getValVT()));
         ArgValue = DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), ArgValue);
       }