[opaque pointer type] Add textual IR support for explicit type parameter to the invoke instruction

Same as r235145 for the call instruction - the justification, tradeoffs,
etc are all the same. The conversion script worked the same without any
false negatives (after replacing 'call' with 'invoke').

llvm-svn: 235755
diff --git a/llvm/test/CodeGen/Mips/mips16ex.ll b/llvm/test/CodeGen/Mips/mips16ex.ll
index 0f4dc7e..68b5846 100644
--- a/llvm/test/CodeGen/Mips/mips16ex.ll
+++ b/llvm/test/CodeGen/Mips/mips16ex.ll
@@ -45,7 +45,7 @@
   %exn.scalar = load i32, i32* %6
   store i32 %exn.scalar, i32* %e, align 4
   %7 = load i32, i32* %e, align 4
-  %call2 = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str1, i32 0, i32 0), i32 %7)
+  %call2 = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str1, i32 0, i32 0), i32 %7)
           to label %invoke.cont unwind label %lpad1
 
 invoke.cont:                                      ; preds = %catch
diff --git a/llvm/test/CodeGen/WinEH/cppeh-prepared-catch.ll b/llvm/test/CodeGen/WinEH/cppeh-prepared-catch.ll
index 8e8fc76..2fd4a77 100644
--- a/llvm/test/CodeGen/WinEH/cppeh-prepared-catch.ll
+++ b/llvm/test/CodeGen/WinEH/cppeh-prepared-catch.ll
@@ -61,7 +61,7 @@
   %.i8 = call i8* @llvm.framerecover(i8* bitcast (void ()* @"\01?f@@YAXXZ" to i8*), i8* %1, i32 1)
   %2 = bitcast i8* %.i8 to double*
   %3 = bitcast double* %2 to i8*
-  invoke void (...)* @llvm.donothing()
+  invoke void (...) @llvm.donothing()
           to label %done unwind label %lpad
 
 done:
diff --git a/llvm/test/CodeGen/WinEH/cppeh-similar-catch-blocks.ll b/llvm/test/CodeGen/WinEH/cppeh-similar-catch-blocks.ll
index c0df74e..92a8ff7 100644
--- a/llvm/test/CodeGen/WinEH/cppeh-similar-catch-blocks.ll
+++ b/llvm/test/CodeGen/WinEH/cppeh-similar-catch-blocks.ll
@@ -132,7 +132,7 @@
   call void @llvm.eh.begincatch(i8* %exn, i8* %c) #2
   %4 = load i8, i8* %c, align 1
   %conv = sext i8 %4 to i32
-  %call = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PJCJOCBM@?$CFc?6?$AA@", i32 0, i32 0), i32 %conv)
+  %call = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PJCJOCBM@?$CFc?6?$AA@", i32 0, i32 0), i32 %conv)
           to label %invoke.cont unwind label %lpad2
 
 invoke.cont:                                      ; preds = %catch
@@ -177,7 +177,7 @@
   %13 = bitcast i32* %x to i8*
   call void @llvm.eh.begincatch(i8* %exn14, i8* %13) #2
   %14 = load i32, i32* %x, align 4
-  %call18 = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PMGGPEJJ@?$CFd?6?$AA@", i32 0, i32 0), i32 %14)
+  %call18 = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PMGGPEJJ@?$CFd?6?$AA@", i32 0, i32 0), i32 %14)
           to label %invoke.cont17 unwind label %lpad16
 
 invoke.cont17:                                    ; preds = %catch13
@@ -192,7 +192,7 @@
 catch8:                                           ; preds = %catch.dispatch5
   %exn9 = load i8*, i8** %exn.slot
   call void @llvm.eh.begincatch(i8* %exn9, i8* null) #2
-  %call12 = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @"\01??_C@_04MPPNMCOK@?4?4?4?6?$AA@", i32 0, i32 0))
+  %call12 = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @"\01??_C@_04MPPNMCOK@?4?4?4?6?$AA@", i32 0, i32 0))
           to label %invoke.cont11 unwind label %lpad10
 
 invoke.cont11:                                    ; preds = %catch8
