HLSL: Add missing relaxed-precision float/int matrix expansions
This commit is contained in:
parent
58d302cfa2
commit
5137ce1a95
@ -5,33 +5,69 @@ gl_FragCoord origin is upper left
|
|||||||
0:9 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
|
0:9 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
|
||||||
0:9 Function Parameters:
|
0:9 Function Parameters:
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
0:40 add ( temp mediump 2-component vector of float)
|
0:85 add ( temp mediump 2-component vector of float)
|
||||||
0:40 'mf16_2' ( temp mediump 2-component vector of float)
|
0:85 'mf16_2' ( temp mediump 2-component vector of float)
|
||||||
0:40 'mf16' ( temp mediump float)
|
0:85 'mf16' ( temp mediump float)
|
||||||
0:41 add ( temp mediump 2-component vector of float)
|
0:86 add ( temp mediump 2-component vector of float)
|
||||||
0:41 'mf10_2' ( temp mediump 2-component vector of float)
|
0:86 'mf10_2' ( temp mediump 2-component vector of float)
|
||||||
0:41 'mf10' ( temp mediump float)
|
0:86 'mf10' ( temp mediump float)
|
||||||
0:42 add ( temp mediump 2-component vector of int)
|
0:87 add ( temp mediump 2-component vector of int)
|
||||||
0:42 'mi16_2' ( temp mediump 2-component vector of int)
|
0:87 'mi16_2' ( temp mediump 2-component vector of int)
|
||||||
0:42 'mi16' ( temp mediump int)
|
0:87 'mi16' ( temp mediump int)
|
||||||
0:43 add ( temp mediump 2-component vector of int)
|
0:88 add ( temp mediump 2-component vector of int)
|
||||||
0:43 'mi12_2' ( temp mediump 2-component vector of int)
|
0:88 'mi12_2' ( temp mediump 2-component vector of int)
|
||||||
0:43 'mi12' ( temp mediump int)
|
0:88 'mi12' ( temp mediump int)
|
||||||
0:44 add ( temp mediump 2-component vector of uint)
|
0:89 add ( temp mediump 2-component vector of uint)
|
||||||
0:44 'mu16_2' ( temp mediump 2-component vector of uint)
|
0:89 'mu16_2' ( temp mediump 2-component vector of uint)
|
||||||
0:44 'mu16' ( temp mediump uint)
|
0:89 'mu16' ( temp mediump uint)
|
||||||
0:47 move second child to first child ( temp 4-component vector of float)
|
0:91 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
0:47 Color: direct index for structure ( temp 4-component vector of float)
|
0:91 'mf16_2x4' ( temp mediump 2X4 matrix of float)
|
||||||
0:47 'psout' ( temp structure{ temp 4-component vector of float Color})
|
0:91 'mf16_2' ( temp mediump 2-component vector of float)
|
||||||
0:47 Constant:
|
0:92 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
0:47 0 (const int)
|
0:92 'mf16_3x4' ( temp mediump 3X4 matrix of float)
|
||||||
0:47 Constant:
|
0:92 'mf16_3' ( temp mediump 3-component vector of float)
|
||||||
0:47 0.000000
|
0:93 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
0:47 0.000000
|
0:93 'mf16_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
0:47 0.000000
|
0:93 'mf16_4' ( temp mediump 4-component vector of float)
|
||||||
0:47 0.000000
|
0:94 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
0:48 Branch: Return with expression
|
0:94 'mf16_2' ( temp mediump 2-component vector of float)
|
||||||
0:48 'psout' ( temp structure{ temp 4-component vector of float Color})
|
0:94 'mf16_4x2' ( temp mediump 4X2 matrix of float)
|
||||||
|
0:95 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:95 'mf16_3' ( temp mediump 3-component vector of float)
|
||||||
|
0:95 'mf16_4x3' ( temp mediump 4X3 matrix of float)
|
||||||
|
0:96 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:96 'mf16_4' ( temp mediump 4-component vector of float)
|
||||||
|
0:96 'mf16_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
|
0:98 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
|
0:98 'mf10_2x4' ( temp mediump 2X4 matrix of float)
|
||||||
|
0:98 'mf10_2' ( temp mediump 2-component vector of float)
|
||||||
|
0:99 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
|
0:99 'mf10_3x4' ( temp mediump 3X4 matrix of float)
|
||||||
|
0:99 'mf10_3' ( temp mediump 3-component vector of float)
|
||||||
|
0:100 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
|
0:100 'mf10_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
|
0:100 'mf10_4' ( temp mediump 4-component vector of float)
|
||||||
|
0:101 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:101 'mf10_2' ( temp mediump 2-component vector of float)
|
||||||
|
0:101 'mf10_4x2' ( temp mediump 4X2 matrix of float)
|
||||||
|
0:102 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:102 'mf10_3' ( temp mediump 3-component vector of float)
|
||||||
|
0:102 'mf10_4x3' ( temp mediump 4X3 matrix of float)
|
||||||
|
0:103 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:103 'mf10_4' ( temp mediump 4-component vector of float)
|
||||||
|
0:103 'mf10_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
|
0:106 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:106 Color: direct index for structure ( temp 4-component vector of float)
|
||||||
|
0:106 'psout' ( temp structure{ temp 4-component vector of float Color})
|
||||||
|
0:106 Constant:
|
||||||
|
0:106 0 (const int)
|
||||||
|
0:106 Constant:
|
||||||
|
0:106 0.000000
|
||||||
|
0:106 0.000000
|
||||||
|
0:106 0.000000
|
||||||
|
0:106 0.000000
|
||||||
|
0:107 Branch: Return with expression
|
||||||
|
0:107 'psout' ( temp structure{ temp 4-component vector of float Color})
|
||||||
0:9 Function Definition: main( ( temp void)
|
0:9 Function Definition: main( ( temp void)
|
||||||
0:9 Function Parameters:
|
0:9 Function Parameters:
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
@ -56,33 +92,69 @@ gl_FragCoord origin is upper left
|
|||||||
0:9 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
|
0:9 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
|
||||||
0:9 Function Parameters:
|
0:9 Function Parameters:
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
0:40 add ( temp mediump 2-component vector of float)
|
0:85 add ( temp mediump 2-component vector of float)
|
||||||
0:40 'mf16_2' ( temp mediump 2-component vector of float)
|
0:85 'mf16_2' ( temp mediump 2-component vector of float)
|
||||||
0:40 'mf16' ( temp mediump float)
|
0:85 'mf16' ( temp mediump float)
|
||||||
0:41 add ( temp mediump 2-component vector of float)
|
0:86 add ( temp mediump 2-component vector of float)
|
||||||
0:41 'mf10_2' ( temp mediump 2-component vector of float)
|
0:86 'mf10_2' ( temp mediump 2-component vector of float)
|
||||||
0:41 'mf10' ( temp mediump float)
|
0:86 'mf10' ( temp mediump float)
|
||||||
0:42 add ( temp mediump 2-component vector of int)
|
0:87 add ( temp mediump 2-component vector of int)
|
||||||
0:42 'mi16_2' ( temp mediump 2-component vector of int)
|
0:87 'mi16_2' ( temp mediump 2-component vector of int)
|
||||||
0:42 'mi16' ( temp mediump int)
|
0:87 'mi16' ( temp mediump int)
|
||||||
0:43 add ( temp mediump 2-component vector of int)
|
0:88 add ( temp mediump 2-component vector of int)
|
||||||
0:43 'mi12_2' ( temp mediump 2-component vector of int)
|
0:88 'mi12_2' ( temp mediump 2-component vector of int)
|
||||||
0:43 'mi12' ( temp mediump int)
|
0:88 'mi12' ( temp mediump int)
|
||||||
0:44 add ( temp mediump 2-component vector of uint)
|
0:89 add ( temp mediump 2-component vector of uint)
|
||||||
0:44 'mu16_2' ( temp mediump 2-component vector of uint)
|
0:89 'mu16_2' ( temp mediump 2-component vector of uint)
|
||||||
0:44 'mu16' ( temp mediump uint)
|
0:89 'mu16' ( temp mediump uint)
|
||||||
0:47 move second child to first child ( temp 4-component vector of float)
|
0:91 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
0:47 Color: direct index for structure ( temp 4-component vector of float)
|
0:91 'mf16_2x4' ( temp mediump 2X4 matrix of float)
|
||||||
0:47 'psout' ( temp structure{ temp 4-component vector of float Color})
|
0:91 'mf16_2' ( temp mediump 2-component vector of float)
|
||||||
0:47 Constant:
|
0:92 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
0:47 0 (const int)
|
0:92 'mf16_3x4' ( temp mediump 3X4 matrix of float)
|
||||||
0:47 Constant:
|
0:92 'mf16_3' ( temp mediump 3-component vector of float)
|
||||||
0:47 0.000000
|
0:93 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
0:47 0.000000
|
0:93 'mf16_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
0:47 0.000000
|
0:93 'mf16_4' ( temp mediump 4-component vector of float)
|
||||||
0:47 0.000000
|
0:94 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
0:48 Branch: Return with expression
|
0:94 'mf16_2' ( temp mediump 2-component vector of float)
|
||||||
0:48 'psout' ( temp structure{ temp 4-component vector of float Color})
|
0:94 'mf16_4x2' ( temp mediump 4X2 matrix of float)
|
||||||
|
0:95 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:95 'mf16_3' ( temp mediump 3-component vector of float)
|
||||||
|
0:95 'mf16_4x3' ( temp mediump 4X3 matrix of float)
|
||||||
|
0:96 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:96 'mf16_4' ( temp mediump 4-component vector of float)
|
||||||
|
0:96 'mf16_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
|
0:98 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
|
0:98 'mf10_2x4' ( temp mediump 2X4 matrix of float)
|
||||||
|
0:98 'mf10_2' ( temp mediump 2-component vector of float)
|
||||||
|
0:99 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
|
0:99 'mf10_3x4' ( temp mediump 3X4 matrix of float)
|
||||||
|
0:99 'mf10_3' ( temp mediump 3-component vector of float)
|
||||||
|
0:100 matrix-times-vector ( temp mediump 4-component vector of float)
|
||||||
|
0:100 'mf10_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
|
0:100 'mf10_4' ( temp mediump 4-component vector of float)
|
||||||
|
0:101 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:101 'mf10_2' ( temp mediump 2-component vector of float)
|
||||||
|
0:101 'mf10_4x2' ( temp mediump 4X2 matrix of float)
|
||||||
|
0:102 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:102 'mf10_3' ( temp mediump 3-component vector of float)
|
||||||
|
0:102 'mf10_4x3' ( temp mediump 4X3 matrix of float)
|
||||||
|
0:103 vector-times-matrix ( temp mediump 4-component vector of float)
|
||||||
|
0:103 'mf10_4' ( temp mediump 4-component vector of float)
|
||||||
|
0:103 'mf10_4x4' ( temp mediump 4X4 matrix of float)
|
||||||
|
0:106 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:106 Color: direct index for structure ( temp 4-component vector of float)
|
||||||
|
0:106 'psout' ( temp structure{ temp 4-component vector of float Color})
|
||||||
|
0:106 Constant:
|
||||||
|
0:106 0 (const int)
|
||||||
|
0:106 Constant:
|
||||||
|
0:106 0.000000
|
||||||
|
0:106 0.000000
|
||||||
|
0:106 0.000000
|
||||||
|
0:106 0.000000
|
||||||
|
0:107 Branch: Return with expression
|
||||||
|
0:107 'psout' ( temp structure{ temp 4-component vector of float Color})
|
||||||
0:9 Function Definition: main( ( temp void)
|
0:9 Function Definition: main( ( temp void)
|
||||||
0:9 Function Parameters:
|
0:9 Function Parameters:
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
@ -99,12 +171,12 @@ gl_FragCoord origin is upper left
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000b
|
// Generated by (magic number): 8000b
|
||||||
// Id's are bound by 70
|
// Id's are bound by 132
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 64
|
EntryPoint Fragment 4 "main" 126
|
||||||
ExecutionMode 4 OriginUpperLeft
|
ExecutionMode 4 OriginUpperLeft
|
||||||
Source HLSL 500
|
Source HLSL 500
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
@ -121,12 +193,26 @@ gl_FragCoord origin is upper left
|
|||||||
Name 39 "mi12"
|
Name 39 "mi12"
|
||||||
Name 46 "mu16_2"
|
Name 46 "mu16_2"
|
||||||
Name 49 "mu16"
|
Name 49 "mu16"
|
||||||
Name 54 "psout"
|
Name 55 "mf16_2x4"
|
||||||
Name 64 "@entryPointOutput.Color"
|
Name 61 "mf16_3x4"
|
||||||
Name 67 "$Global"
|
Name 65 "mf16_3"
|
||||||
MemberName 67($Global) 0 "b1a"
|
Name 70 "mf16_4x4"
|
||||||
MemberName 67($Global) 1 "b1b"
|
Name 73 "mf16_4"
|
||||||
Name 69 ""
|
Name 79 "mf16_4x2"
|
||||||
|
Name 85 "mf16_4x3"
|
||||||
|
Name 91 "mf10_2x4"
|
||||||
|
Name 95 "mf10_3x4"
|
||||||
|
Name 97 "mf10_3"
|
||||||
|
Name 100 "mf10_4x4"
|
||||||
|
Name 102 "mf10_4"
|
||||||
|
Name 106 "mf10_4x2"
|
||||||
|
Name 110 "mf10_4x3"
|
||||||
|
Name 117 "psout"
|
||||||
|
Name 126 "@entryPointOutput.Color"
|
||||||
|
Name 129 "$Global"
|
||||||
|
MemberName 129($Global) 0 "b1a"
|
||||||
|
MemberName 129($Global) 1 "b1b"
|
||||||
|
Name 131 ""
|
||||||
Decorate 14(mf16_2) RelaxedPrecision
|
Decorate 14(mf16_2) RelaxedPrecision
|
||||||
Decorate 15 RelaxedPrecision
|
Decorate 15 RelaxedPrecision
|
||||||
Decorate 17(mf16) RelaxedPrecision
|
Decorate 17(mf16) RelaxedPrecision
|
||||||
@ -157,14 +243,64 @@ gl_FragCoord origin is upper left
|
|||||||
Decorate 50 RelaxedPrecision
|
Decorate 50 RelaxedPrecision
|
||||||
Decorate 51 RelaxedPrecision
|
Decorate 51 RelaxedPrecision
|
||||||
Decorate 52 RelaxedPrecision
|
Decorate 52 RelaxedPrecision
|
||||||
Decorate 64(@entryPointOutput.Color) Location 0
|
Decorate 55(mf16_2x4) RelaxedPrecision
|
||||||
MemberDecorate 67($Global) 0 RelaxedPrecision
|
Decorate 56 RelaxedPrecision
|
||||||
MemberDecorate 67($Global) 0 Offset 0
|
Decorate 57 RelaxedPrecision
|
||||||
MemberDecorate 67($Global) 1 RelaxedPrecision
|
Decorate 58 RelaxedPrecision
|
||||||
MemberDecorate 67($Global) 1 Offset 4
|
Decorate 61(mf16_3x4) RelaxedPrecision
|
||||||
Decorate 67($Global) Block
|
Decorate 62 RelaxedPrecision
|
||||||
Decorate 69 DescriptorSet 0
|
Decorate 65(mf16_3) RelaxedPrecision
|
||||||
Decorate 69 Binding 0
|
Decorate 66 RelaxedPrecision
|
||||||
|
Decorate 67 RelaxedPrecision
|
||||||
|
Decorate 70(mf16_4x4) RelaxedPrecision
|
||||||
|
Decorate 71 RelaxedPrecision
|
||||||
|
Decorate 73(mf16_4) RelaxedPrecision
|
||||||
|
Decorate 74 RelaxedPrecision
|
||||||
|
Decorate 75 RelaxedPrecision
|
||||||
|
Decorate 76 RelaxedPrecision
|
||||||
|
Decorate 79(mf16_4x2) RelaxedPrecision
|
||||||
|
Decorate 80 RelaxedPrecision
|
||||||
|
Decorate 81 RelaxedPrecision
|
||||||
|
Decorate 82 RelaxedPrecision
|
||||||
|
Decorate 85(mf16_4x3) RelaxedPrecision
|
||||||
|
Decorate 86 RelaxedPrecision
|
||||||
|
Decorate 87 RelaxedPrecision
|
||||||
|
Decorate 88 RelaxedPrecision
|
||||||
|
Decorate 89 RelaxedPrecision
|
||||||
|
Decorate 90 RelaxedPrecision
|
||||||
|
Decorate 91(mf10_2x4) RelaxedPrecision
|
||||||
|
Decorate 92 RelaxedPrecision
|
||||||
|
Decorate 93 RelaxedPrecision
|
||||||
|
Decorate 94 RelaxedPrecision
|
||||||
|
Decorate 95(mf10_3x4) RelaxedPrecision
|
||||||
|
Decorate 96 RelaxedPrecision
|
||||||
|
Decorate 97(mf10_3) RelaxedPrecision
|
||||||
|
Decorate 98 RelaxedPrecision
|
||||||
|
Decorate 99 RelaxedPrecision
|
||||||
|
Decorate 100(mf10_4x4) RelaxedPrecision
|
||||||
|
Decorate 101 RelaxedPrecision
|
||||||
|
Decorate 102(mf10_4) RelaxedPrecision
|
||||||
|
Decorate 103 RelaxedPrecision
|
||||||
|
Decorate 104 RelaxedPrecision
|
||||||
|
Decorate 105 RelaxedPrecision
|
||||||
|
Decorate 106(mf10_4x2) RelaxedPrecision
|
||||||
|
Decorate 107 RelaxedPrecision
|
||||||
|
Decorate 108 RelaxedPrecision
|
||||||
|
Decorate 109 RelaxedPrecision
|
||||||
|
Decorate 110(mf10_4x3) RelaxedPrecision
|
||||||
|
Decorate 111 RelaxedPrecision
|
||||||
|
Decorate 112 RelaxedPrecision
|
||||||
|
Decorate 113 RelaxedPrecision
|
||||||
|
Decorate 114 RelaxedPrecision
|
||||||
|
Decorate 115 RelaxedPrecision
|
||||||
|
Decorate 126(@entryPointOutput.Color) Location 0
|
||||||
|
MemberDecorate 129($Global) 0 RelaxedPrecision
|
||||||
|
MemberDecorate 129($Global) 0 Offset 0
|
||||||
|
MemberDecorate 129($Global) 1 RelaxedPrecision
|
||||||
|
MemberDecorate 129($Global) 1 Offset 4
|
||||||
|
Decorate 129($Global) Block
|
||||||
|
Decorate 131 DescriptorSet 0
|
||||||
|
Decorate 131 Binding 0
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@ -182,21 +318,33 @@ gl_FragCoord origin is upper left
|
|||||||
44: TypeVector 43(int) 2
|
44: TypeVector 43(int) 2
|
||||||
45: TypePointer Function 44(ivec2)
|
45: TypePointer Function 44(ivec2)
|
||||||
48: TypePointer Function 43(int)
|
48: TypePointer Function 43(int)
|
||||||
53: TypePointer Function 8(PS_OUTPUT)
|
53: TypeMatrix 7(fvec4) 2
|
||||||
55: 27(int) Constant 0
|
54: TypePointer Function 53
|
||||||
56: 6(float) Constant 0
|
59: TypeMatrix 7(fvec4) 3
|
||||||
57: 7(fvec4) ConstantComposite 56 56 56 56
|
60: TypePointer Function 59
|
||||||
58: TypePointer Function 7(fvec4)
|
63: TypeVector 6(float) 3
|
||||||
63: TypePointer Output 7(fvec4)
|
64: TypePointer Function 63(fvec3)
|
||||||
64(@entryPointOutput.Color): 63(ptr) Variable Output
|
68: TypeMatrix 7(fvec4) 4
|
||||||
67($Global): TypeStruct 6(float) 6(float)
|
69: TypePointer Function 68
|
||||||
68: TypePointer Uniform 67($Global)
|
72: TypePointer Function 7(fvec4)
|
||||||
69: 68(ptr) Variable Uniform
|
77: TypeMatrix 12(fvec2) 4
|
||||||
|
78: TypePointer Function 77
|
||||||
|
83: TypeMatrix 63(fvec3) 4
|
||||||
|
84: TypePointer Function 83
|
||||||
|
116: TypePointer Function 8(PS_OUTPUT)
|
||||||
|
118: 27(int) Constant 0
|
||||||
|
119: 6(float) Constant 0
|
||||||
|
120: 7(fvec4) ConstantComposite 119 119 119 119
|
||||||
|
125: TypePointer Output 7(fvec4)
|
||||||
|
126(@entryPointOutput.Color): 125(ptr) Variable Output
|
||||||
|
129($Global): TypeStruct 6(float) 6(float)
|
||||||
|
130: TypePointer Uniform 129($Global)
|
||||||
|
131: 130(ptr) Variable Uniform
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
65:8(PS_OUTPUT) FunctionCall 10(@main()
|
127:8(PS_OUTPUT) FunctionCall 10(@main()
|
||||||
66: 7(fvec4) CompositeExtract 65 0
|
128: 7(fvec4) CompositeExtract 127 0
|
||||||
Store 64(@entryPointOutput.Color) 66
|
Store 126(@entryPointOutput.Color) 128
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
10(@main():8(PS_OUTPUT) Function None 9
|
10(@main():8(PS_OUTPUT) Function None 9
|
||||||
@ -211,7 +359,21 @@ gl_FragCoord origin is upper left
|
|||||||
39(mi12): 32(ptr) Variable Function
|
39(mi12): 32(ptr) Variable Function
|
||||||
46(mu16_2): 45(ptr) Variable Function
|
46(mu16_2): 45(ptr) Variable Function
|
||||||
49(mu16): 48(ptr) Variable Function
|
49(mu16): 48(ptr) Variable Function
|
||||||
54(psout): 53(ptr) Variable Function
|
55(mf16_2x4): 54(ptr) Variable Function
|
||||||
|
61(mf16_3x4): 60(ptr) Variable Function
|
||||||
|
65(mf16_3): 64(ptr) Variable Function
|
||||||
|
70(mf16_4x4): 69(ptr) Variable Function
|
||||||
|
73(mf16_4): 72(ptr) Variable Function
|
||||||
|
79(mf16_4x2): 78(ptr) Variable Function
|
||||||
|
85(mf16_4x3): 84(ptr) Variable Function
|
||||||
|
91(mf10_2x4): 54(ptr) Variable Function
|
||||||
|
95(mf10_3x4): 60(ptr) Variable Function
|
||||||
|
97(mf10_3): 64(ptr) Variable Function
|
||||||
|
100(mf10_4x4): 69(ptr) Variable Function
|
||||||
|
102(mf10_4): 72(ptr) Variable Function
|
||||||
|
106(mf10_4x2): 78(ptr) Variable Function
|
||||||
|
110(mf10_4x3): 84(ptr) Variable Function
|
||||||
|
117(psout): 116(ptr) Variable Function
|
||||||
15: 12(fvec2) Load 14(mf16_2)
|
15: 12(fvec2) Load 14(mf16_2)
|
||||||
18: 6(float) Load 17(mf16)
|
18: 6(float) Load 17(mf16)
|
||||||
19: 12(fvec2) CompositeConstruct 18 18
|
19: 12(fvec2) CompositeConstruct 18 18
|
||||||
@ -232,8 +394,44 @@ gl_FragCoord origin is upper left
|
|||||||
50: 43(int) Load 49(mu16)
|
50: 43(int) Load 49(mu16)
|
||||||
51: 44(ivec2) CompositeConstruct 50 50
|
51: 44(ivec2) CompositeConstruct 50 50
|
||||||
52: 44(ivec2) IAdd 47 51
|
52: 44(ivec2) IAdd 47 51
|
||||||
59: 58(ptr) AccessChain 54(psout) 55
|
56: 53 Load 55(mf16_2x4)
|
||||||
Store 59 57
|
57: 12(fvec2) Load 14(mf16_2)
|
||||||
60:8(PS_OUTPUT) Load 54(psout)
|
58: 7(fvec4) MatrixTimesVector 56 57
|
||||||
ReturnValue 60
|
62: 59 Load 61(mf16_3x4)
|
||||||
|
66: 63(fvec3) Load 65(mf16_3)
|
||||||
|
67: 7(fvec4) MatrixTimesVector 62 66
|
||||||
|
71: 68 Load 70(mf16_4x4)
|
||||||
|
74: 7(fvec4) Load 73(mf16_4)
|
||||||
|
75: 7(fvec4) MatrixTimesVector 71 74
|
||||||
|
76: 12(fvec2) Load 14(mf16_2)
|
||||||
|
80: 77 Load 79(mf16_4x2)
|
||||||
|
81: 7(fvec4) VectorTimesMatrix 76 80
|
||||||
|
82: 63(fvec3) Load 65(mf16_3)
|
||||||
|
86: 83 Load 85(mf16_4x3)
|
||||||
|
87: 7(fvec4) VectorTimesMatrix 82 86
|
||||||
|
88: 7(fvec4) Load 73(mf16_4)
|
||||||
|
89: 68 Load 70(mf16_4x4)
|
||||||
|
90: 7(fvec4) VectorTimesMatrix 88 89
|
||||||
|
92: 53 Load 91(mf10_2x4)
|
||||||
|
93: 12(fvec2) Load 21(mf10_2)
|
||||||
|
94: 7(fvec4) MatrixTimesVector 92 93
|
||||||
|
96: 59 Load 95(mf10_3x4)
|
||||||
|
98: 63(fvec3) Load 97(mf10_3)
|
||||||
|
99: 7(fvec4) MatrixTimesVector 96 98
|
||||||
|
101: 68 Load 100(mf10_4x4)
|
||||||
|
103: 7(fvec4) Load 102(mf10_4)
|
||||||
|
104: 7(fvec4) MatrixTimesVector 101 103
|
||||||
|
105: 12(fvec2) Load 21(mf10_2)
|
||||||
|
107: 77 Load 106(mf10_4x2)
|
||||||
|
108: 7(fvec4) VectorTimesMatrix 105 107
|
||||||
|
109: 63(fvec3) Load 97(mf10_3)
|
||||||
|
111: 83 Load 110(mf10_4x3)
|
||||||
|
112: 7(fvec4) VectorTimesMatrix 109 111
|
||||||
|
113: 7(fvec4) Load 102(mf10_4)
|
||||||
|
114: 68 Load 100(mf10_4x4)
|
||||||
|
115: 7(fvec4) VectorTimesMatrix 113 114
|
||||||
|
121: 72(ptr) AccessChain 117(psout) 118
|
||||||
|
Store 121 120
|
||||||
|
122:8(PS_OUTPUT) Load 117(psout)
|
||||||
|
ReturnValue 122
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -12,30 +12,75 @@ PS_OUTPUT main()
|
|||||||
min16float2 mf16_2;
|
min16float2 mf16_2;
|
||||||
min16float3 mf16_3;
|
min16float3 mf16_3;
|
||||||
min16float4 mf16_4;
|
min16float4 mf16_4;
|
||||||
|
min16float2x2 mf16_2x2;
|
||||||
|
min16float2x3 mf16_2x3;
|
||||||
|
min16float2x4 mf16_2x4;
|
||||||
|
min16float3x2 mf16_3x2;
|
||||||
|
min16float3x3 mf16_3x3;
|
||||||
|
min16float3x4 mf16_3x4;
|
||||||
|
min16float4x2 mf16_4x2;
|
||||||
|
min16float4x3 mf16_4x3;
|
||||||
|
min16float4x4 mf16_4x4;
|
||||||
|
|
||||||
min10float mf10;
|
min10float mf10;
|
||||||
min10float1 mf10_1;
|
min10float1 mf10_1;
|
||||||
min10float2 mf10_2;
|
min10float2 mf10_2;
|
||||||
min10float3 mf10_3;
|
min10float3 mf10_3;
|
||||||
min10float4 mf12_4;
|
min10float4 mf10_4;
|
||||||
|
min10float2x2 mf10_2x2;
|
||||||
|
min10float2x3 mf10_2x3;
|
||||||
|
min10float2x4 mf10_2x4;
|
||||||
|
min10float3x2 mf10_3x2;
|
||||||
|
min10float3x3 mf10_3x3;
|
||||||
|
min10float3x4 mf10_3x4;
|
||||||
|
min10float4x2 mf10_4x2;
|
||||||
|
min10float4x3 mf10_4x3;
|
||||||
|
min10float4x4 mf10_4x4;
|
||||||
|
|
||||||
min16int mi16;
|
min16int mi16;
|
||||||
min16int1 mi16_1;
|
min16int1 mi16_1;
|
||||||
min16int2 mi16_2;
|
min16int2 mi16_2;
|
||||||
min16int3 mi16_3;
|
min16int3 mi16_3;
|
||||||
min16int4 mi16_4;
|
min16int4 mi16_4;
|
||||||
|
min16int2x2 mi16_2x2;
|
||||||
|
min16int2x3 mi16_2x3;
|
||||||
|
min16int2x4 mi16_2x4;
|
||||||
|
min16int3x2 mi16_3x2;
|
||||||
|
min16int3x3 mi16_3x3;
|
||||||
|
min16int3x4 mi16_3x4;
|
||||||
|
min16int4x2 mi16_4x2;
|
||||||
|
min16int4x3 mi16_4x3;
|
||||||
|
min16int4x4 mi16_4x4;
|
||||||
|
|
||||||
min12int mi12;
|
min12int mi12;
|
||||||
min12int1 mi12_1;
|
min12int1 mi12_1;
|
||||||
min12int2 mi12_2;
|
min12int2 mi12_2;
|
||||||
min12int3 mi12_3;
|
min12int3 mi12_3;
|
||||||
min12int4 mi12_4;
|
min12int4 mi12_4;
|
||||||
|
min12int2x2 mi12_2x2;
|
||||||
|
min12int2x3 mi12_2x3;
|
||||||
|
min12int2x4 mi12_2x4;
|
||||||
|
min12int3x2 mi12_3x2;
|
||||||
|
min12int3x3 mi12_3x3;
|
||||||
|
min12int3x4 mi12_3x4;
|
||||||
|
min12int4x2 mi12_4x2;
|
||||||
|
min12int4x3 mi12_4x3;
|
||||||
|
min12int4x4 mi12_4x4;
|
||||||
|
|
||||||
min16uint mu16;
|
min16uint mu16;
|
||||||
min16uint1 mu16_1;
|
min16uint1 mu16_1;
|
||||||
min16uint2 mu16_2;
|
min16uint2 mu16_2;
|
||||||
min16uint3 mu16_3;
|
min16uint3 mu16_3;
|
||||||
min16uint4 mu16_4;
|
min16uint4 mu16_4;
|
||||||
|
min16uint2x2 mu16_2x2;
|
||||||
|
min16uint2x3 mu16_2x3;
|
||||||
|
min16uint2x4 mu16_2x4;
|
||||||
|
min16uint3x2 mu16_3x2;
|
||||||
|
min16uint3x3 mu16_3x3;
|
||||||
|
min16uint3x4 mu16_3x4;
|
||||||
|
min16uint4x2 mu16_4x2;
|
||||||
|
min16uint4x3 mu16_4x3;
|
||||||
|
min16uint4x4 mu16_4x4;
|
||||||
|
|
||||||
mf16_2 + mf16;
|
mf16_2 + mf16;
|
||||||
mf10_2 + mf10;
|
mf10_2 + mf10;
|
||||||
@ -43,6 +88,20 @@ PS_OUTPUT main()
|
|||||||
mi12_2 + mi12;
|
mi12_2 + mi12;
|
||||||
mu16_2 + mu16;
|
mu16_2 + mu16;
|
||||||
|
|
||||||
|
mul(mf16_2, mf16_2x4);
|
||||||
|
mul(mf16_3, mf16_3x4);
|
||||||
|
mul(mf16_4, mf16_4x4);
|
||||||
|
mul(mf16_4x2, mf16_2);
|
||||||
|
mul(mf16_4x3, mf16_3);
|
||||||
|
mul(mf16_4x4, mf16_4);
|
||||||
|
|
||||||
|
mul(mf10_2, mf10_2x4);
|
||||||
|
mul(mf10_3, mf10_3x4);
|
||||||
|
mul(mf10_4, mf10_4x4);
|
||||||
|
mul(mf10_4x2, mf10_2);
|
||||||
|
mul(mf10_4x3, mf10_3);
|
||||||
|
mul(mf10_4x4, mf10_4);
|
||||||
|
|
||||||
PS_OUTPUT psout;
|
PS_OUTPUT psout;
|
||||||
psout.Color = 0;
|
psout.Color = 0;
|
||||||
return psout;
|
return psout;
|
||||||
|
@ -823,8 +823,10 @@ bool HlslGrammar::acceptLayoutQualifierList(TQualifier& qualifier)
|
|||||||
// | UINT
|
// | UINT
|
||||||
// | BOOL
|
// | BOOL
|
||||||
//
|
//
|
||||||
bool HlslGrammar::acceptTemplateVecMatBasicType(TBasicType& basicType)
|
bool HlslGrammar::acceptTemplateVecMatBasicType(TBasicType& basicType,
|
||||||
|
TPrecisionQualifier& precision)
|
||||||
{
|
{
|
||||||
|
precision = EpqNone;
|
||||||
switch (peek()) {
|
switch (peek()) {
|
||||||
case EHTokFloat:
|
case EHTokFloat:
|
||||||
basicType = EbtFloat;
|
basicType = EbtFloat;
|
||||||
@ -842,6 +844,23 @@ bool HlslGrammar::acceptTemplateVecMatBasicType(TBasicType& basicType)
|
|||||||
case EHTokBool:
|
case EHTokBool:
|
||||||
basicType = EbtBool;
|
basicType = EbtBool;
|
||||||
break;
|
break;
|
||||||
|
case EHTokHalf:
|
||||||
|
basicType = parseContext.hlslEnable16BitTypes() ? EbtFloat16 : EbtFloat;
|
||||||
|
break;
|
||||||
|
case EHTokMin16float:
|
||||||
|
case EHTokMin10float:
|
||||||
|
basicType = parseContext.hlslEnable16BitTypes() ? EbtFloat16 : EbtFloat;
|
||||||
|
precision = EpqMedium;
|
||||||
|
break;
|
||||||
|
case EHTokMin16int:
|
||||||
|
case EHTokMin12int:
|
||||||
|
basicType = parseContext.hlslEnable16BitTypes() ? EbtInt16 : EbtInt;
|
||||||
|
precision = EpqMedium;
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint:
|
||||||
|
basicType = parseContext.hlslEnable16BitTypes() ? EbtUint16 : EbtUint;
|
||||||
|
precision = EpqMedium;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -867,7 +886,8 @@ bool HlslGrammar::acceptVectorTemplateType(TType& type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
TBasicType basicType;
|
TBasicType basicType;
|
||||||
if (! acceptTemplateVecMatBasicType(basicType)) {
|
TPrecisionQualifier precision;
|
||||||
|
if (! acceptTemplateVecMatBasicType(basicType, precision)) {
|
||||||
expected("scalar type");
|
expected("scalar type");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -890,7 +910,7 @@ bool HlslGrammar::acceptVectorTemplateType(TType& type)
|
|||||||
|
|
||||||
const int vecSizeI = vecSize->getAsConstantUnion()->getConstArray()[0].getIConst();
|
const int vecSizeI = vecSize->getAsConstantUnion()->getConstArray()[0].getIConst();
|
||||||
|
|
||||||
new(&type) TType(basicType, EvqTemporary, vecSizeI);
|
new(&type) TType(basicType, EvqTemporary, precision, vecSizeI);
|
||||||
|
|
||||||
if (vecSizeI == 1)
|
if (vecSizeI == 1)
|
||||||
type.makeVector();
|
type.makeVector();
|
||||||
@ -919,7 +939,8 @@ bool HlslGrammar::acceptMatrixTemplateType(TType& type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
TBasicType basicType;
|
TBasicType basicType;
|
||||||
if (! acceptTemplateVecMatBasicType(basicType)) {
|
TPrecisionQualifier precision;
|
||||||
|
if (! acceptTemplateVecMatBasicType(basicType, precision)) {
|
||||||
expected("scalar type");
|
expected("scalar type");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -956,7 +977,7 @@ bool HlslGrammar::acceptMatrixTemplateType(TType& type)
|
|||||||
if (! acceptLiteral(cols))
|
if (! acceptLiteral(cols))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
new(&type) TType(basicType, EvqTemporary, 0,
|
new(&type) TType(basicType, EvqTemporary, precision, 0,
|
||||||
rows->getAsConstantUnion()->getConstArray()[0].getIConst(),
|
rows->getAsConstantUnion()->getConstArray()[0].getIConst(),
|
||||||
cols->getAsConstantUnion()->getConstArray()[0].getIConst());
|
cols->getAsConstantUnion()->getConstArray()[0].getIConst());
|
||||||
|
|
||||||
@ -2064,6 +2085,251 @@ bool HlslGrammar::acceptType(TType& type, TIntermNode*& nodeList)
|
|||||||
new(&type) TType(EbtDouble, EvqTemporary, 0, 4, 4);
|
new(&type) TType(EbtDouble, EvqTemporary, 0, 4, 4);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case EHTokMin16float1x1:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 1, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float1x2:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 1, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float1x3:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 1, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float1x4:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 1, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float2x1:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 2, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float2x2:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 2, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float2x3:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 2, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float2x4:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 2, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float3x1:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 3, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float3x2:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 3, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float3x3:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 3, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float3x4:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 3, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float4x1:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 4, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float4x2:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 4, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float4x3:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 4, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16float4x4:
|
||||||
|
new(&type) TType(min16float_bt, EvqTemporary, EpqMedium, 0, 4, 4);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case EHTokMin10float1x1:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 1, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float1x2:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 1, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float1x3:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 1, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float1x4:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 1, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float2x1:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 2, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float2x2:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 2, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float2x3:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 2, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float2x4:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 2, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float3x1:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 3, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float3x2:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 3, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float3x3:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 3, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float3x4:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 3, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float4x1:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 4, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float4x2:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 4, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float4x3:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 4, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin10float4x4:
|
||||||
|
new(&type) TType(min10float_bt, EvqTemporary, EpqMedium, 0, 4, 4);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case EHTokMin16int1x1:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 1, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int1x2:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 1, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int1x3:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 1, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int1x4:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 1, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int2x1:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 2, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int2x2:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 2, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int2x3:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 2, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int2x4:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 2, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int3x1:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 3, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int3x2:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 3, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int3x3:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 3, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int3x4:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 3, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int4x1:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 4, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int4x2:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 4, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int4x3:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 4, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16int4x4:
|
||||||
|
new(&type) TType(min16int_bt, EvqTemporary, EpqMedium, 0, 4, 4);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case EHTokMin12int1x1:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 1, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int1x2:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 1, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int1x3:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 1, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int1x4:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 1, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int2x1:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 2, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int2x2:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 2, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int2x3:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 2, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int2x4:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 2, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int3x1:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 3, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int3x2:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 3, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int3x3:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 3, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int3x4:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 3, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int4x1:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 4, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int4x2:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 4, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int4x3:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 4, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin12int4x4:
|
||||||
|
new(&type) TType(min12int_bt, EvqTemporary, EpqMedium, 0, 4, 4);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case EHTokMin16uint1x1:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 1, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint1x2:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 1, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint1x3:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 1, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint1x4:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 1, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint2x1:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 2, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint2x2:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 2, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint2x3:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 2, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint2x4:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 2, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint3x1:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 3, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint3x2:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 3, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint3x3:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 3, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint3x4:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 3, 4);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint4x1:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 4, 1);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint4x2:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 4, 2);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint4x3:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 4, 3);
|
||||||
|
break;
|
||||||
|
case EHTokMin16uint4x4:
|
||||||
|
new(&type) TType(min16uint_bt, EvqTemporary, EpqMedium, 0, 4, 4);
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -76,7 +76,7 @@ namespace glslang {
|
|||||||
bool acceptLayoutQualifierList(TQualifier&);
|
bool acceptLayoutQualifierList(TQualifier&);
|
||||||
bool acceptType(TType&);
|
bool acceptType(TType&);
|
||||||
bool acceptType(TType&, TIntermNode*& nodeList);
|
bool acceptType(TType&, TIntermNode*& nodeList);
|
||||||
bool acceptTemplateVecMatBasicType(TBasicType&);
|
bool acceptTemplateVecMatBasicType(TBasicType&, TPrecisionQualifier&);
|
||||||
bool acceptVectorTemplateType(TType&);
|
bool acceptVectorTemplateType(TType&);
|
||||||
bool acceptMatrixTemplateType(TType&);
|
bool acceptMatrixTemplateType(TType&);
|
||||||
bool acceptTessellationDeclType(TBuiltInVariable&);
|
bool acceptTessellationDeclType(TBuiltInVariable&);
|
||||||
|
@ -312,6 +312,86 @@ void HlslScanContext::fillInKeywordMap()
|
|||||||
(*KeywordMap)["double4x2"] = EHTokDouble4x2;
|
(*KeywordMap)["double4x2"] = EHTokDouble4x2;
|
||||||
(*KeywordMap)["double4x3"] = EHTokDouble4x3;
|
(*KeywordMap)["double4x3"] = EHTokDouble4x3;
|
||||||
(*KeywordMap)["double4x4"] = EHTokDouble4x4;
|
(*KeywordMap)["double4x4"] = EHTokDouble4x4;
|
||||||
|
(*KeywordMap)["min16float1x1"] = EHTokMin16float1x1;
|
||||||
|
(*KeywordMap)["min16float1x2"] = EHTokMin16float1x2;
|
||||||
|
(*KeywordMap)["min16float1x3"] = EHTokMin16float1x3;
|
||||||
|
(*KeywordMap)["min16float1x4"] = EHTokMin16float1x4;
|
||||||
|
(*KeywordMap)["min16float2x1"] = EHTokMin16float2x1;
|
||||||
|
(*KeywordMap)["min16float2x2"] = EHTokMin16float2x2;
|
||||||
|
(*KeywordMap)["min16float2x3"] = EHTokMin16float2x3;
|
||||||
|
(*KeywordMap)["min16float2x4"] = EHTokMin16float2x4;
|
||||||
|
(*KeywordMap)["min16float3x1"] = EHTokMin16float3x1;
|
||||||
|
(*KeywordMap)["min16float3x2"] = EHTokMin16float3x2;
|
||||||
|
(*KeywordMap)["min16float3x3"] = EHTokMin16float3x3;
|
||||||
|
(*KeywordMap)["min16float3x4"] = EHTokMin16float3x4;
|
||||||
|
(*KeywordMap)["min16float4x1"] = EHTokMin16float4x1;
|
||||||
|
(*KeywordMap)["min16float4x2"] = EHTokMin16float4x2;
|
||||||
|
(*KeywordMap)["min16float4x3"] = EHTokMin16float4x3;
|
||||||
|
(*KeywordMap)["min16float4x4"] = EHTokMin16float4x4;
|
||||||
|
(*KeywordMap)["min10float1x1"] = EHTokMin10float1x1;
|
||||||
|
(*KeywordMap)["min10float1x2"] = EHTokMin10float1x2;
|
||||||
|
(*KeywordMap)["min10float1x3"] = EHTokMin10float1x3;
|
||||||
|
(*KeywordMap)["min10float1x4"] = EHTokMin10float1x4;
|
||||||
|
(*KeywordMap)["min10float2x1"] = EHTokMin10float2x1;
|
||||||
|
(*KeywordMap)["min10float2x2"] = EHTokMin10float2x2;
|
||||||
|
(*KeywordMap)["min10float2x3"] = EHTokMin10float2x3;
|
||||||
|
(*KeywordMap)["min10float2x4"] = EHTokMin10float2x4;
|
||||||
|
(*KeywordMap)["min10float3x1"] = EHTokMin10float3x1;
|
||||||
|
(*KeywordMap)["min10float3x2"] = EHTokMin10float3x2;
|
||||||
|
(*KeywordMap)["min10float3x3"] = EHTokMin10float3x3;
|
||||||
|
(*KeywordMap)["min10float3x4"] = EHTokMin10float3x4;
|
||||||
|
(*KeywordMap)["min10float4x1"] = EHTokMin10float4x1;
|
||||||
|
(*KeywordMap)["min10float4x2"] = EHTokMin10float4x2;
|
||||||
|
(*KeywordMap)["min10float4x3"] = EHTokMin10float4x3;
|
||||||
|
(*KeywordMap)["min10float4x4"] = EHTokMin10float4x4;
|
||||||
|
(*KeywordMap)["min16int1x1"] = EHTokMin16int1x1;
|
||||||
|
(*KeywordMap)["min16int1x2"] = EHTokMin16int1x2;
|
||||||
|
(*KeywordMap)["min16int1x3"] = EHTokMin16int1x3;
|
||||||
|
(*KeywordMap)["min16int1x4"] = EHTokMin16int1x4;
|
||||||
|
(*KeywordMap)["min16int2x1"] = EHTokMin16int2x1;
|
||||||
|
(*KeywordMap)["min16int2x2"] = EHTokMin16int2x2;
|
||||||
|
(*KeywordMap)["min16int2x3"] = EHTokMin16int2x3;
|
||||||
|
(*KeywordMap)["min16int2x4"] = EHTokMin16int2x4;
|
||||||
|
(*KeywordMap)["min16int3x1"] = EHTokMin16int3x1;
|
||||||
|
(*KeywordMap)["min16int3x2"] = EHTokMin16int3x2;
|
||||||
|
(*KeywordMap)["min16int3x3"] = EHTokMin16int3x3;
|
||||||
|
(*KeywordMap)["min16int3x4"] = EHTokMin16int3x4;
|
||||||
|
(*KeywordMap)["min16int4x1"] = EHTokMin16int4x1;
|
||||||
|
(*KeywordMap)["min16int4x2"] = EHTokMin16int4x2;
|
||||||
|
(*KeywordMap)["min16int4x3"] = EHTokMin16int4x3;
|
||||||
|
(*KeywordMap)["min16int4x4"] = EHTokMin16int4x4;
|
||||||
|
(*KeywordMap)["min12int1x1"] = EHTokMin12int1x1;
|
||||||
|
(*KeywordMap)["min12int1x2"] = EHTokMin12int1x2;
|
||||||
|
(*KeywordMap)["min12int1x3"] = EHTokMin12int1x3;
|
||||||
|
(*KeywordMap)["min12int1x4"] = EHTokMin12int1x4;
|
||||||
|
(*KeywordMap)["min12int2x1"] = EHTokMin12int2x1;
|
||||||
|
(*KeywordMap)["min12int2x2"] = EHTokMin12int2x2;
|
||||||
|
(*KeywordMap)["min12int2x3"] = EHTokMin12int2x3;
|
||||||
|
(*KeywordMap)["min12int2x4"] = EHTokMin12int2x4;
|
||||||
|
(*KeywordMap)["min12int3x1"] = EHTokMin12int3x1;
|
||||||
|
(*KeywordMap)["min12int3x2"] = EHTokMin12int3x2;
|
||||||
|
(*KeywordMap)["min12int3x3"] = EHTokMin12int3x3;
|
||||||
|
(*KeywordMap)["min12int3x4"] = EHTokMin12int3x4;
|
||||||
|
(*KeywordMap)["min12int4x1"] = EHTokMin12int4x1;
|
||||||
|
(*KeywordMap)["min12int4x2"] = EHTokMin12int4x2;
|
||||||
|
(*KeywordMap)["min12int4x3"] = EHTokMin12int4x3;
|
||||||
|
(*KeywordMap)["min12int4x4"] = EHTokMin12int4x4;
|
||||||
|
(*KeywordMap)["min16uint1x1"] = EHTokMin16uint1x1;
|
||||||
|
(*KeywordMap)["min16uint1x2"] = EHTokMin16uint1x2;
|
||||||
|
(*KeywordMap)["min16uint1x3"] = EHTokMin16uint1x3;
|
||||||
|
(*KeywordMap)["min16uint1x4"] = EHTokMin16uint1x4;
|
||||||
|
(*KeywordMap)["min16uint2x1"] = EHTokMin16uint2x1;
|
||||||
|
(*KeywordMap)["min16uint2x2"] = EHTokMin16uint2x2;
|
||||||
|
(*KeywordMap)["min16uint2x3"] = EHTokMin16uint2x3;
|
||||||
|
(*KeywordMap)["min16uint2x4"] = EHTokMin16uint2x4;
|
||||||
|
(*KeywordMap)["min16uint3x1"] = EHTokMin16uint3x1;
|
||||||
|
(*KeywordMap)["min16uint3x2"] = EHTokMin16uint3x2;
|
||||||
|
(*KeywordMap)["min16uint3x3"] = EHTokMin16uint3x3;
|
||||||
|
(*KeywordMap)["min16uint3x4"] = EHTokMin16uint3x4;
|
||||||
|
(*KeywordMap)["min16uint4x1"] = EHTokMin16uint4x1;
|
||||||
|
(*KeywordMap)["min16uint4x2"] = EHTokMin16uint4x2;
|
||||||
|
(*KeywordMap)["min16uint4x3"] = EHTokMin16uint4x3;
|
||||||
|
(*KeywordMap)["min16uint4x4"] = EHTokMin16uint4x4;
|
||||||
|
|
||||||
(*KeywordMap)["sampler"] = EHTokSampler;
|
(*KeywordMap)["sampler"] = EHTokSampler;
|
||||||
(*KeywordMap)["sampler1D"] = EHTokSampler1d;
|
(*KeywordMap)["sampler1D"] = EHTokSampler1d;
|
||||||
@ -806,6 +886,86 @@ EHlslTokenClass HlslScanContext::tokenizeIdentifier()
|
|||||||
case EHTokDouble4x2:
|
case EHTokDouble4x2:
|
||||||
case EHTokDouble4x3:
|
case EHTokDouble4x3:
|
||||||
case EHTokDouble4x4:
|
case EHTokDouble4x4:
|
||||||
|
case EHTokMin16float1x1:
|
||||||
|
case EHTokMin16float1x2:
|
||||||
|
case EHTokMin16float1x3:
|
||||||
|
case EHTokMin16float1x4:
|
||||||
|
case EHTokMin16float2x1:
|
||||||
|
case EHTokMin16float2x2:
|
||||||
|
case EHTokMin16float2x3:
|
||||||
|
case EHTokMin16float2x4:
|
||||||
|
case EHTokMin16float3x1:
|
||||||
|
case EHTokMin16float3x2:
|
||||||
|
case EHTokMin16float3x3:
|
||||||
|
case EHTokMin16float3x4:
|
||||||
|
case EHTokMin16float4x1:
|
||||||
|
case EHTokMin16float4x2:
|
||||||
|
case EHTokMin16float4x3:
|
||||||
|
case EHTokMin16float4x4:
|
||||||
|
case EHTokMin10float1x1:
|
||||||
|
case EHTokMin10float1x2:
|
||||||
|
case EHTokMin10float1x3:
|
||||||
|
case EHTokMin10float1x4:
|
||||||
|
case EHTokMin10float2x1:
|
||||||
|
case EHTokMin10float2x2:
|
||||||
|
case EHTokMin10float2x3:
|
||||||
|
case EHTokMin10float2x4:
|
||||||
|
case EHTokMin10float3x1:
|
||||||
|
case EHTokMin10float3x2:
|
||||||
|
case EHTokMin10float3x3:
|
||||||
|
case EHTokMin10float3x4:
|
||||||
|
case EHTokMin10float4x1:
|
||||||
|
case EHTokMin10float4x2:
|
||||||
|
case EHTokMin10float4x3:
|
||||||
|
case EHTokMin10float4x4:
|
||||||
|
case EHTokMin16int1x1:
|
||||||
|
case EHTokMin16int1x2:
|
||||||
|
case EHTokMin16int1x3:
|
||||||
|
case EHTokMin16int1x4:
|
||||||
|
case EHTokMin16int2x1:
|
||||||
|
case EHTokMin16int2x2:
|
||||||
|
case EHTokMin16int2x3:
|
||||||
|
case EHTokMin16int2x4:
|
||||||
|
case EHTokMin16int3x1:
|
||||||
|
case EHTokMin16int3x2:
|
||||||
|
case EHTokMin16int3x3:
|
||||||
|
case EHTokMin16int3x4:
|
||||||
|
case EHTokMin16int4x1:
|
||||||
|
case EHTokMin16int4x2:
|
||||||
|
case EHTokMin16int4x3:
|
||||||
|
case EHTokMin16int4x4:
|
||||||
|
case EHTokMin12int1x1:
|
||||||
|
case EHTokMin12int1x2:
|
||||||
|
case EHTokMin12int1x3:
|
||||||
|
case EHTokMin12int1x4:
|
||||||
|
case EHTokMin12int2x1:
|
||||||
|
case EHTokMin12int2x2:
|
||||||
|
case EHTokMin12int2x3:
|
||||||
|
case EHTokMin12int2x4:
|
||||||
|
case EHTokMin12int3x1:
|
||||||
|
case EHTokMin12int3x2:
|
||||||
|
case EHTokMin12int3x3:
|
||||||
|
case EHTokMin12int3x4:
|
||||||
|
case EHTokMin12int4x1:
|
||||||
|
case EHTokMin12int4x2:
|
||||||
|
case EHTokMin12int4x3:
|
||||||
|
case EHTokMin12int4x4:
|
||||||
|
case EHTokMin16uint1x1:
|
||||||
|
case EHTokMin16uint1x2:
|
||||||
|
case EHTokMin16uint1x3:
|
||||||
|
case EHTokMin16uint1x4:
|
||||||
|
case EHTokMin16uint2x1:
|
||||||
|
case EHTokMin16uint2x2:
|
||||||
|
case EHTokMin16uint2x3:
|
||||||
|
case EHTokMin16uint2x4:
|
||||||
|
case EHTokMin16uint3x1:
|
||||||
|
case EHTokMin16uint3x2:
|
||||||
|
case EHTokMin16uint3x3:
|
||||||
|
case EHTokMin16uint3x4:
|
||||||
|
case EHTokMin16uint4x1:
|
||||||
|
case EHTokMin16uint4x2:
|
||||||
|
case EHTokMin16uint4x3:
|
||||||
|
case EHTokMin16uint4x4:
|
||||||
return keyword;
|
return keyword;
|
||||||
|
|
||||||
// texturing types
|
// texturing types
|
||||||
|
@ -249,6 +249,86 @@ enum EHlslTokenClass {
|
|||||||
EHTokDouble4x2,
|
EHTokDouble4x2,
|
||||||
EHTokDouble4x3,
|
EHTokDouble4x3,
|
||||||
EHTokDouble4x4,
|
EHTokDouble4x4,
|
||||||
|
EHTokMin16float1x1,
|
||||||
|
EHTokMin16float1x2,
|
||||||
|
EHTokMin16float1x3,
|
||||||
|
EHTokMin16float1x4,
|
||||||
|
EHTokMin16float2x1,
|
||||||
|
EHTokMin16float2x2,
|
||||||
|
EHTokMin16float2x3,
|
||||||
|
EHTokMin16float2x4,
|
||||||
|
EHTokMin16float3x1,
|
||||||
|
EHTokMin16float3x2,
|
||||||
|
EHTokMin16float3x3,
|
||||||
|
EHTokMin16float3x4,
|
||||||
|
EHTokMin16float4x1,
|
||||||
|
EHTokMin16float4x2,
|
||||||
|
EHTokMin16float4x3,
|
||||||
|
EHTokMin16float4x4,
|
||||||
|
EHTokMin10float1x1,
|
||||||
|
EHTokMin10float1x2,
|
||||||
|
EHTokMin10float1x3,
|
||||||
|
EHTokMin10float1x4,
|
||||||
|
EHTokMin10float2x1,
|
||||||
|
EHTokMin10float2x2,
|
||||||
|
EHTokMin10float2x3,
|
||||||
|
EHTokMin10float2x4,
|
||||||
|
EHTokMin10float3x1,
|
||||||
|
EHTokMin10float3x2,
|
||||||
|
EHTokMin10float3x3,
|
||||||
|
EHTokMin10float3x4,
|
||||||
|
EHTokMin10float4x1,
|
||||||
|
EHTokMin10float4x2,
|
||||||
|
EHTokMin10float4x3,
|
||||||
|
EHTokMin10float4x4,
|
||||||
|
EHTokMin16int1x1,
|
||||||
|
EHTokMin16int1x2,
|
||||||
|
EHTokMin16int1x3,
|
||||||
|
EHTokMin16int1x4,
|
||||||
|
EHTokMin16int2x1,
|
||||||
|
EHTokMin16int2x2,
|
||||||
|
EHTokMin16int2x3,
|
||||||
|
EHTokMin16int2x4,
|
||||||
|
EHTokMin16int3x1,
|
||||||
|
EHTokMin16int3x2,
|
||||||
|
EHTokMin16int3x3,
|
||||||
|
EHTokMin16int3x4,
|
||||||
|
EHTokMin16int4x1,
|
||||||
|
EHTokMin16int4x2,
|
||||||
|
EHTokMin16int4x3,
|
||||||
|
EHTokMin16int4x4,
|
||||||
|
EHTokMin12int1x1,
|
||||||
|
EHTokMin12int1x2,
|
||||||
|
EHTokMin12int1x3,
|
||||||
|
EHTokMin12int1x4,
|
||||||
|
EHTokMin12int2x1,
|
||||||
|
EHTokMin12int2x2,
|
||||||
|
EHTokMin12int2x3,
|
||||||
|
EHTokMin12int2x4,
|
||||||
|
EHTokMin12int3x1,
|
||||||
|
EHTokMin12int3x2,
|
||||||
|
EHTokMin12int3x3,
|
||||||
|
EHTokMin12int3x4,
|
||||||
|
EHTokMin12int4x1,
|
||||||
|
EHTokMin12int4x2,
|
||||||
|
EHTokMin12int4x3,
|
||||||
|
EHTokMin12int4x4,
|
||||||
|
EHTokMin16uint1x1,
|
||||||
|
EHTokMin16uint1x2,
|
||||||
|
EHTokMin16uint1x3,
|
||||||
|
EHTokMin16uint1x4,
|
||||||
|
EHTokMin16uint2x1,
|
||||||
|
EHTokMin16uint2x2,
|
||||||
|
EHTokMin16uint2x3,
|
||||||
|
EHTokMin16uint2x4,
|
||||||
|
EHTokMin16uint3x1,
|
||||||
|
EHTokMin16uint3x2,
|
||||||
|
EHTokMin16uint3x3,
|
||||||
|
EHTokMin16uint3x4,
|
||||||
|
EHTokMin16uint4x1,
|
||||||
|
EHTokMin16uint4x2,
|
||||||
|
EHTokMin16uint4x3,
|
||||||
|
EHTokMin16uint4x4,
|
||||||
|
|
||||||
// texturing types
|
// texturing types
|
||||||
EHTokSampler,
|
EHTokSampler,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user