1spv.16bitxfb.vert
2// Module Version 10000
3// Generated by (magic number): 8000a
4// Id's are bound by 59
5
6                              Capability Shader
7                              Capability Float16
8                              Capability Int16
9                              Capability TransformFeedback
10                              Capability StorageInputOutput16
11                              Extension  "SPV_KHR_16bit_storage"
12               1:             ExtInstImport  "GLSL.std.450"
13                              MemoryModel Logical GLSL450
14                              EntryPoint Vertex 4  "main" 9 12 18 36 39 46 49
15                              ExecutionMode 4 Xfb
16                              Source GLSL 450
17                              SourceExtension  "GL_AMD_gpu_shader_half_float"
18                              SourceExtension  "GL_AMD_gpu_shader_int16"
19                              Name 4  "main"
20                              Name 9  "of16v3"
21                              Name 12  "if16v4"
22                              Name 16  "F16Out"
23                              MemberName 16(F16Out) 0  "of16"
24                              MemberName 16(F16Out) 1  "of16v2"
25                              Name 18  ""
26                              Name 36  "oi16v3"
27                              Name 39  "ii16v4"
28                              Name 44  "I16Out"
29                              MemberName 44(I16Out) 0  "ou16"
30                              MemberName 44(I16Out) 1  "ou16v2"
31                              Name 46  ""
32                              Name 49  "iu16v4"
33                              Decorate 9(of16v3) Location 0
34                              Decorate 9(of16v3) XfbBuffer 0
35                              Decorate 9(of16v3) XfbStride 6
36                              Decorate 9(of16v3) Offset 0
37                              Decorate 12(if16v4) Location 0
38                              MemberDecorate 16(F16Out) 0 Offset 0
39                              MemberDecorate 16(F16Out) 1 Offset 2
40                              Decorate 16(F16Out) Block
41                              Decorate 18 Location 1
42                              Decorate 18 XfbBuffer 1
43                              Decorate 18 XfbStride 6
44                              Decorate 36(oi16v3) Location 5
45                              Decorate 36(oi16v3) XfbBuffer 2
46                              Decorate 36(oi16v3) XfbStride 6
47                              Decorate 36(oi16v3) Offset 0
48                              Decorate 39(ii16v4) Location 1
49                              MemberDecorate 44(I16Out) 0 Offset 0
50                              MemberDecorate 44(I16Out) 1 Offset 2
51                              Decorate 44(I16Out) Block
52                              Decorate 46 Location 6
53                              Decorate 46 XfbBuffer 3
54                              Decorate 46 XfbStride 6
55                              Decorate 49(iu16v4) Location 2
56               2:             TypeVoid
57               3:             TypeFunction 2
58               6:             TypeFloat 16
59               7:             TypeVector 6(float16_t) 3
60               8:             TypePointer Output 7(f16vec3)
61       9(of16v3):      8(ptr) Variable Output
62              10:             TypeVector 6(float16_t) 4
63              11:             TypePointer Input 10(f16vec4)
64      12(if16v4):     11(ptr) Variable Input
65              15:             TypeVector 6(float16_t) 2
66      16(F16Out):             TypeStruct 6(float16_t) 15(f16vec2)
67              17:             TypePointer Output 16(F16Out)
68              18:     17(ptr) Variable Output
69              19:             TypeInt 32 1
70              20:     19(int) Constant 0
71              21:             TypeInt 32 0
72              22:     21(int) Constant 0
73              23:             TypePointer Input 6(float16_t)
74              26:             TypePointer Output 6(float16_t)
75              28:     19(int) Constant 1
76              31:             TypePointer Output 15(f16vec2)
77              33:             TypeInt 16 1
78              34:             TypeVector 33(int16_t) 3
79              35:             TypePointer Output 34(i16vec3)
80      36(oi16v3):     35(ptr) Variable Output
81              37:             TypeVector 33(int16_t) 4
82              38:             TypePointer Input 37(i16vec4)
83      39(ii16v4):     38(ptr) Variable Input
84              42:             TypeInt 16 0
85              43:             TypeVector 42(int16_t) 2
86      44(I16Out):             TypeStruct 42(int16_t) 43(i16vec2)
87              45:             TypePointer Output 44(I16Out)
88              46:     45(ptr) Variable Output
89              47:             TypeVector 42(int16_t) 4
90              48:             TypePointer Input 47(i16vec4)
91      49(iu16v4):     48(ptr) Variable Input
92              50:             TypePointer Input 42(int16_t)
93              53:             TypePointer Output 42(int16_t)
94              57:             TypePointer Output 43(i16vec2)
95         4(main):           2 Function None 3
96               5:             Label
97              13: 10(f16vec4) Load 12(if16v4)
98              14:  7(f16vec3) VectorShuffle 13 13 0 1 2
99                              Store 9(of16v3) 14
100              24:     23(ptr) AccessChain 12(if16v4) 22
101              25:6(float16_t) Load 24
102              27:     26(ptr) AccessChain 18 20
103                              Store 27 25
104              29: 10(f16vec4) Load 12(if16v4)
105              30: 15(f16vec2) VectorShuffle 29 29 0 1
106              32:     31(ptr) AccessChain 18 28
107                              Store 32 30
108              40: 37(i16vec4) Load 39(ii16v4)
109              41: 34(i16vec3) VectorShuffle 40 40 0 1 2
110                              Store 36(oi16v3) 41
111              51:     50(ptr) AccessChain 49(iu16v4) 22
112              52: 42(int16_t) Load 51
113              54:     53(ptr) AccessChain 46 20
114                              Store 54 52
115              55: 47(i16vec4) Load 49(iu16v4)
116              56: 43(i16vec2) VectorShuffle 55 55 0 1
117              58:     57(ptr) AccessChain 46 28
118                              Store 58 56
119                              Return
120                              FunctionEnd
121