Home | History | Annotate | Download | only in single_kernel
      1 ; RUN: rs2spirv_lit_driver.sh %s | FileCheck %s
      2 ; CHECK: OpEntryPoint GLCompute %{{[a-zA-Z_0-9]*}} "entry_inc" %gl_GlobalInvocationID
      3 ; CHECK-NOT: an_invokable
      4 
      5 target datalayout = "e-p:32:32-i64:64-v128:64:128-n32-S64"
      6 target triple = "armv7-none-linux-gnueabi"
      7 
      8 @.str = private unnamed_addr constant [24 x i8] c"test_root_output FAILED\00", align 1
      9 
     10 ; Function Attrs: nounwind
     11 define void @an_invokable(float %i) local_unnamed_addr #0 {
     12 entry:
     13   %call = tail call fastcc float @sum(float %i, float 2.000000e+00)
     14   %conv = fptosi float %call to i32
     15   tail call void @_Z7rsDebugPKci(i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str, i32 0, i32 0), i32 %conv) #4
     16   ret void
     17 }
     18 
     19 declare void @_Z7rsDebugPKci(i8*, i32) local_unnamed_addr #1
     20 
     21 ; Function Attrs: norecurse nounwind readnone
     22 define internal fastcc float @sum(float %i, float %j) unnamed_addr #2 {
     23 entry:
     24   %add = fadd float %i, %j
     25   ret float %add
     26 }
     27 
     28 ; Function Attrs: norecurse nounwind readnone
     29 define float @inc(float %i) local_unnamed_addr #2 {
     30 entry:
     31   %call = tail call fastcc float @sum(float %i, float 1.000000e+00)
     32   ret float %call
     33 }
     34 
     35 ; Function Attrs: noinline nounwind
     36 define void @.helper_an_invokable({ float }* nocapture) local_unnamed_addr #3 {
     37 entry:
     38   %1 = getelementptr inbounds { float }, { float }* %0, i32 0, i32 0
     39   %2 = load float, float* %1, align 4
     40   tail call void @an_invokable(float %2)
     41   ret void
     42 }
     43 
     44 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" }
     45 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" }
     46 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" }
     47 attributes #3 = { noinline nounwind }
     48 attributes #4 = { nounwind }
     49 
     50 !llvm.module.flags = !{!0, !1}
     51 !llvm.ident = !{!2}
     52 !\23pragma = !{!3, !4}
     53 !\23rs_export_func = !{!5}
     54 !\23rs_export_foreach_name = !{!6, !7}
     55 !\23rs_export_foreach = !{!8, !9}
     56 
     57 !0 = !{i32 1, !"wchar_size", i32 4}
     58 !1 = !{i32 1, !"min_enum_size", i32 4}
     59 !2 = !{!"Android clang version 3.8.275480  (based on LLVM 3.8.275480)"}
     60 !3 = !{!"version", !"1"}
     61 !4 = !{!"java_package_name", !"rs2spirv"}
     62 !5 = !{!".helper_an_invokable"}
     63 !6 = !{!"root"}
     64 !7 = !{!"inc"}
     65 !8 = !{!"0"}
     66 !9 = !{!"35"}
     67