mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-08 11:30:06 +00:00
33c7e30860
It is invalid if the same decoration is applied to the same id multiple times. This adds a check before adding a decoration that the decoration is not already in the list. If it is, then the duplicate is not added. Fixes #3627
163 lines
8.0 KiB
Plaintext
163 lines
8.0 KiB
Plaintext
spv.1.4.image.frag
|
|
// Module Version 10400
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 104
|
|
|
|
Capability Shader
|
|
Capability StorageImageMultisample
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 26 30 40 52 64 77 89 100 103
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source GLSL 450
|
|
Name 4 "main"
|
|
Name 9 "v"
|
|
Name 15 "iv"
|
|
Name 21 "uv"
|
|
Name 26 "i2D"
|
|
Name 30 "ic2D"
|
|
Name 40 "ii2D"
|
|
Name 52 "ui2D"
|
|
Name 64 "i2DMS"
|
|
Name 77 "ii2DMS"
|
|
Name 89 "ui2DMS"
|
|
Name 100 "fragData"
|
|
Name 103 "value"
|
|
Decorate 26(i2D) Binding 1
|
|
Decorate 26(i2D) DescriptorSet 0
|
|
Decorate 30(ic2D) Flat
|
|
Decorate 30(ic2D) Location 0
|
|
Decorate 40(ii2D) Binding 12
|
|
Decorate 40(ii2D) DescriptorSet 0
|
|
Decorate 52(ui2D) Binding 12
|
|
Decorate 52(ui2D) DescriptorSet 0
|
|
Decorate 64(i2DMS) Binding 9
|
|
Decorate 64(i2DMS) DescriptorSet 0
|
|
Decorate 77(ii2DMS) Binding 13
|
|
Decorate 77(ii2DMS) DescriptorSet 0
|
|
Decorate 89(ui2DMS) Binding 13
|
|
Decorate 89(ui2DMS) DescriptorSet 0
|
|
Decorate 100(fragData) Location 0
|
|
Decorate 103(value) Flat
|
|
Decorate 103(value) Location 1
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8: TypePointer Function 7(fvec4)
|
|
10: 6(float) Constant 0
|
|
11: 7(fvec4) ConstantComposite 10 10 10 10
|
|
12: TypeInt 32 1
|
|
13: TypeVector 12(int) 4
|
|
14: TypePointer Function 13(ivec4)
|
|
16: 12(int) Constant 0
|
|
17: 13(ivec4) ConstantComposite 16 16 16 16
|
|
18: TypeInt 32 0
|
|
19: TypeVector 18(int) 4
|
|
20: TypePointer Function 19(ivec4)
|
|
22: 18(int) Constant 0
|
|
23: 19(ivec4) ConstantComposite 22 22 22 22
|
|
24: TypeImage 6(float) 2D nonsampled format:Rgba32f
|
|
25: TypePointer UniformConstant 24
|
|
26(i2D): 25(ptr) Variable UniformConstant
|
|
28: TypeVector 12(int) 2
|
|
29: TypePointer Input 28(ivec2)
|
|
30(ic2D): 29(ptr) Variable Input
|
|
38: TypeImage 12(int) 2D nonsampled format:R32i
|
|
39: TypePointer UniformConstant 38
|
|
40(ii2D): 39(ptr) Variable UniformConstant
|
|
50: TypeImage 18(int) 2D nonsampled format:R32ui
|
|
51: TypePointer UniformConstant 50
|
|
52(ui2D): 51(ptr) Variable UniformConstant
|
|
62: TypeImage 6(float) 2D multi-sampled nonsampled format:Rgba32f
|
|
63: TypePointer UniformConstant 62
|
|
64(i2DMS): 63(ptr) Variable UniformConstant
|
|
67: 12(int) Constant 1
|
|
73: 12(int) Constant 2
|
|
75: TypeImage 12(int) 2D multi-sampled nonsampled format:R32i
|
|
76: TypePointer UniformConstant 75
|
|
77(ii2DMS): 76(ptr) Variable UniformConstant
|
|
87: TypeImage 18(int) 2D multi-sampled nonsampled format:R32ui
|
|
88: TypePointer UniformConstant 87
|
|
89(ui2DMS): 88(ptr) Variable UniformConstant
|
|
99: TypePointer Output 7(fvec4)
|
|
100(fragData): 99(ptr) Variable Output
|
|
102: TypePointer Input 18(int)
|
|
103(value): 102(ptr) Variable Input
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
9(v): 8(ptr) Variable Function
|
|
15(iv): 14(ptr) Variable Function
|
|
21(uv): 20(ptr) Variable Function
|
|
Store 9(v) 11
|
|
Store 15(iv) 17
|
|
Store 21(uv) 23
|
|
27: 24 Load 26(i2D)
|
|
31: 28(ivec2) Load 30(ic2D)
|
|
32: 7(fvec4) ImageRead 27 31
|
|
33: 7(fvec4) Load 9(v)
|
|
34: 7(fvec4) FAdd 33 32
|
|
Store 9(v) 34
|
|
35: 24 Load 26(i2D)
|
|
36: 28(ivec2) Load 30(ic2D)
|
|
37: 7(fvec4) Load 9(v)
|
|
ImageWrite 35 36 37
|
|
41: 38 Load 40(ii2D)
|
|
42: 28(ivec2) Load 30(ic2D)
|
|
43: 13(ivec4) ImageRead 41 42 SignExtend
|
|
44: 7(fvec4) ConvertSToF 43
|
|
45: 7(fvec4) Load 9(v)
|
|
46: 7(fvec4) FAdd 45 44
|
|
Store 9(v) 46
|
|
47: 38 Load 40(ii2D)
|
|
48: 28(ivec2) Load 30(ic2D)
|
|
49: 13(ivec4) Load 15(iv)
|
|
ImageWrite 47 48 49 SignExtend
|
|
53: 50 Load 52(ui2D)
|
|
54: 28(ivec2) Load 30(ic2D)
|
|
55: 19(ivec4) ImageRead 53 54 ZeroExtend
|
|
56: 7(fvec4) ConvertUToF 55
|
|
57: 7(fvec4) Load 9(v)
|
|
58: 7(fvec4) FAdd 57 56
|
|
Store 9(v) 58
|
|
59: 50 Load 52(ui2D)
|
|
60: 28(ivec2) Load 30(ic2D)
|
|
61: 19(ivec4) Load 21(uv)
|
|
ImageWrite 59 60 61 ZeroExtend
|
|
65: 62 Load 64(i2DMS)
|
|
66: 28(ivec2) Load 30(ic2D)
|
|
68: 7(fvec4) ImageRead 65 66 Sample 67
|
|
69: 7(fvec4) Load 9(v)
|
|
70: 7(fvec4) FAdd 69 68
|
|
Store 9(v) 70
|
|
71: 62 Load 64(i2DMS)
|
|
72: 28(ivec2) Load 30(ic2D)
|
|
74: 7(fvec4) Load 9(v)
|
|
ImageWrite 71 72 74 Sample 73
|
|
78: 75 Load 77(ii2DMS)
|
|
79: 28(ivec2) Load 30(ic2D)
|
|
80: 13(ivec4) ImageRead 78 79 Sample SignExtend 67
|
|
81: 7(fvec4) ConvertSToF 80
|
|
82: 7(fvec4) Load 9(v)
|
|
83: 7(fvec4) FAdd 82 81
|
|
Store 9(v) 83
|
|
84: 75 Load 77(ii2DMS)
|
|
85: 28(ivec2) Load 30(ic2D)
|
|
86: 13(ivec4) Load 15(iv)
|
|
ImageWrite 84 85 86 Sample SignExtend 73
|
|
90: 87 Load 89(ui2DMS)
|
|
91: 28(ivec2) Load 30(ic2D)
|
|
92: 19(ivec4) ImageRead 90 91 Sample ZeroExtend 67
|
|
93: 7(fvec4) ConvertUToF 92
|
|
94: 7(fvec4) Load 9(v)
|
|
95: 7(fvec4) FAdd 94 93
|
|
Store 9(v) 95
|
|
96: 87 Load 89(ui2DMS)
|
|
97: 28(ivec2) Load 30(ic2D)
|
|
98: 19(ivec4) Load 21(uv)
|
|
ImageWrite 96 97 98 Sample ZeroExtend 73
|
|
101: 7(fvec4) Load 9(v)
|
|
Store 100(fragData) 101
|
|
Return
|
|
FunctionEnd
|