Use the llvm-upgrade program to upgrade llvm assembly.

llvm-svn: 32115
diff --git a/llvm/test/Regression/Transforms/InstCombine/2002-03-11-InstCombineHang.ll b/llvm/test/Regression/Transforms/InstCombine/2002-03-11-InstCombineHang.ll
index 3bf8648..dd683a3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2002-03-11-InstCombineHang.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2002-03-11-InstCombineHang.ll
@@ -1,6 +1,6 @@
 ; This testcase causes instcombine to hang.
 ;
-; RUN: llvm-as < %s | opt -instcombine
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2002-05-14-SubFailure.ll b/llvm/test/Regression/Transforms/InstCombine/2002-05-14-SubFailure.ll
index 6f832f2..1228fd0 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2002-05-14-SubFailure.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2002-05-14-SubFailure.ll
@@ -1,7 +1,7 @@
 ; Instcombine was missing a test that caused it to make illegal transformations
 ; sometimes.  In this case, it transforms the sub into an add:
 ; RUN: echo foo
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep add
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep add
 ;
 
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2002-05-14-TouchDeletedInst.ll b/llvm/test/Regression/Transforms/InstCombine/2002-05-14-TouchDeletedInst.ll
index 1ebe6c8..9c278ed 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2002-05-14-TouchDeletedInst.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2002-05-14-TouchDeletedInst.ll
@@ -4,7 +4,7 @@
 ; stayed on the worklist, as soon as it came back up to be processed, bad things
 ; happened, and opt asserted.
 ;
-; RUN: llvm-as < %s | opt -instcombine
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine
 ;
 
 %.LC0 = internal global [21 x sbyte] c"hbMakeCodeLengths(1)\00"		; <[21 x sbyte]*> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/2002-08-02-CastTest.ll b/llvm/test/Regression/Transforms/InstCombine/2002-08-02-CastTest.ll
