15 lines
466 B
C++
15 lines
466 B
C++
#include <broadway/utils.hpp>
|
|
|
|
namespace weee::core {
|
|
void broadway::addis(ircolib::u32 instr) {
|
|
if (utils::RA(instr) == 0) { // lis
|
|
gpr[utils::RD(instr)] = ircolib::s32(utils::SIMM(instr)) << 16;
|
|
return;
|
|
}
|
|
|
|
gpr[utils::RD(instr)] = gpr[utils::RA(instr)] + (ircolib::s32(utils::SIMM(instr)) << 16);
|
|
}
|
|
|
|
void broadway::ori(ircolib::u32 instr) { gpr[utils::RA(instr)] = gpr[utils::RS(instr)] | utils::UIMM(instr); }
|
|
} // namespace weee::core
|