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); \