llvm/test/Transforms/Inline/2008-03-07-Inline.ll
Dan Gohman f2f6ce65b7 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the
input filename so that opt doesn't print the input filename in the
output so that grep lines in the tests don't unintentionally match
strings in the input filename.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81537 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-11 18:01:28 +00:00

58 lines
2.7 KiB
LLVM

; RUN: opt < %s -inline -disable-output
%struct.Demand = type { double, double }
%struct.branch = type { %struct.Demand, double, double, double, double, %struct.branch*, [12 x %struct.leaf*] }
%struct.leaf = type { %struct.Demand, double, double }
@P = external global double ; <double*> [#uses=1]
define %struct.leaf* @build_leaf() nounwind {
entry:
unreachable
}
define %struct.Demand @Compute_Branch2(%struct.branch* %br, double %theta_R, double %theta_I, double %pi_R, double %pi_I) nounwind {
entry:
%mrv = alloca %struct.Demand ; <%struct.Demand*> [#uses=4]
%a2 = alloca %struct.Demand ; <%struct.Demand*> [#uses=0]
br i1 false, label %bb46, label %bb
bb: ; preds = %entry
%mrv.gep = getelementptr %struct.Demand* %mrv, i32 0, i32 0 ; <double*> [#uses=1]
%mrv.ld = load double* %mrv.gep ; <double> [#uses=1]
%mrv.gep1 = getelementptr %struct.Demand* %mrv, i32 0, i32 1 ; <double*> [#uses=1]
%mrv.ld2 = load double* %mrv.gep1 ; <double> [#uses=1]
ret double %mrv.ld, double %mrv.ld2
bb46: ; preds = %entry
br label %bb72
bb49: ; preds = %bb72
call %struct.Demand @Compute_Leaf1( %struct.leaf* null, double 0.000000e+00, double 0.000000e+00 ) nounwind ; <%struct.Demand>:0 [#uses=1]
%gr = getresult %struct.Demand %0, 1 ; <double> [#uses=0]
br label %bb72
bb72: ; preds = %bb49, %bb46
br i1 false, label %bb49, label %bb77
bb77: ; preds = %bb72
%mrv.gep3 = getelementptr %struct.Demand* %mrv, i32 0, i32 0 ; <double*> [#uses=1]
%mrv.ld4 = load double* %mrv.gep3 ; <double> [#uses=1]
%mrv.gep5 = getelementptr %struct.Demand* %mrv, i32 0, i32 1 ; <double*> [#uses=1]
%mrv.ld6 = load double* %mrv.gep5 ; <double> [#uses=1]
ret double %mrv.ld4, double %mrv.ld6
}
define %struct.Demand @Compute_Leaf1(%struct.leaf* %l, double %pi_R, double %pi_I) nounwind {
entry:
%mrv = alloca %struct.Demand ; <%struct.Demand*> [#uses=4]
%tmp10 = load double* @P, align 8 ; <double> [#uses=1]
%tmp11 = fcmp olt double %tmp10, 0.000000e+00 ; <i1> [#uses=1]
br i1 %tmp11, label %bb, label %bb13
bb: ; preds = %entry
%mrv.gep = getelementptr %struct.Demand* %mrv, i32 0, i32 0 ; <double*> [#uses=1]
%mrv.ld = load double* %mrv.gep ; <double> [#uses=1]
%mrv.gep1 = getelementptr %struct.Demand* %mrv, i32 0, i32 1 ; <double*> [#uses=1]
%mrv.ld2 = load double* %mrv.gep1 ; <double> [#uses=1]
ret double %mrv.ld, double %mrv.ld2
bb13: ; preds = %entry
%mrv.gep3 = getelementptr %struct.Demand* %mrv, i32 0, i32 0 ; <double*> [#uses=1]
%mrv.ld4 = load double* %mrv.gep3 ; <double> [#uses=1]
%mrv.gep5 = getelementptr %struct.Demand* %mrv, i32 0, i32 1 ; <double*> [#uses=1]
%mrv.ld6 = load double* %mrv.gep5 ; <double> [#uses=1]
ret double %mrv.ld4, double %mrv.ld6
}