-; RUN: opt < %s -debugify -dse -S | FileCheck %s
+; RUN: opt < %s -passes=debugify,dse -S | FileCheck %s
target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -S -inferattrs -dse | FileCheck %s
; RUN: opt < %s -S -aa-pipeline=basic-aa -passes=inferattrs,dse | FileCheck %s
target triple = "x86_64-unknown-linux-gnu"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
+; FIXME: These were broken when swapping to MSSA(?). So currently XFAIL:ed.
; XFAIL: *
-; RUN: opt < %s -dse -S | FileCheck %s
; RUN: opt < %s -aa-pipeline=basic-aa -passes=dse -S | FileCheck %s
target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -dse -S | FileCheck %s
; RUN: opt < %s -aa-pipeline=basic-aa -passes=dse -S | FileCheck %s
target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -dse -S | FileCheck %s
; RUN: opt < %s -aa-pipeline=basic-aa -passes='dse,verify<memoryssa>' -S | FileCheck %s
target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -instcombine -S | FileCheck %s
+; RUN: opt < %s -passes=instcombine -S | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -instcombine -S < %s | FileCheck %s
+; RUN: opt -passes=instcombine -S < %s | FileCheck %s
define void @PR37526(ptr %pz, ptr %px, ptr %py) {
; CHECK-LABEL: @PR37526(
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -S -instcombine -instcombine-lower-dbg-declare=0 | FileCheck %s
+; RUN: opt < %s -S -passes=instcombine -instcombine-lower-dbg-declare=0 | FileCheck %s
; In this example, instcombine wants to turn "local" into an i64, since that's
; how it is stored. It should keep the debug info referring to the alloca when
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -instcombine -S -instcombine-infinite-loop-threshold=2 | FileCheck %s
+; RUN: opt < %s -passes=instcombine -S -instcombine-infinite-loop-threshold=2 | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -instcombine -S -instcombine-infinite-loop-threshold=2 | FileCheck --check-prefixes=CHECK,DEFAULT %s
-; RUN: opt < %s -instcombine --enable-knowledge-retention -S -instcombine-infinite-loop-threshold=2 | FileCheck --check-prefixes=CHECK,BUNDLES %s
+; RUN: opt < %s -passes=instcombine -S -instcombine-infinite-loop-threshold=2 | FileCheck --check-prefixes=CHECK,DEFAULT %s
+; RUN: opt < %s -passes=instcombine --enable-knowledge-retention -S -instcombine-infinite-loop-threshold=2 | FileCheck --check-prefixes=CHECK,BUNDLES %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -instcombine -S < %s | FileCheck %s
; RUN: opt -passes=instcombine -S < %s | FileCheck %s
; Check that we fold the condition of branches of the
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -instcombine -S < %s | FileCheck %s
+; RUN: opt -passes=instcombine -S < %s | FileCheck %s
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -instcombine -instcombine-infinite-loop-threshold=2 -S | FileCheck %s
-; RUN: opt < %s -instcombine -S -debugify-each | FileCheck %s
+; RUN: opt < %s -passes=instcombine -instcombine-infinite-loop-threshold=2 -S | FileCheck %s
; RUN: opt < %s -passes=instcombine -S -debugify-each | FileCheck %s
declare void @llvm.experimental.guard(i1, ...)
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -instcombine -S | FileCheck %s
-; RUN: opt -debugify -instcombine -S < %s | FileCheck %s -check-prefix DBGINFO
+; RUN: opt < %s -passes=instcombine -S | FileCheck %s
+; RUN: opt -passes=debugify,instcombine -S < %s | FileCheck %s -check-prefix DBGINFO
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32"
-; RUN: opt -instcombine-lower-dbg-declare=0 < %s -instcombine -S | FileCheck %s
-; RUN: opt -instcombine-lower-dbg-declare=1 < %s -instcombine -S | FileCheck %s
+; RUN: opt -instcombine-lower-dbg-declare=0 < %s -passes=instcombine -S | FileCheck %s
+; RUN: opt -instcombine-lower-dbg-declare=1 < %s -passes=instcombine -S | FileCheck %s
define i32 @foo(i32 %j) #0 !dbg !7 {
entry:
-; RUN: opt < %s -debugify -instcombine -S | FileCheck %s
+; RUN: opt < %s -passes=debugify,instcombine -S | FileCheck %s
declare void @escape32(i32)
-; RUN: opt < %s -instcombine -instcombine-lower-dbg-declare=0 -S \
+; RUN: opt < %s -passes=instcombine -instcombine-lower-dbg-declare=0 -S \
; RUN: | FileCheck %s --check-prefix=CHECK --check-prefix=NOLOWER
-; RUN: opt < %s -instcombine -instcombine-lower-dbg-declare=1 -S | FileCheck %s
+; RUN: opt < %s -passes=instcombine -instcombine-lower-dbg-declare=1 -S | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64--linux"
-; RUN: opt -instcombine %s -o - -S | FileCheck %s
+; RUN: opt -passes=instcombine %s -o - -S | FileCheck %s
; typedef struct v *v_t;
; struct v {
; unsigned long long p;
-; RUN: opt < %s -instcombine -verify -S -o - | FileCheck %s
+; RUN: opt < %s -passes=instcombine,verify -S -o - | FileCheck %s
; Hand-reduced from this example.
; -g -O -mllvm -disable-llvm-optzns -gno-column-info
-; RUN: opt < %s -loop-reroll -S | FileCheck %s
; RUN: opt < %s -passes=loop-reroll -S | FileCheck %s
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-; RUN: opt < %s -loop-reroll -verify-scev -S | FileCheck %s
+; RUN: opt < %s -passes=loop-reroll -verify-scev -S | FileCheck %s
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-; RUN: opt -S -loop-reroll %s | FileCheck %s
+; RUN: opt -S -passes=loop-reroll %s | FileCheck %s
declare i32 @goo(i32, i32)
@buf = external global i8*
-; RUN: opt < %s -loop-reroll -S | FileCheck %s
+; RUN: opt < %s -passes=loop-reroll -S | FileCheck %s
; Check whether rerolling is rejected if values of the base and root
; instruction are used outside the loop block.
-; RUN: opt -S -loop-reroll %s | FileCheck %s
+; RUN: opt -S -passes=loop-reroll %s | FileCheck %s
target triple = "aarch64--linux-gnu"
define void @rerollable1([2 x i32]* nocapture %a) {
-; RUN: opt -S -loop-reroll %s | FileCheck %s
+; RUN: opt -S -passes=loop-reroll %s | FileCheck %s
target triple = "aarch64--linux-gnu"
define void @test(i32 %n, float* %arrayidx200, float* %arrayidx164, float* %arrayidx172) {
-; RUN: opt -S -loop-reroll %s | FileCheck %s
+; RUN: opt -S -passes=loop-reroll %s | FileCheck %s
target triple = "aarch64--linux-gnu"
@buf = global [16 x i8] c"\0A\0A\0A\0A\0A\0A\0A\0A\0A\0A\0A\0A\0A\0A\0A\0A", align 1
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -loop-reroll -S | FileCheck %s
+; RUN: opt < %s -passes=loop-reroll -S | FileCheck %s
target datalayout = "e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:32:64-v128:32:128-a0:0:32-n32-S32"
target triple = "thumbv7-none-linux"
-; RUN: opt -S -loop-reroll %s | FileCheck %s
+; RUN: opt -S -passes=loop-reroll %s | FileCheck %s
target triple = "aarch64--linux-gnu"
define i32 @test(i32* readonly %buf, i32* readnone %end) #0 {
-; RUN: opt < %s -loop-reroll -S | FileCheck %s
+; RUN: opt < %s -passes=loop-reroll -S | FileCheck %s
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-;RUN: opt < %s -loop-reroll -S | FileCheck %s
+;RUN: opt < %s -passes=loop-reroll -S | FileCheck %s
;void foo(float * restrict a, float * restrict b, int n) {
; for(int i = 0; i < n; i+=4) {
; a[i] = b[i];
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -mem2reg -opaque-pointers < %s | FileCheck %s
+; RUN: opt -S -passes=mem2reg -opaque-pointers < %s | FileCheck %s
define i32 @test_same_type() {
; CHECK-LABEL: @test_same_type(
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -memcpyopt -dse -S -verify-memoryssa | FileCheck %s
+; RUN: opt < %s -passes=memcpyopt,dse -S -verify-memoryssa | FileCheck %s
; PR2077
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -memcpyopt -instcombine -S < %s -verify-memoryssa | FileCheck %s
+; RUN: opt -passes=memcpyopt,instcombine -S < %s -verify-memoryssa | FileCheck %s
target datalayout = "e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -memcpyopt -dse -S -verify-memoryssa | FileCheck %s
+; RUN: opt < %s -passes=memcpyopt,dse -S -verify-memoryssa | FileCheck %s
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
target triple = "i686-apple-darwin9"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -memcpyopt -instcombine -S %s -verify-memoryssa | FileCheck %s
+; RUN: opt -passes=memcpyopt,instcombine -S %s -verify-memoryssa | FileCheck %s
%Foo = type { [2048 x i64] }
; Make sure that all mempcy calls are converted to memset calls, or removed.
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
define i32 @test1(i32 %A) {
; CHECK-LABEL: test1
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
define <4 x float> @test1() {
; CHECK-LABEL: test1
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; PR12169
; PR12764
; XFAIL: *
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; D61675
define float @test1(float %arg, float %arg1, float %arg2, float %arg3) {
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -reassociate < %s | FileCheck %s
+; RUN: opt -S -passes=reassociate < %s | FileCheck %s
; Check that if constants combine to an absorbing value then the expression is
; evaluated as the absorbing value.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
define i32 @shl_add(i8 %x) {
; CHECK-LABEL: @shl_add(
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; This test is to make sure while processing a block, uses of instructions
; from a different basic block don't get added to be re-optimized
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Don't produce an instruction that is a no-op because the constant is an identity constant.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -reassociate < %s | FileCheck %s
+; RUN: opt -S -passes=reassociate < %s | FileCheck %s
define i32 @test(i1 %b) {
; CHECK-LABEL: @test(
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -reassociate -S < %s | FileCheck %s
+; RUN: opt -passes=reassociate -S < %s | FileCheck %s
declare void @use(i32)
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -reassociate < %s | FileCheck %s
+; RUN: opt -S -passes=reassociate < %s | FileCheck %s
define void @main(float, float) {
; CHECK-LABEL: @main(
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
define float @test1(float %A) {
; CHECK-LABEL: @test1(
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Check that a*c+b*c is turned into (a+b)*c
; - PhaseOrdering/fast-reassociate-gvn.ll
; - Reassociate/fast-basictest.ll
;
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; ((a + (-3)) + b) + 3 -> a + b
; That only works with both instcombine and reassociate passes enabled.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -reassociate -S < %s | FileCheck %s
+; RUN: opt -passes=reassociate -S < %s | FileCheck %s
declare void @use(float)
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Check that a*a*b+a*a*c is turned into a*(a*(b+c)).
-; RUN: opt -reassociate -S < %s | FileCheck %s
+; RUN: opt -passes=reassociate -S < %s | FileCheck %s
declare void @use(float)
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -reassociate < %s | FileCheck %s
+; RUN: opt -S -passes=reassociate < %s | FileCheck %s
define void @test1() {
; CHECK-LABEL: @test1(
-; RUN: opt -S -reassociate < %s | FileCheck %s
+; RUN: opt -S -passes=reassociate < %s | FileCheck %s
; PR34231
;
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Basic pattern where two contiguous i8 loads form a wider i16 load
define i16 @p0_i8_i8_i16(i8* %ptr) {
; In this case, we want to reassociate the specified expr so that i+j can be
; hoisted out of the inner most loop.
;
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; END.
@.LC0 = internal global [4 x i8] c"%d\0A\00" ; <[4 x i8]*> [#uses=1]
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; PR37098 - https://bugs.llvm.org/show_bug.cgi?id=37098
; In all positive tests, we should reassociate binops
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
define i32 @test1(i32 %a, i32 %b) {
; CHECK-LABEL: @test1(
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Check that a*a*b+a*a*c is turned into a*(a*(b+c)).
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Test that we can turn things like X*-(Y*Z) -> X*-1*Y*Z.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; When there is nothing to do, or not much to do, check that reassociate leaves
; things alone.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -reassociate < %s | FileCheck %s
+; RUN: opt -S -passes=reassociate < %s | FileCheck %s
; rdar://8944681
; Reassociate should clear optional flags like nsw when reassociating.
-; RUN: opt -reassociate -S < %s | FileCheck %s
+; RUN: opt -passes=reassociate -S < %s | FileCheck %s
; PR21205
@a = common global i32 0, align 4
-; RUN: opt < %s -reassociate -S
+; RUN: opt < %s -passes=reassociate -S
; PR28367
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
define float @wibble(float %tmp6) #0 {
; CHECK-LABEL: @wibble(
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
define double @func(double %a, double %b) {
; CHECK-LABEL: @func(
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; B * 5 + A * -5
; TODO: (B - A) * 5
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -reassociate -S -o - | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S -o - | FileCheck %s
; After reassociation m1 and m2 aren't calculated as m1=c*a and m2=c*b any longer.
; So let's verify that the dbg.value nodes for m1 and m3 are invalidated.
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Check that reassociate pass now salvages debug info when dropping instructions.
-; RUN: opt < %s -reassociate -S | FileCheck %s
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s
; Tests involving repeated operations on the same value.
-; RUN: opt -S -reassociate < %s | FileCheck %s
+; RUN: opt -S -passes=reassociate < %s | FileCheck %s
; rdar://9167457
; Reassociate shouldn't break this testcase involving a secondary
-; RUN: opt < %s -reassociate -S | FileCheck %s\r
+; RUN: opt < %s -passes=reassociate -S | FileCheck %s\r
\r
; Check that reassociate pass now undefs debug intrinsics that reference a value\r
; that gets dropped and cannot be salvaged.\r
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-;RUN: opt -S -reassociate < %s | FileCheck %s
+;RUN: opt -S -passes=reassociate < %s | FileCheck %s
; ==========================================================================
;
-; RUN: opt < %s -sink -S | FileCheck %s
+; RUN: opt < %s -passes=sink -S | FileCheck %s
declare void @foo(i64 *)
declare i8* @llvm.load.relative.i32(i8* %ptr, i32 %offset) argmemonly nounwind readonly
define i64 @sinkload(i1 %cmp, i8* %ptr, i32 %off) {
-; RUN: opt < %s -sink -S | FileCheck %s
+; RUN: opt < %s -passes=sink -S | FileCheck %s
; RUN: opt < %s -aa-pipeline='basic-aa' -passes='sink' -S | FileCheck %s
@A = external global i32
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -sink -S | FileCheck %s
+; RUN: opt < %s -passes=sink -S | FileCheck %s
declare i32 @f_load_global() nounwind willreturn readonly
declare i32 @f_load_global_throwable() willreturn readonly
-; RUN: opt -sink -S < %s | FileCheck %s
+; RUN: opt -passes=sink -S < %s | FileCheck %s
target datalayout = "e-m:x-p:32:32-i64:64-f80:32-n8:16:32-a:0:32-S32"
target triple = "i686-pc-windows-msvc"
-; RUN: opt -sink -S < %s | FileCheck %s
+; RUN: opt -passes=sink -S < %s | FileCheck %s
; Verify that IR sinking does not move convergent operations to
; blocks that are not control equivalent.
; Compiler should not be broken with a dead user.
-; RUN: opt -sink -S < %s | FileCheck %s
+; RUN: opt -passes=sink -S < %s | FileCheck %s
; CHECK-LABEL: @test(
; CHECK: bb.0:
-; RUN: opt -S -sink < %s | FileCheck %s
+; RUN: opt -S -passes=sink < %s | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -sink -S < %s | FileCheck %s
+; RUN: opt -passes=sink -S < %s | FileCheck %s
; Loads marked invariant can be sunk across critical edges
; Test that we don't sink landingpads
-; RUN: opt -sink -S < %s | FileCheck %s
+; RUN: opt -passes=sink -S < %s | FileCheck %s
declare hidden void @g()
declare void @h()
-; RUN: opt < %s -deadargelim \
+; RUN: opt < %s -passes=deadargelim \
; RUN: -verify-each-debuginfo-preserve \
; RUN: -debugify-level=locations -S 2>&1 | FileCheck %s
-; RUN: opt < %s -deadargelim \
+; RUN: opt < %s -passes=deadargelim \
; RUN: -verify-each-debuginfo-preserve \
; RUN: -debugify-level=location+variables -S 2>&1 | FileCheck %s --check-prefix=CHECK-DROP
-; RUN: opt < %s -deadargelim \
+; RUN: opt < %s -passes=deadargelim \
; RUN: -verify-each-debuginfo-preserve \
; RUN: -debugify-func-limit=0 -S 2>&1 | FileCheck %s
-; RUN: opt < %s -deadargelim \
+; RUN: opt < %s -passes=deadargelim \
; RUN: -verify-each-debuginfo-preserve \
; RUN: -debugify-func-limit=2 -S 2>&1 | FileCheck %s --check-prefix=CHECK-DROP
-; RUN: opt -vector-library=SVML -inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,SVML
; RUN: opt -vector-library=SVML -passes=inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,SVML
-; RUN: opt -vector-library=MASSV -inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,MASSV
; RUN: opt -vector-library=MASSV -passes=inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,MASSV
-; RUN: opt -vector-library=Accelerate -inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,ACCELERATE
-; RUN: opt -vector-library=LIBMVEC-X86 -inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,LIBMVEC-X86
; RUN: opt -vector-library=LIBMVEC-X86 -passes=inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,LIBMVEC-X86
; RUN: opt -vector-library=Accelerate -passes=inject-tli-mappings -S < %s | FileCheck %s --check-prefixes=COMMON,ACCELERATE
-; RUN: opt -annotation-remarks -pass-remarks-missed='annotation-remarks' -disable-output -pass-remarks-output=%t.opt.yaml %s
-; RUN: FileCheck --input-file=%t.opt.yaml %s
; RUN: opt -passes='annotation-remarks' -pass-remarks-missed='annotation-remarks' -disable-output -pass-remarks-output=%t.opt.yaml %s
; RUN: FileCheck --input-file=%t.opt.yaml %s
-; RUN: opt -annotation-remarks -pass-remarks-missed='annotation-remarks' -disable-output -pass-remarks-output=%t.opt.yaml %s
-; RUN: FileCheck --input-file=%t.opt.yaml %s
; RUN: opt -passes='annotation-remarks' -pass-remarks-missed='annotation-remarks' -disable-output -pass-remarks-output=%t.opt.yaml %s
; RUN: FileCheck --input-file=%t.opt.yaml %s
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -annotation2metadata -pass-remarks-analysis='annotation-remarks' -S %s | FileCheck %s
; RUN: opt -passes='annotation2metadata' -pass-remarks-analysis='annotation-remarks' -S %s | FileCheck %s
@.str = private unnamed_addr constant [10 x i8] c"_remarks1\00", section "llvm.metadata"
-; RUN: opt < %s -S -memcpyopt | FileCheck %s
+; RUN: opt < %s -S -passes=memcpyopt | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
define void @test(ptr noalias dereferenceable(1) %in, ptr noalias dereferenceable(1) %out) {
-; RUN: opt -instcombine -S %s | FileCheck %s
+; RUN: opt -passes=instcombine -S %s | FileCheck %s
define dso_local void @_Z1fv() {
%1 = alloca i32, align 4
; Checks that llvm.dbg.declare -> llvm.dbg.value conversion utility
; (here exposed through the SROA) pass refers to [s|z]exts of values (as
; opposed to the operand of a [s|z]ext).
-; RUN: opt -S -sroa %s | FileCheck %s
+; RUN: opt -S -passes=sroa %s | FileCheck %s
; Built from:
; struct foo { bool b; long i; };
-; RUN: opt -S -instcombine -o - %s | FileCheck %s
+; RUN: opt -S -passes=instcombine -o - %s | FileCheck %s
; Test that fast math lib call simplification of double math function to float
; equivalent doesn't occur when the calling function matches the float
-; RUN: opt < %s -libcalls-shrinkwrap -S | FileCheck %s
-; New PM
; RUN: opt < %s -passes=libcalls-shrinkwrap -S | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
-; RUN: opt < %s -libcalls-shrinkwrap -S | FileCheck %s
-; New PM
; RUN: opt < %s -passes=libcalls-shrinkwrap -S | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
-; RUN: opt < %s -libcalls-shrinkwrap -S | FileCheck %s
-; New PM
; RUN: opt < %s -passes=libcalls-shrinkwrap -S | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
-; RUN: opt -adce %s -S -o - | FileCheck %s
-; RUN: opt -bdce %s -S -o - | FileCheck %s
+; RUN: opt -passes=adce %s -S -o - | FileCheck %s
+; RUN: opt -passes=bdce %s -S -o - | FileCheck %s
target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-apple-macosx"
define void @f(i32) !dbg !8 {
-; RUN: opt -instcombine -instcombine-lower-dbg-declare=1 -S < %s | FileCheck %s
-; RUN: opt -instcombine -instcombine-lower-dbg-declare=0 -S < %s | FileCheck %s --check-prefix=DECLARE
+; RUN: opt -passes=instcombine -instcombine-lower-dbg-declare=1 -S < %s | FileCheck %s
+; RUN: opt -passes=instcombine -instcombine-lower-dbg-declare=0 -S < %s | FileCheck %s --check-prefix=DECLARE
; XFAIL: *
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-linux-gnu"
-; RUN: opt -instcombine -S %s | FileCheck %s
+; RUN: opt -passes=instcombine -S %s | FileCheck %s
%foo = type { i8 }
-; RUN: opt -S -strip-gc-relocates -instcombine < %s | FileCheck %s
; RUN: opt -S -passes=strip-gc-relocates,instcombine < %s | FileCheck %s
; test utility/debugging pass which removes gc.relocates, inserted by -rewrite-statepoints-for-gc
declare void @use_obj32(ptr addrspace(1)) "gc-leaf-function"
-; RUN: opt -S -strip-nonlinetable-debuginfo %s -o %t.ll
+; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o %t.ll
; RUN: cat %t.ll | FileCheck %s
; RUN: cat %t.ll | FileCheck %s --check-prefix=CHECK-NEG
;
-; RUN: opt -S -strip-nonlinetable-debuginfo %s -o - | FileCheck %s
; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o - | FileCheck %s
!llvm.dbg.cu = !{!2, !6}
!llvm.gcov = !{!3}
-; RUN: opt -S -strip-nonlinetable-debuginfo %s -o - | FileCheck %s
+; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o - | FileCheck %s
; RUN: opt -S -strip-debug %s -o - | FileCheck %s
; int *get() { return new int[256]; }
; ModuleID = '/tmp/heapallocsite.cpp'
-; RUN: opt -S -strip-nonlinetable-debuginfo %s -o - | FileCheck %s
+; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o - | FileCheck %s
; CHECK: define void @f()
define void @f() !dbg !4 {
entry:
-; RUN: opt -S -strip-nonlinetable-debuginfo %s -o - | FileCheck %s
+; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o - | FileCheck %s
; CHECK: define void @f() !dbg ![[F:[0-9]+]]
define void @f() !dbg !4 {
entry:
-; RUN: opt -S -strip-nonlinetable-debuginfo %s -o %t
+; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o %t
; RUN: cat %t | FileCheck %s
; RUN: cat %t | FileCheck %s --check-prefix=NEGATIVE
; void f(volatile int *i) {
-; RUN: opt -S -strip-nonlinetable-debuginfo %s -o - | FileCheck %s
+; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o - | FileCheck %s
; Test that subroutine types are downgraded to (void)().
define internal i32 @"__hidden#2878_"() #0 !dbg !12 {
ret i32 0, !dbg !634