Re: Via LLVM on arm (Was: ANNOUNCE: GHC 7.4.1 Release Candidate 1)
On 01/ 2/12 08:43 PM, Joachim Breitner wrote:
thanks for the heads up. We are very interested in improving the Haskell
situation on exotic architectures.
That's great to hear since I did not hold this hope seeing debian
provides all the builds unregisterised. So very well and thanks a lot
for your effort!
They are only unregistered because that’s the only thing that works,
AFAIK. If there are more architectures where we are configuring ghc
sub-optimally, I’d like to now about it.
IIRC in the past I've seen powerpc build to be unregistered, while
registered was also supported. But this was really in the past and I'm
not sure how it's now.
Do you expect any regressions in comparison with the unregistered,
If you are talking about regression from the GHC testsuite point of
view, then unfortunately the testsuite provides different sets of tests
for unregisterised and registerised builds, so this is not directly
comparable. Hmm, I think we might just gain if you, debian GHC team test
ARM registerised build on your set of haskell-based packages and report
directly to GHC trac any regression you see between unregisterised and
registerised builds. That would be absolutely fantastic if you do this
Also for now, GHCi is not working and the build fails on GHCi annotation
for vector package. I'd like to thank you a lot for submitting all the
proper bug reports to the GHC trac. That's indeed, great.
we never had GHCi on armel, so that is not a regression. By regression I
mean that some Haskell library or program that worked before would stop
working. But I guess we can just try.
I’ll prepare an upload now. I’m still a bit confused by the fact that
not even the configure script seems to check for the llvm binary, but
I’ll see how it goes.
Yes, configure script is kind of sub-optimal in this case, that's true.
If you don't have LLVM installed, the compilation will simply fail...
Also, what I see as a possible problem is that IIRC debian supports
ARMv4, while Ubuntu at least ARMv5. GHC should support ARMv5 and later
CPUs, so I'm not sure if you don't get compilation failure while
compiling StgCRun.c -- that's the glue in between C and Haskell world
where usually some assembler is used. I've used ARMv5+ isns there
IIRC... so if it breaks, then some ifdefs might be needed...