OSDN Git Service

Fix PR1316
authorChris Lattner <sabre@nondot.org>
Mon, 9 Apr 2007 00:33:58 +0000 (00:33 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 9 Apr 2007 00:33:58 +0000 (00:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35783 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp

index 304392c..59cba1b 100644 (file)
@@ -2439,8 +2439,6 @@ SelectionDAGLowering::visitIntrinsicCall(CallInst &I, unsigned Intrinsic) {
     return 0;
   }
   case Intrinsic::bit_part_select: {
-    // MVT::ValueType Ty = getValue(I.getOperand(1)).getValueType();
-    // setValue(&I, DAG.getTargetConstant(0, Ty));
     // Currently not implemented: just abort
     assert(0 && "bit_part_select intrinsic not implemented");
     abort();
@@ -2687,7 +2685,8 @@ void RegsForValue::getCopyToRegs(SDOperand Val, SelectionDAG &DAG,
 /// values added into it.
 void RegsForValue::AddInlineAsmOperands(unsigned Code, SelectionDAG &DAG,
                                         std::vector<SDOperand> &Ops) const {
-  Ops.push_back(DAG.getTargetConstant(Code | (Regs.size() << 3), MVT::i32));
+  MVT::ValueType IntPtrTy = DAG.getTargetLoweringInfo().getPointerTy();
+  Ops.push_back(DAG.getTargetConstant(Code | (Regs.size() << 3), IntPtrTy));
   for (unsigned i = 0, e = Regs.size(); i != e; ++i)
     Ops.push_back(DAG.getRegister(Regs[i], RegVT));
 }
@@ -4524,8 +4523,9 @@ SelectInlineAsmMemoryOperands(std::vector<SDOperand> &Ops, SelectionDAG &DAG) {
       }
       
       // Add this to the output node.
+      MVT::ValueType IntPtrTy = DAG.getTargetLoweringInfo().getPointerTy();
       Ops.push_back(DAG.getTargetConstant(4/*MEM*/ | (SelOps.size() << 3),
-                                          MVT::i32));
+                                          IntPtrTy));
       Ops.insert(Ops.end(), SelOps.begin(), SelOps.end());
       i += 2;
     }