[jdk11u-dev] RFR: 8235385: Crash on aarch64 JDK due to long offset

Andrew Haley aph at openjdk.java.net
Wed Mar 30 08:59:39 UTC 2022


On Tue, 29 Mar 2022 14:50:55 GMT, Alexey Pavlyutkin <duke at openjdk.java.net> wrote:

> Hi!
> 
> Please review "backport" of [Wang Zhuo's patch](http://cr.openjdk.java.net/~wzhuo/BigOffsetAarch64/webrev.00/jdk13u.patch) to 11u-dev. The patch is applied with the following adaptation:
> 
> - the legitimizing overload
> 
> static void loadStore(MacroAssembler masm, mem_insn insn,
>                          Register reg, int opcode,
>                          Register base, int index, int size, int disp,
>                          int size_in_memory);
> 
> ported from 15u-dev with slight changes
> -  `aarch64_enc_strh`, `aarch64_enc_strh0`, `aarch64_enc_strw`, `aarch64_enc_strw0`, `aarch64_enc_str`, and `aarch64_enc_str0` functions updated to use new loadStore() overload
> 
> Verified (18.04.6 LTS/aarch64) with the reproducers from JBS, 10 of 10 runs passed. Aproximately a half of runs crashed before I've applied the patch.
> 
> Regression (18.04.6 LTS/aarch64): hotspot_compiler
> 
> @theRealAph @AntonKozlov please take a look at that. Andrew, I could not mention Wang, if you know his ID could you mention him as well. Thank you

That looks perfect, but I'd take out the `assert` because in this old release an out-of-range access isn't unexpected, and this is a good-enough way to fix it.

Co-author is @sandlerwang .

-------------

PR: https://git.openjdk.java.net/jdk11u-dev/pull/960


More information about the jdk-updates-dev mailing list