On Mon, 24 Jan 2022 16:51:26 GMT, Alan Hayward <d...@openjdk.java.net> wrote:
>> src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp line 835: >> >>> 833: __ stp(rlocals, rcpool, Address(sp, 2 * wordSize)); >>> 834: >>> 835: __ protect_return_address(); >> >> Most of the changes to fix the tests look fairly self-explanatory but I >> don't really understand why you relocated call to protect_return-_address >> from its previous location at line 801. Can you explain why it has been >> moved? > > I originally moved it as part of debugging (a GC load_at occurs during the > load_mirror). > Once all the GC changes went in (all the enter_subframe calls), this change > was no longer required. > Then, when I came to change it back, I realised it made more sense in the new > place. The protect is now directly before the storing of lr to the stack. > That's logically a better place and should make the assembler easier to read. Ok, I thought the new place looked better but was not clear why it had not been there in the first place. Thanks for clarifying. ------------- PR: https://git.openjdk.java.net/jdk/pull/6334