Okay, I tried with LLVM registerised, I've read about it and the idea sounds 
nice.

> What is in your build.mk? Maybe you are using one of the build flavors that
> sets -fllvm explicitly?
Ah, so that was it. I followed Karel's blog, seems back then the
BuildFlavour = quick-cross option he used didn't include LLVM, which makes
sense, since there was no support. Now, the option is there, as you suspected:

ifeq "$(BuildFlavour)" "quick-cross"
(...)
GhcStage2HcOpts    = -O0 -fllvm
GhcLibHcOpts       = -O -fllvm
(...)

> 
> That said you can also try installing the supported version of LLVM for ghc
> 7.10, which is LLVM 3.5.
Good that it was still in Arch Linux repos, as llvm35. All went fine
through stage 1, now ghc-stage1 works, and I mean:
 $ ../inplace/bin/ghc-stage1 --make HelloWorld.lhs 
[1 of 1] Compiling Main             ( HelloWorld.lhs, HelloWorld.o )
Linking HelloWorld ...

But I still got an error in the end (using make with only one core costed me a
few hours...):
(...)
echo 'exec "$executablename" ${1+"$@"}'                     >> 
inplace/bin/dll-split
chmod +x                                                     
inplace/bin/dll-split
inplace/bin/dll-split compiler/stage2/build/.depend-v-dyn.haskell "DynFlags" 
"Annotations ApiAnnotation Avail Bag BasicTypes Binary BooleanFormula 
BreakArray BufWrite Class CmdLineParser CmmType CoAxiom ConLike Coercion Config 
Constants CoreArity CoreFVs CoreSubst CoreSyn CoreTidy CoreUnfold CoreUtils 
CostCentre Ctype DataCon Demand Digraph DriverPhases DynFlags Encoding ErrUtils 
Exception ExtsCompat46 FamInstEnv FastFunctions FastMutInt FastString FastTypes 
Fingerprint FiniteMap ForeignCall Hooks HsBinds HsDecls HsDoc HsExpr HsImpExp 
HsLit PlaceHolder HsPat HsSyn HsTypes HsUtils HscTypes IOEnv Id IdInfo IfaceSyn 
IfaceType InstEnv Kind Lexeme Lexer ListSetOps Literal Maybes MkCore MkId 
Module MonadUtils Name NameEnv NameSet OccName OccurAnal OptCoercion OrdList 
Outputable PackageConfig Packages Pair Panic PatSyn PipelineMonad Platform 
PlatformConstants PprCore PrelNames PrelRules Pretty PrimOp RdrName Rules 
Serialized SrcLoc StaticFlags StringBuffer TcEvidence TcRnTypes TcType TrieMap 
TyCon Type TypeRep TysPrim TysWiredIn Unify UniqFM UniqSet UniqSupply Unique 
Util Var VarEnv VarSet Bitmap BlockId ByteCodeAsm ByteCodeInstr ByteCodeItbls 
CLabel Cmm CmmCallConv CmmExpr CmmInfo CmmMachOp CmmNode CmmUtils 
CodeGen.Platform CodeGen.Platform.ARM CodeGen.Platform.ARM64 
CodeGen.Platform.NoRegs CodeGen.Platform.PPC CodeGen.Platform.PPC_Darwin 
CodeGen.Platform.SPARC CodeGen.Platform.X86 CodeGen.Platform.X86_64 FastBool 
Hoopl Hoopl.Dataflow InteractiveEvalTypes MkGraph PprCmm PprCmmDecl PprCmmExpr 
Reg RegClass SMRep StgCmmArgRep StgCmmClosure StgCmmEnv StgCmmLayout 
StgCmmMonad StgCmmProf StgCmmTicky StgCmmUtils StgSyn Stream"
inplace/bin/dll-split: line 8: 
/home/jmcf125/ghc-raspberry-pi/ghc/inplace/lib/bin/dll-split: cannot execute 
binary file: Exec format error
inplace/bin/dll-split: line 8: 
/home/jmcf125/ghc-raspberry-pi/ghc/inplace/lib/bin/dll-split: Success
compiler/ghc.mk:655: recipe for target 'compiler/stage2/dll-split.stamp' failed
make[1]: *** [compiler/stage2/dll-split.stamp] Error 126
Makefile:71: recipe for target 'all' failed
make: *** [all] Error 2

OK, it did try to get to stage 2, as I thought it would. Is dll-split trying to
execute a stage 2 binary? Why? What's going on?

Thanks for the help so far,
João Miguel
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to