Notes |
|
|
Does the crash with the sample programs occur with GCC 10.2 occur with:
a. --mercury-linkage shared
b. --mercury-linkage static
c. both
Have you tried compiling with gcc -O0? |
|
|
(0001196)
|
wangp
|
2022-05-30 12:10
|
|
It crashes in all three cases (--mercury-linkage shared, --mercury-linkage static, compiling the standard library and hello.m with gcc -O0). |
|
|
(0001197)
|
wangp
|
2022-05-31 12:37
|
|
Debian 11 also has a package for gcc version 9.3.0.
The sample programs also crash in asm_fast.gc using gcc 9.3.0 in all three cases (--mercury-linkage shared, --mercury-linkage static, compiling the standard library and hello.m with gcc -O0). |
|
|
|
In the absence of an immediate fix, I suggest we disable the use of asm_fast as the LLDS base grade on aarch64 for GCC >= 9 on both the master and release branches (assuming reg.gc is ok.) |
|
|
(0001199)
|
wangp
|
2022-05-31 16:24
|
|
It has something to do with PIC. Adding this to Mmake.params and compiling the sample programs without PIC makes them not crash:
EXTRA_CFLAGS = -fno-pic -fno-PIC -static
EXTRA_MLFLAGS = -static
(That makes me a bit suspicious that it is something similar to the PIC register issue on x86, but it might be completely unrelated.)
For now I agree we should disable asm_fast on aarch64 with GCC >= 9. I'm doing a partial bootcheck on reg.gc to make sure that works ok. |
|