1spv.shaderFragMaskAMD.frag
2// Module Version 10000
3// Generated by (magic number): 80007
4// Id's are bound by 80
5
6                              Capability Shader
7                              Capability InputAttachment
8                              Capability FragmentMaskAMD
9                              Extension  "SPV_AMD_shader_fragment_mask"
10               1:             ExtInstImport  "GLSL.std.450"
11                              MemoryModel Logical GLSL450
12                              EntryPoint Fragment 4  "main" 78
13                              ExecutionMode 4 OriginUpperLeft
14                              Source GLSL 450
15                              SourceExtension  "GL_AMD_shader_fragment_mask"
16                              Name 4  "main"
17                              Name 9  "f4"
18                              Name 14  "fragMask"
19                              Name 18  "s2DMS"
20                              Name 27  "fragIndex"
21                              Name 42  "is2DMSArray"
22                              Name 62  "usubpassMS"
23                              Name 78  "fragColor"
24                              Decorate 18(s2DMS) DescriptorSet 0
25                              Decorate 18(s2DMS) Binding 0
26                              Decorate 42(is2DMSArray) DescriptorSet 0
27                              Decorate 42(is2DMSArray) Binding 1
28                              Decorate 62(usubpassMS) DescriptorSet 0
29                              Decorate 62(usubpassMS) Binding 2
30                              Decorate 62(usubpassMS) InputAttachmentIndex 0
31                              Decorate 78(fragColor) Location 0
32               2:             TypeVoid
33               3:             TypeFunction 2
34               6:             TypeFloat 32
35               7:             TypeVector 6(float) 4
36               8:             TypePointer Function 7(fvec4)
37              10:    6(float) Constant 0
38              11:    7(fvec4) ConstantComposite 10 10 10 10
39              12:             TypeInt 32 0
40              13:             TypePointer Function 12(int)
41              15:             TypeImage 6(float) 2D multi-sampled sampled format:Unknown
42              16:             TypeSampledImage 15
43              17:             TypePointer UniformConstant 16
44       18(s2DMS):     17(ptr) Variable UniformConstant
45              20:             TypeInt 32 1
46              21:             TypeVector 20(int) 2
47              22:     20(int) Constant 2
48              23:     20(int) Constant 3
49              24:   21(ivec2) ConstantComposite 22 23
50              29:     12(int) Constant 240
51              31:     20(int) Constant 4
52              34:     12(int) Constant 1
53              39:             TypeImage 20(int) 2D array multi-sampled sampled format:Unknown
54              40:             TypeSampledImage 39
55              41:             TypePointer UniformConstant 40
56 42(is2DMSArray):     41(ptr) Variable UniformConstant
57              44:             TypeVector 20(int) 3
58              45:     20(int) Constant 1
59              46:   44(ivec3) ConstantComposite 22 23 45
60              55:             TypeVector 20(int) 4
61              60:             TypeImage 12(int) SubpassData multi-sampled nonsampled format:Unknown
62              61:             TypePointer UniformConstant 60
63  62(usubpassMS):     61(ptr) Variable UniformConstant
64              64:     20(int) Constant 0
65              65:   21(ivec2) ConstantComposite 64 64
66              72:             TypeVector 12(int) 4
67              77:             TypePointer Output 7(fvec4)
68   78(fragColor):     77(ptr) Variable Output
69         4(main):           2 Function None 3
70               5:             Label
71           9(f4):      8(ptr) Variable Function
72    14(fragMask):     13(ptr) Variable Function
73   27(fragIndex):     13(ptr) Variable Function
74                              Store 9(f4) 11
75              19:          16 Load 18(s2DMS)
76              25:          15 Image 19
77              26:     12(int) FragmentMaskFetchAMD 25 24
78                              Store 14(fragMask) 26
79              28:     12(int) Load 14(fragMask)
80              30:     12(int) BitwiseAnd 28 29
81              32:     12(int) ShiftRightLogical 30 31
82                              Store 27(fragIndex) 32
83              33:          16 Load 18(s2DMS)
84              35:          15 Image 33
85              36:    7(fvec4) FragmentFetchAMD 35 24 34
86              37:    7(fvec4) Load 9(f4)
87              38:    7(fvec4) FAdd 37 36
88                              Store 9(f4) 38
89              43:          40 Load 42(is2DMSArray)
90              47:          39 Image 43
91              48:     12(int) FragmentMaskFetchAMD 47 46
92                              Store 14(fragMask) 48
93              49:     12(int) Load 14(fragMask)
94              50:     12(int) BitwiseAnd 49 29
95              51:     12(int) ShiftRightLogical 50 31
96                              Store 27(fragIndex) 51
97              52:          40 Load 42(is2DMSArray)
98              53:     12(int) Load 27(fragIndex)
99              54:          39 Image 52
100              56:   55(ivec4) FragmentFetchAMD 54 46 53
101              57:    7(fvec4) ConvertSToF 56
102              58:    7(fvec4) Load 9(f4)
103              59:    7(fvec4) FAdd 58 57
104                              Store 9(f4) 59
105              63:          60 Load 62(usubpassMS)
106              66:     12(int) FragmentMaskFetchAMD 63 65
107                              Store 14(fragMask) 66
108              67:     12(int) Load 14(fragMask)
109              68:     12(int) BitwiseAnd 67 29
110              69:     12(int) ShiftRightLogical 68 31
111                              Store 27(fragIndex) 69
112              70:          60 Load 62(usubpassMS)
113              71:     12(int) Load 27(fragIndex)
114              73:   72(ivec4) FragmentFetchAMD 70 65 71
115              74:    7(fvec4) ConvertUToF 73
116              75:    7(fvec4) Load 9(f4)
117              76:    7(fvec4) FAdd 75 74
118                              Store 9(f4) 76
119              79:    7(fvec4) Load 9(f4)
120                              Store 78(fragColor) 79
121                              Return
122                              FunctionEnd
123