mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-16 01:43:35 +00:00
Programs using non-local gotos on AArch64 crash when compiled with
newer versions of GCC:
gcc 6.3.0 (Debian 9) - ok
gcc 8.3.0 (Debian 10) - ok
gcc 9.3.0 (Debian 11) - crash
gcc 10.2 (Debian 11) - crash
Specifically, the programs only crash when compiled with PIC,
but PIC is commonly the default now.
This is Mantis bug #560.
configure.ac:
Disable non-local gotos on AArch64 when using GCC 9+.
README.Linux-aarch64:
Mention the problem.
10 lines
434 B
Plaintext
10 lines
434 B
Plaintext
This file documents the port of Mercury to Linux on AArch64 (ARM64),
|
|
i.e. the `aarch64*-linux*` configuration.
|
|
|
|
Mercury should build and install "out-of-the-box" on Linux for AArch64.
|
|
|
|
Low-level C grades using non-local gotos, i.e. asm_fast.*, do not work
|
|
with GCC 9 or later. Non-PIC (position-independent code) actually does
|
|
still work, but PIC is commonly the default.
|
|
If you require a low-level C grade, please use a reg.* grade.
|