diff a/src/hotspot/cpu/riscv/continuationFreezeThaw_riscv.inline.hpp b/src/hotspot/cpu/riscv/continuationFreezeThaw_riscv.inline.hpp --- a/src/hotspot/cpu/riscv/continuationFreezeThaw_riscv.inline.hpp +++ b/src/hotspot/cpu/riscv/continuationFreezeThaw_riscv.inline.hpp @@ -1,7 +1,7 @@ /* - * Copyright (c) 2019, 2025, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2019, 2026, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. @@ -72,11 +72,11 @@ slot == -1 ? nullptr : sender_cb->oop_map_for_slot(slot, sender_pc), false /* on_heap ? */) : frame(sender_sp, sender_sp, *link_addr, sender_pc); } -template frame FreezeBase::new_heap_frame(frame& f, frame& caller) { +template frame FreezeBase::new_heap_frame(frame& f, frame& caller, int size_adjust) { assert(FKind::is_instance(f), ""); assert(!caller.is_interpreted_frame() || caller.unextended_sp() == (intptr_t*)caller.at(frame::interpreter_frame_last_sp_offset), ""); intptr_t *sp, *fp; // sp is really our unextended_sp @@ -180,11 +180,11 @@ intptr_t* fp_addr = hf.sp() - 2; *fp_addr = hf.is_interpreted_frame() ? (intptr_t)(hf.fp() - fp_addr) : (intptr_t)hf.fp(); } -inline void FreezeBase::patch_pd(frame& hf, const frame& caller) { +inline void FreezeBase::patch_pd(frame& hf, const frame& caller, bool is_bottom_frame) { if (caller.is_interpreted_frame()) { assert(!caller.is_empty(), ""); patch_callee_link_relative(caller, caller.fp()); } else { // If we're the bottom-most frame frozen in this freeze, the caller might have stayed frozen in the chunk, @@ -254,11 +254,11 @@ intptr_t* sp = _cont.entrySP(); // TODO PERF: This finds code blob and computes deopt state return frame(sp, sp, _cont.entryFP(), _cont.entryPC()); } -template frame ThawBase::new_stack_frame(const frame& hf, frame& caller, bool bottom) { +template frame ThawBase::new_stack_frame(const frame& hf, frame& caller, bool bottom, int size_adjust) { assert(FKind::is_instance(hf), ""); // The values in the returned frame object will be written into the callee's stack in patch. if (FKind::interpreted) { intptr_t* heap_sp = hf.unextended_sp();