@@ -4,69 +4,62 @@ OpEntryPoint Fragment %1 "main" %2 %3 %4
44OpExecutionMode %1 OriginUpperLeft
55OpName %2 "frag_coord"
66OpName %3 "viewport_size"
7- OpName %9 "(spirv_std::glam::Vec2, f32, f32)"
8- OpMemberName %9 0 "0"
9- OpMemberName %9 1 "1"
10- OpMemberName %9 2 "2"
7+ OpName %10 "(spirv_std::glam::Vec2, f32, f32)"
8+ OpMemberName %10 0 "0"
9+ OpMemberName %10 1 "1"
10+ OpMemberName %10 2 "2"
1111OpName %4 "output"
1212OpName %1 "entry2_global_asm::entry"
1313OpDecorate %2 BuiltIn FragCoord
14- OpDecorate %10 Block
15- OpDecorate %3 NonWritable
14+ OpDecorate %11 Block
15+ OpMemberDecorate %11 0 Offset 0
1616OpDecorate %3 Binding 0
1717OpDecorate %3 DescriptorSet 0
18- OpMemberDecorate %9 0 Offset 0
19- OpMemberDecorate %9 1 Offset 8
20- OpMemberDecorate %9 2 Offset 12
18+ OpMemberDecorate %10 0 Offset 0
19+ OpMemberDecorate %10 1 Offset 8
20+ OpMemberDecorate %10 2 Offset 12
2121OpDecorate %4 Location 0
22- %11 = OpTypeVoid
23- %12 = OpTypeFunction %11
24- %13 = OpTypeFloat 32
25- %14 = OpTypeVector %13 4
26- %15 = OpTypePointer Input %14
27- %2 = OpVariable %15 Input
28- %16 = OpTypeVector %13 2
29- %10 = OpTypePointer Function %16
30- %17 = OpTypePointer Input %10
31- %3 = OpVariable %17 Input
32- %18 = OpTypePointer Function %13
33- %19 = OpTypeInt 32 0
34- %20 = OpConstant %19 0
35- %21 = OpConstant %19 1
36- %9 = OpTypeStruct %16 %13 %13
37- %22 = OpUndef %9
38- %23 = OpConstant %13 0
39- %24 = OpConstant %13 1
40- %25 = OpTypePointer Output %14
41- %4 = OpVariable %25 Output
42- %1 = OpFunction %11 None %12
43- %26 = OpLabel
44- %27 = OpLoad %14 %2
45- %28 = OpLoad %10 %3
46- %29 = OpCompositeExtract %13 %27 0
47- %30 = OpCompositeExtract %13 %27 1
48- %31 = OpInBoundsAccessChain %18 %28 %20
49- %32 = OpLoad %13 %31
50- %33 = OpInBoundsAccessChain %18 %28 %21
51- %34 = OpLoad %13 %33
52- %35 = OpFDiv %13 %29 %32
53- %36 = OpFDiv %13 %30 %34
54- %37 = OpCompositeInsert %9 %35 %22 0 0
55- %38 = OpCompositeInsert %9 %36 %37 0 1
56- %39 = OpCompositeInsert %9 %23 %38 1
57- %40 = OpCompositeInsert %9 %24 %39 2
58- %41 = OpCompositeExtract %13 %40 0 0
59- %42 = OpCompositeExtract %13 %40 0 1
60- %43 = OpCompositeConstruct %14 %41 %42 %23 %24
61- OpStore %4 %43
22+ %12 = OpTypeVoid
23+ %13 = OpTypeFunction %12
24+ %14 = OpTypeFloat 32
25+ %15 = OpTypeVector %14 4
26+ %16 = OpTypePointer Input %15
27+ %2 = OpVariable %16 Input
28+ %17 = OpTypeVector %14 2
29+ %18 = OpTypePointer StorageBuffer %17
30+ %11 = OpTypeStruct %17
31+ %19 = OpTypePointer StorageBuffer %11
32+ %3 = OpVariable %19 StorageBuffer
33+ %20 = OpTypeInt 32 0
34+ %21 = OpConstant %20 0
35+ %22 = OpTypePointer StorageBuffer %14
36+ %23 = OpConstant %20 1
37+ %10 = OpTypeStruct %17 %14 %14
38+ %24 = OpUndef %10
39+ %25 = OpConstant %14 0
40+ %26 = OpConstant %14 1
41+ %27 = OpTypePointer Output %15
42+ %4 = OpVariable %27 Output
43+ %1 = OpFunction %12 None %13
44+ %28 = OpLabel
45+ %29 = OpLoad %15 %2
46+ %30 = OpAccessChain %18 %3 %21
47+ %31 = OpCompositeExtract %14 %29 0
48+ %32 = OpCompositeExtract %14 %29 1
49+ %33 = OpInBoundsAccessChain %22 %30 %21
50+ %34 = OpLoad %14 %33
51+ %35 = OpInBoundsAccessChain %22 %30 %23
52+ %36 = OpLoad %14 %35
53+ %37 = OpFDiv %14 %31 %34
54+ %38 = OpFDiv %14 %32 %36
55+ %39 = OpCompositeInsert %10 %37 %24 0 0
56+ %40 = OpCompositeInsert %10 %38 %39 0 1
57+ %41 = OpCompositeInsert %10 %25 %40 1
58+ %42 = OpCompositeInsert %10 %26 %41 2
59+ %43 = OpCompositeExtract %14 %42 0 0
60+ %44 = OpCompositeExtract %14 %42 0 1
61+ %45 = OpCompositeConstruct %15 %43 %44 %25 %26
62+ OpStore %4 %45
6263OpNoLine
6364OpReturn
6465OpFunctionEnd
65- error: error:0:0 - Block decoration on target <id> '10[%_ptr_Function_v2float]' must be a structure type
66- OpDecorate %_ptr_Function_v2float Block
67- |
68- = note: spirv-val failed
69- = note: module `$TEST_BUILD_DIR/spirv-attr/entry/entry2_global_asm.vulkan1.2`
70-
71- error: aborting due to 1 previous error
72-
0 commit comments