mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-09 20:10:06 +00:00
SPIRV: Fix some disassembly issues
- OpExecutionModeId is not supported in disassembly. - Some execution modes are missing in disassembled strings.
This commit is contained in:
parent
517f39eee4
commit
2d66614c0a
@ -134,7 +134,7 @@ const char* MemoryString(int mem)
|
||||
}
|
||||
}
|
||||
|
||||
const int ExecutionModeCeiling = 33;
|
||||
const int ExecutionModeCeiling = 40;
|
||||
|
||||
const char* ExecutionModeString(int mode)
|
||||
{
|
||||
@ -173,7 +173,21 @@ const char* ExecutionModeString(int mode)
|
||||
case 31: return "ContractionOff";
|
||||
case 32: return "Bad";
|
||||
|
||||
case 4446: return "PostDepthCoverage";
|
||||
case ExecutionModeInitializer: return "Initializer";
|
||||
case ExecutionModeFinalizer: return "Finalizer";
|
||||
case ExecutionModeSubgroupSize: return "SubgroupSize";
|
||||
case ExecutionModeSubgroupsPerWorkgroup: return "SubgroupsPerWorkgroup";
|
||||
case ExecutionModeSubgroupsPerWorkgroupId: return "SubgroupsPerWorkgroupId";
|
||||
case ExecutionModeLocalSizeId: return "LocalSizeId";
|
||||
case ExecutionModeLocalSizeHintId: return "LocalSizeHintId";
|
||||
|
||||
case ExecutionModePostDepthCoverage: return "PostDepthCoverage";
|
||||
case ExecutionModeDenormPreserve: return "DenormPreserve";
|
||||
case ExecutionModeDenormFlushToZero: return "DenormFlushToZero";
|
||||
case ExecutionModeSignedZeroInfNanPreserve: return "SignedZeroInfNanPreserve";
|
||||
case ExecutionModeRoundingModeRTE: return "RoundingModeRTE";
|
||||
case ExecutionModeRoundingModeRTZ: return "RoundingModeRTZ";
|
||||
case ExecutionModeStencilRefReplacingEXT: return "StencilRefReplacingEXT";
|
||||
|
||||
case ExecutionModeOutputLinesNV: return "OutputLinesNV";
|
||||
case ExecutionModeOutputPrimitivesNV: return "OutputPrimitivesNV";
|
||||
@ -188,6 +202,11 @@ const char* ExecutionModeString(int mode)
|
||||
case ExecutionModeShadingRateInterlockOrderedEXT: return "ShadingRateInterlockOrderedEXT";
|
||||
case ExecutionModeShadingRateInterlockUnorderedEXT: return "ShadingRateInterlockUnorderedEXT";
|
||||
|
||||
case ExecutionModeMaxWorkgroupSizeINTEL: return "MaxWorkgroupSizeINTEL";
|
||||
case ExecutionModeMaxWorkDimINTEL: return "MaxWorkDimINTEL";
|
||||
case ExecutionModeNoGlobalOffsetINTEL: return "NoGlobalOffsetINTEL";
|
||||
case ExecutionModeNumSIMDWorkitemsINTEL: return "NumSIMDWorkitemsINTEL";
|
||||
|
||||
case ExecutionModeCeiling:
|
||||
default: return "Bad";
|
||||
}
|
||||
@ -1272,6 +1291,7 @@ const char* OpcodeString(int op)
|
||||
case 320: return "OpImageSparseRead";
|
||||
|
||||
case OpModuleProcessed: return "OpModuleProcessed";
|
||||
case OpExecutionModeId: return "OpExecutionModeId";
|
||||
case OpDecorateId: return "OpDecorateId";
|
||||
|
||||
case 333: return "OpGroupNonUniformElect";
|
||||
@ -1423,6 +1443,7 @@ void Parameterize()
|
||||
InstructionDesc[OpMemoryModel].setResultAndType(false, false);
|
||||
InstructionDesc[OpEntryPoint].setResultAndType(false, false);
|
||||
InstructionDesc[OpExecutionMode].setResultAndType(false, false);
|
||||
InstructionDesc[OpExecutionModeId].setResultAndType(false, false);
|
||||
InstructionDesc[OpTypeVoid].setResultAndType(true, false);
|
||||
InstructionDesc[OpTypeBool].setResultAndType(true, false);
|
||||
InstructionDesc[OpTypeInt].setResultAndType(true, false);
|
||||
@ -1609,6 +1630,10 @@ void Parameterize()
|
||||
InstructionDesc[OpExecutionMode].operands.push(OperandExecutionMode, "'Mode'");
|
||||
InstructionDesc[OpExecutionMode].operands.push(OperandOptionalLiteral, "See <<Execution_Mode,Execution Mode>>");
|
||||
|
||||
InstructionDesc[OpExecutionModeId].operands.push(OperandId, "'Entry Point'");
|
||||
InstructionDesc[OpExecutionModeId].operands.push(OperandExecutionMode, "'Mode'");
|
||||
InstructionDesc[OpExecutionModeId].operands.push(OperandVariableIds, "See <<Execution_Mode,Execution Mode>>");
|
||||
|
||||
InstructionDesc[OpTypeInt].operands.push(OperandLiteralNumber, "'Width'");
|
||||
InstructionDesc[OpTypeInt].operands.push(OperandLiteralNumber, "'Signedness'");
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user