#1958: collect2: ld terminated with signal 10 [Bus error]: Building parsec on a
PPC Mac OS X 10.5 Leopard as part of GHC 6.9
-------------------------+--------------------------------------------------
 Reporter:  thorkilnaur  |          Owner:  thorkilnaur
     Type:  bug          |         Status:  new        
 Priority:  high         |      Milestone:  6.8.3      
Component:  Compiler     |        Version:  6.9        
 Severity:  normal       |     Resolution:             
 Keywords:               |     Difficulty:  Unknown    
 Testcase:               |   Architecture:  powerpc    
       Os:  MacOS X      |  
-------------------------+--------------------------------------------------
Comment (by thorkilnaur):

 Thanks a lot for this information. I would assume that the PPC Mac OS X
 Leopard builder fails to build stage 2 for the same reason
 (http://darcs.haskell.org/buildbot/all/tnaur%20PPC%20OSX%20head%202/builds/20
 /step-stage2/0):
 {{{
 /usr/bin/ld -r -x -o HSghc.o  stage2/basicTypes/BasicTypes.o
 stage2/basicTypes/DataCon.o stage2/basicTypes/Demand.o
 stage2/basicTypes/Id.o stage2/basicTypes/IdInfo.o
 stage2/basicTypes/Literal.o stage2/basicTypes/MkId.o
 stage2/basicTypes/Module.o stage2/basicTypes/Name.o
 stage2/basicTypes/NameEnv.o stage2/basicTypes/NameSet.o
 stage2/basicTypes/NewDemand.o stage2/basicTypes/OccName.o
 stage2/basicTypes/RdrName.o stage2/basicTypes/SrcLoc.o
 stage2/basicTypes/UniqSupply.o stage2/basicTypes/Unique.o
 stage2/basicTypes/Var.o stage2/basicTypes/VarEnv.o
 stage2/basicTypes/VarSet.o stage2/cmm/CLabel.o stage2/cmm/Cmm.o
 stage2/cmm/CmmBrokenBlock.o stage2/cmm/CmmCPS.o stage2/cmm/CmmCPSGen.o
 stage2/cmm/CmmCPSZ.o stage2/cmm/CmmCallConv.o stage2/cmm/CmmContFlowOpt.o
 stage2/cmm/CmmCvt.o stage2/cmm/CmmExpr.o stage2/cmm/CmmInfo.o
 stage2/cmm/CmmLex.o stage2/cmm/CmmLint.o stage2/cmm/CmmLive.o
 stage2/cmm/CmmLiveZ.o stage2/cmm/CmmOpt.o stage2/cmm/CmmParse.o
 stage2/cmm/CmmProcPoint.o stage2/cmm/CmmProcPointZ.o
 stage2/cmm/CmmSpillReload.o stage2/cmm/CmmTx.o stage2/cmm/CmmUtils.o
 stage2/cmm/CmmZipUtil.o stage2/cmm/DFMonad.o stage2/cmm/Dataflow.o
 stage2/cmm/MachOp.o stage2/cmm/MkZipCfg.o stage2/cmm/MkZipCfgCmm.o
 stage2/cmm/OptimizationFuel.o stage2/cmm/PprC.o stage2/cmm/PprCmm.o
 stage2/cmm/PprCmmZ.o stage2/cmm/StackColor.o stage2/cmm/StackPlacements.o
 stage2/cmm/ZipCfg.o stage2/cmm/ZipCfgCmmRep.o stage2/cmm/ZipCfgExtras.o
 stage2/cmm/ZipDataflow0.o stage2/codeGen/Bitmap.o
 stage2/codeGen/CgBindery.o stage2/codeGen/CgCallConv.o
 stage2/codeGen/CgCase.o stage2/codeGen/CgClosure.o stage2/codeGen/CgCon.o
 stage2/codeGen/CgExpr.o stage2/codeGen/CgForeignCall.o
 stage2/codeGen/CgHeapery.o stage2/codeGen/CgHpc.o
 stage2/codeGen/CgInfoTbls.o stage2/codeGen/CgLetNoEscape.o
 stage2/codeGen/CgMonad.o stage2/codeGen/CgParallel.o
 stage2/codeGen/CgPrimOp.o stage2/codeGen/CgProf.o
 stage2/codeGen/CgStackery.o stage2/codeGen/CgTailCall.o
 stage2/codeGen/CgTicky.o stage2/codeGen/CgUtils.o
 stage2/codeGen/ClosureInfo.o stage2/codeGen/CodeGen.o
 stage2/codeGen/SMRep.o stage2/coreSyn/CoreFVs.o stage2/coreSyn/CoreLint.o
 stage2/coreSyn/CorePrep.o stage2/coreSyn/CoreSubst.o
 stage2/coreSyn/CoreSyn.o stage2/coreSyn/CoreTidy.o
 stage2/coreSyn/CoreUnfold.o stage2/coreSyn/CoreUtils.o
 stage2/coreSyn/ExternalCore.o stage2/coreSyn/MkExternalCore.o
 stage2/coreSyn/PprCore.o stage2/coreSyn/PprExternalCore.o
 stage2/cprAnalysis/CprAnalyse.o stage2/deSugar/Check.o
 stage2/deSugar/Coverage.o stage2/deSugar/Desugar.o
 stage2/deSugar/DsArrows.o stage2/deSugar/DsBinds.o
 stage2/deSugar/DsCCall.o stage2/deSugar/DsExpr.o
 stage2/deSugar/DsForeign.o stage2/deSugar/DsGRHSs.o
 stage2/deSugar/DsListComp.o stage2/deSugar/DsMeta.o
 stage2/deSugar/DsMonad.o stage2/deSugar/DsUtils.o stage2/deSugar/Match.o
 stage2/deSugar/MatchCon.o stage2/deSugar/MatchLit.o
 stage2/ghci/ByteCodeAsm.o stage2/ghci/ByteCodeFFI.o
 stage2/ghci/ByteCodeGen.o stage2/ghci/ByteCodeInstr.o
 stage2/ghci/ByteCodeItbls.o stage2/ghci/ByteCodeLink.o
 stage2/ghci/Debugger.o stage2/ghci/GhciMonad.o stage2/ghci/GhciTags.o
 stage2/ghci/InteractiveUI.o stage2/ghci/Linker.o stage2/ghci/ObjLink.o
 stage2/ghci/RtClosureInspect.o stage2/hsSyn/Convert.o
 stage2/hsSyn/HsBinds.o stage2/hsSyn/HsDecls.o stage2/hsSyn/HsDoc.o
 stage2/hsSyn/HsExpr.o stage2/hsSyn/HsImpExp.o stage2/hsSyn/HsLit.o
 stage2/hsSyn/HsPat.o stage2/hsSyn/HsSyn.o stage2/hsSyn/HsTypes.o
 stage2/hsSyn/HsUtils.o stage2/iface/BinIface.o stage2/iface/BuildTyCl.o
 stage2/iface/IfaceEnv.o stage2/iface/IfaceSyn.o stage2/iface/IfaceType.o
 stage2/iface/LoadIface.o stage2/iface/MkIface.o stage2/iface/TcIface.o
 stage2/main/BreakArray.o stage2/main/CmdLineParser.o
 stage2/main/CodeOutput.o stage2/main/Config.o stage2/main/Constants.o
 stage2/main/DriverMkDepend.o stage2/main/DriverPhases.o
 stage2/main/DriverPipeline.o stage2/main/DynFlags.o stage2/main/ErrUtils.o
 stage2/main/Finder.o stage2/main/GHC.o stage2/main/HeaderInfo.o
 stage2/main/HscMain.o stage2/main/HscStats.o stage2/main/HscTypes.o
 stage2/main/InteractiveEval.o stage2/main/PackageConfig.o
 stage2/main/Packages.o stage2/main/ParsePkgConf.o stage2/main/PprTyThing.o
 stage2/main/StaticFlags.o stage2/main/SysTools.o stage2/main/TidyPgm.o
 stage2/nativeGen/AsmCodeGen.o stage2/nativeGen/MachCodeGen.o
 stage2/nativeGen/MachInstrs.o stage2/nativeGen/MachRegs.o
 stage2/nativeGen/NCGMonad.o stage2/nativeGen/PositionIndependentCode.o
 stage2/nativeGen/PprMach.o stage2/nativeGen/RegAllocColor.o
 stage2/nativeGen/RegAllocInfo.o stage2/nativeGen/RegAllocLinear.o
 stage2/nativeGen/RegAllocStats.o stage2/nativeGen/RegArchBase.o
 stage2/nativeGen/RegArchX86.o stage2/nativeGen/RegCoalesce.o
 stage2/nativeGen/RegLiveness.o stage2/nativeGen/RegSpill.o
 stage2/nativeGen/RegSpillClean.o stage2/nativeGen/RegSpillCost.o
 stage2/ndpFlatten/FlattenInfo.o stage2/ndpFlatten/FlattenMonad.o
 stage2/ndpFlatten/Flattening.o stage2/ndpFlatten/NDPCoreUtils.o
 stage2/ndpFlatten/PArrAnal.o stage2/parser/Ctype.o
 stage2/parser/HaddockLex.o stage2/parser/HaddockParse.o
 stage2/parser/HaddockUtils.o stage2/parser/LexCore.o stage2/parser/Lexer.o
 stage2/parser/Parser.o stage2/parser/ParserCore.o
 stage2/parser/ParserCoreUtils.o stage2/parser/RdrHsSyn.o
 stage2/prelude/ForeignCall.o stage2/prelude/PrelInfo.o
 stage2/prelude/PrelNames.o stage2/prelude/PrelRules.o
 stage2/prelude/PrimOp.o stage2/prelude/TysPrim.o
 stage2/prelude/TysWiredIn.o stage2/profiling/CostCentre.o
 stage2/profiling/SCCfinal.o stage2/rename/RnBinds.o stage2/rename/RnEnv.o
 stage2/rename/RnExpr.o stage2/rename/RnHsDoc.o stage2/rename/RnHsSyn.o
 stage2/rename/RnNames.o stage2/rename/RnPat.o stage2/rename/RnSource.o
 stage2/rename/RnTypes.o stage2/simplCore/CSE.o stage2/simplCore/FloatIn.o
 stage2/simplCore/FloatOut.o stage2/simplCore/LiberateCase.o
 stage2/simplCore/OccurAnal.o stage2/simplCore/SAT.o
 stage2/simplCore/SATMonad.o stage2/simplCore/SetLevels.o
 stage2/simplCore/SimplCore.o stage2/simplCore/SimplEnv.o
 stage2/simplCore/SimplMonad.o stage2/simplCore/SimplUtils.o
 stage2/simplCore/Simplify.o stage2/simplStg/SRT.o
 stage2/simplStg/SimplStg.o stage2/simplStg/StgStats.o
 stage2/specialise/Rules.o stage2/specialise/SpecConstr.o
 stage2/specialise/Specialise.o stage2/stgSyn/CoreToStg.o
 stage2/stgSyn/StgLint.o stage2/stgSyn/StgSyn.o stage2/stranal/DmdAnal.o
 stage2/stranal/SaAbsInt.o stage2/stranal/SaLib.o
 stage2/stranal/StrictAnal.o stage2/stranal/WorkWrap.o
 stage2/stranal/WwLib.o stage2/typecheck/FamInst.o stage2/typecheck/Inst.o
 stage2/typecheck/TcArrows.o stage2/typecheck/TcBinds.o
 stage2/typecheck/TcClassDcl.o stage2/typecheck/TcDefaults.o
 stage2/typecheck/TcDeriv.o stage2/typecheck/TcEnv.o
 stage2/typecheck/TcExpr.o stage2/typecheck/TcForeign.o
 stage2/typecheck/TcGadt.o stage2/typecheck/TcGenDeriv.o
 stage2/typecheck/TcHsSyn.o stage2/typecheck/TcHsType.o
 stage2/typecheck/TcInstDcls.o stage2/typecheck/TcMType.o
 stage2/typecheck/TcMatches.o stage2/typecheck/TcPat.o
 stage2/typecheck/TcRnDriver.o stage2/typecheck/TcRnMonad.o
 stage2/typecheck/TcRnTypes.o stage2/typecheck/TcRules.o
 stage2/typecheck/TcSimplify.o stage2/typecheck/TcSplice.o
 stage2/typecheck/TcTyClsDecls.o stage2/typecheck/TcTyDecls.o
 stage2/typecheck/TcTyFuns.o stage2/typecheck/TcType.o
 stage2/typecheck/TcUnify.o stage2/types/Class.o stage2/types/Coercion.o
 stage2/types/FamInstEnv.o stage2/types/FunDeps.o stage2/types/Generics.o
 stage2/types/InstEnv.o stage2/types/TyCon.o stage2/types/Type.o
 stage2/types/TypeRep.o stage2/types/Unify.o stage2/utils/Bag.o
 stage2/utils/Binary.o stage2/utils/BufWrite.o stage2/utils/Digraph.o
 stage2/utils/Encoding.o stage2/utils/FastMutInt.o
 stage2/utils/FastString.o stage2/utils/FastTypes.o
 stage2/utils/FiniteMap.o stage2/utils/GraphBase.o
 stage2/utils/GraphColor.o stage2/utils/GraphOps.o stage2/utils/GraphPpr.o
 stage2/utils/IOEnv.o stage2/utils/Interval.o stage2/utils/ListSetOps.o
 stage2/utils/Maybes.o stage2/utils/OrdList.o stage2/utils/Outputable.o
 stage2/utils/Panic.o stage2/utils/Pretty.o stage2/utils/State.o
 stage2/utils/StringBuffer.o stage2/utils/UniqFM.o stage2/utils/UniqSet.o
 stage2/utils/Util.o stage2/vectorise/VectBuiltIn.o
 stage2/vectorise/VectCore.o stage2/vectorise/VectMonad.o
 stage2/vectorise/VectType.o stage2/vectorise/VectUtils.o
 stage2/vectorise/Vectorise.o stage2/parser/cutils.o
 make[1]: *** [HSghc.o] Bus error
 make[1]: *** Deleting file `HSghc.o'
 make: *** [stage2] Error 2
 }}}
 I have looked a bit more into this and still believe that it is a Leopard
 ld problem. Although I am not able to understand what goes on with the
 failing PPC code in detail, I am a bit concerned about the use of an
 expression that subtracts a {{{.text}}} section relocatable symbol from a
 {{{.const_data}}} section relocatable symbol: The Apple Assembler
 documentation seems to suggest that this is invalid (see section headed
 "Relocatable Expressions" in
 
http://developer.apple.com/documentation/DeveloperTools/Reference/Assembler/Assembler.pdf).

 Although I am not sure of the difference between {{{.const_data}}} and
 {{{.text}}}, I tried to change the code generator to replace
 {{{.const_data}}} sections with {{{.text}}} sections as indicated in the
 attached patch. The resulting compiler is able to pass the sore spots
 encountered earlier. It is also able to pass validate with relatively few
 errors reported, but I am not sure that this is particularly significant.
 For completion, the errors reported are
 {{{
 OVERALL SUMMARY for test run started at Wed Jan  2 09:53:41 CET 2008
     2051 total tests, which gave rise to
     7771 test cases, of which
        1 caused framework failures
     6026 were skipped

     1666 expected passes
       76 expected failures
        0 unexpected passes
        3 unexpected failures

 Unexpected failures:
    currentDirectory001(normal)
    directory001(normal)
    ghci024(ghci)
 }}}
 but I don't believe that they are relevant to this issue.

 Suggestions for further investigation are most welcome.

 Best regards
 Thorkil

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/1958#comment:9>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to