From 5ab8713b3fcdf8a1e9d44fc71190845f32449fce Mon Sep 17 00:00:00 2001 From: Robbin Ehn Date: Thu, 2 May 2024 06:29:46 +0000 Subject: [PATCH] 8331360: RISCV: u32 _partial_subtype_ctr loaded/stored as 64 Reviewed-by: fyang, mli, tonyp --- src/hotspot/cpu/riscv/macroAssembler_riscv.cpp | 6 +----- src/hotspot/cpu/riscv/stubGenerator_riscv.cpp | 5 +---- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp b/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp index 1cd7ac98b34..234d85ed246 100644 --- a/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp +++ b/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp @@ -3344,11 +3344,7 @@ void MacroAssembler::check_klass_subtype_slow_path(Register sub_klass, mv(x10, super_klass); #ifndef PRODUCT - mv(t1, (address)&SharedRuntime::_partial_subtype_ctr); - Address pst_counter_addr(t1); - ld(t0, pst_counter_addr); - add(t0, t0, 1); - sd(t0, pst_counter_addr); + incrementw(ExternalAddress((address)&SharedRuntime::_partial_subtype_ctr)); #endif // PRODUCT // We will consult the secondary-super array. diff --git a/src/hotspot/cpu/riscv/stubGenerator_riscv.cpp b/src/hotspot/cpu/riscv/stubGenerator_riscv.cpp index 9712f8c326c..582538a18b4 100644 --- a/src/hotspot/cpu/riscv/stubGenerator_riscv.cpp +++ b/src/hotspot/cpu/riscv/stubGenerator_riscv.cpp @@ -77,10 +77,7 @@ class StubGenerator: public StubCodeGenerator { #define inc_counter_np(counter) ((void)0) #else void inc_counter_np_(uint& counter) { - __ la(t1, ExternalAddress((address)&counter)); - __ lwu(t0, Address(t1, 0)); - __ addiw(t0, t0, 1); - __ sw(t0, Address(t1, 0)); + __ incrementw(ExternalAddress((address)&counter)); } #define inc_counter_np(counter) \ BLOCK_COMMENT("inc_counter " #counter); \