RFR: JDK-8332423 : [PPC64] Remove C1_MacroAssembler::call_c_with_frame_resize [v2]
Martin Doerr
mdoerr at openjdk.org
Tue Aug 27 17:18:06 UTC 2024
On Sun, 25 Aug 2024 17:00:33 GMT, Suchismith Roy <sroy at openjdk.org> wrote:
>> JBS Issue : [JDK-8332423](https://bugs.openjdk.org/browse/JDK-8332423)
>> C1_MacroAssembler::call_c_with_frame_resize is only used with frame_resize == 0.
>> Also, call_c is adapted as per endianess of system.
>> We can adapt the exisiting code to handle the endianness check at one place and not have to repeatedly check at multiple places to make calls to call_c.
>
> Suchismith Roy has updated the pull request incrementally with one additional commit since the last revision:
>
> remove this->
Nice cleanup! I have a couple of small change requests.
src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp line 138:
> 136: // func to get the address of the same-named entrypoint in the
> 137: // generated interpreter code.
> 138: call_c(CAST_FROM_FN_PTR(address, Interpreter::remove_activation_preserving_args_entry), relocInfo::none);
`relocInfo::none` can be omitted. It's the default.
src/hotspot/cpu/ppc/macroAssembler_ppc.cpp line 1038:
> 1036: }
> 1037:
> 1038: address MacroAssembler::call_c(address function_entry,relocInfo::relocType) {
Please restore the original line.
src/hotspot/cpu/ppc/macroAssembler_ppc.hpp line 367:
> 365: // calling conventions. Updates and returns _last_calls_return_pc.
> 366: address call_c(Register function_descriptor);
> 367: address call_c(address function_entry, relocInfo::relocType rt = relocInfo::relocType::none) {
I think `relocInfo::none` should be used like above.
src/hotspot/cpu/ppc/macroAssembler_ppc.hpp line 419:
> 417: void call_VM_leaf(address entry_point, Register arg_1, Register arg_2);
> 418: void call_VM_leaf(address entry_point, Register arg_1, Register arg_2, Register arg_3);
> 419:
Please don't remove the empty line.
src/hotspot/cpu/ppc/stubGenerator_ppc.cpp line 619:
> 617: return stub->entry_point();
> 618: }
> 619: #undef __
I guess this was added unintentionally?
src/hotspot/cpu/ppc/templateInterpreterGenerator_ppc.cpp line 1467:
> 1465:
> 1466: __ mr(R3_ARG1, R16_thread);
> 1467: __ call_c(CAST_FROM_FN_PTR(address, JavaThread::check_special_condition_for_native_trans), relocInfo::none);
`relocInfo::none` can be omitted. It's the default.
-------------
Changes requested by mdoerr (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/19947#pullrequestreview-2264025594
PR Review Comment: https://git.openjdk.org/jdk/pull/19947#discussion_r1733252476
PR Review Comment: https://git.openjdk.org/jdk/pull/19947#discussion_r1733248903
PR Review Comment: https://git.openjdk.org/jdk/pull/19947#discussion_r1733249839
PR Review Comment: https://git.openjdk.org/jdk/pull/19947#discussion_r1733250155
PR Review Comment: https://git.openjdk.org/jdk/pull/19947#discussion_r1733253411
PR Review Comment: https://git.openjdk.org/jdk/pull/19947#discussion_r1733253817
More information about the hotspot-compiler-dev
mailing list