1; RUN: rs2spirv_lit_driver.sh %s | FileCheck %s 2 3target datalayout = "e-m:e-i64:64-i128:128-n32:64-S128" 4target triple = "aarch64-none-linux-gnueabi" 5 6; Function Attrs: norecurse nounwind readnone 7; CHECK:OpDecorate %[[BUF_S:.*]] BufferBlock 8; CHECK:OpDecorate %[[BUF_VAR:.*]] DescriptorSet {{[0-9]}} 9; CHECK:OpDecorate %[[BUF_VAR]] Binding {{[0-9]}} 10; CHECK:%[[BUF_PTR_TY:.*]] = OpTypePointer Uniform %[[BUF_S]] 11; CHECK:%[[BUF_VAR]] = OpVariable %[[BUF_PTR_TY]] Uniform 12; CHECK:%[[ADDR:.*]] = OpAccessChain {{.*}} %[[BUF_VAR]] 13; CHECK:OpLoad {{.*}} %[[ADDR]] 14 15define <4 x float> @invert(<4 x float> %in) #0 { 16entry: 17 %0 = extractelement <4 x float> %in, i64 0 18 %sub = fsub float 1.000000e+00, %0 19 %1 = insertelement <4 x float> undef, float %sub, i64 0 20 %2 = extractelement <4 x float> %in, i64 1 21 %sub1 = fsub float 1.000000e+00, %2 22 %3 = insertelement <4 x float> %1, float %sub1, i64 1 23 %4 = extractelement <4 x float> %in, i64 2 24 %sub2 = fsub float 1.000000e+00, %4 25 %5 = insertelement <4 x float> %3, float %sub2, i64 2 26 %6 = extractelement <4 x float> %in, i64 3 27 %sub3 = fsub float 1.000000e+00, %6 28 %7 = insertelement <4 x float> %5, float %sub3, i64 3 29 ret <4 x float> %7 30} 31 32attributes #0 = { norecurse nounwind readnone "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="0" "stackrealign" "unsafe-fp-math"="false" "use-soft-float"="false" } 33 34!llvm.ident = !{!0} 35!\23pragma = !{!1, !2, !3} 36!\23rs_export_foreach_name = !{!4, !5} 37!\23rs_export_foreach = !{!6, !7} 38 39!0 = !{!"Android clang version 3.8.256229 (based on LLVM 3.8.256229)"} 40!1 = !{!"version", !"1"} 41!2 = !{!"java_package_name", !"rs2spirv"} 42!3 = !{!"rs_fp_relaxed", !""} 43!4 = !{!"root"} 44!5 = !{!"invert"} 45!6 = !{!"0"} 46!7 = !{!"35"} 47