1spv.float16NoRelaxed.vert
2// Module Version 10300
3// Generated by (magic number): 8000b
4// Id's are bound by 35
5
6                              Capability Shader
7                              Capability Float16
8                              Capability GroupNonUniform
9                              Capability GroupNonUniformVote
10               1:             ExtInstImport  "GLSL.std.450"
11                              MemoryModel Logical GLSL450
12                              EntryPoint Vertex 4  "main" 11 30
13                              Source GLSL 450
14                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_float16"
15                              SourceExtension  "GL_EXT_shader_subgroup_extended_types_float16"
16                              SourceExtension  "GL_KHR_shader_subgroup_basic"
17                              SourceExtension  "GL_KHR_shader_subgroup_vote"
18                              Name 4  "main"
19                              Name 8  "valueNoEqual"
20                              Name 11  "gl_SubgroupInvocationID"
21                              Name 15  "tempRes"
22                              Name 26  "Buffer1"
23                              MemberName 26(Buffer1) 0  "result"
24                              Name 28  ""
25                              Name 30  "gl_VertexIndex"
26                              Decorate 11(gl_SubgroupInvocationID) RelaxedPrecision
27                              Decorate 11(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
28                              Decorate 12 RelaxedPrecision
29                              Decorate 25 ArrayStride 4
30                              MemberDecorate 26(Buffer1) 0 Offset 0
31                              Decorate 26(Buffer1) Block
32                              Decorate 28 DescriptorSet 0
33                              Decorate 28 Binding 0
34                              Decorate 30(gl_VertexIndex) BuiltIn VertexIndex
35               2:             TypeVoid
36               3:             TypeFunction 2
37               6:             TypeFloat 16
38               7:             TypePointer Function 6(float16_t)
39               9:             TypeInt 32 0
40              10:             TypePointer Input 9(int)
4111(gl_SubgroupInvocationID):     10(ptr) Variable Input
42              14:             TypePointer Function 9(int)
43              17:             TypeBool
44              18:      9(int) Constant 3
45              20:             TypeInt 32 1
46              21:     20(int) Constant 0
47              22:     20(int) Constant 16
48              25:             TypeRuntimeArray 9(int)
49     26(Buffer1):             TypeStruct 25
50              27:             TypePointer StorageBuffer 26(Buffer1)
51              28:     27(ptr) Variable StorageBuffer
52              29:             TypePointer Input 20(int)
5330(gl_VertexIndex):     29(ptr) Variable Input
54              33:             TypePointer StorageBuffer 9(int)
55         4(main):           2 Function None 3
56               5:             Label
57 8(valueNoEqual):      7(ptr) Variable Function
58     15(tempRes):     14(ptr) Variable Function
59              12:      9(int) Load 11(gl_SubgroupInvocationID)
60              13:6(float16_t) ConvertUToF 12
61                              Store 8(valueNoEqual) 13
62              16:6(float16_t) Load 8(valueNoEqual)
63              19:    17(bool) GroupNonUniformAllEqual 18 16
64              23:     20(int) Select 19 21 22
65              24:      9(int) Bitcast 23
66                              Store 15(tempRes) 24
67              31:     20(int) Load 30(gl_VertexIndex)
68              32:      9(int) Load 15(tempRes)
69              34:     33(ptr) AccessChain 28 21 31
70                              Store 34 32
71                              Return
72                              FunctionEnd
73