diff options
-rw-r--r-- | runtime/interpreter/mterp/riscv64/invoke.S | 4 | ||||
-rw-r--r-- | runtime/interpreter/mterp/riscv64/main.S | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/runtime/interpreter/mterp/riscv64/invoke.S b/runtime/interpreter/mterp/riscv64/invoke.S index 656476cbf0..62cee02998 100644 --- a/runtime/interpreter/mterp/riscv64/invoke.S +++ b/runtime/interpreter/mterp/riscv64/invoke.S @@ -182,7 +182,7 @@ ld a0, (t1) // a0 := ArtMethod* tail NterpInvokeInterface${range} // args a0, a1, s7, t0 4: - bclri t0, t0, 1 // t0 := method index, LSB #1 cleared + andi t0, t0, ~2 // t0 := method index, LSB #1 cleared lh t2, ART_METHOD_METHOD_INDEX_OFFSET(t0) // t2 := method_index_ (16-bit value) // Default methods have a contract with art::IMTable. @@ -710,7 +710,7 @@ %def try_01_args_peek_next(z0=""): FETCH $z0, count=3, width=8, byte=0 // z0 := next op - bclri $z0, $z0, 0 // clear bit #0 + andi $z0, $z0, ~1 // clear bit #0 addi $z0, $z0, -0x0A // z0 := zero if op is 0x0A or 0x0B diff --git a/runtime/interpreter/mterp/riscv64/main.S b/runtime/interpreter/mterp/riscv64/main.S index e72051824d..cc556ad237 100644 --- a/runtime/interpreter/mterp/riscv64/main.S +++ b/runtime/interpreter/mterp/riscv64/main.S @@ -492,7 +492,7 @@ OAT_ENTRY ExecuteNterpImpl sh2add t0, s7, xFP // t0 := &xFP[a1] sh2add t1, s7, xREFS // t1 := &xREFS[a1] addi t2, s11, 1 // t2 := shorty arg (skip return type) - binvi s10, s10, 0 // s10 := 0 if static, 1 if instance + xori s10, s10, 1 // s10 := 0 if static, 1 if instance slliw t3, s10, 2 // t3 := (static) 0, (instance) 4: fp/refs/outs byte offset // constant setup for gpr/fpr shorty comparisons li s0, 'D' // s0 := double char (unused fp) |