brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.1 KiB · 2964da9 Raw
81 lines · plain
1; RUN: llc -O0 -verify-machineinstrs -mtriple=spirv1.6-vulkan1.3-library %s -o - | FileCheck %s2; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv1.6-vulkan1.3-library %s -o - -filetype=obj | spirv-val --target-env vulkan1.3 %}3 4@.str = private unnamed_addr constant [2 x i8] c"b\00", align 15@.str.2 = private unnamed_addr constant [2 x i8] c"c\00", align 16@.str.4 = private unnamed_addr constant [2 x i8] c"d\00", align 17@.str.6 = private unnamed_addr constant [2 x i8] c"e\00", align 18@.str.8 = private unnamed_addr constant [2 x i8] c"f\00", align 19@.str.10 = private unnamed_addr constant [2 x i8] c"g\00", align 110@.str.12 = private unnamed_addr constant [2 x i8] c"h\00", align 111@.str.14 = private unnamed_addr constant [2 x i8] c"i\00", align 112 13; CHECK-DAG: OpName [[b:%[0-9]+]] "b"14; CHECK-DAG: OpName [[c:%[0-9]+]] "c"15; CHECK-DAG: OpName [[d:%[0-9]+]] "d"16; CHECK-DAG: OpName [[e:%[0-9]+]] "e"17; CHECK-DAG: OpName [[f:%[0-9]+]] "f"18; CHECK-DAG: OpName [[g:%[0-9]+]] "g"19; CHECK-DAG: OpName [[h:%[0-9]+]] "h"20; CHECK-DAG: OpName [[i:%[0-9]+]] "i"21; CHECK-DAG: OpDecorate [[b]] DescriptorSet 022; CHECK-DAG: OpDecorate [[b]] Binding 123; CHECK-DAG: OpDecorate [[c]] DescriptorSet 024; CHECK-DAG: OpDecorate [[c]] Binding 025; CHECK-DAG: OpDecorate [[d]] DescriptorSet 026; CHECK-DAG: OpDecorate [[d]] Binding 327; CHECK-DAG: OpDecorate [[e]] DescriptorSet 028; CHECK-DAG: OpDecorate [[e]] Binding 229; CHECK-DAG: OpDecorate [[f]] DescriptorSet 1030; CHECK-DAG: OpDecorate [[f]] Binding 131; CHECK-DAG: OpDecorate [[g]] DescriptorSet 1032; CHECK-DAG: OpDecorate [[g]] Binding 033; CHECK-DAG: OpDecorate [[h]] DescriptorSet 1034; CHECK-DAG: OpDecorate [[h]] Binding 335; CHECK-NOT: OpDecorate [[h]] Binding 436; CHECK-DAG: OpDecorate [[i]] DescriptorSet 1037; CHECK-DAG: OpDecorate [[i]] Binding 238 39 40define void @main() local_unnamed_addr #0 {41entry:42  %0 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefromimplicitbinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 0, i32 0, i32 1, i32 0, ptr nonnull @.str)43  %1 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefrombinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 0, i32 0, i32 1, i32 0, ptr nonnull @.str.2)44  %2 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefromimplicitbinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 1, i32 0, i32 1, i32 0, ptr nonnull @.str.4)45  %3 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefrombinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 0, i32 2, i32 1, i32 0, ptr nonnull @.str.6)46  %4 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefrombinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 10, i32 1, i32 1, i32 0, ptr nonnull @.str.8)47  %5 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefromimplicitbinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 2, i32 10, i32 1, i32 0, ptr nonnull @.str.10)48  %6 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefromimplicitbinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 3, i32 10, i32 2, i32 0, ptr nonnull @.str.12)49  %7 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefromimplicitbinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 3, i32 10, i32 2, i32 1, ptr nonnull @.str.12)50  %8 = tail call target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) @llvm.spv.resource.handlefrombinding.tspirv.SignedImage_i32_5_2_0_0_2_0t(i32 10, i32 2, i32 1, i32 0, ptr nonnull @.str.14)51  %9 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %1, i32 0)52  %10 = load i32, ptr addrspace(11) %9, align 453  %11 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %2, i32 0)54  %12 = load i32, ptr addrspace(11) %11, align 455  %add.i = add nsw i32 %12, %1056  %13 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %3, i32 0)57  %14 = load i32, ptr addrspace(11) %13, align 458  %add4.i = add nsw i32 %add.i, %1459  %15 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %4, i32 0)60  %16 = load i32, ptr addrspace(11) %15, align 461  %add6.i = add nsw i32 %add4.i, %1662  %17 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %5, i32 0)63  %18 = load i32, ptr addrspace(11) %17, align 464  %add8.i = add nsw i32 %add6.i, %1865  %19 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %6, i32 0)66  %20 = load i32, ptr addrspace(11) %19, align 467  %add10.i = add nsw i32 %add8.i, %2068  %21 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %7, i32 0)69  %22 = load i32, ptr addrspace(11) %21, align 470  %add12.i = add nsw i32 %add10.i, %2271  %23 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %8, i32 0)72  %24 = load i32, ptr addrspace(11) %23, align 473  %add14.i = add nsw i32 %add12.i, %2474  %25 = tail call noundef align 4 dereferenceable(4) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.SignedImage_i32_5_2_0_0_2_0t(target("spirv.SignedImage", i32, 5, 2, 0, 0, 2, 0) %0, i32 0)75  store i32 %add14.i, ptr addrspace(11) %25, align 476  ret void77}78 79 80attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }81