Skip to content
This repository has been archived by the owner on Apr 24, 2023. It is now read-only.
/ jdk20 Public archive

Commit

Permalink
8294744: AArch64: applications/kitchensink/Kitchensink.java crashed: …
Browse files Browse the repository at this point in the history
…assert(oopDesc::is_oop(obj)) failed: not an oop

Co-authored-by: Fei Yang <fyang@openjdk.org>
Reviewed-by: aph, fyang, dcubed
  • Loading branch information
pchilano and RealFYang committed Jan 10, 2023
1 parent 21d468e commit 151450e
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -836,9 +836,12 @@ void TemplateInterpreterGenerator::generate_fixed_frame(bool native_call) {
__ stp(r10, rscratch1, Address(sp, 4 * wordSize));
// Move SP out of the way
__ mov(sp, rscratch1);
} else {
__ mov(rscratch1, sp);
} else {
// Make sure there is room for the exception oop pushed in case method throws
// an exception (see TemplateInterpreterGenerator::generate_throw_exception())
__ sub(rscratch1, sp, 2 * wordSize);
__ stp(zr, rscratch1, Address(sp, 4 * wordSize));
__ mov(sp, rscratch1);
}
}

Expand Down
6 changes: 5 additions & 1 deletion src/hotspot/cpu/riscv/templateInterpreterGenerator_riscv.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -776,8 +776,12 @@ void TemplateInterpreterGenerator::generate_fixed_frame(bool native_call) {
// Move SP out of the way
__ mv(sp, t0);
} else {
__ sd(sp, Address(sp, 5 * wordSize));
// Make sure there is room for the exception oop pushed in case method throws
// an exception (see TemplateInterpreterGenerator::generate_throw_exception())
__ sub(t0, sp, 2 * wordSize);
__ sd(t0, Address(sp, 5 * wordSize));
__ sd(zr, Address(sp, 4 * wordSize));
__ mv(sp, t0);
}
}

Expand Down

1 comment on commit 151450e

@openjdk-notifier
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.