Simon Marlow <[email protected]> writes:

> This sounds right to me.  Did you submit a patch?
>
Not yet, I'm currently fighting through some build system issues which
are preventing me from actually installing and testing the compiler on
my ARM box.

> Note that dynamic linking with LLVM is likely to produce significantly 
> worse code that with the NCG right now, because the LLVM back end uses 
> dynamic references even for symbols in the same package, whereas the NCG 
> back-end uses direct static references for these.
>
Right. However it (hopefully) works on ARM which is more than I can say
about the NCG. Moreover, I'm hopeful that it will be possible to fix
LLVM's output.

Would this not simply be a matter of flagging package-local symbols with
LLVM's `private` linkage type[1]? In the case where you have references
both internal and external to the package could you not define two
overlapping symbols, one flagged with `private` and the other
`external`? Perhaps I'm missing a subtlety?

Cheers,

- Ben


[1] http://llvm.org/docs/LangRef.html#linkage-types

Attachment: pgpTAKQC7fKMu.pgp
Description: PGP signature

_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to