1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
|
#include "dxbc_names.h"
namespace dxvk {
std::ostream& operator << (std::ostream& os, DxbcOpcode e) {
switch (e) {
ENUM_NAME(DxbcOpcode::Add);
ENUM_NAME(DxbcOpcode::And);
ENUM_NAME(DxbcOpcode::Break);
ENUM_NAME(DxbcOpcode::Breakc);
ENUM_NAME(DxbcOpcode::Call);
ENUM_NAME(DxbcOpcode::Callc);
ENUM_NAME(DxbcOpcode::Case);
ENUM_NAME(DxbcOpcode::Continue);
ENUM_NAME(DxbcOpcode::Continuec);
ENUM_NAME(DxbcOpcode::Cut);
ENUM_NAME(DxbcOpcode::Default);
ENUM_NAME(DxbcOpcode::DerivRtx);
ENUM_NAME(DxbcOpcode::DerivRty);
ENUM_NAME(DxbcOpcode::Discard);
ENUM_NAME(DxbcOpcode::Div);
ENUM_NAME(DxbcOpcode::Dp2);
ENUM_NAME(DxbcOpcode::Dp3);
ENUM_NAME(DxbcOpcode::Dp4);
ENUM_NAME(DxbcOpcode::Else);
ENUM_NAME(DxbcOpcode::Emit);
ENUM_NAME(DxbcOpcode::EmitThenCut);
ENUM_NAME(DxbcOpcode::EndIf);
ENUM_NAME(DxbcOpcode::EndLoop);
ENUM_NAME(DxbcOpcode::EndSwitch);
ENUM_NAME(DxbcOpcode::Eq);
ENUM_NAME(DxbcOpcode::Exp);
ENUM_NAME(DxbcOpcode::Frc);
ENUM_NAME(DxbcOpcode::FtoI);
ENUM_NAME(DxbcOpcode::FtoU);
ENUM_NAME(DxbcOpcode::Ge);
ENUM_NAME(DxbcOpcode::IAdd);
ENUM_NAME(DxbcOpcode::If);
ENUM_NAME(DxbcOpcode::IEq);
ENUM_NAME(DxbcOpcode::IGe);
ENUM_NAME(DxbcOpcode::ILt);
ENUM_NAME(DxbcOpcode::IMad);
ENUM_NAME(DxbcOpcode::IMax);
ENUM_NAME(DxbcOpcode::IMin);
ENUM_NAME(DxbcOpcode::IMul);
ENUM_NAME(DxbcOpcode::INe);
ENUM_NAME(DxbcOpcode::INeg);
ENUM_NAME(DxbcOpcode::IShl);
ENUM_NAME(DxbcOpcode::IShr);
ENUM_NAME(DxbcOpcode::ItoF);
ENUM_NAME(DxbcOpcode::Label);
ENUM_NAME(DxbcOpcode::Ld);
ENUM_NAME(DxbcOpcode::LdMs);
ENUM_NAME(DxbcOpcode::Log);
ENUM_NAME(DxbcOpcode::Loop);
ENUM_NAME(DxbcOpcode::Lt);
ENUM_NAME(DxbcOpcode::Mad);
ENUM_NAME(DxbcOpcode::Min);
ENUM_NAME(DxbcOpcode::Max);
ENUM_NAME(DxbcOpcode::CustomData);
ENUM_NAME(DxbcOpcode::Mov);
ENUM_NAME(DxbcOpcode::Movc);
ENUM_NAME(DxbcOpcode::Mul);
ENUM_NAME(DxbcOpcode::Ne);
ENUM_NAME(DxbcOpcode::Nop);
ENUM_NAME(DxbcOpcode::Not);
ENUM_NAME(DxbcOpcode::Or);
ENUM_NAME(DxbcOpcode::ResInfo);
ENUM_NAME(DxbcOpcode::Ret);
ENUM_NAME(DxbcOpcode::Retc);
ENUM_NAME(DxbcOpcode::RoundNe);
ENUM_NAME(DxbcOpcode::RoundNi);
ENUM_NAME(DxbcOpcode::RoundPi);
ENUM_NAME(DxbcOpcode::RoundZ);
ENUM_NAME(DxbcOpcode::Rsq);
ENUM_NAME(DxbcOpcode::Sample);
ENUM_NAME(DxbcOpcode::SampleC);
ENUM_NAME(DxbcOpcode::SampleClz);
ENUM_NAME(DxbcOpcode::SampleL);
ENUM_NAME(DxbcOpcode::SampleD);
ENUM_NAME(DxbcOpcode::SampleB);
ENUM_NAME(DxbcOpcode::Sqrt);
ENUM_NAME(DxbcOpcode::Switch);
ENUM_NAME(DxbcOpcode::SinCos);
ENUM_NAME(DxbcOpcode::UDiv);
ENUM_NAME(DxbcOpcode::ULt);
ENUM_NAME(DxbcOpcode::UGe);
ENUM_NAME(DxbcOpcode::UMul);
ENUM_NAME(DxbcOpcode::UMad);
ENUM_NAME(DxbcOpcode::UMax);
ENUM_NAME(DxbcOpcode::UMin);
ENUM_NAME(DxbcOpcode::UShr);
ENUM_NAME(DxbcOpcode::UtoF);
ENUM_NAME(DxbcOpcode::Xor);
ENUM_NAME(DxbcOpcode::DclResource);
ENUM_NAME(DxbcOpcode::DclConstantBuffer);
ENUM_NAME(DxbcOpcode::DclSampler);
ENUM_NAME(DxbcOpcode::DclIndexRange);
ENUM_NAME(DxbcOpcode::DclGsOutputPrimitiveTopology);
ENUM_NAME(DxbcOpcode::DclGsInputPrimitive);
ENUM_NAME(DxbcOpcode::DclMaxOutputVertexCount);
ENUM_NAME(DxbcOpcode::DclInput);
ENUM_NAME(DxbcOpcode::DclInputSgv);
ENUM_NAME(DxbcOpcode::DclInputSiv);
ENUM_NAME(DxbcOpcode::DclInputPs);
ENUM_NAME(DxbcOpcode::DclInputPsSgv);
ENUM_NAME(DxbcOpcode::DclInputPsSiv);
ENUM_NAME(DxbcOpcode::DclOutput);
ENUM_NAME(DxbcOpcode::DclOutputSgv);
ENUM_NAME(DxbcOpcode::DclOutputSiv);
ENUM_NAME(DxbcOpcode::DclTemps);
ENUM_NAME(DxbcOpcode::DclIndexableTemp);
ENUM_NAME(DxbcOpcode::DclGlobalFlags);
ENUM_NAME(DxbcOpcode::Reserved0);
ENUM_NAME(DxbcOpcode::Lod);
ENUM_NAME(DxbcOpcode::Gather4);
ENUM_NAME(DxbcOpcode::SamplePos);
ENUM_NAME(DxbcOpcode::SampleInfo);
ENUM_NAME(DxbcOpcode::Reserved1);
ENUM_NAME(DxbcOpcode::HsDecls);
ENUM_NAME(DxbcOpcode::HsControlPointPhase);
ENUM_NAME(DxbcOpcode::HsForkPhase);
ENUM_NAME(DxbcOpcode::HsJoinPhase);
ENUM_NAME(DxbcOpcode::EmitStream);
ENUM_NAME(DxbcOpcode::CutStream);
ENUM_NAME(DxbcOpcode::EmitThenCutStream);
ENUM_NAME(DxbcOpcode::InterfaceCall);
ENUM_NAME(DxbcOpcode::BufInfo);
ENUM_NAME(DxbcOpcode::DerivRtxCoarse);
ENUM_NAME(DxbcOpcode::DerivRtxFine);
ENUM_NAME(DxbcOpcode::DerivRtyCoarse);
ENUM_NAME(DxbcOpcode::DerivRtyFine);
ENUM_NAME(DxbcOpcode::Gather4C);
ENUM_NAME(DxbcOpcode::Gather4Po);
ENUM_NAME(DxbcOpcode::Gather4PoC);
ENUM_NAME(DxbcOpcode::Rcp);
ENUM_NAME(DxbcOpcode::F32toF16);
ENUM_NAME(DxbcOpcode::F16toF32);
ENUM_NAME(DxbcOpcode::UAddc);
ENUM_NAME(DxbcOpcode::USubb);
ENUM_NAME(DxbcOpcode::CountBits);
ENUM_NAME(DxbcOpcode::FirstBitHi);
ENUM_NAME(DxbcOpcode::FirstBitLo);
ENUM_NAME(DxbcOpcode::FirstBitShi);
ENUM_NAME(DxbcOpcode::UBfe);
ENUM_NAME(DxbcOpcode::IBfe);
ENUM_NAME(DxbcOpcode::Bfi);
ENUM_NAME(DxbcOpcode::BfRev);
ENUM_NAME(DxbcOpcode::Swapc);
ENUM_NAME(DxbcOpcode::DclStream);
ENUM_NAME(DxbcOpcode::DclFunctionBody);
ENUM_NAME(DxbcOpcode::DclFunctionTable);
ENUM_NAME(DxbcOpcode::DclInterface);
ENUM_NAME(DxbcOpcode::DclInputControlPointCount);
ENUM_NAME(DxbcOpcode::DclOutputControlPointCount);
ENUM_NAME(DxbcOpcode::DclTessDomain);
ENUM_NAME(DxbcOpcode::DclTessPartitioning);
ENUM_NAME(DxbcOpcode::DclTessOutputPrimitive);
ENUM_NAME(DxbcOpcode::DclHsMaxTessFactor);
ENUM_NAME(DxbcOpcode::DclHsForkPhaseInstanceCount);
ENUM_NAME(DxbcOpcode::DclHsJoinPhaseInstanceCount);
ENUM_NAME(DxbcOpcode::DclThreadGroup);
ENUM_NAME(DxbcOpcode::DclUavTyped);
ENUM_NAME(DxbcOpcode::DclUavRaw);
ENUM_NAME(DxbcOpcode::DclUavStructured);
ENUM_NAME(DxbcOpcode::DclThreadGroupSharedMemoryRaw);
ENUM_NAME(DxbcOpcode::DclThreadGroupSharedMemoryStructured);
ENUM_NAME(DxbcOpcode::DclResourceRaw);
ENUM_NAME(DxbcOpcode::DclResourceStructured);
ENUM_NAME(DxbcOpcode::LdUavTyped);
ENUM_NAME(DxbcOpcode::StoreUavTyped);
ENUM_NAME(DxbcOpcode::LdRaw);
ENUM_NAME(DxbcOpcode::StoreRaw);
ENUM_NAME(DxbcOpcode::LdStructured);
ENUM_NAME(DxbcOpcode::StoreStructured);
ENUM_NAME(DxbcOpcode::AtomicAnd);
ENUM_NAME(DxbcOpcode::AtomicOr);
ENUM_NAME(DxbcOpcode::AtomicXor);
ENUM_NAME(DxbcOpcode::AtomicCmpStore);
ENUM_NAME(DxbcOpcode::AtomicIAdd);
ENUM_NAME(DxbcOpcode::AtomicIMax);
ENUM_NAME(DxbcOpcode::AtomicIMin);
ENUM_NAME(DxbcOpcode::AtomicUMax);
ENUM_NAME(DxbcOpcode::AtomicUMin);
ENUM_NAME(DxbcOpcode::ImmAtomicAlloc);
ENUM_NAME(DxbcOpcode::ImmAtomicConsume);
ENUM_NAME(DxbcOpcode::ImmAtomicIAdd);
ENUM_NAME(DxbcOpcode::ImmAtomicAnd);
ENUM_NAME(DxbcOpcode::ImmAtomicOr);
ENUM_NAME(DxbcOpcode::ImmAtomicXor);
ENUM_NAME(DxbcOpcode::ImmAtomicExch);
ENUM_NAME(DxbcOpcode::ImmAtomicCmpExch);
ENUM_NAME(DxbcOpcode::ImmAtomicIMax);
ENUM_NAME(DxbcOpcode::ImmAtomicIMin);
ENUM_NAME(DxbcOpcode::ImmAtomicUMax);
ENUM_NAME(DxbcOpcode::ImmAtomicUMin);
ENUM_NAME(DxbcOpcode::Sync);
ENUM_NAME(DxbcOpcode::DAdd);
ENUM_NAME(DxbcOpcode::DMax);
ENUM_NAME(DxbcOpcode::DMin);
ENUM_NAME(DxbcOpcode::DMul);
ENUM_NAME(DxbcOpcode::DEq);
ENUM_NAME(DxbcOpcode::DGe);
ENUM_NAME(DxbcOpcode::DLt);
ENUM_NAME(DxbcOpcode::DNe);
ENUM_NAME(DxbcOpcode::DMov);
ENUM_NAME(DxbcOpcode::DMovc);
ENUM_NAME(DxbcOpcode::DtoF);
ENUM_NAME(DxbcOpcode::FtoD);
ENUM_NAME(DxbcOpcode::EvalSnapped);
ENUM_NAME(DxbcOpcode::EvalSampleIndex);
ENUM_NAME(DxbcOpcode::EvalCentroid);
ENUM_NAME(DxbcOpcode::DclGsInstanceCount);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcExtOpcode e) {
switch (e) {
ENUM_NAME(DxbcExtOpcode::Empty);
ENUM_NAME(DxbcExtOpcode::SampleControls);
ENUM_NAME(DxbcExtOpcode::ResourceDim);
ENUM_NAME(DxbcExtOpcode::ResourceReturnType);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcOperandType e) {
switch (e) {
ENUM_NAME(DxbcOperandType::Temp);
ENUM_NAME(DxbcOperandType::Input);
ENUM_NAME(DxbcOperandType::Output);
ENUM_NAME(DxbcOperandType::IndexableTemp);
ENUM_NAME(DxbcOperandType::Imm32);
ENUM_NAME(DxbcOperandType::Imm64);
ENUM_NAME(DxbcOperandType::Sampler);
ENUM_NAME(DxbcOperandType::Resource);
ENUM_NAME(DxbcOperandType::ConstantBuffer);
ENUM_NAME(DxbcOperandType::ImmediateConstantBuffer);
ENUM_NAME(DxbcOperandType::Label);
ENUM_NAME(DxbcOperandType::InputPrimitiveId);
ENUM_NAME(DxbcOperandType::OutputDepth);
ENUM_NAME(DxbcOperandType::Null);
ENUM_NAME(DxbcOperandType::Rasterizer);
ENUM_NAME(DxbcOperandType::OutputCoverageMask);
ENUM_NAME(DxbcOperandType::Stream);
ENUM_NAME(DxbcOperandType::FunctionBody);
ENUM_NAME(DxbcOperandType::FunctionTable);
ENUM_NAME(DxbcOperandType::Interface);
ENUM_NAME(DxbcOperandType::FunctionInput);
ENUM_NAME(DxbcOperandType::FunctionOutput);
ENUM_NAME(DxbcOperandType::OutputControlPointId);
ENUM_NAME(DxbcOperandType::InputForkInstanceId);
ENUM_NAME(DxbcOperandType::InputJoinInstanceId);
ENUM_NAME(DxbcOperandType::InputControlPoint);
ENUM_NAME(DxbcOperandType::OutputControlPoint);
ENUM_NAME(DxbcOperandType::InputPatchConstant);
ENUM_NAME(DxbcOperandType::InputDomainPoint);
ENUM_NAME(DxbcOperandType::ThisPointer);
ENUM_NAME(DxbcOperandType::UnorderedAccessView);
ENUM_NAME(DxbcOperandType::ThreadGroupSharedMemory);
ENUM_NAME(DxbcOperandType::InputThreadId);
ENUM_NAME(DxbcOperandType::InputThreadGroupId);
ENUM_NAME(DxbcOperandType::InputThreadIdInGroup);
ENUM_NAME(DxbcOperandType::InputCoverageMask);
ENUM_NAME(DxbcOperandType::InputThreadIndexInGroup);
ENUM_NAME(DxbcOperandType::InputGsInstanceId);
ENUM_NAME(DxbcOperandType::OutputDepthGe);
ENUM_NAME(DxbcOperandType::OutputDepthLe);
ENUM_NAME(DxbcOperandType::CycleCounter);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, dxvk::DxbcOperandExt e) {
switch (e) {
ENUM_NAME(DxbcOperandExt::OperandModifier);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcComponentCount e) {
switch (e) {
ENUM_NAME(DxbcComponentCount::Component0);
ENUM_NAME(DxbcComponentCount::Component1);
ENUM_NAME(DxbcComponentCount::Component4);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcRegMode e) {
switch (e) {
ENUM_NAME(DxbcRegMode::Mask);
ENUM_NAME(DxbcRegMode::Swizzle);
ENUM_NAME(DxbcRegMode::Select1);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcOperandIndexRepresentation e) {
switch (e) {
ENUM_NAME(DxbcOperandIndexRepresentation::Imm32);
ENUM_NAME(DxbcOperandIndexRepresentation::Imm64);
ENUM_NAME(DxbcOperandIndexRepresentation::Relative);
ENUM_NAME(DxbcOperandIndexRepresentation::Imm32Relative);
ENUM_NAME(DxbcOperandIndexRepresentation::Imm64Relative);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcResourceDim e) {
switch (e) {
ENUM_NAME(DxbcResourceDim::Unknown);
ENUM_NAME(DxbcResourceDim::Buffer);
ENUM_NAME(DxbcResourceDim::Texture1D);
ENUM_NAME(DxbcResourceDim::Texture2D);
ENUM_NAME(DxbcResourceDim::Texture2DMs);
ENUM_NAME(DxbcResourceDim::Texture3D);
ENUM_NAME(DxbcResourceDim::TextureCube);
ENUM_NAME(DxbcResourceDim::Texture1DArr);
ENUM_NAME(DxbcResourceDim::Texture2DArr);
ENUM_NAME(DxbcResourceDim::Texture2DMsArr);
ENUM_NAME(DxbcResourceDim::TextureCubeArr);
ENUM_NAME(DxbcResourceDim::RawBuffer);
ENUM_NAME(DxbcResourceDim::StructuredBuffer);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcResourceReturnType e) {
switch (e) {
ENUM_NAME(DxbcResourceReturnType::Unorm);
ENUM_NAME(DxbcResourceReturnType::Snorm);
ENUM_NAME(DxbcResourceReturnType::Sint);
ENUM_NAME(DxbcResourceReturnType::Uint);
ENUM_NAME(DxbcResourceReturnType::Float);
ENUM_NAME(DxbcResourceReturnType::Mixed);
ENUM_NAME(DxbcResourceReturnType::Double);
ENUM_NAME(DxbcResourceReturnType::Continued);
ENUM_NAME(DxbcResourceReturnType::Unused);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcRegisterComponentType e) {
switch (e) {
ENUM_NAME(DxbcRegisterComponentType::Unknown);
ENUM_NAME(DxbcRegisterComponentType::Uint32);
ENUM_NAME(DxbcRegisterComponentType::Sint32);
ENUM_NAME(DxbcRegisterComponentType::Float32);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcInstructionReturnType e) {
switch (e) {
ENUM_NAME(DxbcInstructionReturnType::Float);
ENUM_NAME(DxbcInstructionReturnType::Uint);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, DxbcSystemValue e) {
switch (e) {
ENUM_NAME(DxbcSystemValue::None);
ENUM_NAME(DxbcSystemValue::Position);
ENUM_NAME(DxbcSystemValue::ClipDistance);
ENUM_NAME(DxbcSystemValue::CullDistance);
ENUM_NAME(DxbcSystemValue::RenderTargetId);
ENUM_NAME(DxbcSystemValue::ViewportId);
ENUM_NAME(DxbcSystemValue::VertexId);
ENUM_NAME(DxbcSystemValue::PrimitiveId);
ENUM_NAME(DxbcSystemValue::InstanceId);
ENUM_NAME(DxbcSystemValue::IsFrontFace);
ENUM_NAME(DxbcSystemValue::SampleIndex);
ENUM_NAME(DxbcSystemValue::FinalQuadUeq0EdgeTessFactor);
ENUM_NAME(DxbcSystemValue::FinalQuadVeq0EdgeTessFactor);
ENUM_NAME(DxbcSystemValue::FinalQuadUeq1EdgeTessFactor);
ENUM_NAME(DxbcSystemValue::FinalQuadVeq1EdgeTessFactor);
ENUM_NAME(DxbcSystemValue::FinalQuadUInsideTessFactor);
ENUM_NAME(DxbcSystemValue::FinalQuadVInsideTessFactor);
ENUM_NAME(DxbcSystemValue::FinalTriUeq0EdgeTessFactor);
ENUM_NAME(DxbcSystemValue::FinalTriVeq0EdgeTessFactor);
ENUM_NAME(DxbcSystemValue::FinalTriWeq0EdgeTessFactor);
ENUM_NAME(DxbcSystemValue::FinalTriInsideTessFactor);
ENUM_NAME(DxbcSystemValue::FinalLineDetailTessFactor);
ENUM_NAME(DxbcSystemValue::FinalLineDensityTessFactor);
ENUM_NAME(DxbcSystemValue::Target);
ENUM_NAME(DxbcSystemValue::Depth);
ENUM_NAME(DxbcSystemValue::Coverage);
ENUM_NAME(DxbcSystemValue::DepthGe);
ENUM_NAME(DxbcSystemValue::DepthLe);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, dxvk::DxbcProgramType e) {
switch (e) {
ENUM_NAME(DxbcProgramType::PixelShader);
ENUM_NAME(DxbcProgramType::VertexShader);
ENUM_NAME(DxbcProgramType::GeometryShader);
ENUM_NAME(DxbcProgramType::HullShader);
ENUM_NAME(DxbcProgramType::DomainShader);
ENUM_NAME(DxbcProgramType::ComputeShader);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, dxvk::DxbcCustomDataClass e) {
switch (e) {
ENUM_NAME(DxbcCustomDataClass::Comment);
ENUM_NAME(DxbcCustomDataClass::DebugInfo);
ENUM_NAME(DxbcCustomDataClass::Opaque);
ENUM_NAME(DxbcCustomDataClass::ImmConstBuf);
ENUM_DEFAULT(e);
}
}
std::ostream& operator << (std::ostream& os, dxvk::DxbcScalarType e) {
switch (e) {
ENUM_NAME(DxbcScalarType::Uint32);
ENUM_NAME(DxbcScalarType::Uint64);
ENUM_NAME(DxbcScalarType::Sint32);
ENUM_NAME(DxbcScalarType::Sint64);
ENUM_NAME(DxbcScalarType::Float32);
ENUM_NAME(DxbcScalarType::Float64);
ENUM_NAME(DxbcScalarType::Bool);
ENUM_DEFAULT(e);
}
}
} //namespace dxvk
|