Skip to content

Commit 1e4a554

Browse files
authored
Drop -fast-llvm
`-fast-llvm` bypasses the mangler. We *could* do this if we had `-fast-llvm` *and* `-fno-plt`; however `-fno-plt` is only supported in the `clang` frontend, and essentially emits `nonlazybind` function attributes. LLVM does not guarantee that all architecture lowering backends respect that attribute and as such this would only work on `x86_64`, and on `aarch64` if passed `-aarch64-enable-nonlazybind`. Arm32 backends don't seem to support this attribute at all. Fixes #621
1 parent 74915fa commit 1e4a554

File tree

1 file changed

+0
-3
lines changed

1 file changed

+0
-3
lines changed

compiler/ghc/default.nix

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,6 @@ let
102102
GhcRtsHcOpts += -fPIC
103103
'' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
104104
EXTRA_CC_OPTS += -std=gnu99
105-
'' + stdenv.lib.optionalString useLLVM ''
106-
GhcStage2HcOpts += -fast-llvm
107-
GhcLibHcOpts += -fast-llvm
108105
'' + stdenv.lib.optionalString (!enableTerminfo) ''
109106
WITH_TERMINFO=NO
110107
''

0 commit comments

Comments
 (0)