trying to simplify branches

This commit is contained in:
2026-05-15 18:11:07 +02:00
parent b2f415a6ea
commit e48f6a6402
4 changed files with 143 additions and 66 deletions
+9 -4
View File
@@ -30,15 +30,21 @@ struct broadway {
ircolib::u32 raw;
} xer;
// bat registers indexes
static constexpr std::size_t BAT_LOWER_OFFSET = 0;
static constexpr std::size_t BAT_UPPER_OFFSET = 8;
std::array<ircolib::u32, 16> ibat, dbat;
std::array<ircolib::u32, 32> gpr{};
// ircolib::u32 const_gpr_lookup{};
csh capstone;
// Xbyak::CodeGenerator code;
// instructions
void decode_special(ircolib::u32, mem &);
void decode_branch(ircolib::u32, mem &);
void decode_special1(ircolib::u32, mem &);
void decode_special2(ircolib::u32, mem &);
void andi(ircolib::u32);
void add(ircolib::u32);
void addis(ircolib::u32);
void addi(ircolib::u32);
@@ -46,8 +52,7 @@ struct broadway {
void oris(ircolib::u32);
void bx(ircolib::u32);
void bcx(ircolib::u32);
void mtspr(ircolib::u32);
void mfspr(ircolib::u32);
void mftspr(bool, ircolib::u32);
void stw(ircolib::u32, mem &);
void stwu(ircolib::u32, mem &);
void sth(ircolib::u32, mem &);