RFR: 8320682: [AArch64] C1 compilation fails with "Field too big for insn"
Andrew Haley
aph at openjdk.org
Mon Dec 4 15:01:44 UTC 2023
On Mon, 4 Dec 2023 14:19:10 GMT, Daniel Lundén <duke at openjdk.org> wrote:
> This changeset fixes an issue on aarch64 where addresses for float and double constants were sometimes out of range for PC-relative offsets using `adr`.
>
> Changes:
> - Fix the issue by replacing `adr` with `lea`.
> - Add a regression test.
>
> Thanks to @fisk and @xmas92 for the assistance.
>
> ### Testing
> Tests: tier1, tier2, tier3, tier4, tier5
> Platforms: windows-x64, linux-x64, linux-aarch64, macosx-x64, macosx-aarch64
Marked as reviewed by aph (Reviewer).
This is fine for C1. Iif it were for C2, we're already doing a relaxation pass which we could utilize to fix up out-of-range loads.
-------------
PR Review: https://git.openjdk.org/jdk/pull/16951#pullrequestreview-1762644482
PR Comment: https://git.openjdk.org/jdk/pull/16951#issuecomment-1838824825
More information about the hotspot-compiler-dev
mailing list