Skip to content

Commit e85b327

Browse files
committed
Merge remote-tracking branch 'ms/main' into ser_dxiltraceinvoke_patch
2 parents c089c58 + 94f9275 commit e85b327

73 files changed

Lines changed: 4445 additions & 534 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

include/dxc/DXIL/DxilConstants.h

Lines changed: 48 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -502,33 +502,10 @@ enum class OpCode : unsigned {
502502
ReservedA0 = 259, // reserved
503503
ReservedA1 = 260, // reserved
504504
ReservedA2 = 261, // reserved
505-
ReservedB1 = 263, // reserved
506-
ReservedB10 = 272, // reserved
507-
ReservedB11 = 273, // reserved
508-
ReservedB12 = 274, // reserved
509-
ReservedB13 = 275, // reserved
510-
ReservedB14 = 276, // reserved
511-
ReservedB15 = 277, // reserved
512-
ReservedB16 = 278, // reserved
513-
ReservedB17 = 279, // reserved
514-
ReservedB18 = 280, // reserved
515-
ReservedB19 = 281, // reserved
516-
ReservedB2 = 264, // reserved
517-
ReservedB20 = 282, // reserved
518-
ReservedB21 = 283, // reserved
519-
ReservedB22 = 284, // reserved
520-
ReservedB23 = 285, // reserved
521-
ReservedB24 = 286, // reserved
522-
ReservedB25 = 287, // reserved
523-
ReservedB26 = 288, // reserved
524-
ReservedB27 = 289, // reserved
525505
ReservedB28 = 290, // reserved
526506
ReservedB29 = 291, // reserved
527507
ReservedB30 = 292, // reserved
528508
ReservedB6 = 268, // reserved
529-
ReservedB7 = 269, // reserved
530-
ReservedB8 = 270, // reserved
531-
ReservedB9 = 271, // reserved
532509
ReservedC0 = 293, // reserved
533510
ReservedC1 = 294, // reserved
534511
ReservedC2 = 295, // reserved
@@ -914,12 +891,46 @@ enum class OpCode : unsigned {
914891
// operation with a mipmap-level offset
915892

916893
// Shader Execution Reordering
917-
HitObject_Invoke = 267, // Represents the invocation of the CH/MS shader
918-
// represented by the HitObject
894+
HitObject_Attributes = 289, // Returns the attributes set for this HitObject
895+
HitObject_FromRayQuery = 263, // Creates a new HitObject representing a
896+
// committed hit from a RayQuery
897+
HitObject_FromRayQueryWithAttrs =
898+
264, // Creates a new HitObject representing a committed hit from a
899+
// RayQuery and committed attributes
900+
HitObject_GeometryIndex = 281, // Returns the geometry index committed on hit
901+
HitObject_HitKind = 285, // Returns the HitKind of the hit
902+
HitObject_InstanceID = 283, // Returns the instance id committed on hit
903+
HitObject_InstanceIndex = 282, // Returns the instance index committed on hit
904+
HitObject_Invoke = 267, // Represents the invocation of the CH/MS shader
905+
// represented by the HitObject
906+
HitObject_IsHit = 270, // Returns `true` if the HitObject is a NOP-HitObject
907+
HitObject_IsMiss = 269, // Returns `true` if the HitObject represents a miss
908+
HitObject_IsNop = 271, // Returns `true` if the HitObject represents a nop
909+
HitObject_LoadLocalRootTableConstant =
910+
288, // Returns the root table constant for this HitObject and offset
919911
HitObject_MakeMiss = 265, // Creates a new HitObject representing a miss
920912
HitObject_MakeNop = 266, // Creates an empty nop HitObject
913+
HitObject_ObjectRayDirection =
914+
278, // Returns the ray direction in object space
915+
HitObject_ObjectRayOrigin = 277, // Returns the ray origin in object space
916+
HitObject_ObjectToWorld3x4 = 279, // Returns the object to world space
917+
// transformation matrix in 3x4 form
918+
HitObject_PrimitiveIndex =
919+
284, // Returns the primitive index committed on hit
920+
HitObject_RayFlags = 272, // Returns the ray flags set in the HitObject
921+
HitObject_RayTCurrent =
922+
274, // Returns the current T value set in the HitObject
923+
HitObject_RayTMin = 273, // Returns the TMin value set in the HitObject
924+
HitObject_SetShaderTableIndex =
925+
287, // Returns a HitObject with updated shader table index
926+
HitObject_ShaderTableIndex =
927+
286, // Returns the shader table index set for this HitObject
921928
HitObject_TraceRay = 262, // Analogous to TraceRay but without invoking CH/MS
922929
// and returns the intermediate state as a HitObject
930+
HitObject_WorldRayDirection = 276, // Returns the ray direction in world space
931+
HitObject_WorldRayOrigin = 275, // Returns the ray origin in world space
932+
HitObject_WorldToObject3x4 = 280, // Returns the world to object space
933+
// transformation matrix in 3x4 form
923934

924935
// Synchronization
925936
AtomicBinOp = 78, // performs an atomic operation on two operands
@@ -1296,9 +1307,17 @@ enum class OpCodeClass : unsigned {
12961307
WriteSamplerFeedbackLevel,
12971308

12981309
// Shader Execution Reordering
1310+
HitObject_Attributes,
1311+
HitObject_FromRayQuery,
1312+
HitObject_FromRayQueryWithAttrs,
12991313
HitObject_Invoke,
1314+
HitObject_LoadLocalRootTableConstant,
13001315
HitObject_MakeMiss,
13011316
HitObject_MakeNop,
1317+
HitObject_SetShaderTableIndex,
1318+
HitObject_StateMatrix,
1319+
HitObject_StateScalar,
1320+
HitObject_StateVector,
13021321
HitObject_TraceRay,
13031322

13041323
// Synchronization
@@ -1365,7 +1384,7 @@ enum class OpCodeClass : unsigned {
13651384
NumOpClasses_Dxil_1_7 = 153,
13661385
NumOpClasses_Dxil_1_8 = 174,
13671386

1368-
NumOpClasses = 181 // exclusive last value of enumeration
1387+
NumOpClasses = 189 // exclusive last value of enumeration
13691388
};
13701389
// OPCODECLASS-ENUM:END
13711390

@@ -1909,7 +1928,9 @@ enum class BarrierSemanticFlag : uint32_t {
19091928
GroupSync = 0x00000001, // GROUP_SYNC
19101929
GroupScope = 0x00000002, // GROUP_SCOPE
19111930
DeviceScope = 0x00000004, // DEVICE_SCOPE
1912-
ValidMask = 0x00000007,
1931+
LegacyFlags = 0x00000007,
1932+
ReorderScope = 0x00000008, // REORDER_SCOPE
1933+
ValidMask = 0x0000000F,
19131934
GroupFlags = GroupSync | GroupScope,
19141935
};
19151936

0 commit comments

Comments
 (0)