-
-
Save anonymous/55f29c2b165efd66f0a3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; ModuleID = 'WinterModule' | |
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" | |
%struct.barney.1 = type { %struct.quux, float, float, float, float } | |
%struct.quux = type { <8 x float> } | |
%struct.bar = type { <4 x float> } | |
%struct.eggs.2 = type { float, i1 } | |
%struct.hoge.3 = type { %struct.bar, %struct.bar, %struct.bar, %struct.bar, i32*, i32*, i32*, %struct.hoge, %struct.barney.4, i32*, float, i1, i1, i1, i32*, i32* } | |
%struct.hoge = type { <2 x float> } | |
%struct.barney.4 = type { %struct.hoge, i32 } | |
@global22 = private unnamed_addr constant [14 x i8] c"a_dot_orig_Ng\00" | |
@global23 = private unnamed_addr constant [9 x i8] c"a_dot_Ns\00" | |
@global24 = private unnamed_addr constant [9 x i8] c"b_dot_Ns\00" | |
@global25 = private unnamed_addr constant [17 x i8] c"a_dot_prebump_Ns\00" | |
@global26 = private unnamed_addr constant [17 x i8] c"smoothing_factor\00" | |
@global27 = private unnamed_addr constant [15 x i8] c"x_for_n_dot_k1\00" | |
@global28 = private unnamed_addr constant [15 x i8] c"x_for_n_dot_k2\00" | |
@global88 = private unnamed_addr constant [8 x i8] c"use_dot\00" | |
; Function Attrs: nounwind | |
define internal void @snork146(%struct.barney.1* noalias sret %arg, %struct.quux* noalias readonly %arg1, float %arg2, float %arg3, float %arg4, float %arg5) #0 { | |
bb: | |
%tmp = getelementptr inbounds %struct.barney.1* %arg, i32 0, i32 0 | |
%tmp6 = load %struct.quux* %arg1 | |
store %struct.quux %tmp6, %struct.quux* %tmp | |
%tmp7 = getelementptr inbounds %struct.barney.1* %arg, i32 0, i32 1 | |
store float %arg2, float* %tmp7 | |
%tmp8 = getelementptr inbounds %struct.barney.1* %arg, i32 0, i32 2 | |
store float %arg3, float* %tmp8 | |
%tmp9 = getelementptr inbounds %struct.barney.1* %arg, i32 0, i32 3 | |
store float %arg4, float* %tmp9 | |
%tmp10 = getelementptr inbounds %struct.barney.1* %arg, i32 0, i32 4 | |
store float %arg5, float* %tmp10 | |
ret void | |
} | |
; Function Attrs: nounwind | |
define internal void @foo153(%struct.quux* noalias sret %arg, float %arg1) #0 { | |
bb: | |
%tmp = insertelement <8 x float> undef, float %arg1, i32 0 | |
%tmp2 = shufflevector <8 x float> %tmp, <8 x float> undef, <8 x i32> zeroinitializer | |
call void @wombat154(%struct.quux* %arg, <8 x float> %tmp2) | |
ret void | |
} | |
; Function Attrs: nounwind | |
define internal void @wombat154(%struct.quux* noalias sret %arg, <8 x float> %arg1) #0 { | |
bb: | |
%tmp = getelementptr inbounds %struct.quux* %arg, i32 0, i32 0 | |
store <8 x float> %arg1, <8 x float>* %tmp | |
ret void | |
} | |
; Function Attrs: nounwind | |
define internal float @foo155(float %arg) #0 { | |
bb: | |
%tmp = call float @llvm.fabs.f32(float %arg) | |
ret float %tmp | |
} | |
; Function Attrs: nounwind readnone | |
declare float @llvm.fabs.f32(float) #1 | |
declare void @blam174(i8*, float) | |
; Function Attrs: nounwind | |
define internal float @wombat182(float %arg, float %arg1) #0 { | |
bb: | |
%tmp = fcmp olt float %arg, %arg1 | |
br i1 %tmp, label %bb2, label %bb3 | |
bb2: ; preds = %bb | |
br label %bb4 | |
bb3: ; preds = %bb | |
br label %bb4 | |
bb4: ; preds = %bb3, %bb2 | |
%tmp5 = phi float [ %arg, %bb2 ], [ %arg1, %bb3 ] | |
ret float %tmp5 | |
} | |
; Function Attrs: nounwind | |
define internal float @wombat183(float %arg, float %arg1) #0 { | |
bb: | |
%tmp = fcmp ogt float %arg, %arg1 | |
br i1 %tmp, label %bb2, label %bb3 | |
bb2: ; preds = %bb | |
br label %bb4 | |
bb3: ; preds = %bb | |
br label %bb4 | |
bb4: ; preds = %bb3, %bb2 | |
%tmp5 = phi float [ %arg, %bb2 ], [ %arg1, %bb3 ] | |
ret float %tmp5 | |
} | |
; Function Attrs: nounwind | |
define internal void @spam200(%struct.bar* noalias sret %arg, <4 x float> %arg1) #0 { | |
bb: | |
%tmp = getelementptr inbounds %struct.bar* %arg, i32 0, i32 0 | |
store <4 x float> %arg1, <4 x float>* %tmp | |
ret void | |
} | |
; Function Attrs: nounwind | |
define internal float @wobble211(float %arg) #0 { | |
bb: | |
%tmp = call float @llvm.sqrt.f32(float %arg) | |
ret float %tmp | |
} | |
; Function Attrs: nounwind | |
define internal float @eggs245(%struct.bar* noalias readonly %arg, %struct.bar* noalias readonly %arg3) #0 { | |
bb: | |
%tmp = getelementptr inbounds %struct.bar* %arg, i32 0, i32 0 | |
%tmp4 = load <4 x float>* %tmp | |
%tmp5 = getelementptr inbounds %struct.bar* %arg3, i32 0, i32 0 | |
%tmp6 = load <4 x float>* %tmp5 | |
%tmp7 = call float @spam246(<4 x float> %tmp4, <4 x float> %tmp6) | |
ret float %tmp7 | |
} | |
; Function Attrs: nounwind | |
define internal float @spam246(<4 x float> %arg, <4 x float> %arg1) #0 { | |
bb: | |
%tmp = call <4 x float> @llvm.x86.sse41.dpps(<4 x float> %arg, <4 x float> %arg1, i8 -1) | |
%tmp2 = extractelement <4 x float> %tmp, i32 0 | |
ret float %tmp2 | |
} | |
; Function Attrs: nounwind readnone | |
declare <4 x float> @llvm.x86.sse41.dpps(<4 x float>, <4 x float>, i8) #1 | |
; Function Attrs: nounwind | |
define void @pluto323(%struct.barney.1* noalias sret %arg, %struct.eggs.2* noalias readonly %arg12, %struct.hoge.3* noalias readonly %arg13, %struct.bar* noalias readonly %arg14, %struct.bar* noalias readonly %arg15, %struct.quux* noalias readonly %arg16) #0 { | |
bb: | |
%tmp = alloca %struct.quux | |
%tmp17 = alloca %struct.bar | |
%tmp18 = alloca %struct.bar | |
%tmp19 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 0 | |
%tmp20 = call float @eggs245(%struct.bar* %arg14, %struct.bar* %tmp19) | |
call void @blam174(i8* getelementptr inbounds ([14 x i8]* @global22, i32 0, i32 0), float %tmp20) | |
%tmp21 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 1 | |
%tmp22 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 0 | |
%tmp23 = call float @eggs245(%struct.bar* %tmp21, %struct.bar* %tmp22) | |
%tmp24 = fmul nnan ninf nsz float %tmp23, %tmp20 | |
%tmp25 = fcmp ogt float %tmp24, 0.000000e+00 | |
br i1 %tmp25, label %bb26, label %bb28 | |
bb26: ; preds = %bb | |
%tmp27 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 1 | |
br label %bb30 | |
bb28: ; preds = %bb | |
%tmp29 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 1 | |
call void @widget324(%struct.bar* %tmp18, %struct.bar* %tmp29) | |
br label %bb30 | |
bb30: ; preds = %bb28, %bb26 | |
%tmp31 = phi %struct.bar* [ %tmp27, %bb26 ], [ %tmp18, %bb28 ] | |
%tmp32 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 1 | |
%tmp33 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 0 | |
%tmp34 = call float @eggs245(%struct.bar* %tmp32, %struct.bar* %tmp33) | |
%tmp35 = fmul nnan ninf nsz float %tmp34, %tmp20 | |
%tmp36 = fcmp ogt float %tmp35, 0.000000e+00 | |
br i1 %tmp36, label %bb37, label %bb39 | |
bb37: ; preds = %bb30 | |
%tmp38 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 2 | |
br label %bb41 | |
bb39: ; preds = %bb30 | |
%tmp40 = getelementptr inbounds %struct.hoge.3* %arg13, i32 0, i32 2 | |
call void @widget324(%struct.bar* %tmp17, %struct.bar* %tmp40) | |
br label %bb41 | |
bb41: ; preds = %bb39, %bb37 | |
%tmp42 = phi %struct.bar* [ %tmp38, %bb37 ], [ %tmp17, %bb39 ] | |
%tmp43 = call float @eggs245(%struct.bar* %arg14, %struct.bar* %tmp31) | |
call void @blam174(i8* getelementptr inbounds ([9 x i8]* @global23, i32 0, i32 0), float %tmp43) | |
%tmp44 = call float @eggs245(%struct.bar* %arg15, %struct.bar* %tmp31) | |
call void @blam174(i8* getelementptr inbounds ([9 x i8]* @global24, i32 0, i32 0), float %tmp44) | |
%tmp45 = call float @eggs245(%struct.bar* %arg14, %struct.bar* %tmp42) | |
call void @blam174(i8* getelementptr inbounds ([17 x i8]* @global25, i32 0, i32 0), float %tmp45) | |
%tmp46 = call float @snork325(float %tmp45, float %tmp43, float %tmp20) | |
call void @blam174(i8* getelementptr inbounds ([17 x i8]* @global26, i32 0, i32 0), float %tmp46) | |
%tmp47 = call float @wombat326(float %tmp43) | |
call void @blam174(i8* getelementptr inbounds ([15 x i8]* @global27, i32 0, i32 0), float %tmp47) | |
%tmp48 = call float @foo155(float %tmp44) | |
%tmp49 = call float @wombat326(float %tmp48) | |
call void @blam174(i8* getelementptr inbounds ([15 x i8]* @global28, i32 0, i32 0), float %tmp49) | |
%tmp50 = fmul nnan ninf nsz float %tmp47, %tmp49 | |
call void @foo153(%struct.quux* %tmp, float %tmp50) | |
call void @snork146(%struct.barney.1* %arg, %struct.quux* %tmp, float 0.000000e+00, float 0.000000e+00, float 0.000000e+00, float 0.000000e+00) | |
ret void | |
} | |
; Function Attrs: nounwind | |
define internal void @widget324(%struct.bar* noalias sret %arg, %struct.bar* noalias readonly %arg1) #0 { | |
bb: | |
%tmp = getelementptr inbounds %struct.bar* %arg1, i32 0, i32 0 | |
%tmp2 = load <4 x float>* %tmp | |
%tmp3 = fmul nnan ninf nsz <4 x float> %tmp2, <float -1.000000e+00, float -1.000000e+00, float -1.000000e+00, float -1.000000e+00> | |
call void @spam200(%struct.bar* %arg, <4 x float> %tmp3) | |
ret void | |
} | |
; Function Attrs: nounwind | |
define internal float @snork325(float %arg, float %arg1, float %arg2) #0 { | |
bb: | |
%tmp = fmul nnan ninf nsz float %arg, 5.000000e+00 | |
%tmp3 = call float @wombat182(float %tmp, float %arg1) | |
call void @blam174(i8* getelementptr inbounds ([8 x i8]* @global88, i32 0, i32 0), float %tmp3) | |
%tmp4 = call float @foo155(float %arg2) | |
%tmp5 = fdiv nnan ninf nsz float %tmp3, %tmp4 | |
%tmp6 = call float @wombat183(float %tmp5, float 0.000000e+00) | |
ret float %tmp6 | |
} | |
; Function Attrs: nounwind | |
define internal float @wombat326(float %arg) #0 { | |
bb: | |
%tmp = call float @wobble211(float %arg) | |
%tmp1 = fsub nnan ninf nsz float 1.000000e+00, %tmp | |
ret float %tmp1 | |
} | |
; Function Attrs: nounwind readnone | |
declare float @llvm.sqrt.f32(float) #1 | |
attributes #0 = { nounwind } | |
attributes #1 = { nounwind readnone } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment