blob: 4bbe8e9a4c3814f313d5dfb08cf0dccdb515a013 [file] [log] [blame]
spv.coopvec2.comp
// Module Version 10300
// Generated by (magic number): 8000b
// Id's are bound by 122
Capability Shader
Capability Float16
Capability Int8
Capability VulkanMemoryModelKHR
Capability CooperativeVectorNV
Capability CapabilityReplicatedCompositesEXT
Extension "SPV_EXT_replicated_composites"
Extension "SPV_KHR_vulkan_memory_model"
Extension "SPV_NV_cooperative_vector"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical VulkanKHR
EntryPoint GLCompute 4 "main"
ExecutionMode 4 LocalSize 64 1 1
Source GLSL 450
SourceExtension "GL_EXT_buffer_reference"
SourceExtension "GL_EXT_nonuniform_qualifier"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types"
SourceExtension "GL_KHR_memory_scope_semantics"
SourceExtension "GL_NV_cooperative_vector"
Name 4 "main"
Name 13 "foo(coopvecf1<4>;"
Name 12 "v"
Name 17 "f1"
Name 19 "f2"
Name 21 "f3"
Name 23 "N"
Name 26 "v"
Name 28 "v2"
Name 31 "v3"
Name 33 "v4"
Name 38 "v5"
Name 39 "v6"
Name 42 "v7"
Name 50 "v8"
Name 57 "v9"
Name 61 "v10"
Name 100 "v11"
Name 110 "v12"
Name 116 "v13"
Decorate 23(N) SpecId 0
Decorate 121 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeInt 32 0
8: 7(int) Constant 4
9: TypeCooperativeVectorNV 6(float) 8
10: TypePointer Function 9
11: TypeFunction 2 10(ptr)
15: TypeFloat 16
16: TypePointer Function 15(float16_t)
18:15(float16_t) Constant 15360
20:15(float16_t) Constant 16384
22:15(float16_t) Constant 16896
23(N): 7(int) SpecConstant 3
24: TypeCooperativeVectorNV 15(float16_t) 23(N)
25: TypePointer Function 24
27: 24 ConstantCompositeReplicateEXT 18
32: 24 ConstantComposite 18 20 22
40: TypeCooperativeVectorNV 6(float) 23(N)
41: TypePointer Function 40
43: 6(float) Constant 1065353216
44: 40 ConstantCompositeReplicateEXT 43
45: 6(float) Constant 1073741824
48: TypeCooperativeVectorNV 7(int) 23(N)
49: TypePointer Function 48
51: 7(int) Constant 1
52: 48 ConstantCompositeReplicateEXT 51
53: 7(int) Constant 2
97: TypeInt 32 1
98: TypeCooperativeVectorNV 97(int) 51
99: TypePointer Function 98
102: TypeInt 8 0
103: TypeCooperativeVectorNV 102(int8_t) 51
104: TypeInt 8 1
105: TypeCooperativeVectorNV 104(int8_t) 51
108: TypeCooperativeVectorNV 97(int) 8
109: TypePointer Function 108
112: TypeCooperativeVectorNV 102(int8_t) 8
113: TypeCooperativeVectorNV 104(int8_t) 8
119: TypeVector 7(int) 3
120: 7(int) Constant 64
121: 119(ivec3) ConstantComposite 120 51 51
4(main): 2 Function None 3
5: Label
17(f1): 16(ptr) Variable Function
19(f2): 16(ptr) Variable Function
21(f3): 16(ptr) Variable Function
26(v): 25(ptr) Variable Function
28(v2): 25(ptr) Variable Function
31(v3): 25(ptr) Variable Function
33(v4): 25(ptr) Variable Function
38(v5): 25(ptr) Variable Function
39(v6): 25(ptr) Variable Function
42(v7): 41(ptr) Variable Function
50(v8): 49(ptr) Variable Function
57(v9): 49(ptr) Variable Function
61(v10): 49(ptr) Variable Function
100(v11): 99(ptr) Variable Function
110(v12): 109(ptr) Variable Function
116(v13): 10(ptr) Variable Function
Store 17(f1) 18
Store 19(f2) 20
Store 21(f3) 22
Store 26(v) 27
29:15(float16_t) Load 19(f2)
30: 24 CompositeConstructReplicateEXT 29
Store 28(v2) 30
Store 31(v3) 32
34:15(float16_t) Load 17(f1)
35:15(float16_t) Load 19(f2)
36:15(float16_t) Load 21(f3)
37: 24 CompositeConstruct 34 35 36
Store 33(v4) 37
Store 38(v5) 27
Store 39(v6) 32
Store 42(v7) 44
46: 40 Load 42(v7)
47: 40 VectorTimesScalar 46 45
Store 42(v7) 47
Store 50(v8) 52
54: 48 Load 50(v8)
55: 48 CompositeConstructReplicateEXT 53
56: 48 IMul 54 55
Store 50(v8) 56
58: 48 Load 50(v8)
59: 48 CompositeConstructReplicateEXT 53
60: 48 IMul 58 59
Store 57(v9) 60
62: 48 Load 50(v8)
63: 48 CompositeConstructReplicateEXT 53
64: 48 IMul 62 63
Store 61(v10) 64
65: 48 Load 50(v8)
66: 48 Load 57(v9)
67: 48 BitwiseAnd 65 66
Store 50(v8) 67
68: 48 Load 50(v8)
69: 48 Load 57(v9)
70: 48 BitwiseOr 68 69
Store 50(v8) 70
71: 48 Load 50(v8)
72: 48 Load 57(v9)
73: 48 Not 72
74: 48 BitwiseXor 71 73
Store 50(v8) 74
75: 48 Load 50(v8)
76: 48 Load 57(v9)
77: 48 ShiftRightLogical 75 76
Store 50(v8) 77
78: 48 Load 50(v8)
79: 48 Load 57(v9)
80: 48 ShiftLeftLogical 78 79
Store 50(v8) 80
81: 48 Load 57(v9)
82: 48 Load 50(v8)
83: 48 BitwiseAnd 82 81
Store 50(v8) 83
84: 48 Load 57(v9)
85: 48 Load 50(v8)
86: 48 BitwiseOr 85 84
Store 50(v8) 86
87: 48 Load 57(v9)
88: 48 Load 50(v8)
89: 48 BitwiseXor 88 87
Store 50(v8) 89
90: 48 Load 57(v9)
91: 48 Load 50(v8)
92: 48 ShiftRightLogical 91 90
Store 50(v8) 92
93: 48 Load 57(v9)
94: 48 Load 50(v8)
95: 48 ShiftLeftLogical 94 93
Store 50(v8) 95
96: 24 Load 26(v)
Store 26(v) 96
101: 98 Load 100(v11)
106: 105 SConvert 101
107: 103 Bitcast 106
111: 108 Load 110(v12)
114: 113 SConvert 111
115: 112 Bitcast 114
117: 9 Load 116(v13)
118: 113 ConvertFToS 117
Return
FunctionEnd
13(foo(coopvecf1<4>;): 2 Function None 11
12(v): 10(ptr) FunctionParameter
14: Label
Return
FunctionEnd