}
-uint64 NMD::encode_gpr3_store(uint64 d)
+uint64 NMD::decode_gpr_gpr3_src_store(uint64 d)
{
static uint64 register_list[] = { 0, 17, 18, 19, 4, 5, 6, 7 };
return renumber_registers(d, register_list,
uint64 rs3_value = extract_rs3_6_5_4(instruction);
uint64 u_value = extract_u_1_0(instruction);
- std::string rtz3 = GPR(encode_gpr3_store(rtz3_value));
+ std::string rtz3 = GPR(decode_gpr_gpr3_src_store(rtz3_value));
std::string u = IMMEDIATE(copy(u_value));
std::string rs3 = GPR(decode_gpr_gpr3(rs3_value));
uint64 rs3_value = extract_rs3_6_5_4(instruction);
uint64 u_value = extract_u_2_1__s1(instruction);
- std::string rtz3 = GPR(encode_gpr3_store(rtz3_value));
+ std::string rtz3 = GPR(decode_gpr_gpr3_src_store(rtz3_value));
std::string u = IMMEDIATE(copy(u_value));
std::string rs3 = GPR(decode_gpr_gpr3(rs3_value));
uint64 rs3_value = extract_rs3_6_5_4(instruction);
uint64 u_value = extract_u_3_2_1_0__s2(instruction);
- std::string rtz3 = GPR(encode_gpr3_store(rtz3_value));
+ std::string rtz3 = GPR(decode_gpr_gpr3_src_store(rtz3_value));
std::string u = IMMEDIATE(copy(u_value));
std::string rs3 = GPR(decode_gpr_gpr3(rs3_value));
uint64 u_value = extract_u_6_5_4_3_2_1_0__s2(instruction);
uint64 rtz3_value = extract_rtz3_9_8_7(instruction);
- std::string rtz3 = GPR(encode_gpr3_store(rtz3_value));
+ std::string rtz3 = GPR(decode_gpr_gpr3_src_store(rtz3_value));
std::string u = IMMEDIATE(copy(u_value));
return img::format("SW %s, %s($%d)", rtz3, u, 28);
uint64 renumber_registers(uint64 index, uint64 *register_list,
size_t register_list_size);
uint64 decode_gpr_gpr3(uint64 d);
- uint64 encode_gpr3_store(uint64 d);
+ uint64 decode_gpr_gpr3_src_store(uint64 d);
uint64 encode_rd1_from_rd(uint64 d);
uint64 encode_gpr4_zero(uint64 d);
uint64 encode_gpr4(uint64 d);