Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 0 additions & 31 deletions docs/DXIL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2342,18 +2342,6 @@ ID Name Description
223 TextureGatherRaw Gather raw elements from 4 texels with no type conversions (SRV type is constrained)
224 SampleCmpLevel samples a texture and compares a single component against the specified comparison value
225 TextureStoreSample stores texel data at specified sample index
226 Reserved0 reserved
227 Reserved1 reserved
228 Reserved2 reserved
229 Reserved3 reserved
230 Reserved4 reserved
231 Reserved5 reserved
232 Reserved6 reserved
233 Reserved7 reserved
234 Reserved8 reserved
235 Reserved9 reserved
236 Reserved10 reserved
237 Reserved11 reserved
238 AllocateNodeOutputRecords returns a handle for the output records
239 GetNodeRecordPtr retrieve node input/output record pointer in address space 6
240 IncrementOutputCount Select the next logical output count for an EmptyNodeOutput for the whole group or per thread.
Expand All @@ -2375,9 +2363,6 @@ ID Name Description
256 StartVertexLocation returns the BaseVertexLocation from DrawIndexedInstanced or StartVertexLocation from DrawInstanced
257 StartInstanceLocation returns the StartInstanceLocation from Draw*Instanced
258 AllocateRayQuery2 allocates space for RayQuery and return handle
259 ReservedA0 reserved
260 ReservedA1 reserved
261 ReservedA2 reserved
262 HitObject_TraceRay Analogous to TraceRay but without invoking CH/MS and returns the intermediate state as a HitObject
263 HitObject_FromRayQuery Creates a new HitObject representing a committed hit from a RayQuery
264 HitObject_FromRayQueryWithAttrs Creates a new HitObject representing a committed hit from a RayQuery and committed attributes
Expand Down Expand Up @@ -2406,19 +2391,6 @@ ID Name Description
287 HitObject_SetShaderTableIndex Returns a HitObject with updated shader table index
288 HitObject_LoadLocalRootTableConstant Returns the root table constant for this HitObject and offset
289 HitObject_Attributes Returns the attributes set for this HitObject
290 ReservedB28 reserved
291 ReservedB29 reserved
292 ReservedB30 reserved
293 ReservedC0 reserved
294 ReservedC1 reserved
295 ReservedC2 reserved
296 ReservedC3 reserved
297 ReservedC4 reserved
298 ReservedC5 reserved
299 ReservedC6 reserved
300 ReservedC7 reserved
301 ReservedC8 reserved
302 ReservedC9 reserved
303 RawBufferVectorLoad reads from a raw buffer and structured buffer
304 RawBufferVectorStore writes to a RWByteAddressBuffer or RWStructuredBuffer
305 MatVecMul Multiplies a MxK dimension matrix and a K sized input vector
Expand Down Expand Up @@ -3095,9 +3067,6 @@ ID Name Description
2147483675 MatrixAccumulateToDescriptor accumulates a matrix to a RWByteAddressBuffer
2147483676 MatrixAccumulateToMemory accumulates a matrix to groupshared memory
2147483677 MatrixOuterProduct Outer products an M sized vector and a K sized vector producing an MxK matrix
2147483678 LinAlgMatrixReserved0 reserved
2147483679 LinAlgMatrixReserved1 reserved
2147483680 LinAlgMatrixReserved2 reserved
2147483681 DebugBreak triggers a breakpoint if a debugger is attached
2147483682 IsDebuggerPresent returns true if a debugger is attached
========== ======================================== ===================================================================================================================
Expand Down
48 changes: 7 additions & 41 deletions include/dxc/DXIL/DxilConstants.h
Original file line number Diff line number Diff line change
Expand Up @@ -511,11 +511,6 @@ namespace ExperimentalOps {
static const OpCodeTableID TableID = OpCodeTableID::ExperimentalOps;
// Enumeration for ExperimentalOps DXIL operations
enum class OpCode : unsigned {
//
LinAlgMatrixReserved0 = 30, // reserved
LinAlgMatrixReserved1 = 31, // reserved
LinAlgMatrixReserved2 = 32, // reserved

// Debugging
DebugBreak = 33, // triggers a breakpoint if a debugger is attached
IsDebuggerPresent = 34, // returns true if a debugger is attached
Expand Down Expand Up @@ -584,6 +579,9 @@ enum class OpCode : unsigned {
HitObject_TriangleObjectPosition =
10, // returns triangle vertices in object space as <9 x float>

// Reserved values:
// 30, 31, 32

NumOpCodes = 35, // exclusive last value of enumeration
};
} // namespace ExperimentalOps
Expand All @@ -599,36 +597,6 @@ static const unsigned NumOpCodeTables = 2;
// OPCODE-ENUM:BEGIN
// Enumeration for CoreOps DXIL operations
enum class OpCode : unsigned {
//
Reserved0 = 226, // reserved
Reserved1 = 227, // reserved
Reserved10 = 236, // reserved
Reserved11 = 237, // reserved
Reserved2 = 228, // reserved
Reserved3 = 229, // reserved
Reserved4 = 230, // reserved
Reserved5 = 231, // reserved
Reserved6 = 232, // reserved
Reserved7 = 233, // reserved
Reserved8 = 234, // reserved
Reserved9 = 235, // reserved
ReservedA0 = 259, // reserved
ReservedA1 = 260, // reserved
ReservedA2 = 261, // reserved
ReservedB28 = 290, // reserved
ReservedB29 = 291, // reserved
ReservedB30 = 292, // reserved
ReservedC0 = 293, // reserved
ReservedC1 = 294, // reserved
ReservedC2 = 295, // reserved
ReservedC3 = 296, // reserved
ReservedC4 = 297, // reserved
ReservedC5 = 298, // reserved
ReservedC6 = 299, // reserved
ReservedC7 = 300, // reserved
ReservedC8 = 301, // reserved
ReservedC9 = 302, // reserved

// Amplification shader instructions
DispatchMesh = 173, // Amplification shader intrinsic DispatchMesh

Expand Down Expand Up @@ -1182,6 +1150,10 @@ enum class OpCode : unsigned {
OutputComplete =
241, // indicates all outputs for a given records are complete

// Reserved values:
// 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 259, 260, 261,
// 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302

NumOpCodes_Dxil_1_0 = 137,
NumOpCodes_Dxil_1_1 = 139,
NumOpCodes_Dxil_1_2 = 141,
Expand Down Expand Up @@ -1322,12 +1294,6 @@ enum class OpCode : unsigned {
EXP_OPCODE(ExperimentalOps,
MatrixOuterProduct), // Outer products an M sized vector and a K
// sized vector producing an MxK matrix
// LinAlgMatrixReserved0 = 0x8000001E, 2147483678U, -2147483618
EXP_OPCODE(ExperimentalOps, LinAlgMatrixReserved0), // reserved
// LinAlgMatrixReserved1 = 0x8000001F, 2147483679U, -2147483617
EXP_OPCODE(ExperimentalOps, LinAlgMatrixReserved1), // reserved
// LinAlgMatrixReserved2 = 0x80000020, 2147483680U, -2147483616
EXP_OPCODE(ExperimentalOps, LinAlgMatrixReserved2), // reserved
// DebugBreak = 0x80000021, 2147483681U, -2147483615
EXP_OPCODE(ExperimentalOps,
DebugBreak), // triggers a breakpoint if a debugger is attached
Expand Down
1 change: 1 addition & 0 deletions include/dxc/DXIL/DxilOperations.h
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,7 @@ class OP {
unsigned *OptTableIndex = nullptr);
static bool IsValidOpCode(unsigned EncodedOpCode);
static bool IsValidOpCode(OpCode EncodedOpCode);
static bool IsReservedOpCode(unsigned EncodedOpCode);

private:
// Static properties.
Expand Down
Loading