@@ -510,35 +510,9 @@ enum class OpCode : unsigned {
510510 ReservedA0 = 259 , // reserved
511511 ReservedA1 = 260 , // reserved
512512 ReservedA2 = 261 , // reserved
513- ReservedB0 = 262 , // reserved
514- ReservedB1 = 263 , // reserved
515- ReservedB10 = 272 , // reserved
516- ReservedB11 = 273 , // reserved
517- ReservedB12 = 274 , // reserved
518- ReservedB13 = 275 , // reserved
519- ReservedB14 = 276 , // reserved
520- ReservedB15 = 277 , // reserved
521- ReservedB16 = 278 , // reserved
522- ReservedB17 = 279 , // reserved
523- ReservedB18 = 280 , // reserved
524- ReservedB19 = 281 , // reserved
525- ReservedB2 = 264 , // reserved
526- ReservedB20 = 282 , // reserved
527- ReservedB21 = 283 , // reserved
528- ReservedB22 = 284 , // reserved
529- ReservedB23 = 285 , // reserved
530- ReservedB24 = 286 , // reserved
531- ReservedB25 = 287 , // reserved
532- ReservedB26 = 288 , // reserved
533- ReservedB27 = 289 , // reserved
534513 ReservedB28 = 290 , // reserved
535514 ReservedB29 = 291 , // reserved
536515 ReservedB30 = 292 , // reserved
537- ReservedB5 = 267 , // reserved
538- ReservedB6 = 268 , // reserved
539- ReservedB7 = 269 , // reserved
540- ReservedB8 = 270 , // reserved
541- ReservedB9 = 271 , // reserved
542516 ReservedC0 = 293 , // reserved
543517 ReservedC1 = 294 , // reserved
544518 ReservedC2 = 295 , // reserved
@@ -937,8 +911,47 @@ enum class OpCode : unsigned {
937911 // operation with a mipmap-level offset
938912
939913 // Shader Execution Reordering
914+ HitObject_Attributes = 289 , // Returns the attributes set for this HitObject
915+ HitObject_FromRayQuery = 263 , // Creates a new HitObject representing a
916+ // committed hit from a RayQuery
917+ HitObject_FromRayQueryWithAttrs =
918+ 264 , // Creates a new HitObject representing a committed hit from a
919+ // RayQuery and committed attributes
920+ HitObject_GeometryIndex = 281 , // Returns the geometry index committed on hit
921+ HitObject_HitKind = 285 , // Returns the HitKind of the hit
922+ HitObject_InstanceID = 283 , // Returns the instance id committed on hit
923+ HitObject_InstanceIndex = 282 , // Returns the instance index committed on hit
924+ HitObject_Invoke = 267 , // Represents the invocation of the CH/MS shader
925+ // represented by the HitObject
926+ HitObject_IsHit = 270 , // Returns `true` if the HitObject is a NOP-HitObject
927+ HitObject_IsMiss = 269 , // Returns `true` if the HitObject represents a miss
928+ HitObject_IsNop = 271 , // Returns `true` if the HitObject represents a nop
929+ HitObject_LoadLocalRootTableConstant =
930+ 288 , // Returns the root table constant for this HitObject and offset
940931 HitObject_MakeMiss = 265 , // Creates a new HitObject representing a miss
941932 HitObject_MakeNop = 266 , // Creates an empty nop HitObject
933+ HitObject_ObjectRayDirection =
934+ 278 , // Returns the ray direction in object space
935+ HitObject_ObjectRayOrigin = 277 , // Returns the ray origin in object space
936+ HitObject_ObjectToWorld3x4 = 279 , // Returns the object to world space
937+ // transformation matrix in 3x4 form
938+ HitObject_PrimitiveIndex =
939+ 284 , // Returns the primitive index committed on hit
940+ HitObject_RayFlags = 272 , // Returns the ray flags set in the HitObject
941+ HitObject_RayTCurrent =
942+ 274 , // Returns the current T value set in the HitObject
943+ HitObject_RayTMin = 273 , // Returns the TMin value set in the HitObject
944+ HitObject_SetShaderTableIndex =
945+ 287 , // Returns a HitObject with updated shader table index
946+ HitObject_ShaderTableIndex =
947+ 286 , // Returns the shader table index set for this HitObject
948+ HitObject_TraceRay = 262 , // Analogous to TraceRay but without invoking CH/MS
949+ // and returns the intermediate state as a HitObject
950+ HitObject_WorldRayDirection = 276 , // Returns the ray direction in world space
951+ HitObject_WorldRayOrigin = 275 , // Returns the ray origin in world space
952+ HitObject_WorldToObject3x4 = 280 , // Returns the world to object space
953+ // transformation matrix in 3x4 form
954+ MaybeReorderThread = 268 , // Reorders the current thread
942955
943956 // Synchronization
944957 AtomicBinOp = 78 , // performs an atomic operation on two operands
@@ -1321,8 +1334,19 @@ enum class OpCodeClass : unsigned {
13211334 WriteSamplerFeedbackLevel,
13221335
13231336 // Shader Execution Reordering
1337+ HitObject_Attributes,
1338+ HitObject_FromRayQuery,
1339+ HitObject_FromRayQueryWithAttrs,
1340+ HitObject_Invoke,
1341+ HitObject_LoadLocalRootTableConstant,
13241342 HitObject_MakeMiss,
13251343 HitObject_MakeNop,
1344+ HitObject_SetShaderTableIndex,
1345+ HitObject_StateMatrix,
1346+ HitObject_StateScalar,
1347+ HitObject_StateVector,
1348+ HitObject_TraceRay,
1349+ MaybeReorderThread,
13261350
13271351 // Synchronization
13281352 AtomicBinOp,
@@ -1388,7 +1412,7 @@ enum class OpCodeClass : unsigned {
13881412 NumOpClasses_Dxil_1_7 = 153 ,
13891413 NumOpClasses_Dxil_1_8 = 174 ,
13901414
1391- NumOpClasses = 183 // exclusive last value of enumeration
1415+ NumOpClasses = 194 // exclusive last value of enumeration
13921416};
13931417// OPCODECLASS-ENUM:END
13941418
@@ -1954,7 +1978,9 @@ enum class BarrierSemanticFlag : uint32_t {
19541978 GroupSync = 0x00000001 , // GROUP_SYNC
19551979 GroupScope = 0x00000002 , // GROUP_SCOPE
19561980 DeviceScope = 0x00000004 , // DEVICE_SCOPE
1957- ValidMask = 0x00000007 ,
1981+ LegacyFlags = 0x00000007 ,
1982+ ReorderScope = 0x00000008 , // REORDER_SCOPE
1983+ ValidMask = 0x0000000F ,
19581984 GroupFlags = GroupSync | GroupScope,
19591985};
19601986
0 commit comments