From dbb4176583c3cd73a410d667ec5ff23e0c768021 Mon Sep 17 00:00:00 2001 From: hamlin Date: Wed, 12 Mar 2025 14:28:53 +0000 Subject: [PATCH 1/2] initial commit --- src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp b/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp index c7427a915277d..d30ab68974e38 100644 --- a/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp +++ b/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp @@ -2614,6 +2614,7 @@ void C2_MacroAssembler::clear_array_v(Register base, Register cnt) { void C2_MacroAssembler::arrays_equals_v(Register a1, Register a2, Register result, Register cnt1, int elem_size) { + assert(elem_size == 1 || elem_size == 2, "must be char or byte"); Label DONE; Register tmp1 = t0; Register tmp2 = t1; From a3b7f86f84a520955d30bc61f41c213c059096db Mon Sep 17 00:00:00 2001 From: hamlin Date: Wed, 12 Mar 2025 14:41:12 +0000 Subject: [PATCH 2/2] assert diff registers --- src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp b/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp index d30ab68974e38..d203ec3dfdb09 100644 --- a/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp +++ b/src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.cpp @@ -2615,6 +2615,8 @@ void C2_MacroAssembler::clear_array_v(Register base, Register cnt) { void C2_MacroAssembler::arrays_equals_v(Register a1, Register a2, Register result, Register cnt1, int elem_size) { assert(elem_size == 1 || elem_size == 2, "must be char or byte"); + assert_different_registers(a1, a2, result, cnt1, t0, t1); + Label DONE; Register tmp1 = t0; Register tmp2 = t1;