index 239c96c..55609f1 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2002-08-02-CastTest.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2002-08-02-CastTest.ll
@@ -1,7 +1,7 @@
 ; This testcase is incorrectly getting completely eliminated.  There should be
 ; SOME instruction named %c here, even if it's a bitwise and.
 ;
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep '%c'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep '%c'
 ;
 ulong %test3(ulong %A) {
         %c1 = cast ulong %A to ubyte
diff --git a/llvm/test/Regression/Transforms/InstCombine/2002-09-17-GetElementPtrCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2002-09-17-GetElementPtrCrash.ll
index db2b504..69bec19 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2002-09-17-GetElementPtrCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2002-09-17-GetElementPtrCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine
 
 %bob = type { int }
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2002-12-05-MissedConstProp.ll b/llvm/test/Regression/Transforms/InstCombine/2002-12-05-MissedConstProp.ll
index ec29e6b..6233e50 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2002-12-05-MissedConstProp.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2002-12-05-MissedConstProp.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep add
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep add
 
 int %test(int %A) {
   %A.neg = sub int 0, %A
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-05-26-CastMiscompile.ll b/llvm/test/Regression/Transforms/InstCombine/2003-05-26-CastMiscompile.ll
index 218a536..4532589 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-05-26-CastMiscompile.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-05-26-CastMiscompile.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 4294967295
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 4294967295
 
 ulong %test(ulong %Val) {
         %tmp.3 = cast ulong %Val to uint              ; <uint> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-05-27-ConstExprCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2003-05-27-ConstExprCrash.ll
index 309191c..6222169 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-05-27-ConstExprCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-05-27-ConstExprCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 %X = global int 5
 long %test() {
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll b/llvm/test/Regression/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll
index 3d26024..ae823d6 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll
@@ -2,7 +2,7 @@
 ; because it things that the constant value is a not expression... and 
 ; constantly inverts the branch back and forth.
 ;
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 ubyte %test19(bool %c) {
         br bool true, label %True, label %False
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-06-22-ConstantExprCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2003-06-22-ConstantExprCrash.ll
index 917c86c..92a32d5 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-06-22-ConstantExprCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-06-22-ConstantExprCrash.ll
@@ -1,7 +1,7 @@
 ; This is a bug in the VMcode library, not instcombine, it's just convenient 
 ; to expose it here.
 
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 %A = global int 1
 %B = global int 2
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-07-21-ExternalConstant.ll b/llvm/test/Regression/Transforms/InstCombine/2003-07-21-ExternalConstant.ll
index 2fc1b20..c9e3b4c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-07-21-ExternalConstant.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-07-21-ExternalConstant.ll
@@ -10,7 +10,7 @@
 ;	should pass through the optimizer without failure.
 ;
 ; Extra code:
-; RUN: llvm-as < %s | opt -instcombine
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine
 ;
 
 target endian = little
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-08-12-AllocaNonNull.ll b/llvm/test/Regression/Transforms/InstCombine/2003-08-12-AllocaNonNull.ll
index e2b2afd..52b778c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-08-12-AllocaNonNull.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-08-12-AllocaNonNull.ll
@@ -1,6 +1,6 @@
 ; This testcase can be simplified by "realizing" that alloca can never return 
 ; null.
-; RUN: llvm-as < %s | opt -instcombine -simplifycfg | llvm-dis | not grep 'br '
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -simplifycfg | llvm-dis | not grep 'br '
 
 implementation   ; Functions:
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-09-09-VolatileLoadElim.ll b/llvm/test/Regression/Transforms/InstCombine/2003-09-09-VolatileLoadElim.ll
index 355087a..adb1474 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-09-09-VolatileLoadElim.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-09-09-VolatileLoadElim.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep load
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep load
 void %test(int* %P) {
 	%X = volatile load int* %P  ; Dead but not deletable!
 	ret void
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-10-23-InstcombineNullFail.ll b/llvm/test/Regression/Transforms/InstCombine/2003-10-23-InstcombineNullFail.ll
index 72f983b..837494f 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-10-23-InstcombineNullFail.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-10-23-InstcombineNullFail.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep false
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep false
 ;
 ; This actually looks like a constant propagation bug
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-10-29-CallSiteResolve.ll b/llvm/test/Regression/Transforms/InstCombine/2003-10-29-CallSiteResolve.ll
index cef1291..07b6dd2 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-10-29-CallSiteResolve.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-10-29-CallSiteResolve.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 declare int* %bar()
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-11-03-VarargsCallBug.ll b/llvm/test/Regression/Transforms/InstCombine/2003-11-03-VarargsCallBug.ll
index 5bb2fe1..a2e28d9 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-11-03-VarargsCallBug.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-11-03-VarargsCallBug.ll
@@ -1,5 +1,5 @@
 ; The cast in this testcase is not eliminable on a 32-bit target!
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep inttoptr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep inttoptr
 
 target endian = little
 target pointersize = 32
diff --git a/llvm/test/Regression/Transforms/InstCombine/2003-11-13-ConstExprCastCall.ll b/llvm/test/Regression/Transforms/InstCombine/2003-11-13-ConstExprCastCall.ll
index 04bbab8..d257286 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2003-11-13-ConstExprCastCall.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2003-11-13-ConstExprCastCall.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep call | notcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep call | notcast
 
 declare void %free(sbyte*)
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-01-13-InstCombineInvokePHI.ll b/llvm/test/Regression/Transforms/InstCombine/2004-01-13-InstCombineInvokePHI.ll
index c33f9e9..ff90c32 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-01-13-InstCombineInvokePHI.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-01-13-InstCombineInvokePHI.ll
@@ -5,7 +5,7 @@
 ; invoke instruction, we really cannot perform this transformation at all at
 ; least without splitting the critical edge.
 ;
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 declare sbyte* %test()
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-02-23-ShiftShiftOverflow.ll b/llvm/test/Regression/Transforms/InstCombine/2004-02-23-ShiftShiftOverflow.ll
index 97020c5..85095bf 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-02-23-ShiftShiftOverflow.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-02-23-ShiftShiftOverflow.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 34
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 34
 
 int %test(int %X) {
 	; Do not fold into shr X, 34, as this uses undefined behavior!
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll b/llvm/test/Regression/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll
index 9e77df9..fd7a2e3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll
@@ -1,7 +1,7 @@
 ; This testcase caused the combiner to go into an infinite loop, moving the 
 ; cast back and forth, changing the seteq to operate on int vs uint and back.
 
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 bool %test(uint %A, int %B) {
         %C = sub uint 0, %A
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-04-04-InstCombineReplaceAllUsesWith.ll b/llvm/test/Regression/Transforms/InstCombine/2004-04-04-InstCombineReplaceAllUsesWith.ll
index b7bfb29..4c6ff1b 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-04-04-InstCombineReplaceAllUsesWith.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-04-04-InstCombineReplaceAllUsesWith.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 int %test() {
 	ret int 0
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-05-07-UnsizedCastLoad.ll b/llvm/test/Regression/Transforms/InstCombine/2004-05-07-UnsizedCastLoad.ll
index 6776ff1..8e8f019 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-05-07-UnsizedCastLoad.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-05-07-UnsizedCastLoad.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 %Ty = type opaque
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-07-27-ConstantExprMul.ll b/llvm/test/Regression/Transforms/InstCombine/2004-07-27-ConstantExprMul.ll
index aa95320..7994d45 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-07-27-ConstantExprMul.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-07-27-ConstantExprMul.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 %p = weak global int 0
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-08-09-RemInfLoop.llx b/llvm/test/Regression/Transforms/InstCombine/2004-08-09-RemInfLoop.llx
index 1ed6054..98b35fe 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-08-09-RemInfLoop.llx
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-08-09-RemInfLoop.llx
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine
 
 ; This testcase should not send the instcombiner into an infinite loop!
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine.llx b/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine.llx
index 5960135..3fcbb88 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine.llx
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine.llx
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -mem2reg | llvm-dis | not grep 'int 1'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -mem2reg | llvm-dis | not grep 'int 1'
 
 ; When propagating the load through the select, make sure that the load is
 ; inserted where the original load was, not where the select is.  Not doing
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine2.llx b/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine2.llx
index 297cf87..83acd70 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine2.llx
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-09-20-BadLoadCombine2.llx
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -mem2reg -simplifycfg | llvm-dis | \
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -mem2reg -simplifycfg | llvm-dis | \
 ; RUN:   grep -v store | not grep 'int 1'
 
 ; Test to make sure that instcombine does not accidentally propagate the load
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-09-28-BadShiftAndSetCC.llx b/llvm/test/Regression/Transforms/InstCombine/2004-09-28-BadShiftAndSetCC.llx
index eaedc85..bb55b5c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-09-28-BadShiftAndSetCC.llx
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-09-28-BadShiftAndSetCC.llx
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep -- -65536
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep -- -65536
 
 bool %test(int %tmp.124) {
         %tmp.125 = shl int %tmp.124, ubyte 8
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-11-22-Missed-and-fold.ll b/llvm/test/Regression/Transforms/InstCombine/2004-11-22-Missed-and-fold.ll
index c8a1d52..1a741c99 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-11-22-Missed-and-fold.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-11-22-Missed-and-fold.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep and
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep and
 
 sbyte %test21(sbyte %A) {
         %C = shr sbyte %A, ubyte 7   ;; sign extend
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll b/llvm/test/Regression/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll
index 759c619..17958e1 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll
@@ -9,7 +9,7 @@
 ; be eliminated. In many cases the setCC is also eliminated based on the
 ; constant value and the range of the casted value.
 ;
-; RUN: llvm-as %s -o - | opt -instcombine | llvm-dis | notcast '.*int'
+; RUN: llvm-upgrade %s -o - | llvm-as | opt -instcombine | llvm-dis | notcast '.*int'
 
 implementation   ; Functions:
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-12-08-InstCombineCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2004-12-08-InstCombineCrash.ll
index 02939c0..6e241f4 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-12-08-InstCombineCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-12-08-InstCombineCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as %s -o - | opt -instcombine
+; RUN: llvm-upgrade %s -o - | llvm-as | opt -instcombine
 
 	%struct.llvm_java_object_base = type opaque
 	"java/lang/Object" = type { %struct.llvm_java_object_base }
diff --git a/llvm/test/Regression/Transforms/InstCombine/2004-12-08-RemInfiniteLoop.ll b/llvm/test/Regression/Transforms/InstCombine/2004-12-08-RemInfiniteLoop.ll
index 7f83fa8..fb18ea2 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2004-12-08-RemInfiniteLoop.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2004-12-08-RemInfiniteLoop.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine
 
 int %test(int %X) {
 	%Y = rem int %X, undef
diff --git a/llvm/test/Regression/Transforms/InstCombine/2005-03-04-ShiftOverflow.ll b/llvm/test/Regression/Transforms/InstCombine/2005-03-04-ShiftOverflow.ll
index 05a4396..c203bb1 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2005-03-04-ShiftOverflow.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2005-03-04-ShiftOverflow.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'ret bool false'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'ret bool false'
 bool %test(ulong %tmp.169) {
 	%tmp.1710 = shr ulong %tmp.169, ubyte 1
 	%tmp.1912 = setgt ulong %tmp.1710, 0
diff --git a/llvm/test/Regression/Transforms/InstCombine/2005-04-07-UDivSelectCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2005-04-07-UDivSelectCrash.ll
index b41dbd5..8e523d3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2005-04-07-UDivSelectCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2005-04-07-UDivSelectCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 uint %test(bool %C, uint %tmp.15) {
 	%tmp.16 = select bool %C, uint 8, uint 1
diff --git a/llvm/test/Regression/Transforms/InstCombine/2005-06-15-DivSelectCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2005-06-15-DivSelectCrash.ll
index 0d4e8ca..fa862fe 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2005-06-15-DivSelectCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2005-06-15-DivSelectCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 int %_Z13func_31585107li(int %l_39521025, int %l_59244666) {
 	%shortcirc_val = select bool false, uint 1, uint 0		; <uint> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/2005-06-15-ShiftSetCCCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2005-06-15-ShiftSetCCCrash.ll
index fed675e..deb6124 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2005-06-15-ShiftSetCCCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2005-06-15-ShiftSetCCCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 ; PR577
 
 bool %test() {
diff --git a/llvm/test/Regression/Transforms/InstCombine/2005-06-16-RangeCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2005-06-16-RangeCrash.ll
index a586d87..ef44301 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2005-06-16-RangeCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2005-06-16-RangeCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 ; PR585
 bool %test() {
 	%tmp.26 = div int 0, -2147483648		; <int> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/2005-06-16-SetCCOrSetCCMiscompile.ll b/llvm/test/Regression/Transforms/InstCombine/2005-06-16-SetCCOrSetCCMiscompile.ll
index 5347097..49abb12 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2005-06-16-SetCCOrSetCCMiscompile.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2005-06-16-SetCCOrSetCCMiscompile.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'ret bool true'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'ret bool true'
 ; PR586
 
 %g_07918478 = external global uint		; <uint*> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/2005-07-07-DeadPHILoop.ll b/llvm/test/Regression/Transforms/InstCombine/2005-07-07-DeadPHILoop.ll
index 29a1d7f..be9837d 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2005-07-07-DeadPHILoop.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2005-07-07-DeadPHILoop.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 ; This example caused instcombine to spin into an infinite loop.
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-02-07-SextZextCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2006-02-07-SextZextCrash.ll
index f3591e6..e06dca9 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-02-07-SextZextCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-02-07-SextZextCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output	
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output	
 
 	%struct.rtx_const = type { uint, { %union.real_extract } }
 	%struct.rtx_def = type { int, [1 x %union.rtunion_def] }
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-02-13-DemandedMiscompile.ll b/llvm/test/Regression/Transforms/InstCombine/2006-02-13-DemandedMiscompile.ll
index f070338..f345775 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-02-13-DemandedMiscompile.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-02-13-DemandedMiscompile.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep undef
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep undef
 
 int %test(sbyte %A) {
 	%B = cast sbyte %A to int
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-02-28-Crash.ll b/llvm/test/Regression/Transforms/InstCombine/2006-02-28-Crash.ll
index 17fc8b6..241c254 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-02-28-Crash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-02-28-Crash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 int %test() {
         %tmp203 = seteq uint 1, 2               ; <bool> [#uses=1]
         %tmp203 = cast bool %tmp203 to int              ; <int> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-03-30-ExtractElement.ll b/llvm/test/Regression/Transforms/InstCombine/2006-03-30-ExtractElement.ll
index 99ecd35..3149460 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-03-30-ExtractElement.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-03-30-ExtractElement.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 float %test(<4 x float> %V) {
 	%V2 = insertelement <4 x float> %V, float 1.0, uint 3
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-04-01-InfLoop.ll b/llvm/test/Regression/Transforms/InstCombine/2006-04-01-InfLoop.ll
index d77b1fb..260b9b3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-04-01-InfLoop.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-04-01-InfLoop.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 	%struct.DecRefPicMarking_s = type { int, int, int, int, int, %struct.DecRefPicMarking_s* }
 	%struct.datapartition = type { %typedef.Bitstream*, %typedef.DecodingEnvironment, int (%struct.syntaxelement*, %struct.img_par*, %struct.inp_par*, %struct.datapartition*)* }
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-04-28-ShiftShiftLongLong.ll b/llvm/test/Regression/Transforms/InstCombine/2006-04-28-ShiftShiftLongLong.ll
index 5c38342..12fc742 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-04-28-ShiftShiftLongLong.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-04-28-ShiftShiftLongLong.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep shl &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | notcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep shl &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | notcast
 
 ; This cannot be turned into a sign extending cast!
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-05-04-DemandedBitCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2006-05-04-DemandedBitCrash.ll
index 2a6a441..6f95e92 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-05-04-DemandedBitCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-05-04-DemandedBitCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 void %test() {
 bb38.i:
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-05-06-Infloop.ll b/llvm/test/Regression/Transforms/InstCombine/2006-05-06-Infloop.ll
index 633b7b6..ef05e6b 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-05-06-Infloop.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-05-06-Infloop.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 	%struct.gs_matrix = type { float, int, float, int, float, int, float, int, float, int, float, int }
 	%struct.gx_bitmap = type { ubyte*, int, int, int }
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-05-10-InvalidIndexUndef.ll b/llvm/test/Regression/Transforms/InstCombine/2006-05-10-InvalidIndexUndef.ll
index c6eb303..8cdaa58 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-05-10-InvalidIndexUndef.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-05-10-InvalidIndexUndef.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep undef
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep undef
 ; XFAIL: *
 
 %str = constant [4 x ubyte] c"str\00"
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-06-28-infloop.ll b/llvm/test/Regression/Transforms/InstCombine/2006-06-28-infloop.ll
index 2c48ffb..beb4489 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-06-28-infloop.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-06-28-infloop.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 target endian = big
 target pointersize = 32
 target triple = "powerpc-apple-darwin8"
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-09-11-EmptyStructCrash.ll b/llvm/test/Regression/Transforms/InstCombine/2006-09-11-EmptyStructCrash.ll
index 0369307..a8f9cd4 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-09-11-EmptyStructCrash.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-09-11-EmptyStructCrash.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 ; PR905
 
 	%RPYTHON_EXCEPTION = type { %RPYTHON_EXCEPTION_VTABLE* }
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-09-15-CastToBool.ll b/llvm/test/Regression/Transforms/InstCombine/2006-09-15-CastToBool.ll
index e649b3e..c38b325 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-09-15-CastToBool.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-09-15-CastToBool.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep and
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep and
 ; PR913
 
 int %test(int* %tmp1) {
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst-2.ll b/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst-2.ll
index f7925e1..d3bfdfa 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst-2.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst-2.ll
@@ -1,5 +1,5 @@
 ; The optimizer should be able to remove cast operation here.
-; RUN: llvm-as %s -o - | opt -instcombine | llvm-dis | not grep 'sext.*int'
+; RUN: llvm-upgrade %s -o - | llvm-as | opt -instcombine | llvm-dis | not grep 'sext.*int'
 
 bool %eq_signed_to_small_unsigned(sbyte %SB) {
    %Y = cast sbyte %SB to uint         ; <uint> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst.ll b/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst.ll
index f23f5fb..cab0b94 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst.ll
@@ -1,6 +1,6 @@
 ; This test case is reduced from llvmAsmParser.cpp
 ; The optimizer should not remove the cast here.
-; RUN: llvm-as %s -o - | opt -instcombine | llvm-dis | grep 'sext.*int'
+; RUN: llvm-upgrade %s -o - | llvm-as | opt -instcombine | llvm-dis | grep 'sext.*int'
 
 bool %test(short %X) {
     %A = cast short %X to uint
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-10-20-mask.ll b/llvm/test/Regression/Transforms/InstCombine/2006-10-20-mask.ll
index 2596d52..51855cd 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-10-20-mask.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-10-20-mask.ll
@@ -1,4 +1,4 @@
-;  RUN: llvm-as %s -o - | opt -instcombine | llvm-dis | grep 'and'
+;  RUN: llvm-upgrade %s -o - | llvm-as | opt -instcombine | llvm-dis | grep 'and'
 ulong %foo(ulong %tmp, ulong %tmp2) {
   %tmp = cast ulong %tmp to uint
   %tmp2 = cast ulong %tmp2 to uint
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-10-26-VectorReassoc.ll b/llvm/test/Regression/Transforms/InstCombine/2006-10-26-VectorReassoc.ll
index cf68f63..a7172b8 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-10-26-VectorReassoc.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-10-26-VectorReassoc.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep mul | wc -l | grep 2
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep mul | wc -l | grep 2
 
 
 <4 x float> %test(<4 x float> %V) {
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-11-03-Memmove64.ll b/llvm/test/Regression/Transforms/InstCombine/2006-11-03-Memmove64.ll
index b4c3a53..e863ab8 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-11-03-Memmove64.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-11-03-Memmove64.ll
@@ -1,4 +1,4 @@
-;RUN: llvm-as < %s | opt -instcombine | llvm-dis |not grep memmove.i32
+;RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis |not grep memmove.i32
 ; Instcombine was trying to turn this into a memmove.i32
 
 target datalayout = "e-p:64:64"
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-11-10-ashr-miscompile.ll b/llvm/test/Regression/Transforms/InstCombine/2006-11-10-ashr-miscompile.ll
index 85c1f91..1809d3c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-11-10-ashr-miscompile.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-11-10-ashr-miscompile.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep lshr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep lshr
 ; Verify this is not turned into -1.
 
 int %test(ubyte %amt) {
diff --git a/llvm/test/Regression/Transforms/InstCombine/2006-11-27-XorBug.ll b/llvm/test/Regression/Transforms/InstCombine/2006-11-27-XorBug.ll
index b1dd1e8..6150166 100644
--- a/llvm/test/Regression/Transforms/InstCombine/2006-11-27-XorBug.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/2006-11-27-XorBug.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'and.*32' &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'or.*153'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'and.*32' &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'or.*153'
 ; PR1014
 
 int %test(int %tmp1) {
diff --git a/llvm/test/Regression/Transforms/InstCombine/CPP_min_max.llx b/llvm/test/Regression/Transforms/InstCombine/CPP_min_max.llx
index 0a0baf8..e64d0b9 100644
--- a/llvm/test/Regression/Transforms/InstCombine/CPP_min_max.llx
+++ b/llvm/test/Regression/Transforms/InstCombine/CPP_min_max.llx
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep select | not grep 'int\*'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep select | not grep 'int\*'
 
 ; This testcase corresponds to PR362, which notices that this horrible code
 ; is generated by the C++ front-end and LLVM optimizers, which has lots of
diff --git a/llvm/test/Regression/Transforms/InstCombine/GEPIdxCanon.ll b/llvm/test/Regression/Transforms/InstCombine/GEPIdxCanon.ll
index 0dcce2d..afaabc3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/GEPIdxCanon.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/GEPIdxCanon.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -gcse -instcombine | llvm-dis | not grep getelementptr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -gcse -instcombine | llvm-dis | not grep getelementptr
 
 bool %test(int* %A) {
 	%B = getelementptr int* %A, int 1
diff --git a/llvm/test/Regression/Transforms/InstCombine/IntPtrCast.ll b/llvm/test/Regression/Transforms/InstCombine/IntPtrCast.ll
index c3cc967..9f509b6 100644
--- a/llvm/test/Regression/Transforms/InstCombine/IntPtrCast.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/IntPtrCast.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | notcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | notcast
 target pointersize = 32
 
 int *%test(int *%P) {
diff --git a/llvm/test/Regression/Transforms/InstCombine/JavaCompare.ll b/llvm/test/Regression/Transforms/InstCombine/JavaCompare.ll
index 30208f5..cce9609 100644
--- a/llvm/test/Regression/Transforms/InstCombine/JavaCompare.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/JavaCompare.ll
@@ -1,7 +1,7 @@
 ; This is the sequence of stuff that the Java front-end expands for a single 
 ; <= comparison.  Check to make sure we turn it into a <= (only)
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v setle | not grep '#uses'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep -v setle | not grep '#uses'
 
 bool %le(int %A, int %B) {
         %c1 = setgt int %A, %B;
diff --git a/llvm/test/Regression/Transforms/InstCombine/add.ll b/llvm/test/Regression/Transforms/InstCombine/add.ll
index 382596b..55eba64 100644
--- a/llvm/test/Regression/Transforms/InstCombine/add.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/add.ll
@@ -1,6 +1,6 @@
 ; This test makes sure that add instructions are properly eliminated.
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v OK | not grep add
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep -v OK | not grep add
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/alloca.ll b/llvm/test/Regression/Transforms/InstCombine/alloca.ll
index 23a52c3..c5d7818 100644
--- a/llvm/test/Regression/Transforms/InstCombine/alloca.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/alloca.ll
@@ -1,6 +1,6 @@
 ; Zero byte allocas should be deleted.
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep alloca
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep alloca
 
 declare void %use(...)
 void %test() {
diff --git a/llvm/test/Regression/Transforms/InstCombine/and-compare.ll b/llvm/test/Regression/Transforms/InstCombine/and-compare.ll
index 35516a5..864b8c2 100644
--- a/llvm/test/Regression/Transforms/InstCombine/and-compare.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/and-compare.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep and | wc -l | grep 1
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep and | wc -l | grep 1
 
 ; Should be optimized to one and.
 bool %test1(uint %a, uint %b) {
diff --git a/llvm/test/Regression/Transforms/InstCombine/and-or-and.ll b/llvm/test/Regression/Transforms/InstCombine/and-or-and.ll
index f497f3f..1c8465c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/and-or-and.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/and-or-and.ll
@@ -9,7 +9,7 @@
 ;
 ; Which corresponds to test1.
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'or '
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'or '
 
 int %test1(int %X, int %Y) {
 	%A = and int %X, 7
diff --git a/llvm/test/Regression/Transforms/InstCombine/and.ll b/llvm/test/Regression/Transforms/InstCombine/and.ll
index ed6d26b..dc30c56 100644
--- a/llvm/test/Regression/Transforms/InstCombine/and.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/and.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep and
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep and
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/binop-cast.ll b/llvm/test/Regression/Transforms/InstCombine/binop-cast.ll
index 13404df..7ca0151 100644
--- a/llvm/test/Regression/Transforms/InstCombine/binop-cast.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/binop-cast.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | notcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | notcast
 
 uint %testAdd(int %X, int %Y) {
 	%tmp = add int %X, %Y
diff --git a/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll b/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll
index c7806ec..f665473 100644
--- a/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll
@@ -1,7 +1,7 @@
 ; This file contains various testcases that require tracking whether bits are
 ; set or cleared by various instructions.
-; RUN: llvm-as < %s | opt -instcombine -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine -instcombine | llvm-dis | not grep %ELIM
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -instcombine | llvm-dis | not grep %ELIM
 
 ; Reduce down to a single XOR
 int %test3(int %B) {
diff --git a/llvm/test/Regression/Transforms/InstCombine/bittest.ll b/llvm/test/Regression/Transforms/InstCombine/bittest.ll
index a4f1d41..7fb5fde 100644
--- a/llvm/test/Regression/Transforms/InstCombine/bittest.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/bittest.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine -simplifycfg -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine -simplifycfg | llvm-dis | not grep 'call void %abort'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -simplifycfg -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -simplifycfg | llvm-dis | not grep 'call void %abort'
 
 %b_rec.0 = external global int
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/bswap-fold.ll b/llvm/test/Regression/Transforms/InstCombine/bswap-fold.ll
index eb7539c..0ee486a 100644
--- a/llvm/test/Regression/Transforms/InstCombine/bswap-fold.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/bswap-fold.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep ret | wc -l | grep 3 &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'call.*bswap'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep ret | wc -l | grep 3 &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'call.*bswap'
 
 bool %test1(ushort %tmp2) {
 	%tmp10 = call ushort %llvm.bswap.i16( ushort %tmp2 )		
diff --git a/llvm/test/Regression/Transforms/InstCombine/bswap.ll b/llvm/test/Regression/Transforms/InstCombine/bswap.ll
index 87caf29..5eed8b3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/bswap.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/bswap.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'call.*llvm.bswap' | wc -l | grep 5
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'call.*llvm.bswap' | wc -l | grep 5
 
 uint %test1(uint %i) {
         %tmp1 = shr uint %i, ubyte 24           ; <uint> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/call-cast-target.ll b/llvm/test/Regression/Transforms/InstCombine/call-cast-target.ll
index 77097ca..4a3cb2a 100644
--- a/llvm/test/Regression/Transforms/InstCombine/call-cast-target.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/call-cast-target.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep call | not grep bitcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep call | not grep bitcast
 
 target endian = little
 target pointersize = 32
diff --git a/llvm/test/Regression/Transforms/InstCombine/call-intrinsics.ll b/llvm/test/Regression/Transforms/InstCombine/call-intrinsics.ll
index 07435c4a..df04202 100644
--- a/llvm/test/Regression/Transforms/InstCombine/call-intrinsics.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/call-intrinsics.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis
 
 declare void %llvm.memmove(sbyte*, sbyte*, uint, uint)
 declare void %llvm.memcpy(sbyte*, sbyte*, uint, uint)
diff --git a/llvm/test/Regression/Transforms/InstCombine/call.ll b/llvm/test/Regression/Transforms/InstCombine/call.ll
index f721f35..aa9495e 100644
--- a/llvm/test/Regression/Transforms/InstCombine/call.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/call.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep call | notcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep call | notcast
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/canonicalize_branch.ll b/llvm/test/Regression/Transforms/InstCombine/canonicalize_branch.ll
index dbf3ab2..1434c7b 100644
--- a/llvm/test/Regression/Transforms/InstCombine/canonicalize_branch.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/canonicalize_branch.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'setne\|setle\|setge'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'setne\|setle\|setge'
 
 int %test1(uint %X, uint %Y) {
 	%C = setne uint %X, %Y
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast-and-cast.ll b/llvm/test/Regression/Transforms/InstCombine/cast-and-cast.ll
index 64647fb..b141974 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast-and-cast.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast-and-cast.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep bitcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep bitcast
 
 bool %test1(uint %val) {
   %t1 = bitcast uint %val to int 
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast-cast-to-and.ll b/llvm/test/Regression/Transforms/InstCombine/cast-cast-to-and.ll
index 0491de9..8789b98 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast-cast-to-and.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast-cast-to-and.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep ubyte
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep ubyte
 
 int %test1(uint %X) {
         %Y = cast uint %X to ubyte ;; Turn into an AND
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast-load-gep.ll b/llvm/test/Regression/Transforms/InstCombine/cast-load-gep.ll
index 9c997b8..0a369bc 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast-load-gep.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast-load-gep.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -globaldce | llvm-dis | not grep Array
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -globaldce | llvm-dis | not grep Array
 
 ; Pulling the cast out of the load allows us to eliminate the load, and then 
 ; the whole array.
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast-malloc.ll b/llvm/test/Regression/Transforms/InstCombine/cast-malloc.ll
index 25eb436..2458bf3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast-malloc.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast-malloc.ll
@@ -1,5 +1,5 @@
 ; test that casted mallocs get converted to malloc of the right type
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep bitcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep bitcast
 
 int* %test(uint %size) {
 	%X = malloc long, uint %size
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast-propagate.ll b/llvm/test/Regression/Transforms/InstCombine/cast-propagate.ll
index f3b4730..d4f07a4 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast-propagate.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast-propagate.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine -mem2reg | llvm-dis | not grep load
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -mem2reg | llvm-dis | not grep load
 
 int %test1(uint* %P) {
 	%A = alloca uint 
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast-set.ll b/llvm/test/Regression/Transforms/InstCombine/cast-set.ll
index a1ac29b..801aa1b 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast-set.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast-set.ll
@@ -1,7 +1,7 @@
 ; This tests for various complex cast elimination cases instcombine should
 ; handle.
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | notcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | notcast
 
 bool %test1(int %X) {
 	%A = cast int %X to uint
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast.ll b/llvm/test/Regression/Transforms/InstCombine/cast.ll
index 32b6215..8c6e379 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast.ll
@@ -1,6 +1,6 @@
 ; Tests to make sure elimination of casts is working correctly
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep '%c' | notcast
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep '%c' | notcast
 
 %inbuf = external global [32832 x ubyte]
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/cast_ptr.ll b/llvm/test/Regression/Transforms/InstCombine/cast_ptr.ll
index 7b57256..19d3ca6 100644
--- a/llvm/test/Regression/Transforms/InstCombine/cast_ptr.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/cast_ptr.ll
@@ -1,6 +1,6 @@
 ; Tests to make sure elimination of casts is working correctly
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep '\([sz]ext\)\|\(trunc\)'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep '\([sz]ext\)\|\(trunc\)'
 
 target pointersize = 32
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/deadcode.ll b/llvm/test/Regression/Transforms/InstCombine/deadcode.ll
index e738576..fbd3c0c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/deadcode.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/deadcode.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'ret int %A'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'ret int %A'
 
 int %test(int %A) {
   %X = or bool false, false
diff --git a/llvm/test/Regression/Transforms/InstCombine/div.ll b/llvm/test/Regression/Transforms/InstCombine/div.ll
index fdcbd02..18d93c2 100644
--- a/llvm/test/Regression/Transforms/InstCombine/div.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/div.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that div instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep div
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep div
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/fpcast.ll b/llvm/test/Regression/Transforms/InstCombine/fpcast.ll
index 31cd47f..dedcd13 100644
--- a/llvm/test/Regression/Transforms/InstCombine/fpcast.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/fpcast.ll
@@ -1,6 +1,6 @@
 ; Test some floating point casting cases
-; RUN: llvm-as %s -o - | opt -instcombine | llvm-dis | notcast
-; RUN: llvm-as %s -o - | opt -instcombine | llvm-dis | \
+; RUN: llvm-upgrade %s -o - | llvm-as | opt -instcombine | llvm-dis | notcast
+; RUN: llvm-upgrade %s -o - | llvm-as | opt -instcombine | llvm-dis | \
 ; RUN:   grep 'ret [us]byte \(-1\)\|\(255\)'
 
 sbyte %test() {
diff --git a/llvm/test/Regression/Transforms/InstCombine/getelementptr-setcc.ll b/llvm/test/Regression/Transforms/InstCombine/getelementptr-setcc.ll
index 292e4ae..4b637f2 100644
--- a/llvm/test/Regression/Transforms/InstCombine/getelementptr-setcc.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/getelementptr-setcc.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep getelementptr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep getelementptr
 
 bool %test1(short* %P, int %I, int %J) {
     %X = getelementptr short* %P, int %I
diff --git a/llvm/test/Regression/Transforms/InstCombine/getelementptr.ll b/llvm/test/Regression/Transforms/InstCombine/getelementptr.ll
index 1d3efed..53a2892 100644
--- a/llvm/test/Regression/Transforms/InstCombine/getelementptr.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/getelementptr.ll
@@ -1,6 +1,6 @@
 ; The %A getelementptr instruction should be eliminated here
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v '%B' | not grep getelementptr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep -v '%B' | not grep getelementptr
 
 %Global = constant [10 x sbyte] c"helloworld"
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/getelementptr_cast.ll b/llvm/test/Regression/Transforms/InstCombine/getelementptr_cast.ll
index b600874..9d629d3 100644
--- a/llvm/test/Regression/Transforms/InstCombine/getelementptr_cast.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/getelementptr_cast.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | notcast '' 'getelementptr.*'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | notcast '' 'getelementptr.*'
 %G = external global [3 x sbyte]
 
 implementation
diff --git a/llvm/test/Regression/Transforms/InstCombine/getelementptr_const.ll b/llvm/test/Regression/Transforms/InstCombine/getelementptr_const.ll
index a4150de..9a078c5 100644
--- a/llvm/test/Regression/Transforms/InstCombine/getelementptr_const.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/getelementptr_const.ll
@@ -1,5 +1,5 @@
 ; Test folding of constantexpr geps into normal geps.
-; RUN: llvm-as < %s | opt -instcombine -gcse -instcombine | llvm-dis | not grep getelementptr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -gcse -instcombine | llvm-dis | not grep getelementptr
 
 %Array = external global [40 x int]
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/getelementptr_index.ll b/llvm/test/Regression/Transforms/InstCombine/getelementptr_index.ll
index 8346fa5..c4a7317 100644
--- a/llvm/test/Regression/Transforms/InstCombine/getelementptr_index.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/getelementptr_index.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep trunc
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep trunc
 
 target endian = little
 target pointersize = 32
diff --git a/llvm/test/Regression/Transforms/InstCombine/hoist_instr.ll b/llvm/test/Regression/Transforms/InstCombine/hoist_instr.ll
index 1b6caf6..4059563 100644
--- a/llvm/test/Regression/Transforms/InstCombine/hoist_instr.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/hoist_instr.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | %prcontext div 1 | grep then:
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | %prcontext div 1 | grep then:
 
 ;; This tests that the div is hoisted into the then block.
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/load.ll b/llvm/test/Regression/Transforms/InstCombine/load.ll
index 6b3f4a6..58f9894 100644
--- a/llvm/test/Regression/Transforms/InstCombine/load.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/load.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep load
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep load
 
 %X = constant int 42
 %X2 = constant int 47
diff --git a/llvm/test/Regression/Transforms/InstCombine/malloc.ll b/llvm/test/Regression/Transforms/InstCombine/malloc.ll
index ed13f41..34fdfe8 100644
--- a/llvm/test/Regression/Transforms/InstCombine/malloc.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/malloc.ll
@@ -1,5 +1,5 @@
 ; test that malloc's with a constant argument are promoted to array allocations
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep getelementptr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep getelementptr
 
 int* %test() {
 	%X = malloc int, uint 4
diff --git a/llvm/test/Regression/Transforms/InstCombine/memmove.ll b/llvm/test/Regression/Transforms/InstCombine/memmove.ll
index 1313d34..fb20dbc 100644
--- a/llvm/test/Regression/Transforms/InstCombine/memmove.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/memmove.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that memmove instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'call void %llvm.memmove'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'call void %llvm.memmove'
 
 %S = internal constant [33 x sbyte] c"panic: restorelist inconsistency\00"
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/mul.ll b/llvm/test/Regression/Transforms/InstCombine/mul.ll
index f52b0f4..ccec6b8 100644
--- a/llvm/test/Regression/Transforms/InstCombine/mul.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/mul.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that mul instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep mul
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep mul
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/narrow.ll b/llvm/test/Regression/Transforms/InstCombine/narrow.ll
index 75a78a3..c382575 100644
--- a/llvm/test/Regression/Transforms/InstCombine/narrow.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/narrow.ll
@@ -1,7 +1,7 @@
 ; This file contains various testcases that check to see that instcombine
 ; is narrowing computations when possible.
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'ret bool false'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'ret bool false'
 
 ; test1 - Eliminating the casts in this testcase (by narrowing the AND
 ; operation) allows instcombine to realize the function always returns false.
diff --git a/llvm/test/Regression/Transforms/InstCombine/not.ll b/llvm/test/Regression/Transforms/InstCombine/not.ll
index 1171846..3e85692 100644
--- a/llvm/test/Regression/Transforms/InstCombine/not.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/not.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep xor
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep xor
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/or.ll b/llvm/test/Regression/Transforms/InstCombine/or.ll
index 4b731df..933f5f0 100644
--- a/llvm/test/Regression/Transforms/InstCombine/or.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/or.ll
@@ -1,8 +1,8 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v xor | not grep 'or '
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep -v xor | not grep 'or '
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/phi.ll b/llvm/test/Regression/Transforms/InstCombine/phi.ll
index 830c44f..296e2e5 100644
--- a/llvm/test/Regression/Transforms/InstCombine/phi.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/phi.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep phi
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep phi
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/rem.ll b/llvm/test/Regression/Transforms/InstCombine/rem.ll
index da8c20a..ccb358d 100644
--- a/llvm/test/Regression/Transforms/InstCombine/rem.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/rem.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep rem
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep rem
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/select.ll b/llvm/test/Regression/Transforms/InstCombine/select.ll
index 617f0f9..a9dd75d 100644
--- a/llvm/test/Regression/Transforms/InstCombine/select.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/select.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep select &&
-; RUN: llvm-as < %s | opt -instcombine -disable-output
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep select &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/set.ll b/llvm/test/Regression/Transforms/InstCombine/set.ll
index 756ade4..a9ef2bf 100644
--- a/llvm/test/Regression/Transforms/InstCombine/set.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/set.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep set
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep set
 
 %X = uninitialized global int
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/setcc-cast-cast.ll b/llvm/test/Regression/Transforms/InstCombine/setcc-cast-cast.ll
index e311c52..a25fa0c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/setcc-cast-cast.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/setcc-cast-cast.ll
@@ -1,7 +1,7 @@
 ; This test case was reduced from MultiSource/Applications/hbd. It makes sure
 ; that folding doesn't happen in case a zext is applied where a sext should have
 ; been when a setcc is used with two casts.
-; RUN: llvm-as < %s | llc -instcombine | llvm-dis | not grep 'br bool false'
+; RUN: llvm-upgrade < %s | llvm-as | llc -instcombine | llvm-dis | not grep 'br bool false'
 int %bug(ubyte %inbuff) {
 entry:
 	%tmp = bitcast ubyte %inbuff to sbyte   ; <sbyte> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/setcc-strength-reduce.ll b/llvm/test/Regression/Transforms/InstCombine/setcc-strength-reduce.ll
index 0c6683c..4c862063 100644
--- a/llvm/test/Regression/Transforms/InstCombine/setcc-strength-reduce.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/setcc-strength-reduce.ll
@@ -3,7 +3,7 @@
 ; into equivalent setne,eq instructions.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v seteq | grep -v setne | not grep set
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep -v seteq | grep -v setne | not grep set
 
 bool %test1(uint %A) {
 	%B = setge uint %A, 1   ; setne %A, 0
diff --git a/llvm/test/Regression/Transforms/InstCombine/shift-simplify.ll b/llvm/test/Regression/Transforms/InstCombine/shift-simplify.ll
index b91637f..ce19384 100644
--- a/llvm/test/Regression/Transforms/InstCombine/shift-simplify.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/shift-simplify.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | egrep 'shl|lshr|ashr' | wc -l | grep 3
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | egrep 'shl|lshr|ashr' | wc -l | grep 3
 
 int %test0(int %A, int %B, ubyte %C) {
 	%X = shl int %A, ubyte %C
diff --git a/llvm/test/Regression/Transforms/InstCombine/shift-sra.ll b/llvm/test/Regression/Transforms/InstCombine/shift-sra.ll
index fe1b142..43a4ebd 100644
--- a/llvm/test/Regression/Transforms/InstCombine/shift-sra.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/shift-sra.ll
@@ -1,6 +1,6 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'lshr int' | wc -l | grep 2 &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep ashr
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'lshr int' | wc -l | grep 2 &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep ashr
 
 int %test1(int %X, ubyte %A) {
 	%Y = shr int %X, ubyte %A  ; can be logical shift.
diff --git a/llvm/test/Regression/Transforms/InstCombine/shift.ll b/llvm/test/Regression/Transforms/InstCombine/shift.ll
index 9756880..28c5170 100644
--- a/llvm/test/Regression/Transforms/InstCombine/shift.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/shift.ll
@@ -1,8 +1,8 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep sh
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep sh
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/signext.ll b/llvm/test/Regression/Transforms/InstCombine/signext.ll
index a3b4982..7dcb466 100644
--- a/llvm/test/Regression/Transforms/InstCombine/signext.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/signext.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep '(and\|xor\|add\|shl\|shr)'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep '(and\|xor\|add\|shl\|shr)'
 
 int %test1(int %x) {
         %tmp.1 = and int %x, 65535              ; <int> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/sink_instruction.ll b/llvm/test/Regression/Transforms/InstCombine/sink_instruction.ll
index 36e0357..a45c161 100644
--- a/llvm/test/Regression/Transforms/InstCombine/sink_instruction.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/sink_instruction.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | %prcontext div 1 | grep ret
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | %prcontext div 1 | grep ret
 
 ;; This tests that the instructions in the entry blocks are sunk into each
 ;; arm of the 'if'.
diff --git a/llvm/test/Regression/Transforms/InstCombine/stacksaverestore.ll b/llvm/test/Regression/Transforms/InstCombine/stacksaverestore.ll
index c41a1b1..d9633b5 100644
--- a/llvm/test/Regression/Transforms/InstCombine/stacksaverestore.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/stacksaverestore.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep call
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep call
 
 ;; Test that llvm.stackrestore is removed when possible.
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/store.ll b/llvm/test/Regression/Transforms/InstCombine/store.ll
index d2442fa..2102fec 100644
--- a/llvm/test/Regression/Transforms/InstCombine/store.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/store.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v 'store.*,.*null' | not grep store
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep -v 'store.*,.*null' | not grep store
 
 void %test1(int* %P) {
 	store int undef, int* %P
diff --git a/llvm/test/Regression/Transforms/InstCombine/sub.ll b/llvm/test/Regression/Transforms/InstCombine/sub.ll
index 7d72805..8ca2e78 100644
--- a/llvm/test/Regression/Transforms/InstCombine/sub.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/sub.ll
@@ -1,7 +1,7 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v 'sub int %Cok, %Bok' | not grep sub
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep -v 'sub int %Cok, %Bok' | not grep sub
 
 implementation
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/vec_demanded_elts.ll b/llvm/test/Regression/Transforms/InstCombine/vec_demanded_elts.ll
index 3da22e7..9642ffd 100644
--- a/llvm/test/Regression/Transforms/InstCombine/vec_demanded_elts.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/vec_demanded_elts.ll
@@ -1,8 +1,8 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'sub float' &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'mul float' &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'insertelement.*0.00' &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'call.*llvm.x86.sse.mul' &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'call.*llvm.x86.sse.sub'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'sub float' &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'mul float' &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'insertelement.*0.00' &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'call.*llvm.x86.sse.mul' &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'call.*llvm.x86.sse.sub'
 
 ushort %Convert_sse(float %f) {
 entry:
diff --git a/llvm/test/Regression/Transforms/InstCombine/vec_insert_to_shuffle.ll b/llvm/test/Regression/Transforms/InstCombine/vec_insert_to_shuffle.ll
index 0379203..0611305 100644
--- a/llvm/test/Regression/Transforms/InstCombine/vec_insert_to_shuffle.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/vec_insert_to_shuffle.ll
@@ -1,6 +1,6 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep shufflevec | wc -l | grep 1 &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep insertelement &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep extractelement
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep shufflevec | wc -l | grep 1 &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep insertelement &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep extractelement
 
 <4 x float> %test(<4 x float> %tmp, <4 x float> %tmp1) {
 	%tmp4 = extractelement <4 x float> %tmp, uint 1		; <float> [#uses=1]
diff --git a/llvm/test/Regression/Transforms/InstCombine/vec_narrow.ll b/llvm/test/Regression/Transforms/InstCombine/vec_narrow.ll
index d5c7f85..1ad671c 100644
--- a/llvm/test/Regression/Transforms/InstCombine/vec_narrow.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/vec_narrow.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'add float'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'add float'
 
 %V = type <4 x float>
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/vec_shuffle.ll b/llvm/test/Regression/Transforms/InstCombine/vec_shuffle.ll
index 47ce526..01c24e7 100644
--- a/llvm/test/Regression/Transforms/InstCombine/vec_shuffle.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/vec_shuffle.ll
@@ -1,5 +1,5 @@
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep vector_shuffle
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep vector_shuffle
 
 %T = type <4 x float>
 
diff --git a/llvm/test/Regression/Transforms/InstCombine/xor.ll b/llvm/test/Regression/Transforms/InstCombine/xor.ll
index e9f4d3f..ad28660 100644
--- a/llvm/test/Regression/Transforms/InstCombine/xor.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/xor.ll
@@ -1,8 +1,8 @@
 ; This test makes sure that these instructions are properly eliminated.
 ;
 
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'xor '
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep 'xor '
 
 %G1 = global uint 0
 %G2 = global uint 0
diff --git a/llvm/test/Regression/Transforms/InstCombine/zeroext-and-reduce.ll b/llvm/test/Regression/Transforms/InstCombine/zeroext-and-reduce.ll
index 6c794a3..e32f4b9 100644
--- a/llvm/test/Regression/Transforms/InstCombine/zeroext-and-reduce.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/zeroext-and-reduce.ll
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'and int %Y, 8'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep 'and int %Y, 8'
 
 int %test1(ubyte %X) {
         %Y = cast ubyte %X to int
diff --git a/llvm/test/Regression/Transforms/InstCombine/zext.ll b/llvm/test/Regression/Transforms/InstCombine/zext.ll
index 27442aa..7835fe6 100644
--- a/llvm/test/Regression/Transforms/InstCombine/zext.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/zext.ll
@@ -1,6 +1,6 @@
 ; Tests to make sure elimination of casts is working correctly
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | notcast '' '%c1.*'
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output &&
+; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | notcast '' '%c1.*'
 
 long %test_sext_zext(short %A) {
     %c1 = zext short %A to uint