@@ -241,7 +241,7 @@
   call void @llvm.eh.begincatch(i8* %exn26, i8* %c28) #2
   %25 = load i8, i8* %c28, align 1
   %conv29 = sext i8 %25 to i32
-  %call32 = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PJCJOCBM@?$CFc?6?$AA@", i32 0, i32 0), i32 %conv29)
+  %call32 = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PJCJOCBM@?$CFc?6?$AA@", i32 0, i32 0), i32 %conv29)
           to label %invoke.cont31 unwind label %lpad30
 
 invoke.cont31:                                    ; preds = %catch25
@@ -288,7 +288,7 @@
   %34 = bitcast i32* %x56 to i8*
   call void @llvm.eh.begincatch(i8* %exn54, i8* %34) #2
   %35 = load i32, i32* %x56, align 4
-  %call59 = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PMGGPEJJ@?$CFd?6?$AA@", i32 0, i32 0), i32 %35)
+  %call59 = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PMGGPEJJ@?$CFd?6?$AA@", i32 0, i32 0), i32 %35)
           to label %invoke.cont58 unwind label %lpad57
 
 invoke.cont58:                                    ; preds = %catch53
@@ -308,7 +308,7 @@
   call void @llvm.eh.begincatch(i8* %exn46, i8* %c48) #2
   %37 = load i8, i8* %c48, align 1
   %conv49 = sext i8 %37 to i32
-  %call52 = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PJCJOCBM@?$CFc?6?$AA@", i32 0, i32 0), i32 %conv49)
+  %call52 = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @"\01??_C@_03PJCJOCBM@?$CFc?6?$AA@", i32 0, i32 0), i32 %conv49)
           to label %invoke.cont51 unwind label %lpad50
 
 invoke.cont51:                                    ; preds = %catch45
@@ -318,7 +318,7 @@
 catch40:                                          ; preds = %catch.fallthrough
   %exn41 = load i8*, i8** %exn.slot
   call void @llvm.eh.begincatch(i8* %exn41, i8* null) #2
-  %call44 = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @"\01??_C@_04MPPNMCOK@?4?4?4?6?$AA@", i32 0, i32 0))
+  %call44 = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @"\01??_C@_04MPPNMCOK@?4?4?4?6?$AA@", i32 0, i32 0))
           to label %invoke.cont43 unwind label %lpad42
 
 invoke.cont43:                                    ; preds = %catch40
