From: Chandler Carruth Date: Tue, 27 Dec 2016 07:18:43 +0000 (+0000) Subject: [PM] Turn on the new PM's inliner in addition to the current one for X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=919b2376dcfa8cab5499385cdb06b3a956901e13;p=llvm [PM] Turn on the new PM's inliner in addition to the current one for most of the inliner test cases. The inliner involves a bunch of interesting code and tends to be where most of the issues I've seen experimenting with the new PM lie. All of these test cases pass, but I'd like to keep some more thorough coverage here so doing a fairly blanket enabling. There are a handful of interesting tests I've not enabled yet because they're focused on the always inliner, or on functionality that doesn't (yet) exist in the inliner. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@290592 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Transforms/Inline/2007-04-15-InlineEH.ll b/test/Transforms/Inline/2007-04-15-InlineEH.ll index 55555f03fd6..482c4efcf09 100644 --- a/test/Transforms/Inline/2007-04-15-InlineEH.ll +++ b/test/Transforms/Inline/2007-04-15-InlineEH.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; PR1335 target triple = "i686-pc-linux-gnu" diff --git a/test/Transforms/Inline/2007-06-25-WeakInline.ll b/test/Transforms/Inline/2007-06-25-WeakInline.ll index 760690a0017..064cda6632e 100644 --- a/test/Transforms/Inline/2007-06-25-WeakInline.ll +++ b/test/Transforms/Inline/2007-06-25-WeakInline.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; 'bar' can be overridden at link-time, don't inline it. define weak void @bar() { diff --git a/test/Transforms/Inline/2007-12-19-InlineNoUnwind.ll b/test/Transforms/Inline/2007-12-19-InlineNoUnwind.ll index 16e9d41bffd..2930aec3dbf 100644 --- a/test/Transforms/Inline/2007-12-19-InlineNoUnwind.ll +++ b/test/Transforms/Inline/2007-12-19-InlineNoUnwind.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s declare i1 @extern() diff --git a/test/Transforms/Inline/2008-09-02-NoInline.ll b/test/Transforms/Inline/2008-09-02-NoInline.ll index 92088b3e343..902b53bfe9b 100644 --- a/test/Transforms/Inline/2008-09-02-NoInline.ll +++ b/test/Transforms/Inline/2008-09-02-NoInline.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s define i32 @fn2() noinline { ; CHECK-LABEL: define i32 @fn2() diff --git a/test/Transforms/Inline/2009-01-08-NoInlineDynamicAlloca.ll b/test/Transforms/Inline/2009-01-08-NoInlineDynamicAlloca.ll index e125c821e51..2c4341c7e35 100644 --- a/test/Transforms/Inline/2009-01-08-NoInlineDynamicAlloca.ll +++ b/test/Transforms/Inline/2009-01-08-NoInlineDynamicAlloca.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; Do not inline calls with variable-sized alloca. @q = common global i8* null diff --git a/test/Transforms/Inline/X86/inline-target-attr.ll b/test/Transforms/Inline/X86/inline-target-attr.ll index c59f4b4594b..d0846352ff1 100644 --- a/test/Transforms/Inline/X86/inline-target-attr.ll +++ b/test/Transforms/Inline/X86/inline-target-attr.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -mtriple=x86_64-unknown-linux-gnu -S -inline | FileCheck %s +; RUN: opt < %s -mtriple=x86_64-unknown-linux-gnu -S -passes='cgscc(inline)' | FileCheck %s ; Check that we only inline when we have compatible target attributes. ; X86 has implemented a target attribute that will verify that the attribute ; sets are compatible. diff --git a/test/Transforms/Inline/alloca-bonus.ll b/test/Transforms/Inline/alloca-bonus.ll index 76a59ff6915..542dcee0fcb 100644 --- a/test/Transforms/Inline/alloca-bonus.ll +++ b/test/Transforms/Inline/alloca-bonus.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline < %s -S -o - -inline-threshold=8 | FileCheck %s +; RUN: opt -passes='cgscc(inline)' < %s -S -o - -inline-threshold=8 | FileCheck %s target datalayout = "p:32:32" diff --git a/test/Transforms/Inline/alloca-dbgdeclare.ll b/test/Transforms/Inline/alloca-dbgdeclare.ll index 881aceffb28..9f41b0d9be5 100644 --- a/test/Transforms/Inline/alloca-dbgdeclare.ll +++ b/test/Transforms/Inline/alloca-dbgdeclare.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s ; struct A { ; int arg0; ; double arg1[2]; diff --git a/test/Transforms/Inline/alloca_test.ll b/test/Transforms/Inline/alloca_test.ll index c9d8f11cd84..cd0713955a2 100644 --- a/test/Transforms/Inline/alloca_test.ll +++ b/test/Transforms/Inline/alloca_test.ll @@ -3,6 +3,7 @@ ; function are moved to the top of the function they are inlined into. ; ; RUN: opt -S -inline < %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' < %s | FileCheck %s define i32 @func(i32 %i) { %X = alloca i32 diff --git a/test/Transforms/Inline/array-alloca.ll b/test/Transforms/Inline/array-alloca.ll index 57aecebd8ba..b71dafee00f 100644 --- a/test/Transforms/Inline/array-alloca.ll +++ b/test/Transforms/Inline/array-alloca.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s %struct.A = type { i32 } define void @callee1(i32 %M) { diff --git a/test/Transforms/Inline/blockaddress.ll b/test/Transforms/Inline/blockaddress.ll index 22ad8821f06..ab0f5adb20a 100644 --- a/test/Transforms/Inline/blockaddress.ll +++ b/test/Transforms/Inline/blockaddress.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s ; PR10162 ; Make sure doit is not inlined since the blockaddress is taken diff --git a/test/Transforms/Inline/byval-tail-call.ll b/test/Transforms/Inline/byval-tail-call.ll index 7553b76cf15..e58d58c6549 100644 --- a/test/Transforms/Inline/byval-tail-call.ll +++ b/test/Transforms/Inline/byval-tail-call.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -basicaa -tailcallelim -inline -instcombine -dse -S | FileCheck %s +; RUN: opt < %s -aa-pipeline=basic-aa -passes='function(tailcallelim),cgscc(inline,function(instcombine,dse))' -S | FileCheck %s ; PR7272 ; Calls that capture byval parameters cannot be marked as tail calls. Other diff --git a/test/Transforms/Inline/byval.ll b/test/Transforms/Inline/byval.ll index d4edf2503cf..aeb9964b217 100644 --- a/test/Transforms/Inline/byval.ll +++ b/test/Transforms/Inline/byval.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; Inlining a byval struct should cause an explicit copy into an alloca. diff --git a/test/Transforms/Inline/byval_lifetime.ll b/test/Transforms/Inline/byval_lifetime.ll index b500eaea331..4517e448018 100644 --- a/test/Transforms/Inline/byval_lifetime.ll +++ b/test/Transforms/Inline/byval_lifetime.ll @@ -1,5 +1,5 @@ ; RUN: opt -S -inline < %s | FileCheck %s -; END. +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s ; By inlining foo, an alloca is created in main to hold the byval argument, so ; a lifetime marker should be generated as well by default. diff --git a/test/Transforms/Inline/casts.ll b/test/Transforms/Inline/casts.ll index 3c93e05e0b5..6354a531bc0 100644 --- a/test/Transforms/Inline/casts.ll +++ b/test/Transforms/Inline/casts.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s define i32 @testByte(i8 %X) { entry: diff --git a/test/Transforms/Inline/comdat-ipo.ll b/test/Transforms/Inline/comdat-ipo.ll index 8bdea0bdbe0..0b9ccb9ccc0 100644 --- a/test/Transforms/Inline/comdat-ipo.ll +++ b/test/Transforms/Inline/comdat-ipo.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s define i32 @caller() { ; CHECK-LABEL: @caller( diff --git a/test/Transforms/Inline/crash-lifetime-marker.ll b/test/Transforms/Inline/crash-lifetime-marker.ll index 42e926b1f63..e7a594cdb5e 100644 --- a/test/Transforms/Inline/crash-lifetime-marker.ll +++ b/test/Transforms/Inline/crash-lifetime-marker.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; InlineFunction would assert inside the loop that leaves lifetime markers if ; there was an zero-sized AllocaInst. Check that it doesn't assert and doesn't diff --git a/test/Transforms/Inline/debug-info-duplicate-calls.ll b/test/Transforms/Inline/debug-info-duplicate-calls.ll index c87e328f24e..df0cd0922ea 100644 --- a/test/Transforms/Inline/debug-info-duplicate-calls.ll +++ b/test/Transforms/Inline/debug-info-duplicate-calls.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -always-inline -S | FileCheck %s +; RUN: opt -passes='always-inline' -S < %s | FileCheck %s ; Original input generated from clang -emit-llvm -S -c -mllvm -disable-llvm-optzns ; diff --git a/test/Transforms/Inline/frameescape.ll b/test/Transforms/Inline/frameescape.ll index 6615fe9a76e..f2d4245cdd6 100644 --- a/test/Transforms/Inline/frameescape.ll +++ b/test/Transforms/Inline/frameescape.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s ; PR23216: We can't inline functions using llvm.localescape. diff --git a/test/Transforms/Inline/ignore-debug-info.ll b/test/Transforms/Inline/ignore-debug-info.ll index 1cce8eb9251..9827ab1e305 100644 --- a/test/Transforms/Inline/ignore-debug-info.ll +++ b/test/Transforms/Inline/ignore-debug-info.ll @@ -1,5 +1,7 @@ ; RUN: opt < %s -S -inline -inline-threshold=2 | FileCheck %s ; RUN: opt < %s -S -strip-debug -inline -inline-threshold=2 | FileCheck %s +; RUN: opt < %s -S -passes='cgscc(inline)' -inline-threshold=2 | FileCheck %s +; RUN: opt < %s -S -strip-debug -passes='cgscc(inline)' -inline-threshold=2 | FileCheck %s ; ; The purpose of this test is to check that debug info doesn't influence ; inlining decisions. diff --git a/test/Transforms/Inline/inline-assume.ll b/test/Transforms/Inline/inline-assume.ll index 4a7dc3edb22..d8e2a26d896 100644 --- a/test/Transforms/Inline/inline-assume.ll +++ b/test/Transforms/Inline/inline-assume.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S -o - < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s %0 = type opaque %struct.Foo = type { i32, %0* } diff --git a/test/Transforms/Inline/inline-byval-bonus.ll b/test/Transforms/Inline/inline-byval-bonus.ll index 7f0c0e1fcba..785de04c3f1 100644 --- a/test/Transforms/Inline/inline-byval-bonus.ll +++ b/test/Transforms/Inline/inline-byval-bonus.ll @@ -1,4 +1,5 @@ ; RUN: opt -S -inline -inline-threshold=275 < %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' -inline-threshold=275 < %s | FileCheck %s ; PR13095 ; The performance of the c-ray benchmark largely depends on the inlining of a diff --git a/test/Transforms/Inline/inline-cold-callee.ll b/test/Transforms/Inline/inline-cold-callee.ll index cfd56c28173..153f446c5c2 100644 --- a/test/Transforms/Inline/inline-cold-callee.ll +++ b/test/Transforms/Inline/inline-cold-callee.ll @@ -1,4 +1,5 @@ -; RUN: opt < %s -inline -inlinecold-threshold=0 -S | FileCheck %s +; RUN: opt < %s -inline -inlinecold-threshold=0 -S | FileCheck %s +; RUN: opt < %s -passes='require,cgscc(inline)' -inlinecold-threshold=0 -S | FileCheck %s ; This tests that a cold callee gets the (lower) inlinecold-threshold even without ; Cold hint and does not get inlined because the cost exceeds the inlinecold-threshold. diff --git a/test/Transforms/Inline/inline-constexpr-addrspacecast-argument.ll b/test/Transforms/Inline/inline-constexpr-addrspacecast-argument.ll index 498a995ecd4..1f2b143c97e 100644 --- a/test/Transforms/Inline/inline-constexpr-addrspacecast-argument.ll +++ b/test/Transforms/Inline/inline-constexpr-addrspacecast-argument.ll @@ -1,4 +1,5 @@ ; RUN: opt -S -inline < %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' < %s | FileCheck %s target datalayout = "e-p3:32:32-p4:64:64-n32" diff --git a/test/Transforms/Inline/inline-fast-math-flags.ll b/test/Transforms/Inline/inline-fast-math-flags.ll index e5ff8f7bfe2..dc2f2e1837e 100644 --- a/test/Transforms/Inline/inline-fast-math-flags.ll +++ b/test/Transforms/Inline/inline-fast-math-flags.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -S -inline -inline-threshold=20 | FileCheck %s +; RUN: opt < %s -S -passes='cgscc(inline)' -inline-threshold=20 | FileCheck %s ; Check that we don't drop FastMathFlag when estimating inlining profitability. ; ; In this test we should inline 'foo' to 'boo', because it'll fold to a diff --git a/test/Transforms/Inline/inline-fp.ll b/test/Transforms/Inline/inline-fp.ll index 59554cd2911..dd5972fe1b8 100644 --- a/test/Transforms/Inline/inline-fp.ll +++ b/test/Transforms/Inline/inline-fp.ll @@ -1,4 +1,5 @@ ; RUN: opt -S -inline < %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' < %s | FileCheck %s ; Make sure that soft float implementations are calculated as being more expensive ; to the inliner. diff --git a/test/Transforms/Inline/inline-funclets.ll b/test/Transforms/Inline/inline-funclets.ll index 2cc2153dd8e..409310380f2 100644 --- a/test/Transforms/Inline/inline-funclets.ll +++ b/test/Transforms/Inline/inline-funclets.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S %s | FileCheck %s declare void @g() diff --git a/test/Transforms/Inline/inline-hot-callee.ll b/test/Transforms/Inline/inline-hot-callee.ll index 59d44bbb501..da6e52343b2 100644 --- a/test/Transforms/Inline/inline-hot-callee.ll +++ b/test/Transforms/Inline/inline-hot-callee.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -inline-threshold=0 -inlinehint-threshold=100 -S | FileCheck %s +; RUN: opt < %s -passes='require,cgscc(inline)' -inline-threshold=0 -inlinehint-threshold=100 -S | FileCheck %s ; This tests that a hot callee gets the (higher) inlinehint-threshold even without ; inline hints and gets inlined because the cost is less than inlinehint-threshold. diff --git a/test/Transforms/Inline/inline-hot-callsite.ll b/test/Transforms/Inline/inline-hot-callsite.ll index cc18fe6099c..bdd7175b3ee 100644 --- a/test/Transforms/Inline/inline-hot-callsite.ll +++ b/test/Transforms/Inline/inline-hot-callsite.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -inline-threshold=0 -hot-callsite-threshold=100 -S | FileCheck %s +; RUN: opt < %s -passes='require,cgscc(inline)' -inline-threshold=0 -hot-callsite-threshold=100 -S | FileCheck %s ; This tests that a hot callsite gets the (higher) inlinehint-threshold even without ; without inline hints and gets inlined because the cost is less than diff --git a/test/Transforms/Inline/inline-invoke-with-asm-call.ll b/test/Transforms/Inline/inline-invoke-with-asm-call.ll index 93bb0358055..3b4ba19b774 100644 --- a/test/Transforms/Inline/inline-invoke-with-asm-call.ll +++ b/test/Transforms/Inline/inline-invoke-with-asm-call.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s target triple = "x86_64-apple-darwin" ; In inliner, we assume that inline asm does not throw. This testing case makes diff --git a/test/Transforms/Inline/inline-musttail-varargs.ll b/test/Transforms/Inline/inline-musttail-varargs.ll index e93ef763aef..bb36e8ce699 100644 --- a/test/Transforms/Inline/inline-musttail-varargs.ll +++ b/test/Transforms/Inline/inline-musttail-varargs.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -instcombine -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline,function(instcombine))' -S | FileCheck %s ; We can't inline this thunk yet, but one day we will be able to. And when we ; do, this test case will be ready. diff --git a/test/Transforms/Inline/inline-tail.ll b/test/Transforms/Inline/inline-tail.ll index b40328e0a27..66a6be7a59b 100644 --- a/test/Transforms/Inline/inline-tail.ll +++ b/test/Transforms/Inline/inline-tail.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; We have to apply the less restrictive TailCallKind of the call site being ; inlined and any call sites cloned into the caller. diff --git a/test/Transforms/Inline/inline-vla.ll b/test/Transforms/Inline/inline-vla.ll index df21b3f30cf..fd4510c4f09 100644 --- a/test/Transforms/Inline/inline-vla.ll +++ b/test/Transforms/Inline/inline-vla.ll @@ -1,4 +1,5 @@ ; RUN: opt -S -inline %s -o - | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' %s -o - | FileCheck %s ; Check that memcpy2 is completely inlined away. ; CHECK-NOT: memcpy2 diff --git a/test/Transforms/Inline/inline_cleanup.ll b/test/Transforms/Inline/inline_cleanup.ll index 4361c2e8bbf..344d900c5a3 100644 --- a/test/Transforms/Inline/inline_cleanup.ll +++ b/test/Transforms/Inline/inline_cleanup.ll @@ -2,6 +2,7 @@ ; uncond branches away after it is done specializing. ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s @A = weak global i32 0 ; [#uses=1] @B = weak global i32 0 ; [#uses=1] diff --git a/test/Transforms/Inline/inline_constprop.ll b/test/Transforms/Inline/inline_constprop.ll index c13e023017a..b07ec03d7d6 100644 --- a/test/Transforms/Inline/inline_constprop.ll +++ b/test/Transforms/Inline/inline_constprop.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -inline-threshold=20 -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -inline-threshold=20 -S | FileCheck %s define internal i32 @callee1(i32 %A, i32 %B) { %C = sdiv i32 %A, %B diff --git a/test/Transforms/Inline/inline_dbg_declare.ll b/test/Transforms/Inline/inline_dbg_declare.ll index a2c127e44e0..e2d8551a908 100644 --- a/test/Transforms/Inline/inline_dbg_declare.ll +++ b/test/Transforms/Inline/inline_dbg_declare.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -S -inline | FileCheck %s +; RUN: opt < %s -S -passes='cgscc(inline)' | FileCheck %s ; ; The purpose of this test is to check that inline pass preserves debug info ; for variable using the dbg.declare intrinsic. diff --git a/test/Transforms/Inline/inline_prune.ll b/test/Transforms/Inline/inline_prune.ll index 72f84059f2d..c4c5c0cf252 100644 --- a/test/Transforms/Inline/inline_prune.ll +++ b/test/Transforms/Inline/inline_prune.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s define internal i32 @callee1(i32 %A, i32 %B) { ; CHECK-NOT: @callee1 diff --git a/test/Transforms/Inline/inline_returns_twice.ll b/test/Transforms/Inline/inline_returns_twice.ll index 8a131bca749..c1f31d6719e 100644 --- a/test/Transforms/Inline/inline_returns_twice.ll +++ b/test/Transforms/Inline/inline_returns_twice.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; Check that functions with "returns_twice" calls are only inlined, ; if they are themselves marked as such. diff --git a/test/Transforms/Inline/inline_ssp.ll b/test/Transforms/Inline/inline_ssp.ll index 1a077230da0..bad332dbff0 100644 --- a/test/Transforms/Inline/inline_ssp.ll +++ b/test/Transforms/Inline/inline_ssp.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline %s -S | FileCheck %s +; RUN: opt -passes='cgscc(inline)' %s -S | FileCheck %s ; Ensure SSP attributes are propagated correctly when inlining. @.str = private unnamed_addr constant [11 x i8] c"fun_nossp\0A\00", align 1 diff --git a/test/Transforms/Inline/inline_unreachable-2.ll b/test/Transforms/Inline/inline_unreachable-2.ll index cc038c9b720..825999593ac 100644 --- a/test/Transforms/Inline/inline_unreachable-2.ll +++ b/test/Transforms/Inline/inline_unreachable-2.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s ; CHECK-LABEL: caller ; CHECK: call void @callee @@ -19,4 +20,4 @@ bb2: ret void } -declare void @extern() \ No newline at end of file +declare void @extern() diff --git a/test/Transforms/Inline/inline_unreachable.ll b/test/Transforms/Inline/inline_unreachable.ll index dbf0119113a..b23ddc85275 100644 --- a/test/Transforms/Inline/inline_unreachable.ll +++ b/test/Transforms/Inline/inline_unreachable.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s @a = global i32 4 @_ZTIi = external global i8* diff --git a/test/Transforms/Inline/invoke-cleanup.ll b/test/Transforms/Inline/invoke-cleanup.ll index 2750b79fbe1..e04f4fe12f5 100644 --- a/test/Transforms/Inline/invoke-cleanup.ll +++ b/test/Transforms/Inline/invoke-cleanup.ll @@ -1,4 +1,5 @@ ; RUN: opt %s -inline -S | FileCheck %s +; RUN: opt %s -passes='cgscc(inline)' -S | FileCheck %s declare void @external_func() diff --git a/test/Transforms/Inline/invoke-combine-clauses.ll b/test/Transforms/Inline/invoke-combine-clauses.ll index e3788d6d643..09a437a5d30 100644 --- a/test/Transforms/Inline/invoke-combine-clauses.ll +++ b/test/Transforms/Inline/invoke-combine-clauses.ll @@ -1,4 +1,4 @@ -; RUN: opt %s -inline -S | FileCheck %s +; RUN: opt %s -passes='cgscc(inline)' -S | FileCheck %s declare void @external_func() declare void @abort() diff --git a/test/Transforms/Inline/invoke-cost.ll b/test/Transforms/Inline/invoke-cost.ll index 24f2893e90f..fb60d42ecde 100644 --- a/test/Transforms/Inline/invoke-cost.ll +++ b/test/Transforms/Inline/invoke-cost.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline < %s -S -o - -inline-threshold=100 | FileCheck %s +; RUN: opt -passes='cgscc(inline)' < %s -S -o - -inline-threshold=100 | FileCheck %s target datalayout = "p:32:32" diff --git a/test/Transforms/Inline/invoke_test-1.ll b/test/Transforms/Inline/invoke_test-1.ll index 2d238f48ae2..a5964121866 100644 --- a/test/Transforms/Inline/invoke_test-1.ll +++ b/test/Transforms/Inline/invoke_test-1.ll @@ -2,6 +2,7 @@ ; instructions ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s declare void @might_throw() diff --git a/test/Transforms/Inline/invoke_test-3.ll b/test/Transforms/Inline/invoke_test-3.ll index b325b02577d..149afac4c4a 100644 --- a/test/Transforms/Inline/invoke_test-3.ll +++ b/test/Transforms/Inline/invoke_test-3.ll @@ -2,6 +2,7 @@ ; turned into branches to the invoke destination. ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s declare void @might_throw() diff --git a/test/Transforms/Inline/lifetime-no-datalayout.ll b/test/Transforms/Inline/lifetime-no-datalayout.ll index 4307064e194..0212e69d624 100644 --- a/test/Transforms/Inline/lifetime-no-datalayout.ll +++ b/test/Transforms/Inline/lifetime-no-datalayout.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s declare void @use(i8* %a) diff --git a/test/Transforms/Inline/lifetime.ll b/test/Transforms/Inline/lifetime.ll index fc209ccc50f..4f415e58f1b 100644 --- a/test/Transforms/Inline/lifetime.ll +++ b/test/Transforms/Inline/lifetime.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %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" declare void @llvm.lifetime.start(i64, i8*) diff --git a/test/Transforms/Inline/local-as-metadata-undominated-use.ll b/test/Transforms/Inline/local-as-metadata-undominated-use.ll index d170c651afe..474bba4cbbc 100644 --- a/test/Transforms/Inline/local-as-metadata-undominated-use.ll +++ b/test/Transforms/Inline/local-as-metadata-undominated-use.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s ; Make sure the inliner doesn't crash when a metadata-bridged SSA operand is an ; undominated use. diff --git a/test/Transforms/Inline/nonnull.ll b/test/Transforms/Inline/nonnull.ll index 4aa0c28bfc7..46665466924 100644 --- a/test/Transforms/Inline/nonnull.ll +++ b/test/Transforms/Inline/nonnull.ll @@ -1,4 +1,5 @@ ; RUN: opt -S -inline %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' %s | FileCheck %s declare void @foo() declare void @bar() diff --git a/test/Transforms/Inline/parallel-loop-md.ll b/test/Transforms/Inline/parallel-loop-md.ll index 43a44feb247..abbacc9acd0 100644 --- a/test/Transforms/Inline/parallel-loop-md.ll +++ b/test/Transforms/Inline/parallel-loop-md.ll @@ -1,4 +1,5 @@ ; RUN: opt -S -inline < %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' < %s | FileCheck %s target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" diff --git a/test/Transforms/Inline/pr21206.ll b/test/Transforms/Inline/pr21206.ll index e46003050a9..fa8f183c904 100644 --- a/test/Transforms/Inline/pr21206.ll +++ b/test/Transforms/Inline/pr21206.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s $c = comdat any ; CHECK: $c = comdat any diff --git a/test/Transforms/Inline/pr22285.ll b/test/Transforms/Inline/pr22285.ll index 1deae1860f0..d7631554c2c 100644 --- a/test/Transforms/Inline/pr22285.ll +++ b/test/Transforms/Inline/pr22285.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline),globaldce' -S | FileCheck %s $f1 = comdat any ; CHECK-NOT: $f1 = comdat any diff --git a/test/Transforms/Inline/pr26698.ll b/test/Transforms/Inline/pr26698.ll index 1986db0bf3f..12a40c100e9 100644 --- a/test/Transforms/Inline/pr26698.ll +++ b/test/Transforms/Inline/pr26698.ll @@ -1,4 +1,5 @@ ; RUN: opt -S -inline < %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' < %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-msvc18.0.0" diff --git a/test/Transforms/Inline/pr28298.ll b/test/Transforms/Inline/pr28298.ll index 0bb3f0a7115..83224106c46 100644 --- a/test/Transforms/Inline/pr28298.ll +++ b/test/Transforms/Inline/pr28298.ll @@ -1,4 +1,4 @@ -; RUN: opt -S -inline < %s | FileCheck %s +; RUN: opt -S -passes='cgscc(inline)' < %s | FileCheck %s target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" diff --git a/test/Transforms/Inline/profile-meta.ll b/test/Transforms/Inline/profile-meta.ll index 66fe7413dd0..3c967d6618f 100644 --- a/test/Transforms/Inline/profile-meta.ll +++ b/test/Transforms/Inline/profile-meta.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -S -inline | FileCheck %s +; RUN: opt < %s -S -passes='cgscc(inline)' | FileCheck %s ; Make sure that profile and unpredictable metadata is preserved when cloning a select. diff --git a/test/Transforms/Inline/recursive.ll b/test/Transforms/Inline/recursive.ll index b9b14d1dbb6..e189339e224 100644 --- a/test/Transforms/Inline/recursive.ll +++ b/test/Transforms/Inline/recursive.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S < %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S < %s | 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 = "i386-apple-darwin10.0" diff --git a/test/Transforms/Inline/switch.ll b/test/Transforms/Inline/switch.ll index c5dab53e8b6..83f01926982 100644 --- a/test/Transforms/Inline/switch.ll +++ b/test/Transforms/Inline/switch.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -inline-threshold=20 -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -inline-threshold=20 -S | FileCheck %s define i32 @callee(i32 %a) { switch i32 %a, label %sw.default [ diff --git a/test/Transforms/Inline/vector-bonus.ll b/test/Transforms/Inline/vector-bonus.ll index c6745d59e5e..567ff02e136 100644 --- a/test/Transforms/Inline/vector-bonus.ll +++ b/test/Transforms/Inline/vector-bonus.ll @@ -1,4 +1,5 @@ ; RUN: opt < %s -inline -inline-threshold=35 -S | FileCheck %s +; RUN: opt < %s -passes='cgscc(inline)' -inline-threshold=35 -S | FileCheck %s define i32 @bar(<4 x i32> %v, i32 %i) #0 { entry: diff --git a/test/Transforms/Inline/zero-cost.ll b/test/Transforms/Inline/zero-cost.ll index 8e7194a1963..6f5348ff395 100644 --- a/test/Transforms/Inline/zero-cost.ll +++ b/test/Transforms/Inline/zero-cost.ll @@ -1,4 +1,5 @@ ; RUN: opt -inline -S %s | FileCheck %s +; RUN: opt -passes='cgscc(inline)' -S %s | FileCheck %s define void @f() { entry: