mirror of
https://github.com/KhronosGroup/glslang
synced 2024-09-18 19:59:54 +00:00
HLSL: Implement missing GatherCmp
This commit is contained in:
parent
22be5788ea
commit
6817f81e02
@ -119,25 +119,73 @@ gl_FragCoord origin is upper left
|
||||
0:51 1 (const int)
|
||||
0:51 1 (const int)
|
||||
0:51 1 (const int)
|
||||
0:114 move second child to first child ( temp 4-component vector of float)
|
||||
0:114 Color: direct index for structure ( temp 4-component vector of float)
|
||||
0:114 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:114 Constant:
|
||||
0:114 0 (const int)
|
||||
0:114 Constant:
|
||||
0:114 1.000000
|
||||
0:114 1.000000
|
||||
0:114 1.000000
|
||||
0:114 1.000000
|
||||
0:115 move second child to first child ( temp float)
|
||||
0:115 Depth: direct index for structure ( temp float)
|
||||
0:115 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:115 Constant:
|
||||
0:115 1 (const int)
|
||||
0:115 Constant:
|
||||
0:115 1.000000
|
||||
0:117 Branch: Return with expression
|
||||
0:117 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:53 Sequence
|
||||
0:53 move second child to first child ( temp 4-component vector of float)
|
||||
0:53 'txval401' ( temp 4-component vector of float)
|
||||
0:53 textureGatherOffset ( temp 4-component vector of float)
|
||||
0:53 Construct combined texture-sampler ( temp sampler2DShadow)
|
||||
0:53 'g_tTex2df4' ( uniform texture2D)
|
||||
0:53 'g_sSampCmp' (layout( binding=0) uniform sampler)
|
||||
0:53 c2: direct index for structure ( uniform 2-component vector of float)
|
||||
0:53 'anon@0' (layout( row_major std140) uniform block{ uniform float c1, uniform 2-component vector of float c2, uniform 3-component vector of float c3, uniform 4-component vector of float c4})
|
||||
0:53 Constant:
|
||||
0:53 1 (const uint)
|
||||
0:53 Constant:
|
||||
0:53 0.750000
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:? 0 (const int)
|
||||
0:54 Sequence
|
||||
0:54 move second child to first child ( temp 4-component vector of int)
|
||||
0:54 'txval411' ( temp 4-component vector of int)
|
||||
0:54 textureGatherOffset ( temp 4-component vector of int)
|
||||
0:54 Construct combined texture-sampler ( temp isampler2DShadow)
|
||||
0:54 'g_tTex2di4' ( uniform itexture2D)
|
||||
0:54 'g_sSampCmp' (layout( binding=0) uniform sampler)
|
||||
0:54 c2: direct index for structure ( uniform 2-component vector of float)
|
||||
0:54 'anon@0' (layout( row_major std140) uniform block{ uniform float c1, uniform 2-component vector of float c2, uniform 3-component vector of float c3, uniform 4-component vector of float c4})
|
||||
0:54 Constant:
|
||||
0:54 1 (const uint)
|
||||
0:54 Constant:
|
||||
0:54 0.750000
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:? -1 (const int)
|
||||
0:55 Sequence
|
||||
0:55 move second child to first child ( temp 4-component vector of uint)
|
||||
0:55 'txval421' ( temp 4-component vector of uint)
|
||||
0:55 textureGatherOffset ( temp 4-component vector of uint)
|
||||
0:55 Construct combined texture-sampler ( temp usampler2DShadow)
|
||||
0:55 'g_tTex2du4' ( uniform utexture2D)
|
||||
0:55 'g_sSampCmp' (layout( binding=0) uniform sampler)
|
||||
0:55 c2: direct index for structure ( uniform 2-component vector of float)
|
||||
0:55 'anon@0' (layout( row_major std140) uniform block{ uniform float c1, uniform 2-component vector of float c2, uniform 3-component vector of float c3, uniform 4-component vector of float c4})
|
||||
0:55 Constant:
|
||||
0:55 1 (const uint)
|
||||
0:55 Constant:
|
||||
0:55 0.750000
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:? 1 (const int)
|
||||
0:110 move second child to first child ( temp 4-component vector of float)
|
||||
0:110 Color: direct index for structure ( temp 4-component vector of float)
|
||||
0:110 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:110 Constant:
|
||||
0:110 0 (const int)
|
||||
0:110 Constant:
|
||||
0:110 1.000000
|
||||
0:110 1.000000
|
||||
0:110 1.000000
|
||||
0:110 1.000000
|
||||
0:111 move second child to first child ( temp float)
|
||||
0:111 Depth: direct index for structure ( temp float)
|
||||
0:111 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:111 Constant:
|
||||
0:111 1 (const int)
|
||||
0:111 Constant:
|
||||
0:111 1.000000
|
||||
0:113 Branch: Return with expression
|
||||
0:113 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:38 Function Definition: main( ( temp void)
|
||||
0:38 Function Parameters:
|
||||
0:? Sequence
|
||||
@ -300,25 +348,73 @@ gl_FragCoord origin is upper left
|
||||
0:51 1 (const int)
|
||||
0:51 1 (const int)
|
||||
0:51 1 (const int)
|
||||
0:114 move second child to first child ( temp 4-component vector of float)
|
||||
0:114 Color: direct index for structure ( temp 4-component vector of float)
|
||||
0:114 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:114 Constant:
|
||||
0:114 0 (const int)
|
||||
0:114 Constant:
|
||||
0:114 1.000000
|
||||
0:114 1.000000
|
||||
0:114 1.000000
|
||||
0:114 1.000000
|
||||
0:115 move second child to first child ( temp float)
|
||||
0:115 Depth: direct index for structure ( temp float)
|
||||
0:115 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:115 Constant:
|
||||
0:115 1 (const int)
|
||||
0:115 Constant:
|
||||
0:115 1.000000
|
||||
0:117 Branch: Return with expression
|
||||
0:117 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:53 Sequence
|
||||
0:53 move second child to first child ( temp 4-component vector of float)
|
||||
0:53 'txval401' ( temp 4-component vector of float)
|
||||
0:53 textureGatherOffset ( temp 4-component vector of float)
|
||||
0:53 Construct combined texture-sampler ( temp sampler2DShadow)
|
||||
0:53 'g_tTex2df4' ( uniform texture2D)
|
||||
0:53 'g_sSampCmp' (layout( binding=0) uniform sampler)
|
||||
0:53 c2: direct index for structure ( uniform 2-component vector of float)
|
||||
0:53 'anon@0' (layout( row_major std140) uniform block{ uniform float c1, uniform 2-component vector of float c2, uniform 3-component vector of float c3, uniform 4-component vector of float c4})
|
||||
0:53 Constant:
|
||||
0:53 1 (const uint)
|
||||
0:53 Constant:
|
||||
0:53 0.750000
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:? 0 (const int)
|
||||
0:54 Sequence
|
||||
0:54 move second child to first child ( temp 4-component vector of int)
|
||||
0:54 'txval411' ( temp 4-component vector of int)
|
||||
0:54 textureGatherOffset ( temp 4-component vector of int)
|
||||
0:54 Construct combined texture-sampler ( temp isampler2DShadow)
|
||||
0:54 'g_tTex2di4' ( uniform itexture2D)
|
||||
0:54 'g_sSampCmp' (layout( binding=0) uniform sampler)
|
||||
0:54 c2: direct index for structure ( uniform 2-component vector of float)
|
||||
0:54 'anon@0' (layout( row_major std140) uniform block{ uniform float c1, uniform 2-component vector of float c2, uniform 3-component vector of float c3, uniform 4-component vector of float c4})
|
||||
0:54 Constant:
|
||||
0:54 1 (const uint)
|
||||
0:54 Constant:
|
||||
0:54 0.750000
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:? -1 (const int)
|
||||
0:55 Sequence
|
||||
0:55 move second child to first child ( temp 4-component vector of uint)
|
||||
0:55 'txval421' ( temp 4-component vector of uint)
|
||||
0:55 textureGatherOffset ( temp 4-component vector of uint)
|
||||
0:55 Construct combined texture-sampler ( temp usampler2DShadow)
|
||||
0:55 'g_tTex2du4' ( uniform utexture2D)
|
||||
0:55 'g_sSampCmp' (layout( binding=0) uniform sampler)
|
||||
0:55 c2: direct index for structure ( uniform 2-component vector of float)
|
||||
0:55 'anon@0' (layout( row_major std140) uniform block{ uniform float c1, uniform 2-component vector of float c2, uniform 3-component vector of float c3, uniform 4-component vector of float c4})
|
||||
0:55 Constant:
|
||||
0:55 1 (const uint)
|
||||
0:55 Constant:
|
||||
0:55 0.750000
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:? 1 (const int)
|
||||
0:110 move second child to first child ( temp 4-component vector of float)
|
||||
0:110 Color: direct index for structure ( temp 4-component vector of float)
|
||||
0:110 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:110 Constant:
|
||||
0:110 0 (const int)
|
||||
0:110 Constant:
|
||||
0:110 1.000000
|
||||
0:110 1.000000
|
||||
0:110 1.000000
|
||||
0:110 1.000000
|
||||
0:111 move second child to first child ( temp float)
|
||||
0:111 Depth: direct index for structure ( temp float)
|
||||
0:111 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:111 Constant:
|
||||
0:111 1 (const int)
|
||||
0:111 Constant:
|
||||
0:111 1.000000
|
||||
0:113 Branch: Return with expression
|
||||
0:113 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||
0:38 Function Definition: main( ( temp void)
|
||||
0:38 Function Parameters:
|
||||
0:? Sequence
|
||||
@ -359,13 +455,13 @@ gl_FragCoord origin is upper left
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 146
|
||||
// Id's are bound by 167
|
||||
|
||||
Capability Shader
|
||||
Capability Sampled1D
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 111 115
|
||||
EntryPoint Fragment 4 "main" 132 136
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
@ -389,20 +485,23 @@ gl_FragCoord origin is upper left
|
||||
Name 72 "txval004"
|
||||
Name 82 "txval014"
|
||||
Name 90 "txval024"
|
||||
Name 99 "psout"
|
||||
Name 108 "flattenTemp"
|
||||
Name 111 "Color"
|
||||
Name 115 "Depth"
|
||||
Name 120 "g_tTex1df4a"
|
||||
Name 121 "g_tTex1df4"
|
||||
Name 124 "g_tTex1di4"
|
||||
Name 127 "g_tTex1du4"
|
||||
Name 130 "g_tTex3df4"
|
||||
Name 133 "g_tTex3di4"
|
||||
Name 136 "g_tTex3du4"
|
||||
Name 139 "g_tTexcdf4"
|
||||
Name 142 "g_tTexcdi4"
|
||||
Name 145 "g_tTexcdu4"
|
||||
Name 98 "txval401"
|
||||
Name 105 "txval411"
|
||||
Name 112 "txval421"
|
||||
Name 120 "psout"
|
||||
Name 129 "flattenTemp"
|
||||
Name 132 "Color"
|
||||
Name 136 "Depth"
|
||||
Name 141 "g_tTex1df4a"
|
||||
Name 142 "g_tTex1df4"
|
||||
Name 145 "g_tTex1di4"
|
||||
Name 148 "g_tTex1du4"
|
||||
Name 151 "g_tTex3df4"
|
||||
Name 154 "g_tTex3di4"
|
||||
Name 157 "g_tTex3du4"
|
||||
Name 160 "g_tTexcdf4"
|
||||
Name 163 "g_tTexcdi4"
|
||||
Name 166 "g_tTexcdu4"
|
||||
Decorate 16(g_tTex2df4) DescriptorSet 0
|
||||
Decorate 20(g_sSampCmp) DescriptorSet 0
|
||||
Decorate 20(g_sSampCmp) Binding 0
|
||||
@ -414,20 +513,20 @@ gl_FragCoord origin is upper left
|
||||
Decorate 29 DescriptorSet 0
|
||||
Decorate 45(g_tTex2di4) DescriptorSet 0
|
||||
Decorate 62(g_tTex2du4) DescriptorSet 0
|
||||
Decorate 111(Color) Location 0
|
||||
Decorate 115(Depth) BuiltIn FragDepth
|
||||
Decorate 120(g_tTex1df4a) DescriptorSet 0
|
||||
Decorate 120(g_tTex1df4a) Binding 1
|
||||
Decorate 121(g_tTex1df4) DescriptorSet 0
|
||||
Decorate 121(g_tTex1df4) Binding 0
|
||||
Decorate 124(g_tTex1di4) DescriptorSet 0
|
||||
Decorate 127(g_tTex1du4) DescriptorSet 0
|
||||
Decorate 130(g_tTex3df4) DescriptorSet 0
|
||||
Decorate 133(g_tTex3di4) DescriptorSet 0
|
||||
Decorate 136(g_tTex3du4) DescriptorSet 0
|
||||
Decorate 139(g_tTexcdf4) DescriptorSet 0
|
||||
Decorate 142(g_tTexcdi4) DescriptorSet 0
|
||||
Decorate 145(g_tTexcdu4) DescriptorSet 0
|
||||
Decorate 132(Color) Location 0
|
||||
Decorate 136(Depth) BuiltIn FragDepth
|
||||
Decorate 141(g_tTex1df4a) DescriptorSet 0
|
||||
Decorate 141(g_tTex1df4a) Binding 1
|
||||
Decorate 142(g_tTex1df4) DescriptorSet 0
|
||||
Decorate 142(g_tTex1df4) Binding 0
|
||||
Decorate 145(g_tTex1di4) DescriptorSet 0
|
||||
Decorate 148(g_tTex1du4) DescriptorSet 0
|
||||
Decorate 151(g_tTex3df4) DescriptorSet 0
|
||||
Decorate 154(g_tTex3di4) DescriptorSet 0
|
||||
Decorate 157(g_tTex3du4) DescriptorSet 0
|
||||
Decorate 160(g_tTexcdf4) DescriptorSet 0
|
||||
Decorate 163(g_tTexcdi4) DescriptorSet 0
|
||||
Decorate 166(g_tTexcdu4) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -478,53 +577,53 @@ gl_FragCoord origin is upper left
|
||||
80: 79 ConstantComposite 38 38 38 38
|
||||
88: 79 ConstantComposite 54 54 54 54
|
||||
96: 79 ConstantComposite 70 70 70 70
|
||||
98: TypePointer Function 8(PS_OUTPUT)
|
||||
100: 6(float) Constant 1065353216
|
||||
101: 7(fvec4) ConstantComposite 100 100 100 100
|
||||
103: TypePointer Function 6(float)
|
||||
110: TypePointer Output 7(fvec4)
|
||||
111(Color): 110(ptr) Variable Output
|
||||
114: TypePointer Output 6(float)
|
||||
115(Depth): 114(ptr) Variable Output
|
||||
118: TypeImage 6(float) 1D sampled format:Unknown
|
||||
119: TypePointer UniformConstant 118
|
||||
120(g_tTex1df4a): 119(ptr) Variable UniformConstant
|
||||
121(g_tTex1df4): 119(ptr) Variable UniformConstant
|
||||
122: TypeImage 30(int) 1D sampled format:Unknown
|
||||
123: TypePointer UniformConstant 122
|
||||
124(g_tTex1di4): 123(ptr) Variable UniformConstant
|
||||
125: TypeImage 56(int) 1D sampled format:Unknown
|
||||
126: TypePointer UniformConstant 125
|
||||
127(g_tTex1du4): 126(ptr) Variable UniformConstant
|
||||
128: TypeImage 6(float) 3D sampled format:Unknown
|
||||
129: TypePointer UniformConstant 128
|
||||
130(g_tTex3df4): 129(ptr) Variable UniformConstant
|
||||
131: TypeImage 30(int) 3D sampled format:Unknown
|
||||
132: TypePointer UniformConstant 131
|
||||
133(g_tTex3di4): 132(ptr) Variable UniformConstant
|
||||
134: TypeImage 56(int) 3D sampled format:Unknown
|
||||
135: TypePointer UniformConstant 134
|
||||
136(g_tTex3du4): 135(ptr) Variable UniformConstant
|
||||
137: TypeImage 6(float) Cube sampled format:Unknown
|
||||
138: TypePointer UniformConstant 137
|
||||
139(g_tTexcdf4): 138(ptr) Variable UniformConstant
|
||||
140: TypeImage 30(int) Cube sampled format:Unknown
|
||||
141: TypePointer UniformConstant 140
|
||||
142(g_tTexcdi4): 141(ptr) Variable UniformConstant
|
||||
143: TypeImage 56(int) Cube sampled format:Unknown
|
||||
119: TypePointer Function 8(PS_OUTPUT)
|
||||
121: 6(float) Constant 1065353216
|
||||
122: 7(fvec4) ConstantComposite 121 121 121 121
|
||||
124: TypePointer Function 6(float)
|
||||
131: TypePointer Output 7(fvec4)
|
||||
132(Color): 131(ptr) Variable Output
|
||||
135: TypePointer Output 6(float)
|
||||
136(Depth): 135(ptr) Variable Output
|
||||
139: TypeImage 6(float) 1D sampled format:Unknown
|
||||
140: TypePointer UniformConstant 139
|
||||
141(g_tTex1df4a): 140(ptr) Variable UniformConstant
|
||||
142(g_tTex1df4): 140(ptr) Variable UniformConstant
|
||||
143: TypeImage 30(int) 1D sampled format:Unknown
|
||||
144: TypePointer UniformConstant 143
|
||||
145(g_tTexcdu4): 144(ptr) Variable UniformConstant
|
||||
145(g_tTex1di4): 144(ptr) Variable UniformConstant
|
||||
146: TypeImage 56(int) 1D sampled format:Unknown
|
||||
147: TypePointer UniformConstant 146
|
||||
148(g_tTex1du4): 147(ptr) Variable UniformConstant
|
||||
149: TypeImage 6(float) 3D sampled format:Unknown
|
||||
150: TypePointer UniformConstant 149
|
||||
151(g_tTex3df4): 150(ptr) Variable UniformConstant
|
||||
152: TypeImage 30(int) 3D sampled format:Unknown
|
||||
153: TypePointer UniformConstant 152
|
||||
154(g_tTex3di4): 153(ptr) Variable UniformConstant
|
||||
155: TypeImage 56(int) 3D sampled format:Unknown
|
||||
156: TypePointer UniformConstant 155
|
||||
157(g_tTex3du4): 156(ptr) Variable UniformConstant
|
||||
158: TypeImage 6(float) Cube sampled format:Unknown
|
||||
159: TypePointer UniformConstant 158
|
||||
160(g_tTexcdf4): 159(ptr) Variable UniformConstant
|
||||
161: TypeImage 30(int) Cube sampled format:Unknown
|
||||
162: TypePointer UniformConstant 161
|
||||
163(g_tTexcdi4): 162(ptr) Variable UniformConstant
|
||||
164: TypeImage 56(int) Cube sampled format:Unknown
|
||||
165: TypePointer UniformConstant 164
|
||||
166(g_tTexcdu4): 165(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
108(flattenTemp): 98(ptr) Variable Function
|
||||
109:8(PS_OUTPUT) FunctionCall 10(@main()
|
||||
Store 108(flattenTemp) 109
|
||||
112: 12(ptr) AccessChain 108(flattenTemp) 37
|
||||
113: 7(fvec4) Load 112
|
||||
Store 111(Color) 113
|
||||
116: 103(ptr) AccessChain 108(flattenTemp) 31
|
||||
117: 6(float) Load 116
|
||||
Store 115(Depth) 117
|
||||
129(flattenTemp): 119(ptr) Variable Function
|
||||
130:8(PS_OUTPUT) FunctionCall 10(@main()
|
||||
Store 129(flattenTemp) 130
|
||||
133: 12(ptr) AccessChain 129(flattenTemp) 37
|
||||
134: 7(fvec4) Load 133
|
||||
Store 132(Color) 134
|
||||
137: 124(ptr) AccessChain 129(flattenTemp) 31
|
||||
138: 6(float) Load 137
|
||||
Store 136(Depth) 138
|
||||
Return
|
||||
FunctionEnd
|
||||
10(@main():8(PS_OUTPUT) Function None 9
|
||||
@ -535,7 +634,10 @@ gl_FragCoord origin is upper left
|
||||
72(txval004): 12(ptr) Variable Function
|
||||
82(txval014): 41(ptr) Variable Function
|
||||
90(txval024): 58(ptr) Variable Function
|
||||
99(psout): 98(ptr) Variable Function
|
||||
98(txval401): 12(ptr) Variable Function
|
||||
105(txval411): 41(ptr) Variable Function
|
||||
112(txval421): 58(ptr) Variable Function
|
||||
120(psout): 119(ptr) Variable Function
|
||||
17: 14 Load 16(g_tTex2df4)
|
||||
21: 18 Load 20(g_sSampCmp)
|
||||
24: 23 SampledImage 17 21
|
||||
@ -578,10 +680,31 @@ gl_FragCoord origin is upper left
|
||||
95: 25(fvec2) Load 94
|
||||
97: 57(ivec4) ImageDrefGather 93 95 35 ConstOffsets 96
|
||||
Store 90(txval024) 97
|
||||
102: 12(ptr) AccessChain 99(psout) 37
|
||||
Store 102 101
|
||||
104: 103(ptr) AccessChain 99(psout) 31
|
||||
Store 104 100
|
||||
105:8(PS_OUTPUT) Load 99(psout)
|
||||
ReturnValue 105
|
||||
99: 14 Load 16(g_tTex2df4)
|
||||
100: 18 Load 20(g_sSampCmp)
|
||||
101: 23 SampledImage 99 100
|
||||
102: 32(ptr) AccessChain 29 31
|
||||
103: 25(fvec2) Load 102
|
||||
104: 7(fvec4) ImageDrefGather 101 103 35 ConstOffset 38
|
||||
Store 98(txval401) 104
|
||||
106: 43 Load 45(g_tTex2di4)
|
||||
107: 18 Load 20(g_sSampCmp)
|
||||
108: 49 SampledImage 106 107
|
||||
109: 32(ptr) AccessChain 29 31
|
||||
110: 25(fvec2) Load 109
|
||||
111: 40(ivec4) ImageDrefGather 108 110 35 ConstOffset 54
|
||||
Store 105(txval411) 111
|
||||
113: 60 Load 62(g_tTex2du4)
|
||||
114: 18 Load 20(g_sSampCmp)
|
||||
115: 66 SampledImage 113 114
|
||||
116: 32(ptr) AccessChain 29 31
|
||||
117: 25(fvec2) Load 116
|
||||
118: 57(ivec4) ImageDrefGather 115 117 35 ConstOffset 70
|
||||
Store 112(txval421) 118
|
||||
123: 12(ptr) AccessChain 120(psout) 37
|
||||
Store 123 122
|
||||
125: 124(ptr) AccessChain 120(psout) 31
|
||||
Store 125 121
|
||||
126:8(PS_OUTPUT) Load 120(psout)
|
||||
ReturnValue 126
|
||||
FunctionEnd
|
||||
|
@ -29,6 +29,10 @@ PS_OUTPUT main()
|
||||
|
||||
// no 1D gathers
|
||||
|
||||
float4 txval80 = g_tTex2df4a . GatherCmp(g_sSampCmp, c3, .75);
|
||||
int4 txval81 = g_tTex2di4a . GatherCmp(g_sSampCmp, c3, .75);
|
||||
uint4 txval82 = g_tTex2du4a . GatherCmp(g_sSampCmp, c3, .75);
|
||||
|
||||
float4 txval00 = g_tTex2df4a . GatherCmpRed(g_sSampCmp, c3, .75);
|
||||
int4 txval01 = g_tTex2di4a . GatherCmpRed(g_sSampCmp, c3, .75);
|
||||
uint4 txval02 = g_tTex2du4a . GatherCmpRed(g_sSampCmp, c3, .75);
|
||||
|
@ -51,6 +51,10 @@ PS_OUTPUT main()
|
||||
int4 txval31 = g_tTex2di4 . GatherCmpAlpha(g_sSampCmp, c2, 0.75);
|
||||
uint4 txval32 = g_tTex2du4 . GatherCmpAlpha(g_sSampCmp, c2, 0.75);
|
||||
|
||||
float4 txval80 = g_tTex2df4 . GatherCmp(g_sSampCmp, c2, 0.75);
|
||||
int4 txval81 = g_tTex2di4 . GatherCmp(g_sSampCmp, c2, 0.75);
|
||||
uint4 txval82 = g_tTex2du4 . GatherCmp(g_sSampCmp, c2, 0.75);
|
||||
|
||||
// no 3D gathers
|
||||
|
||||
float4 txval40 = g_tTexcdf4 . GatherCmpRed(g_sSampCmp, c3, 0.75);
|
||||
@ -69,6 +73,10 @@ PS_OUTPUT main()
|
||||
int4 txval71 = g_tTexcdi4 . GatherCmpAlpha(g_sSampCmp, c3, 0.75);
|
||||
uint4 txval72 = g_tTexcdu4 . GatherCmpAlpha(g_sSampCmp, c3, 0.75);
|
||||
|
||||
float4 txval90 = g_tTexcdf4 . GatherCmp(g_sSampCmp, c3, 0.75);
|
||||
int4 txval91 = g_tTexcdi4 . GatherCmp(g_sSampCmp, c3, 0.75);
|
||||
uint4 txval92 = g_tTexcdu4 . GatherCmp(g_sSampCmp, c3, 0.75);
|
||||
|
||||
psout.Color = 1.0;
|
||||
psout.Depth = 1.0;
|
||||
|
||||
|
@ -50,13 +50,9 @@ PS_OUTPUT main()
|
||||
int4 txval014 = g_tTex2di4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,-1), int2(1,-1), int2(1,-1), int2(1,-1));
|
||||
uint4 txval024 = g_tTex2du4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,1), int2(1,1), int2(1,1), int2(1,1));
|
||||
|
||||
// float4 txval00s = g_tTex2df4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,0), status);
|
||||
// int4 txval01s = g_tTex2di4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,0), status);
|
||||
// uint4 txval02s = g_tTex2du4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,0), status);
|
||||
|
||||
// float4 txval004s = g_tTex2df4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,0), int2(1,0), int2(1,0), int2(1,0), status);
|
||||
// int4 txval014s = g_tTex2di4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,0), int2(1,0), int2(1,0), int2(1,0), status);
|
||||
// uint4 txval024s = g_tTex2du4 . GatherCmpRed(g_sSampCmp, c2, 0.75, int2(1,0), int2(1,0), int2(1,0), int2(1,0), status);
|
||||
float4 txval401 = g_tTex2df4 . GatherCmp(g_sSampCmp, c2, 0.75, int2(1,0));
|
||||
int4 txval411 = g_tTex2di4 . GatherCmp(g_sSampCmp, c2, 0.75, int2(1,-1));
|
||||
uint4 txval421 = g_tTex2du4 . GatherCmp(g_sSampCmp, c2, 0.75, int2(1,1));
|
||||
|
||||
// GatherCmpGreen not implemented pending OpImageDrefGather component input
|
||||
// float4 txval101 = g_tTex2df4 . GatherCmpGreen(g_sSampCmp, c2, 0.75, int2(1,0));
|
||||
|
@ -36,6 +36,10 @@ PS_OUTPUT main()
|
||||
|
||||
// no 1D gathers
|
||||
|
||||
float4 txval401 = g_tTex2df4a . GatherCmp(g_sSampCmp, c3, 0.75, o2);
|
||||
int4 txval411 = g_tTex2di4a . GatherCmp(g_sSampCmp, c3, 0.75, o2);
|
||||
uint4 txval421 = g_tTex2du4a . GatherCmp(g_sSampCmp, c3, 0.75, o2);
|
||||
|
||||
float4 txval001 = g_tTex2df4a . GatherCmpRed(g_sSampCmp, c3, 0.75, o2);
|
||||
int4 txval011 = g_tTex2di4a . GatherCmpRed(g_sSampCmp, c3, 0.75, o2);
|
||||
uint4 txval021 = g_tTex2du4a . GatherCmpRed(g_sSampCmp, c3, 0.75, o2);
|
||||
|
@ -111,7 +111,8 @@ bool IsIllegalSample(const glslang::TString& name, const char* argOrder, int dim
|
||||
name == "GatherAlpha");
|
||||
|
||||
const bool isGatherCmp =
|
||||
(name == "GatherCmpRed" ||
|
||||
(name == "GatherCmp" ||
|
||||
name == "GatherCmpRed" ||
|
||||
name == "GatherCmpGreen" ||
|
||||
name == "GatherCmpBlue" ||
|
||||
name == "GatherCmpAlpha");
|
||||
@ -824,6 +825,12 @@ void TBuiltInParseablesHlsl::initialize(int /*version*/, EProfile /*profile*/, c
|
||||
{ "GatherAlpha", /* O-4 */ "V4", nullptr, "%@,S,V,,,,", "FIU,S,F,I,,,", EShLangAll, true },
|
||||
{ "GatherAlpha", /* O-4, status */"V4", nullptr, "%@,S,V,,,,,S", "FIU,S,F,I,,,,U", EShLangAll, true },
|
||||
|
||||
{ "GatherCmp", /*!O*/ "V4", nullptr, "%@,S,V,S", "FIU,s,F,", EShLangAll, true },
|
||||
{ "GatherCmp", /* O*/ "V4", nullptr, "%@,S,V,S,V", "FIU,s,F,,I", EShLangAll, true },
|
||||
{ "GatherCmp", /* O, status*/ "V4", nullptr, "%@,S,V,S,V,>S", "FIU,s,F,,I,U", EShLangAll, true },
|
||||
{ "GatherCmp", /* O-4 */ "V4", nullptr, "%@,S,V,S,V,,,", "FIU,s,F,,I,,,", EShLangAll, true },
|
||||
{ "GatherCmp", /* O-4, status */"V4", nullptr, "%@,S,V,S,V,,V,S","FIU,s,F,,I,,,,U",EShLangAll, true },
|
||||
|
||||
{ "GatherCmpRed", /*!O*/ "V4", nullptr, "%@,S,V,S", "FIU,s,F,", EShLangAll, true },
|
||||
{ "GatherCmpRed", /* O*/ "V4", nullptr, "%@,S,V,S,V", "FIU,s,F,,I", EShLangAll, true },
|
||||
{ "GatherCmpRed", /* O, status*/ "V4", nullptr, "%@,S,V,S,V,>S", "FIU,s,F,,I,U", EShLangAll, true },
|
||||
@ -1203,6 +1210,7 @@ void TBuiltInParseablesHlsl::identifyBuiltIns(int /*version*/, EProfile /*profil
|
||||
symbolTable.relateToOperator(BUILTIN_PREFIX "GatherGreen", EOpMethodGatherGreen);
|
||||
symbolTable.relateToOperator(BUILTIN_PREFIX "GatherBlue", EOpMethodGatherBlue);
|
||||
symbolTable.relateToOperator(BUILTIN_PREFIX "GatherAlpha", EOpMethodGatherAlpha);
|
||||
symbolTable.relateToOperator(BUILTIN_PREFIX "GatherCmp", EOpMethodGatherCmpRed); // alias
|
||||
symbolTable.relateToOperator(BUILTIN_PREFIX "GatherCmpRed", EOpMethodGatherCmpRed);
|
||||
symbolTable.relateToOperator(BUILTIN_PREFIX "GatherCmpGreen", EOpMethodGatherCmpGreen);
|
||||
symbolTable.relateToOperator(BUILTIN_PREFIX "GatherCmpBlue", EOpMethodGatherCmpBlue);
|
||||
|
Loading…
Reference in New Issue
Block a user