Compare commits

...
Sign in to create a new pull request.

2 commits

View file

@ -1,3 +1,6 @@
// SPDX-FileCopyrightText: Copyright 2025 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
@ -28,8 +31,8 @@ void TranslatorVisitor::ISBERD(u64 insn) {
u64 raw;
BitField<0, 8, IR::Reg> dest_reg;
BitField<8, 8, IR::Reg> src_reg;
BitField<8, 8, u32> src_reg_num;
BitField<24, 8, u32> imm;
BitField<8, 8, u64> src_reg_num;
BitField<24, 8, u64> imm;
BitField<31, 1, u64> skew;
BitField<32, 1, u64> o;
BitField<33, 2, Mode> mode;
@ -37,7 +40,9 @@ void TranslatorVisitor::ISBERD(u64 insn) {
} const isberd{insn};
if (isberd.skew != 0) {
throw NotImplementedException("SKEW");
IR::U32 current_lane_id{ir.LaneId()};
IR::U32 result{ir.IAdd(X(isberd.src_reg), current_lane_id)};
X(isberd.dest_reg, result);
}
if (isberd.o != 0) {
throw NotImplementedException("O");