(0.41) AArch64: Add space for outgoing JNI argument to J9CInterpreterStackFrame #18484
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit adds outgoingArguments array to J9CInterpreterStackFrame for AArch64 VM to avoid overwriting preservedGPRs and preservedFPRs when calling out to jitReleaseVMAccess helper from JNI invocation sequence.
This commit also updates ARM64JNILinkage to store JNI method arguments that are passed by stack to the area where the outgoingArguments array resides.
Adding outgoingArguments makes the size of J9CInterpreterStackFrame large and some slots are not accessible with ldp/stp instructions using sp as a base register. Thus, this commit also updates m4 macros in arm64helpers.m4. They use the start of slots for saving JIT GPRs as the base address and x16 as the base register.
Issue: #18149, #18480
Master PR: #18227