shader_recompiler/frontend: add information on instruction format assert

This commit is contained in:
Daniel R 2024-08-25 13:17:59 +02:00
parent 5691838eca
commit ba140b9680
No known key found for this signature in database
GPG Key ID: B8ADC8F57BA18DBA
1 changed files with 7 additions and 1 deletions

View File

@ -5,6 +5,10 @@
#include "common/assert.h" #include "common/assert.h"
#include "shader_recompiler/frontend/decode.h" #include "shader_recompiler/frontend/decode.h"
#define MAGIC_ENUM_RANGE_MIN 0
#define MAGIC_ENUM_RANGE_MAX 1515
#include "magic_enum.hpp"
namespace Shader::Gcn { namespace Shader::Gcn {
namespace bit { namespace bit {
@ -253,7 +257,9 @@ void GcnDecodeContext::updateInstructionMeta(InstEncoding encoding) {
ASSERT_MSG(instFormat.src_type != ScalarType::Undefined && ASSERT_MSG(instFormat.src_type != ScalarType::Undefined &&
instFormat.dst_type != ScalarType::Undefined, instFormat.dst_type != ScalarType::Undefined,
"TODO: Instruction format table not complete, please fix it manually."); "Instruction format table incomplete for opcode {} ({}, encoding = {})",
magic_enum::enum_name(m_instruction.opcode), u32(m_instruction.opcode),
magic_enum::enum_name(encoding));
m_instruction.inst_class = instFormat.inst_class; m_instruction.inst_class = instFormat.inst_class;
m_instruction.category = instFormat.inst_category; m_instruction.category = instFormat.inst_category;