mirror of
https://github.com/yuzu-mirror/dynarmic.git
synced 2026-04-05 14:25:36 +00:00
A32: Merge ArmTranslateVistor and ThumbTranslateVisitor
This commit is contained in:
parent
6d292e3eac
commit
cd837c5b37
51 changed files with 1635 additions and 1729 deletions
|
|
@ -12,26 +12,26 @@
|
|||
#include <dynarmic/A32/config.h>
|
||||
#include "common/assert.h"
|
||||
#include "frontend/A32/decoder/asimd.h"
|
||||
#include "frontend/A32/translate/impl/translate_arm.h"
|
||||
#include "frontend/A32/translate/impl/translate.h"
|
||||
#include "ir/opcodes.h"
|
||||
|
||||
using namespace Dynarmic;
|
||||
|
||||
TEST_CASE("ASIMD Decoder: Ensure table order correctness", "[decode][a32]") {
|
||||
const auto table = A32::GetASIMDDecodeTable<A32::ArmTranslatorVisitor>();
|
||||
const auto table = A32::GetASIMDDecodeTable<A32::TranslatorVisitor>();
|
||||
|
||||
const auto get_ir = [](const A32::ASIMDMatcher<A32::ArmTranslatorVisitor>& matcher, u32 instruction) {
|
||||
const auto get_ir = [](const A32::ASIMDMatcher<A32::TranslatorVisitor>& matcher, u32 instruction) {
|
||||
ASSERT(matcher.Matches(instruction));
|
||||
|
||||
const A32::LocationDescriptor location{0, {}, {}};
|
||||
IR::Block block{location};
|
||||
A32::ArmTranslatorVisitor visitor{block, location, {}};
|
||||
A32::TranslatorVisitor visitor{block, location, {}};
|
||||
matcher.call(visitor, instruction);
|
||||
|
||||
return block;
|
||||
};
|
||||
|
||||
const auto is_decode_error = [&get_ir](const A32::ASIMDMatcher<A32::ArmTranslatorVisitor>& matcher, u32 instruction){
|
||||
const auto is_decode_error = [&get_ir](const A32::ASIMDMatcher<A32::TranslatorVisitor>& matcher, u32 instruction){
|
||||
const auto block = get_ir(matcher, instruction);
|
||||
|
||||
for (const auto& ir_inst : block) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue