From c2100ed816b06dff13acb025bb937565b9a51905 Mon Sep 17 00:00:00 2001 From: Jake Turner Date: Mon, 22 Apr 2024 11:17:45 +0100 Subject: [PATCH] Add DXIL 1.8 opcodes to funcSigs Generated using DirectShaderCompile python file "utils/hct/hctdb.py" for inst in db.instr: out = inst.name out += "(" for i in range(2,len(inst.ops)): if i > 2: out += "," op = inst.ops[i] out += op.name out += ")" print(out) --- .../driver/shaders/dxil/dxil_disassemble.cpp | 34 ++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp b/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp index 616665f0a..1e9784666 100644 --- a/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp +++ b/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp @@ -317,7 +317,39 @@ static const char *funcSigs[] = { "QuadVote(cond,op)", "TextureGatherRaw(srv,sampler,coord0,coord1,coord2,coord3,offset0,offset1)", "SampleCmpLevel(srv,sampler,coord0,coord1,coord2,coord3,offset0,offset1,offset2,compareValue,lod)", - "TextureStoreSample(srv,coord0,coord1,coord2,value0,value1,value2,value3,mask,sampleIdx)" + "TextureStoreSample(srv,coord0,coord1,coord2,value0,value1,value2,value3,mask,sampleIdx)", + "WaveMatrix_Annotate(waveMatrixPtr,waveMatProps)", + "WaveMatrix_Depth(waveMatProps)", + "WaveMatrix_Fill(waveMatrixPtr,value)", + "WaveMatrix_LoadRawBuf(waveMatrixPtr,rawBuf,offsetInBytes,strideInBytes,alignmentInBytes,colMajor)", + "WaveMatrix_LoadGroupShared(waveMatrixPtr,groupsharedPtr,startArrayIndex,strideInElements,colMajor)", + "WaveMatrix_StoreRawBuf(waveMatrixPtr,rawBuf,offsetInBytes,strideInBytes,alignmentInBytes,colMajor)", + "WaveMatrix_StoreGroupShared(waveMatrixPtr,groupsharedPtr,startArrayIndex,strideInElements,colMajor)", + "WaveMatrix_Multiply(waveMatrixAccumulator,waveMatrixLeft,waveMatrixRight)", + "WaveMatrix_MultiplyAccumulate(waveMatrixAccumulator,waveMatrixLeft,waveMatrixRight)", + "WaveMatrix_ScalarOp(waveMatrixPtr,op,value)", + "WaveMatrix_SumAccumulate(waveMatrixFragment,waveMatrixInput)", + "WaveMatrix_Add(waveMatrixAccumulator,waveMatrixAccumulatorOrFragment)", + "AllocateNodeOutputRecords(output,numRecords,perThread)", + "GetNodeRecordPtr(recordhandle,arrayIndex)", + "IncrementOutputCount(output,count,perThread)", + "OutputComplete(output)", + "GetInputRecordCount(input)", + "FinishedCrossGroupSharing(input)", + "BarrierByMemoryType(MemoryTypeFlags,SemanticFlags)", + "BarrierByMemoryHandle(object,SemanticFlags)", + "BarrierByNodeRecordHandle(object,SemanticFlags)", + "CreateNodeOutputHandle(MetadataIdx)", + "IndexNodeHandle(NodeOutputHandle,ArrayIndex)", + "AnnotateNodeHandle(node,props)", + "CreateNodeInputRecordHandle(MetadataIdx)", + "AnnotateNodeRecordHandle(noderecord,props)", + "NodeOutputIsValid(output)", + "GetRemainingRecursionLevels()", + "SampleCmpGrad(srv,sampler,coord0,coord1,coord2,coord3,offset0,offset1,offset2,compareValue,ddx0,ddx1,ddx2,ddy0,ddy1,ddy2,clamp)", + "SampleCmpBias(srv,sampler,coord0,coord1,coord2,coord3,offset0,offset1,offset2,compareValue,bias,clamp)", + "StartVertexLocation()", + "StartInstanceLocation()", }; // clang-format on