diff --git a/llvm/test/CodeGen/X86/2008-04-17-CoalescerBug.ll b/llvm/test/CodeGen/X86/2008-04-17-CoalescerBug.ll
index 2e76a33..d1cfb44 100644
--- a/llvm/test/CodeGen/X86/2008-04-17-CoalescerBug.ll
+++ b/llvm/test/CodeGen/X86/2008-04-17-CoalescerBug.ll
@@ -117,13 +117,13 @@
 invcont5814:		; preds = %bb448.i8694, %bb265.i8606
 	%tmp812.0.0 = phi i16 [ %tmp477478.i8670, %bb448.i8694 ], [ %tmp273274.i8595, %bb265.i8606 ]		; <i16> [#uses=1]
 	%tmp58165817 = zext i16 %tmp812.0.0 to i32		; <i32> [#uses=1]
-	invoke void (%struct.wxString*, i32*, ...)* @_ZN8wxString6FormatEPKwz( %struct.wxString* noalias sret  null, i32* null, i32 %tmp58165817 )
+	invoke void (%struct.wxString*, i32*, ...) @_ZN8wxString6FormatEPKwz( %struct.wxString* noalias sret  null, i32* null, i32 %tmp58165817 )
 			to label %invcont5831 unwind label %lpad
 invcont5831:		; preds = %invcont5814
 	%tmp5862 = invoke zeroext  i8 @_ZN12wxStringBase10ConcatSelfEmPKwm( %struct.wxStringBase* null, i32 0, i32* null, i32 0 ) 
 			to label %bb7834 unwind label %lpad8185		; <i8> [#uses=0]
 bb5968:		; preds = %bb3314
-	invoke void (%struct.wxString*, i32*, ...)* @_ZN8wxString6FormatEPKwz( %struct.wxString* noalias sret  null, i32* null, i32 0 )
+	invoke void (%struct.wxString*, i32*, ...) @_ZN8wxString6FormatEPKwz( %struct.wxString* noalias sret  null, i32* null, i32 0 )
 			to label %invcont5981 unwind label %lpad
 invcont5981:		; preds = %bb5968
 	ret void
diff --git a/llvm/test/CodeGen/X86/2010-04-30-LocalAlloc-LandingPad.ll b/llvm/test/CodeGen/X86/2010-04-30-LocalAlloc-LandingPad.ll
index a46b8d9..4711d52 100644
--- a/llvm/test/CodeGen/X86/2010-04-30-LocalAlloc-LandingPad.ll
+++ b/llvm/test/CodeGen/X86/2010-04-30-LocalAlloc-LandingPad.ll
@@ -49,7 +49,7 @@
   %5 = bitcast i8* %4 to i32*                     ; <i32*> [#uses=1]
   %6 = load i32, i32* %5                               ; <i32> [#uses=1]
   store i32 %6, i32* %0
-  %call = invoke i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i32 0, i32 0), %struct.S* %s2)
+  %call = invoke i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i32 0, i32 0), %struct.S* %s2)
           to label %invoke.cont2 unwind label %match.handler ; <i32> [#uses=0]
 
 invoke.cont2:                                     ; preds = %match
diff --git a/llvm/test/CodeGen/X86/large-gep-chain.ll b/llvm/test/CodeGen/X86/large-gep-chain.ll
index 99f5879..44247b8 100644
--- a/llvm/test/CodeGen/X86/large-gep-chain.ll
+++ b/llvm/test/CodeGen/X86/large-gep-chain.ll
@@ -25487,11 +25487,11 @@
   br i1 undef, label %bb25333, label %bb25357
 
 bb25333:                                          ; preds = %bb25332
-  invoke void (...)* @printf()
+  invoke void (...) @printf()
           to label %bb25334 unwind label %bb25324
 
 bb25334:                                          ; preds = %bb25333
-  invoke void (...)* @printf(i32 undef)
+  invoke void (...) @printf(i32 undef)
           to label %bb25335 unwind label %bb25324
 
 bb25335:                                          ; preds = %bb25334
@@ -25501,7 +25501,7 @@
   br i1 undef, label %bb25337, label %bb25339
 
 bb25337:                                          ; preds = %bb25336
-  invoke void (...)* @printf(i32 undef, double undef)
+  invoke void (...) @printf(i32 undef, double undef)
           to label %bb25338 unwind label %bb25324
 
 bb25338:                                          ; preds = %bb25337
@@ -25517,11 +25517,11 @@
   br label %bb25340
 
 bb25342:                                          ; preds = %bb25340
-  invoke void (...)* @printf()
+  invoke void (...) @printf()
           to label %bb25343 unwind label %bb25324
 
 bb25343:                                          ; preds = %bb25342
-  invoke void (...)* @printf(double undef, double undef)
+  invoke void (...) @printf(double undef, double undef)
           to label %bb25344 unwind label %bb25324
 
 bb25344:                                          ; preds = %bb25343
@@ -25547,15 +25547,15 @@
   br label %bb25349
 
 bb25351:                                          ; preds = %bb25349
-  invoke void (...)* @printf()
+  invoke void (...) @printf()
           to label %bb25352 unwind label %bb25355
 
 bb25352:                                          ; preds = %bb25351
-  invoke void (...)* @printf(double undef)
+  invoke void (...) @printf(double undef)
           to label %bb25353 unwind label %bb25355
 
 bb25353:                                          ; preds = %bb25352
-  invoke void (...)* @printf()
+  invoke void (...) @printf()
           to label %bb25354 unwind label %bb25355
 
 bb25354:                                          ; preds = %bb25353
@@ -25567,7 +25567,7 @@
   br label %bb25359
 
 bb25357:                                          ; preds = %bb25332
-  invoke void (...)* @printf()
+  invoke void (...) @printf()
           to label %bb25358 unwind label %bb25324
 
 bb25358:                                          ; preds = %bb25357, %bb25354
diff --git a/llvm/test/CodeGen/X86/patchpoint-invoke.ll b/llvm/test/CodeGen/X86/patchpoint-invoke.ll
index 8123f94..98e9eb3 100644
--- a/llvm/test/CodeGen/X86/patchpoint-invoke.ll
+++ b/llvm/test/CodeGen/X86/patchpoint-invoke.ll
@@ -18,7 +18,7 @@
 ; CHECK-NEXT: [[PP_END:.L.*]]:
 ; CHECK:      ret
   %resolveCall = inttoptr i64 -559038736 to i8*
-  %result = invoke i64 (i64, i32, i8*, i32, ...)* @llvm.experimental.patchpoint.i64(i64 2, i32 15, i8* %resolveCall, i32 1, i64 %p1, i64 %p2)
+  %result = invoke i64 (i64, i32, i8*, i32, ...) @llvm.experimental.patchpoint.i64(i64 2, i32 15, i8* %resolveCall, i32 1, i64 %p1, i64 %p2)
             to label %success unwind label %threw
 
 success:
diff --git a/llvm/test/CodeGen/X86/split-eh-lpad-edges.ll b/llvm/test/CodeGen/X86/split-eh-lpad-edges.ll
index 756a3dd..852214e 100644
--- a/llvm/test/CodeGen/X86/split-eh-lpad-edges.ll
+++ b/llvm/test/CodeGen/X86/split-eh-lpad-edges.ll
@@ -16,7 +16,7 @@
 			to label %invcont unwind label %lpad		; <%struct.NSObject*> [#uses=1]
 
 invcont:		; preds = %entry
-	%1 = invoke %struct.NSObject* (%struct.NSObject*, %struct.objc_selector*, ...)* @objc_msgSend(%struct.NSObject* %0, %struct.objc_selector* null)
+	%1 = invoke %struct.NSObject* (%struct.NSObject*, %struct.objc_selector*, ...) @objc_msgSend(%struct.NSObject* %0, %struct.objc_selector* null)
 			to label %invcont26 unwind label %lpad		; <%struct.NSObject*> [#uses=0]
 
 invcont26:		; preds = %invcont
diff --git a/llvm/test/CodeGen/X86/statepoint-invoke.ll b/llvm/test/CodeGen/X86/statepoint-invoke.ll
index 177eb96..17f71ea 100644
--- a/llvm/test/CodeGen/X86/statepoint-invoke.ll
+++ b/llvm/test/CodeGen/X86/statepoint-invoke.ll
@@ -13,7 +13,7 @@
   ; CHECK: .Ltmp{{[0-9]+}}:
   ; CHECK: callq some_other_call
   ; CHECK: .Ltmp{{[0-9]+}}:
-  %0 = invoke i32 (i64 addrspace(1)* (i64 addrspace(1)*)*, i32, i32, ...)* @llvm.experimental.gc.statepoint.p0f_p1i64p1i64f(i64 addrspace(1)* (i64 addrspace(1)*)* @some_other_call, i32 1, i32 0, i64 addrspace(1)* %obj, i32 5, i32 0, i32 -1, i32 0, i32 0, i32 0, i64 addrspace(1)* %obj, i64 addrspace(1)* %obj1)
+  %0 = invoke i32 (i64 addrspace(1)* (i64 addrspace(1)*)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_p1i64p1i64f(i64 addrspace(1)* (i64 addrspace(1)*)* @some_other_call, i32 1, i32 0, i64 addrspace(1)* %obj, i32 5, i32 0, i32 -1, i32 0, i32 0, i32 0, i64 addrspace(1)* %obj, i64 addrspace(1)* %obj1)
           to label %normal_return unwind label %exceptional_return
 
 normal_return: