mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 12:41:49 +01:00
Use opt -S instead of piping bitcode output through llvm-dis.
llvm-svn: 81257
This commit is contained in:
parent
35984a8849
commit
c95df8b6d8
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -anders-aa -gvn | llvm-dis | not grep undef
|
||||
; RUN: opt %s -anders-aa -gvn -S | not grep undef
|
||||
; PR2160
|
||||
|
||||
declare void @f(i32*)
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -anders-aa -gvn | llvm-dis | not grep undef
|
||||
; RUN: opt %s -anders-aa -gvn -S | not grep undef
|
||||
; PR2169
|
||||
|
||||
declare void @llvm.memcpy.i32(i8*, i8*, i32, i32) nounwind
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -anders-aa -gvn -deadargelim | llvm-dis | grep store | not grep null
|
||||
; RUN: opt %s -anders-aa -gvn -deadargelim -S | grep store | not grep null
|
||||
|
||||
; Because the 'internal' function is passed to an external function, we don't
|
||||
; know what the incoming values will alias. As such, we cannot do the
|
||||
|
@ -2,7 +2,7 @@
|
||||
; is performed. It is not legal to delete the second load instruction because
|
||||
; the value computed by the first load instruction is changed by the store.
|
||||
|
||||
; RUN: opt %s -gvn -instcombine | llvm-dis | grep DONOTREMOVE
|
||||
; RUN: opt %s -gvn -instcombine -S | grep DONOTREMOVE
|
||||
|
||||
define i32 @test() {
|
||||
%A = alloca i32
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -gvn -instcombine | llvm-dis | grep sub
|
||||
; RUN: opt %s -gvn -instcombine -S | grep sub
|
||||
|
||||
; BasicAA was incorrectly concluding that P1 and P2 didn't conflict!
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; In this test, a local alloca cannot alias an incoming argument.
|
||||
|
||||
; RUN: opt %s -gvn -instcombine | llvm-dis | not grep sub
|
||||
; RUN: opt %s -gvn -instcombine -S | not grep sub
|
||||
|
||||
define i32 @test(i32* %P) {
|
||||
%X = alloca i32
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -dse | llvm-dis | grep {store i32 0}
|
||||
; RUN: opt %s -dse -S | grep {store i32 0}
|
||||
|
||||
define void @test({i32,i32 }* %P) {
|
||||
%Q = getelementptr {i32,i32}* %P, i32 1
|
||||
|
@ -1,7 +1,7 @@
|
||||
; PR1109
|
||||
; RUN: opt %s -basicaa -gvn -instcombine | llvm-dis | \
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -S | \
|
||||
; RUN: grep {sub i32}
|
||||
; RUN: opt %s -basicaa -gvn -instcombine | llvm-dis | \
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -S | \
|
||||
; RUN: not grep {ret i32 0}
|
||||
; END.
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; PR1600
|
||||
; RUN: opt %s -basicaa -gvn -instcombine | llvm-dis | \
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -S | \
|
||||
; RUN: grep {ret i32 0}
|
||||
; END.
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -basicaa -gvn -dce | llvm-dis | grep tmp7
|
||||
; RUN: opt %s -basicaa -gvn -dce -S | grep tmp7
|
||||
|
||||
%struct.A = type { i32 }
|
||||
%struct.B = type { %struct.A }
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -std-compile-opts | llvm-dis | grep store
|
||||
; RUN: opt %s -std-compile-opts -S | grep store
|
||||
; ModuleID = 'small2.c'
|
||||
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-darwin8"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -basicaa -gvn | llvm-dis | grep load
|
||||
; RUN: opt %s -basicaa -gvn -S | grep load
|
||||
|
||||
declare noalias i32* @noalias()
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -gvn | llvm-dis | grep {ret i32 1}
|
||||
; RUN: opt %s -gvn -S | grep {ret i32 1}
|
||||
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-darwin8"
|
||||
%struct.x = type { i32, i32, i32, i32 }
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -basicaa -gvn | llvm-dis | grep load | count 1
|
||||
; RUN: opt %s -basicaa -gvn -S | grep load | count 1
|
||||
|
||||
@flag0 = internal global i32 zeroinitializer
|
||||
@turn = internal global i32 zeroinitializer
|
||||
|
@ -1,7 +1,7 @@
|
||||
; This testcase tests for various features the basicaa test should be able to
|
||||
; determine, as noted in the comments.
|
||||
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -dce | llvm-dis | not grep REMOVE
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -dce -S | not grep REMOVE
|
||||
|
||||
@Global = external global { i32 }
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
; A store or load cannot alias a global if the accessed amount is larger then
|
||||
; the global.
|
||||
|
||||
; RUN: opt %s -basicaa -gvn -instcombine | llvm-dis | not grep load
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -S | not grep load
|
||||
|
||||
@B = global i16 8 ; <i16*> [#uses=2]
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -basicaa -gvn -instcombine | llvm-dis | grep {ret i1 true}
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -S | grep {ret i1 true}
|
||||
; PR2436
|
||||
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-darwin8"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -basicaa -gvn -instcombine | llvm-dis | grep {ret i32 0}
|
||||
; RUN: opt %s -basicaa -gvn -instcombine -S | grep {ret i32 0}
|
||||
|
||||
declare i32* @test(i32* nocapture)
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: opt %s -basicaa -gvn | llvm-dis | grep TestConst | count 2
|
||||
; RUN: opt %s -basicaa -gvn | llvm-dis | grep TestPure | count 3
|
||||
; RUN: opt %s -basicaa -gvn | llvm-dis | grep TestNone | count 4
|
||||
; RUN: opt %s -basicaa -gvn -S | grep TestConst | count 2
|
||||
; RUN: opt %s -basicaa -gvn -S | grep TestPure | count 3
|
||||
; RUN: opt %s -basicaa -gvn -S | grep TestNone | count 4
|
||||
@g = global i32 0 ; <i32*> [#uses=1]
|
||||
|
||||
define i32 @test() {
|
||||
|
@ -2,7 +2,7 @@
|
||||
; disambiguating some obvious cases. If LICM is able to disambiguate the
|
||||
; two pointers, then the load should be hoisted, and the store sunk.
|
||||
|
||||
; RUN: opt %s -basicaa -licm | llvm-dis | FileCheck %s
|
||||
; RUN: opt %s -basicaa -licm -S | FileCheck %s
|
||||
|
||||
@A = global i32 7 ; <i32*> [#uses=3]
|
||||
@B = global i32 8 ; <i32*> [#uses=2]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -globalsmodref-aa -gvn | llvm-dis | grep call | count 2
|
||||
; RUN: opt %s -globalsmodref-aa -gvn -S | grep call | count 2
|
||||
|
||||
@g = internal global i32 0 ; <i32*> [#uses=2]
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -globalsmodref-aa -gvn | llvm-dis | not grep load
|
||||
; RUN: opt %s -globalsmodref-aa -gvn -S | not grep load
|
||||
@X = internal global i32 4 ; <i32*> [#uses=1]
|
||||
|
||||
define i32 @test(i32* %P) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -globalsmodref-aa -gvn | llvm-dis | not grep load
|
||||
; RUN: opt %s -globalsmodref-aa -gvn -S | not grep load
|
||||
|
||||
; This test requires the use of previous analyses to determine that
|
||||
; doesnotmodX does not modify X (because 'sin' doesn't).
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -globalsmodref-aa -gvn -instcombine | llvm-dis | \
|
||||
; RUN: opt %s -globalsmodref-aa -gvn -instcombine -S | \
|
||||
; RUN: grep {ret i32 0}
|
||||
|
||||
@G = internal global i32* null ; <i32**> [#uses=3]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -globalsmodref-aa -gvn | llvm-dis | not grep load
|
||||
; RUN: opt %s -globalsmodref-aa -gvn -S | not grep load
|
||||
@X = internal global i32 4 ; <i32*> [#uses=2]
|
||||
|
||||
define i32 @test(i32* %P) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
; Test the edge profiling instrumentation.
|
||||
; RUN: opt %s -insert-edge-profiling | llvm-dis | FileCheck %s
|
||||
; RUN: opt %s -insert-edge-profiling -S | FileCheck %s
|
||||
|
||||
; ModuleID = '<stdin>'
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -indvars -adce -simplifycfg | llvm-dis | grep "icmp s"
|
||||
; RUN: opt %s -indvars -adce -simplifycfg -S | grep "icmp s"
|
||||
; PR1598
|
||||
|
||||
define i32 @f(i32 %a, i32 %b, i32 %x, i32 %y) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -indvars | llvm-dis | grep printd | grep 1206807378
|
||||
; RUN: opt %s -indvars -S | grep printd | grep 1206807378
|
||||
; PR1798
|
||||
|
||||
declare void @printd(i32)
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -indvars | llvm-dis > %t
|
||||
; RUN: opt %s -indvars -S > %t
|
||||
; RUN: grep select %t | count 2
|
||||
; RUN: grep {icmp ne i32.\* %w } %t
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
; of the bug that was causing the Olden Health benchmark to output incorrect
|
||||
; results!
|
||||
;
|
||||
; RUN: opt %s -constprop | llvm-dis > %t.1
|
||||
; RUN: opt -constprop -S > %t.1 < %s
|
||||
; RUN: llvm-as < %s | llvm-dis | llvm-as | opt -constprop | \
|
||||
; RUN: llvm-dis > %t.2
|
||||
; RUN: diff %t.1 %t.2
|
||||
|
@ -4,7 +4,7 @@
|
||||
; Check by running globaldce, which will remove the constant if there are
|
||||
; no references to it!
|
||||
;
|
||||
; RUN: opt %s -globaldce | llvm-dis | \
|
||||
; RUN: opt %s -globaldce -S | \
|
||||
; RUN: not grep constant
|
||||
;
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
; Testcase that seems to break the bytecode reader. This comes from the
|
||||
; "crafty" spec benchmark.
|
||||
;
|
||||
; RUN: opt %s -instcombine | llvm-dis | llvm-as
|
||||
; RUN: opt %s -instcombine -S | llvm-as
|
||||
|
||||
%CHESS_POSITION = type { i32, i32 }
|
||||
@pawn_probes = external global i32 ; <i32*> [#uses=0]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine -simplifycfg | llvm-dis | not grep br
|
||||
; RUN: opt %s -instcombine -simplifycfg -S | not grep br
|
||||
|
||||
@.str_1 = internal constant [6 x i8] c"_Bool\00" ; <[6 x i8]*> [#uses=2]
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -verify | llvm-dis | llvm-as -disable-output
|
||||
; RUN: opt %s -verify -S | llvm-as -disable-output
|
||||
|
||||
define {i32, i8} @foo(i32 %p) {
|
||||
ret i32 1, i8 2
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -strip | llvm-dis | llvm-as | llvm-dis
|
||||
; RUN: opt %s -strip -S | llvm-as | llvm-dis
|
||||
|
||||
; Stripping the name from A should not break references to it.
|
||||
%A = type opaque
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -inline | llvm-dis | grep example
|
||||
; RUN: opt %s -inline -S | grep example
|
||||
|
||||
%IntArray = type { i32, [0 x i32*] }
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt %s -inline | llvm-dis | grep sample
|
||||
; RUN: opt %s -inline | llvm-dis | grep example
|
||||
; RUN: opt %s -inline -S | grep sample
|
||||
; RUN: opt %s -inline -S | grep example
|
||||
|
||||
%IntArray = type { i32, [0 x i32*] }
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | grep 302245289961712575840256
|
||||
; RUN: opt %s -instcombine | llvm-dis | grep K40018000000000000000
|
||||
; RUN: opt %s -instcombine -S | grep 302245289961712575840256
|
||||
; RUN: opt %s -instcombine -S | grep K40018000000000000000
|
||||
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"
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
;RUN: llvm-as <%s | opt -licm | llvm-dis | grep {load } | count 4
|
||||
;RUN: llvm-as <%s | opt -licm -S | grep {load } | count 4
|
||||
; ModuleID = '2009-02-27-licm.bc'
|
||||
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"
|
||||
target triple = "i386-pc-linux-gnu"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | grep store | count 5
|
||||
; RUN: opt %s -instcombine -S | grep store | count 5
|
||||
; ModuleID = '<stdin>'
|
||||
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-darwin9.6"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | not grep alloca
|
||||
; RUN: opt %s -instcombine -S | not grep alloca
|
||||
; ModuleID = '<stdin>'
|
||||
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-darwin9.6"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | not grep alloca
|
||||
; RUN: opt %s -instcombine -S | not grep alloca
|
||||
; ModuleID = '<stdin>'
|
||||
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-darwin9.6"
|
||||
|
@ -1,4 +1,4 @@
|
||||
;RUN: llvm-as <%s | opt -gvn | llvm-dis | grep {load } | count 1
|
||||
;RUN: llvm-as <%s | opt -gvn -S | grep {load } | count 1
|
||||
; ModuleID = 'db2-before.bc'
|
||||
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"
|
||||
target triple = "i386-pc-linux-gnu"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -std-compile-opts | llvm-dis > %t
|
||||
; RUN: opt %s -std-compile-opts -S > %t
|
||||
; RUN: grep undef %t | count 1
|
||||
; RUN: grep 5 %t | count 1
|
||||
; RUN: grep 7 %t | count 1
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | grep true
|
||||
; RUN: opt %s -instcombine -S | grep true
|
||||
|
||||
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"
|
||||
target triple = "x86_64-unknown-linux-gnu"
|
||||
|
@ -1,4 +1,4 @@
|
||||
|
||||
; RUN: opt %s -verify | llvm-dis | grep noimplicitfloat
|
||||
; RUN: opt %s -verify -S | grep noimplicitfloat
|
||||
define void @f() noimplicitfloat {
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
; It is illegal to remove BB1 because it will mess up the PHI node!
|
||||
;
|
||||
; RUN: opt %s -adce | llvm-dis | grep BB1
|
||||
; RUN: opt %s -adce -S | grep BB1
|
||||
|
||||
define i32 @test(i1 %C, i32 %A, i32 %B) {
|
||||
; <label>:0
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -adce -simplifycfg | llvm-dis | not grep then:
|
||||
; RUN: opt %s -adce -simplifycfg -S | not grep then:
|
||||
|
||||
define void @dead_test8(i32* %data.1, i32 %idx.1) {
|
||||
entry:
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -adce -simplifycfg | llvm-dis | grep call
|
||||
; RUN: opt %s -adce -simplifycfg -S | grep call
|
||||
declare void @exit(i32)
|
||||
|
||||
define i32 @main(i32 %argc) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -adce | llvm-dis | not grep call
|
||||
; RUN: opt -adce -S < %s | not grep call
|
||||
|
||||
declare i32 @strlen(i8*) readonly nounwind
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -adce | llvm-dis | grep null
|
||||
; RUN: opt %s -adce -S | grep null
|
||||
|
||||
declare i32 @strlen(i8*) readnone
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion | llvm-dis | grep nounwind | count 2
|
||||
; RUN: opt %s -argpromotion -S | grep nounwind | count 2
|
||||
|
||||
define internal i32 @deref(i32* %x) nounwind {
|
||||
entry:
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion | llvm-dis > %t
|
||||
; RUN: opt %s -argpromotion -S > %t
|
||||
; RUN: cat %t | grep {define.*@callee(.*i32\\*}
|
||||
; PR2498
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion -instcombine | llvm-dis | not grep load
|
||||
; RUN: opt %s -argpromotion -instcombine -S | not grep load
|
||||
|
||||
%QuadTy = type { i32, i32, i32, i32 }
|
||||
@G = constant %QuadTy {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion | llvm-dis | grep zeroext
|
||||
; RUN: opt %s -argpromotion -S | grep zeroext
|
||||
|
||||
%struct.ss = type { i32, i64 }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion -mem2reg | llvm-dis | not grep alloca
|
||||
; RUN: opt %s -argpromotion -mem2reg -S | not grep alloca
|
||||
define internal i32 @test(i32* %X, i32* %Y) {
|
||||
%A = load i32* %X ; <i32> [#uses=1]
|
||||
%B = load i32* %Y ; <i32> [#uses=1]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion | llvm-dis | grep -F {i32* byval} | count 2
|
||||
; RUN: opt %s -argpromotion -S | grep -F {i32* byval} | count 2
|
||||
; Argpromote + scalarrepl should change this to passing the two integers by value.
|
||||
|
||||
%struct.ss = type { i32, i64 }
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion -scalarrepl | llvm-dis | not grep load
|
||||
; RUN: opt %s -argpromotion -scalarrepl -S | not grep load
|
||||
; Argpromote + scalarrepl should change this to passing the two integers by value.
|
||||
|
||||
%struct.ss = type { i32, i64 }
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion -instcombine | llvm-dis | not grep load
|
||||
; RUN: opt %s -argpromotion -instcombine -S | not grep load
|
||||
|
||||
@G1 = constant i32 0 ; <i32*> [#uses=1]
|
||||
@G2 = constant i32* @G1 ; <i32**> [#uses=1]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion | llvm-dis | \
|
||||
; RUN: opt %s -argpromotion -S | \
|
||||
; RUN: not grep {load i32\* null}
|
||||
|
||||
define internal i32 @callee(i1 %C, i32* %P) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -argpromotion | llvm-dis | \
|
||||
; RUN: opt %s -argpromotion -S | \
|
||||
; RUN: grep {load i32\\* %A}
|
||||
|
||||
define internal i32 @callee(i1 %C, i32* %P) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -condprop | llvm-dis | \
|
||||
; RUN: opt %s -condprop -S | \
|
||||
; RUN: not grep {br label}
|
||||
|
||||
%llvm.dbg.anchor.type = type { i32, i32 }
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: opt %s -condprop | llvm-dis | \
|
||||
; RUN: opt %s -condprop -S | \
|
||||
; RUN: not grep {br label}
|
||||
; RUN: opt %s -condprop | llvm-dis | not grep T2
|
||||
; RUN: opt %s -condprop -S | not grep T2
|
||||
|
||||
|
||||
define i32 @test(i1 %C) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -condprop | llvm-dis | not grep phi
|
||||
; RUN: opt < %s -condprop -S | not grep phi
|
||||
|
||||
define i32 @test(i32 %C, i1 %Val) {
|
||||
switch i32 %C, label %T1 [
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -condprop | llvm-dis | not grep phi
|
||||
; RUN: opt < %s -condprop -S | not grep phi
|
||||
|
||||
declare i1 @foo()
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -condprop | llvm-dis | not grep phi
|
||||
; RUN: opt < %s -condprop -S | not grep phi
|
||||
|
||||
define i32 @foo(i1, i32, i32) {
|
||||
prologue:
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
; Fix #2: The unary not instruction now no longer exists. Change to xor.
|
||||
|
||||
; RUN: opt %s -constprop | llvm-dis | \
|
||||
; RUN: opt %s -constprop -S | \
|
||||
; RUN: not grep {i32 0}
|
||||
|
||||
define i32 @test1() {
|
||||
|
@ -1,6 +1,6 @@
|
||||
; SetCC on boolean values was not implemented!
|
||||
|
||||
; RUN: opt %s -constprop -die | llvm-dis | \
|
||||
; RUN: opt %s -constprop -die -S | \
|
||||
; RUN: not grep set
|
||||
|
||||
define i1 @test1() {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -constprop | llvm-dis | \
|
||||
; RUN: opt %s -constprop -S | \
|
||||
; RUN: not grep {ret i1 false}
|
||||
|
||||
@b = external global [2 x { }] ; <[2 x { }]*> [#uses=2]
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: opt %s -constprop | llvm-dis | \
|
||||
; RUN: opt %s -constprop -S | \
|
||||
; RUN: grep {i32 -1}
|
||||
; RUN: opt %s -constprop | llvm-dis | \
|
||||
; RUN: opt %s -constprop -S | \
|
||||
; RUN: not grep zeroinitializer
|
||||
|
||||
define <4 x i32> @test() {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | \
|
||||
; RUN: opt %s -instcombine -S | \
|
||||
; RUN: grep {ret i1 false}
|
||||
define i1 @test() {
|
||||
%X = trunc i32 320 to i1 ; <i1> [#uses=1]
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: opt %s -constprop | llvm-dis | \
|
||||
; RUN: opt %s -constprop -S | \
|
||||
; RUN: grep {ret i32 -1}
|
||||
; RUN: opt %s -constprop | llvm-dis | \
|
||||
; RUN: opt %s -constprop -S | \
|
||||
; RUN: grep {ret i32 1}
|
||||
|
||||
define i32 @test1() {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -constprop | llvm-dis | grep 1065353216
|
||||
; RUN: opt %s -constprop -S | grep 1065353216
|
||||
|
||||
define i32 @test() {
|
||||
%A = bitcast float 1.000000e+00 to i32 ; <i32> [#uses=1]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -constprop | llvm-dis | grep {ret i13 13}
|
||||
; RUN: opt %s -constprop -S | grep {ret i13 13}
|
||||
; PR1816
|
||||
declare i13 @llvm.cttz.i13(i13)
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
; This is a basic sanity check for constant propogation. The add instruction
|
||||
; should be eliminated.
|
||||
|
||||
; RUN: opt %s -constprop -die | llvm-dis | not grep add
|
||||
; RUN: opt %s -constprop -die -S | not grep add
|
||||
|
||||
define i32 @test(i1 %B) {
|
||||
br i1 %B, label %BB1, label %BB2
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | not grep bitcast
|
||||
; RUN: opt < %s -instcombine -S | not grep bitcast
|
||||
; PR2165
|
||||
|
||||
define <1 x i64> @test() {
|
||||
|
@ -1,6 +1,6 @@
|
||||
; bswap should be constant folded when it is passed a constant argument
|
||||
|
||||
; RUN: opt %s -constprop | llvm-dis | not grep call
|
||||
; RUN: opt %s -constprop -S | not grep call
|
||||
|
||||
declare i16 @llvm.bswap.i16(i16)
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -constprop | llvm-dis | not grep call
|
||||
; RUN: opt < %s -constprop -S | not grep call
|
||||
|
||||
declare double @cos(double)
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -instcombine | llvm-dis | grep {ret i32 0}
|
||||
; RUN: opt %s -instcombine -S | grep {ret i32 0}
|
||||
; PR4424
|
||||
declare void @ext()
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -constprop | llvm-dis | \
|
||||
; RUN: opt %s -constprop -S | \
|
||||
; RUN: grep -F {ret i32* null} | count 2
|
||||
|
||||
define i32* @test1() {
|
||||
|
@ -1,6 +1,6 @@
|
||||
; Ensure constant propogation of logical instructions is working correctly.
|
||||
|
||||
; RUN: opt %s -constprop -die | llvm-dis | \
|
||||
; RUN: opt < %s -constprop -die -S | \
|
||||
; RUN: not egrep {and|or|xor}
|
||||
|
||||
define i32 @test1() {
|
||||
|
@ -1,6 +1,6 @@
|
||||
; Ensure constant propogation of 'not' instructions is working correctly.
|
||||
|
||||
; RUN: opt %s -constprop -die | llvm-dis | not grep xor
|
||||
; RUN: opt %s -constprop -die -S | not grep xor
|
||||
|
||||
define i32 @test1() {
|
||||
%R = xor i32 4, -1 ; <i32> [#uses=1]
|
||||
|
@ -1,7 +1,7 @@
|
||||
; This is a basic sanity check for constant propogation. The add instruction
|
||||
; should be eliminated.
|
||||
|
||||
; RUN: opt %s -constprop -die | llvm-dis | not grep phi
|
||||
; RUN: opt < %s -constprop -die -S | not grep phi
|
||||
|
||||
define i32 @test(i1 %B) {
|
||||
BB0:
|
||||
|
@ -1,6 +1,6 @@
|
||||
; Ensure constant propagation of remainder instructions is working correctly.
|
||||
|
||||
; RUN: opt %s -constprop -die | llvm-dis | not grep rem
|
||||
; RUN: opt < %s -constprop -die -S | not grep rem
|
||||
|
||||
define i32 @test1() {
|
||||
%R = srem i32 4, 3 ; <i32> [#uses=1]
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt %s -constmerge | llvm-dis | grep foo
|
||||
; RUN: opt %s -constmerge | llvm-dis | grep bar
|
||||
; RUN: opt %s -constmerge -S | grep foo
|
||||
; RUN: opt %s -constmerge -S | grep bar
|
||||
|
||||
; Don't merge constants in different sections.
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis | grep {@test(}
|
||||
; RUN: opt %s -deadargelim | llvm-dis | not grep dead
|
||||
; RUN: opt %s -deadargelim -S | grep {@test(}
|
||||
; RUN: opt %s -deadargelim -S | not grep dead
|
||||
|
||||
define internal i32 @test(i32 %X, i32 %dead) {
|
||||
ret i32 %X
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis | not grep {ret i32 0}
|
||||
; RUN: opt %s -deadargelim -S | not grep {ret i32 0}
|
||||
; PR1735
|
||||
|
||||
define internal i32 @test(i32 %A, ...) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis > %t
|
||||
; RUN: opt %s -deadargelim -S > %t
|
||||
; RUN: cat %t | grep nounwind | count 2
|
||||
; RUN: cat %t | grep signext | count 2
|
||||
; RUN: cat %t | not grep inreg
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis | grep byval
|
||||
; RUN: opt %s -deadargelim -S | grep byval
|
||||
|
||||
%struct.point = type { double, double }
|
||||
@pts = global [4 x %struct.point] [ %struct.point { double 1.000000e+00, double 2.000000e+00 }, %struct.point { double 3.000000e+00, double 4.000000e+00 }, %struct.point { double 5.000000e+00, double 6.000000e+00 }, %struct.point { double 7.000000e+00, double 8.000000e+00 } ], align 32 ; <[4 x %struct.point]*> [#uses=1]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim -die | llvm-dis > %t
|
||||
; RUN: opt %s -deadargelim -die -S > %t
|
||||
; RUN: cat %t | grep 123
|
||||
|
||||
; This test tries to catch wrongful removal of return values for a specific case
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis | not grep DEADARG
|
||||
; RUN: opt %s -deadargelim -S | not grep DEADARG
|
||||
|
||||
; test - an obviously dead argument
|
||||
define internal i32 @test(i32 %v, i32 %DEADARG1, i32* %p) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
; This test shows a few canonicalizations made by deadargelim
|
||||
; RUN: opt %s -deadargelim | llvm-dis > %t
|
||||
; RUN: opt %s -deadargelim -S > %t
|
||||
; This test should remove {} and replace it with void
|
||||
; RUN: cat %t | grep {define internal void @test}
|
||||
; This test shouls replace the {i32} return value with just i32
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis | not grep 47
|
||||
; RUN: opt %s -deadargelim | llvm-dis | not grep 1.0
|
||||
; RUN: opt %s -deadargelim -S | not grep 47
|
||||
; RUN: opt %s -deadargelim -S | not grep 1.0
|
||||
|
||||
define i32 @bar(i32 %A) {
|
||||
%tmp4 = tail call i32 (i32, ...)* @foo( i32 %A, i32 %A, i32 %A, i32 %A, i64 47, double 1.000000e+00 ) ; <i32> [#uses=1]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis | not grep DEAD
|
||||
; RUN: opt %s -deadargelim -S | not grep DEAD
|
||||
|
||||
; Dead arg only used by dead retval
|
||||
define internal i32 @test(i32 %DEADARG) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim -die | llvm-dis > %t
|
||||
; RUN: opt %s -deadargelim -die -S > %t
|
||||
; RUN: cat %t | not grep DEAD
|
||||
; RUN: cat %t | grep LIVE | count 4
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -deadargelim | llvm-dis > %t
|
||||
; RUN: opt %s -deadargelim -S > %t
|
||||
; RUN: grep {define internal zeroext i32 @test1() nounwind} %t
|
||||
; RUN: grep {define internal %Ty @test2} %t
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
; are unused. All unused values are typed i16, so we can easily check. We also
|
||||
; run instcombine to fold insert/extractvalue chains and we run dce to clean up
|
||||
; any remaining dead stuff.
|
||||
; RUN: opt %s -deadargelim -instcombine -dce | llvm-dis | not grep i16
|
||||
; RUN: opt %s -deadargelim -instcombine -dce -S | not grep i16
|
||||
|
||||
define internal {i16, i32} @test(i16 %DEADARG) {
|
||||
%A = insertvalue {i16,i32} undef, i16 1, 0
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -dse | llvm-dis | \
|
||||
; RUN: opt %s -dse -S | \
|
||||
; RUN: grep {store i32 1234567}
|
||||
|
||||
; Do not delete stores that are only partially killed.
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -dse | llvm-dis | grep store
|
||||
; RUN: opt %s -dse -S | grep store
|
||||
|
||||
define double @foo(i8* %X) {
|
||||
%X_addr = alloca i8* ; <i8**> [#uses=2]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt %s -dse | llvm-dis | not grep tmp5
|
||||
; RUN: opt %s -dse -S | not grep tmp5
|
||||
; PR2599
|
||||
|
||||
define void @foo({ i32, i32 }* %x) nounwind {
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user