drc: rm unneeded &63 masking
[pcsx_rearmed.git] / libpcsxcore / new_dynarec / assem_arm64.c
index 0b49221..1157aaf 100644 (file)
@@ -453,7 +453,7 @@ static void emit_loadreg(u_int r, u_int hr)
   if (r == 0)
     emit_zeroreg(hr);
   else {
-    void *addr = &psxRegs.GPR.r[r];
+    void *addr;
     switch (r) {
     //case HIREG: addr = &hi; break;
     //case LOREG: addr = &lo; break;
@@ -461,7 +461,10 @@ static void emit_loadreg(u_int r, u_int hr)
     case CSREG: addr = &Status; break;
     case INVCP: addr = &invc_ptr; is64 = 1; break;
     case ROREG: addr = &ram_offset; is64 = 1; break;
-    default: assert(r < 34); break;
+    default:
+      assert(r < 34);
+      addr = &psxRegs.GPR.r[r];
+      break;
     }
     if (is64)
       emit_readdword(addr, hr);
@@ -1476,7 +1479,7 @@ static void inline_readstub(enum stub_type type, int i, u_int addr,
 {
   int rs=get_reg(regmap,target);
   int rt=get_reg(regmap,target);
-  if(rs<0) rs=get_reg(regmap,-1);
+  if(rs<0) rs=get_reg_temp(regmap);
   assert(rs>=0);
   u_int is_dynamic=0;
   uintptr_t host_addr = 0;
@@ -1630,7 +1633,7 @@ static void do_writestub(int n)
 static void inline_writestub(enum stub_type type, int i, u_int addr,
   const signed char regmap[], int target, int adj, u_int reglist)
 {
-  int rs = get_reg(regmap,-1);
+  int rs = get_reg_temp(regmap);
   int rt = get_reg(regmap,target);
   assert(rs >= 0);
   assert(rt >= 0);