Breakage caused by "eliminate instruction ctors that take vectors":
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070212/044423.html

No idea if this is the right approach, but it compiles!

Ciao,

Duncan.
Index: gcc.llvm.master/gcc/llvm-convert.cpp
===================================================================
--- gcc.llvm.master.orig/gcc/llvm-convert.cpp	2007-02-13 11:48:58.000000000 +0100
+++ gcc.llvm.master/gcc/llvm-convert.cpp	2007-02-13 11:58:39.000000000 +0100
@@ -1000,7 +1000,7 @@
   Ops.push_back(CastToType(Instruction::BitCast, SrcPtr, SBP));
   Ops.push_back(CastToSIntType(Size, IntPtr));
   Ops.push_back(ConstantInt::get(Type::Int32Ty, Align));
-  new CallInst(MemCpy, Ops, "", CurBB);
+  new CallInst(MemCpy, &Ops[0], Ops.size(), "", CurBB);
 }
 
 void TreeToLLVM::EmitMemMove(Value *DestPtr, Value *SrcPtr, Value *Size, 
@@ -1019,7 +1019,7 @@
   Ops.push_back(CastToType(Instruction::BitCast, SrcPtr, SBP));
   Ops.push_back(CastToSIntType(Size, IntPtr));
   Ops.push_back(ConstantInt::get(Type::Int32Ty, Align));
-  new CallInst(MemMove, Ops, "", CurBB);
+  new CallInst(MemMove, &Ops[0], Ops.size(), "", CurBB);
 }
 
 void TreeToLLVM::EmitMemSet(Value *DestPtr, Value *SrcVal, Value *Size, 
@@ -1039,7 +1039,7 @@
   Ops.push_back(CastToSIntType(SrcVal, Type::Int8Ty));
   Ops.push_back(CastToSIntType(Size, IntPtr));
   Ops.push_back(ConstantInt::get(Type::Int32Ty, Align));
-  new CallInst(MemSet, Ops, "", CurBB);
+  new CallInst(MemSet, &Ops[0], Ops.size(), "", CurBB);
 }
 
 
@@ -2116,12 +2116,13 @@
   
   Value *Call;
   if (!UnwindBlock) {
-    Call = new CallInst(Callee, CallOperands, "", CurBB);
+    Call = new CallInst(Callee, &CallOperands[0], CallOperands.size(), "",
+                        CurBB);
     cast<CallInst>(Call)->setCallingConv(CallingConvention);
   } else {
     BasicBlock *NextBlock = new BasicBlock("invcont");
-    Call = new InvokeInst(Callee, NextBlock, UnwindBlock, CallOperands, "",
-                          CurBB);
+    Call = new InvokeInst(Callee, NextBlock, UnwindBlock, &CallOperands[0],
+                          CallOperands.size(), "", CurBB);
     cast<InvokeInst>(Call)->setCallingConv(CallingConvention);
 
     // Lazily create an unwind block for this scope, which we can emit a fixup
@@ -3211,8 +3212,8 @@
   
   Value *Asm = InlineAsm::get(FTy, NewAsmStr, ConstraintStr,
                               ASM_VOLATILE_P(exp) || !ASM_OUTPUTS(exp));   
-  CallInst *CV = new CallInst(Asm, CallOps, StoreCallResultAddr ? "tmp" : "",
-                              CurBB);
+  CallInst *CV = new CallInst(Asm, &CallOps[0], CallOps.size(),
+                              StoreCallResultAddr ? "tmp" : "", CurBB);
   
   // If the call produces a value, store it into the destination.
   if (StoreCallResultAddr)
@@ -3746,7 +3747,7 @@
   Ops.push_back(Ptr);
   Ops.push_back(ReadWrite);
   Ops.push_back(Locality);
-  new CallInst(llvm_prefetch_fn, Ops, "", CurBB);
+  new CallInst(llvm_prefetch_fn, &Ops[0], Ops.size(), "", CurBB);
   return true;
 }
 
Index: gcc.llvm.master/gcc/llvm-debug.cpp
===================================================================
--- gcc.llvm.master.orig/gcc/llvm-debug.cpp	2007-02-13 11:59:21.000000000 +0100
+++ gcc.llvm.master/gcc/llvm-debug.cpp	2007-02-13 11:59:47.000000000 +0100
@@ -376,7 +376,7 @@
   Args.push_back(ConstantInt::get(Type::Int32Ty, CurLineNo));
   Args.push_back(ConstantInt::get(Type::Int32Ty, 0));
   Args.push_back(getCastValueFor(Unit));
-  new CallInst(StopPointFn, Args, "", CurBB);
+  new CallInst(StopPointFn, &Args[0], Args.size(), "", CurBB);
 }
 
 /// EmitGlobalVariable - Emit information about a global variable.
Index: gcc.llvm.master/gcc/config/i386/llvm-i386.cpp
===================================================================
--- gcc.llvm.master.orig/gcc/config/i386/llvm-i386.cpp	2007-02-13 12:00:16.000000000 +0100
+++ gcc.llvm.master/gcc/config/i386/llvm-i386.cpp	2007-02-13 12:01:55.000000000 +0100
@@ -507,7 +507,7 @@
       CallOps.push_back(new BitCastInst(Ops[1], v4f32, "tmp", CurBB));
     }
     CallOps.push_back(Pred);
-    Result = new CallInst(cmpps, CallOps, "tmp", CurBB);
+    Result = new CallInst(cmpps, &CallOps[0], CallOps.size(), "tmp", CurBB);
     TargetIntrinsicCastResult(Result, ResultType,
                               ResIsSigned, ExpIsSigned, CurBB);
     return true;
@@ -560,7 +560,7 @@
     CallOps.push_back(new BitCastInst(Ops[0], v4f32, "tmp", CurBB));
     CallOps.push_back(new BitCastInst(Ops[1], v4f32, "tmp", CurBB));
     CallOps.push_back(Pred);
-    Result = new CallInst(cmpss, CallOps, "tmp", CurBB);
+    Result = new CallInst(cmpss, &CallOps[0], CallOps.size(), "tmp", CurBB);
     TargetIntrinsicCastResult(Result, ResultType,
                               ResIsSigned, ExpIsSigned, CurBB);
     return true;
@@ -637,7 +637,7 @@
       CallOps.push_back(new BitCastInst(Ops[1], v2f64, "tmp", CurBB));
     }
     CallOps.push_back(Pred);
-    Result = new CallInst(cmpps, CallOps, "tmp", CurBB);
+    Result = new CallInst(cmpps, &CallOps[0], CallOps.size(), "tmp", CurBB);
     TargetIntrinsicCastResult(Result, ResultType,
                               ResIsSigned, ExpIsSigned, CurBB);
     return true;
@@ -688,7 +688,7 @@
     CallOps.push_back(new BitCastInst(Ops[0], v2f64, "tmp", CurBB));
     CallOps.push_back(new BitCastInst(Ops[1], v2f64, "tmp", CurBB));
     CallOps.push_back(Pred);
-    Result = new CallInst(cmpss, CallOps, "tmp", CurBB);
+    Result = new CallInst(cmpss, &CallOps[0], CallOps.size(), "tmp", CurBB);
     TargetIntrinsicCastResult(Result, ResultType,
                               ResIsSigned, ExpIsSigned, CurBB);
     return true;
_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to