| ; RUN: rs2spirv_lit_driver.sh %s | FileCheck %s |
| ; CHECK: OpEntryPoint GLCompute %{{[a-zA-Z_0-9]*}} "entry_inc" %gl_GlobalInvocationID |
| ; CHECK-NOT: an_invokable |
| |
| target datalayout = "e-p:32:32-i64:64-v128:64:128-n32-S64" |
| target triple = "armv7-none-linux-gnueabi" |
| |
| @.str = private unnamed_addr constant [24 x i8] c"test_root_output FAILED\00", align 1 |
| |
| ; Function Attrs: nounwind |
| define void @an_invokable(float %i) local_unnamed_addr #0 { |
| entry: |
| %call = tail call fastcc float @sum(float %i, float 2.000000e+00) |
| %conv = fptosi float %call to i32 |
| tail call void @_Z7rsDebugPKci(i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str, i32 0, i32 0), i32 %conv) #4 |
| ret void |
| } |
| |
| declare void @_Z7rsDebugPKci(i8*, i32) local_unnamed_addr #1 |
| |
| ; Function Attrs: norecurse nounwind readnone |
| define internal fastcc float @sum(float %i, float %j) unnamed_addr #2 { |
| entry: |
| %add = fadd float %i, %j |
| ret float %add |
| } |
| |
| ; Function Attrs: norecurse nounwind readnone |
| define float @inc(float %i) local_unnamed_addr #2 { |
| entry: |
| %call = tail call fastcc float @sum(float %i, float 1.000000e+00) |
| ret float %call |
| } |
| |
| ; Function Attrs: noinline nounwind |
| define void @.helper_an_invokable({ float }* nocapture) local_unnamed_addr #3 { |
| entry: |
| %1 = getelementptr inbounds { float }, { float }* %0, i32 0, i32 0 |
| %2 = load float, float* %1, align 4 |
| tail call void @an_invokable(float %2) |
| ret void |
| } |
| |
| attributes #0 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "stack-protector-buffer-size"="0" "stackrealign" "unsafe-fp-math"="false" "use-soft-float"="false" } |
| attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "stack-protector-buffer-size"="0" "stackrealign" "unsafe-fp-math"="false" "use-soft-float"="false" } |
| attributes #2 = { norecurse nounwind readnone "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "stack-protector-buffer-size"="0" "stackrealign" "unsafe-fp-math"="false" "use-soft-float"="false" } |
| attributes #3 = { noinline nounwind } |
| attributes #4 = { nounwind } |
| |
| !llvm.module.flags = !{!0, !1} |
| !llvm.ident = !{!2} |
| !\23pragma = !{!3, !4} |
| !\23rs_export_func = !{!5} |
| !\23rs_export_foreach_name = !{!6, !7} |
| !\23rs_export_foreach = !{!8, !9} |
| |
| !0 = !{i32 1, !"wchar_size", i32 4} |
| !1 = !{i32 1, !"min_enum_size", i32 4} |
| !2 = !{!"Android clang version 3.8.275480 (based on LLVM 3.8.275480)"} |
| !3 = !{!"version", !"1"} |
| !4 = !{!"java_package_name", !"rs2spirv"} |
| !5 = !{!".helper_an_invokable"} |
| !6 = !{!"root"} |
| !7 = !{!"inc"} |
| !8 = !{!"0"} |
| !9 = !{!"35"} |