From b5a646ee6cfd432cef6b7e69a177959227a38ace Mon Sep 17 00:00:00 2001 From: Xiaolin Zheng <xlinzheng@openjdk.org> Date: Thu, 2 Jun 2022 20:31:26 +0000 Subject: [PATCH] 8287425: Remove unnecessary register push for MacroAssembler::check_klass_subtype_slow_path Co-authored-by: Wei Kuai <kuaiwei.kw@alibaba-inc.com> Reviewed-by: kvn --- src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp | 2 +- src/hotspot/cpu/riscv/macroAssembler_riscv.cpp | 2 +- src/hotspot/cpu/x86/macroAssembler_x86.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp b/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp index 74f549adc4b..39c5c3af1bc 100644 --- a/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp +++ b/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp @@ -1125,7 +1125,7 @@ void MacroAssembler::check_klass_subtype_slow_path(Register sub_klass, if (!IS_A_TEMP(r2)) pushed_registers += r2; if (!IS_A_TEMP(r5)) pushed_registers += r5; - if (super_klass != r0 || UseCompressedOops) { + if (super_klass != r0) { if (!IS_A_TEMP(r0)) pushed_registers += r0; } diff --git a/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp b/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp index 9db4f4becf1..1d10dd672f0 100644 --- a/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp +++ b/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp @@ -2624,7 +2624,7 @@ void MacroAssembler::check_klass_subtype_slow_path(Register sub_klass, pushed_registers += x15; } - if (super_klass != x10 || UseCompressedOops) { + if (super_klass != x10) { if (!IS_A_TEMP(x10)) { pushed_registers += x10; } diff --git a/src/hotspot/cpu/x86/macroAssembler_x86.cpp b/src/hotspot/cpu/x86/macroAssembler_x86.cpp index f19c6faaaf6..3c33f6ea07c 100644 --- a/src/hotspot/cpu/x86/macroAssembler_x86.cpp +++ b/src/hotspot/cpu/x86/macroAssembler_x86.cpp @@ -4163,7 +4163,7 @@ void MacroAssembler::check_klass_subtype_slow_path(Register sub_klass, // Get super_klass value into rax (even if it was in rdi or rcx). bool pushed_rax = false, pushed_rcx = false, pushed_rdi = false; - if (super_klass != rax || UseCompressedOops) { + if (super_klass != rax) { if (!IS_A_TEMP(rax)) { push(rax); pushed_rax = true; } mov(rax, super_klass); }