GhcEnableTablesNextToCode=NO breaks NCG on macOS
It appears as if GhcEnableTablesNextToCode=NO breaks the NCG on macOS as early as GHC 8.4.
Running the following
git reset --hard HEAD
git clean -xfd
git submodule update --init --recursive
git clean -xfd
sed -E "s/^#BuildFlavour[ ]+= quick-cross$/BuildFlavour = quick/" < mk/build.mk.sample > mk/build.mk
echo "GhcEnableTablesNextToCode=NO" >> mk/build.mk
./boot && ./configure --silent && make -s -j9
on macOS with the 8.4 and 8.6 generated duplicate symbols in the assembly file.
Something like
.text
.align 3
Lc4l:
Lc4l:
jmp Lc4u
.const_data
.align 3
.align 0
_Lc4l_info:
.quad Lc4l
.quad 259
.long 30
.long 0
which causes the assembler to choke.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 8.6.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | high |
| Resolution | Unresolved |
| Component | Compiler (CodeGen) |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | bgamari, carter, terrorjack |
| Operating system | |
| Architecture |