blob: 2c08fce4b3d10ace535e39cf1f3d4997246bbc7d [file] [log] [blame]
spv.shaderFragMaskAMD.frag
// Module Version 10000
// Generated by (magic number): 80006
// Id's are bound by 80
Capability Shader
Capability InputAttachment
Capability FragmentMaskAMD
Extension "SPV_AMD_shader_fragment_mask"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 78
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_AMD_shader_fragment_mask"
Name 4 "main"
Name 9 "f4"
Name 14 "fragMask"
Name 18 "s2DMS"
Name 27 "fragIndex"
Name 42 "is2DMSArray"
Name 62 "usubpassMS"
Name 78 "fragColor"
Decorate 18(s2DMS) DescriptorSet 0
Decorate 18(s2DMS) Binding 0
Decorate 42(is2DMSArray) DescriptorSet 0
Decorate 42(is2DMSArray) Binding 1
Decorate 62(usubpassMS) DescriptorSet 0
Decorate 62(usubpassMS) Binding 2
Decorate 62(usubpassMS) InputAttachmentIndex 0
Decorate 78(fragColor) Location 0
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 0
13: TypePointer Function 12(int)
15: TypeImage 6(float) 2D multi-sampled sampled format:Unknown
16: TypeSampledImage 15
17: TypePointer UniformConstant 16
18(s2DMS): 17(ptr) Variable UniformConstant
20: TypeInt 32 1
21: TypeVector 20(int) 2
22: 20(int) Constant 2
23: 20(int) Constant 3
24: 21(ivec2) ConstantComposite 22 23
29: 12(int) Constant 240
31: 20(int) Constant 4
34: 12(int) Constant 1
39: TypeImage 20(int) 2D array multi-sampled sampled format:Unknown
40: TypeSampledImage 39
41: TypePointer UniformConstant 40
42(is2DMSArray): 41(ptr) Variable UniformConstant
44: TypeVector 20(int) 3
45: 20(int) Constant 1
46: 44(ivec3) ConstantComposite 22 23 45
55: TypeVector 20(int) 4
60: TypeImage 12(int) SubpassData multi-sampled nonsampled format:Unknown
61: TypePointer UniformConstant 60
62(usubpassMS): 61(ptr) Variable UniformConstant
64: 20(int) Constant 0
65: 21(ivec2) ConstantComposite 64 64
72: TypeVector 12(int) 4
77: TypePointer Output 7(fvec4)
78(fragColor): 77(ptr) Variable Output
4(main): 2 Function None 3
5: Label
9(f4): 8(ptr) Variable Function
14(fragMask): 13(ptr) Variable Function
27(fragIndex): 13(ptr) Variable Function
Store 9(f4) 11
19: 16 Load 18(s2DMS)
25: 15 Image 19
26: 12(int) FragmentMaskFetchAMD 25 24
Store 14(fragMask) 26
28: 12(int) Load 14(fragMask)
30: 12(int) BitwiseAnd 28 29
32: 12(int) ShiftRightLogical 30 31
Store 27(fragIndex) 32
33: 16 Load 18(s2DMS)
35: 15 Image 33
36: 7(fvec4) FragmentFetchAMD 35 24 34
37: 7(fvec4) Load 9(f4)
38: 7(fvec4) FAdd 37 36
Store 9(f4) 38
43: 40 Load 42(is2DMSArray)
47: 39 Image 43
48: 12(int) FragmentMaskFetchAMD 47 46
Store 14(fragMask) 48
49: 12(int) Load 14(fragMask)
50: 12(int) BitwiseAnd 49 29
51: 12(int) ShiftRightLogical 50 31
Store 27(fragIndex) 51
52: 40 Load 42(is2DMSArray)
53: 12(int) Load 27(fragIndex)
54: 39 Image 52
56: 55(ivec4) FragmentFetchAMD 54 46 53
57: 7(fvec4) ConvertSToF 56
58: 7(fvec4) Load 9(f4)
59: 7(fvec4) FAdd 58 57
Store 9(f4) 59
63: 60 Load 62(usubpassMS)
66: 12(int) FragmentMaskFetchAMD 63 65
Store 14(fragMask) 66
67: 12(int) Load 14(fragMask)
68: 12(int) BitwiseAnd 67 29
69: 12(int) ShiftRightLogical 68 31
Store 27(fragIndex) 69
70: 60 Load 62(usubpassMS)
71: 12(int) Load 27(fragIndex)
73: 72(ivec4) FragmentFetchAMD 70 65 71
74: 7(fvec4) ConvertUToF 73
75: 7(fvec4) Load 9(f4)
76: 7(fvec4) FAdd 75 74
Store 9(f4) 76
79: 7(fvec4) Load 9(f4)
Store 78(fragColor) 79
Return
FunctionEnd