Files
eden/src/shader_recompiler/frontend/ir/opcodes.cpp
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

37 lines
1.1 KiB
C++
Raw Normal View History

// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
2021-01-09 03:30:07 -03:00
2021-02-05 23:11:23 -03:00
#include "shader_recompiler/frontend/ir/opcodes.h"
2021-01-09 03:30:07 -03:00
namespace Shader::IR {
namespace Detail {
2026-07-31 23:14:58 -04:00
OpcodeMeta META_TABLE[] = {
#define OPCODE(name_token, type_token, ...) \
{ \
.name{#name_token}, \
.type = type_token, \
.arg_types{__VA_ARGS__}, \
},
#include "opcodes.inc"
#undef OPCODE
};
2026-07-31 23:14:58 -04:00
u8 NUM_ARGS[] = {
#define OPCODE(name_token, type_token, ...) u8(CalculateNumArgsOf(Opcode::name_token)),
#include "opcodes.inc"
#undef OPCODE
};
}
2021-01-09 03:30:07 -03:00
std::string_view NameOf(Opcode op) {
return Detail::META_TABLE[static_cast<size_t>(op)].name;
2021-01-09 03:30:07 -03:00
}
} // namespace Shader::IR