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