[GHC] #11578: Fix GHC on AArch64/Arm64

GHC ghc-devs at haskell.org
Tue Feb 16 10:42:03 UTC 2016


#11578: Fix GHC on AArch64/Arm64
-------------------------------------+-------------------------------
        Reporter:  erikd             |                Owner:
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:  8.2.1
       Component:  Compiler          |              Version:  8.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:  aarch64
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------

Comment (by mfox):

 LLVM does work in HEAD though:

 {{{
 ghc -v -fllvm hello.hs
 Glasgow Haskell Compiler, Version 8.1.20160209, stage 2 booted by GHC
 version 7.10.3
 Using binary package database:
 /usr/local/lib/ghc-8.1.20160209/package.conf.d/package.cache
 Using binary package database:
 /home/admin/.ghc/aarch64-linux-8.1.20160209/package.conf.d/package.cache
 loading package database /usr/local/lib/ghc-8.1.20160209/package.conf.d
 loading package database
 /home/admin/.ghc/aarch64-linux-8.1.20160209/package.conf.d
 wired-in package ghc-prim mapped to ghc-prim-0.5.0.0
 wired-in package integer-gmp mapped to integer-gmp-1.0.0.1
 wired-in package base mapped to base-4.9.0.0
 wired-in package rts mapped to rts
 wired-in package template-haskell mapped to template-haskell-2.11.0.0
 wired-in package ghc mapped to ghc-8.1
 wired-in package dph-seq not found.
 wired-in package dph-par not found.
 Hsc static flags:
 loading package database /usr/local/lib/ghc-8.1.20160209/package.conf.d
 loading package database
 /home/admin/.ghc/aarch64-linux-8.1.20160209/package.conf.d
 wired-in package ghc-prim mapped to ghc-prim-0.5.0.0
 wired-in package integer-gmp mapped to integer-gmp-1.0.0.1
 wired-in package base mapped to base-4.9.0.0
 wired-in package rts mapped to rts-1.0
 wired-in package template-haskell mapped to template-haskell-2.11.0.0
 wired-in package ghc mapped to ghc-8.1
 wired-in package dph-seq not found.
 wired-in package dph-par not found.
 *** Chasing dependencies:
 Chasing modules from: *hello.hs
 Stable obj: []
 Stable BCO: []
 Ready for upsweep
   [NONREC
       ModSummary {
          ms_hs_date = 2016-02-14 17:59:53.924557751 UTC
          ms_mod = Main,
          ms_textual_imps = [(Nothing, Prelude)]
          ms_srcimps = []
       }]
 *** Deleting temp files:
 Deleting:
 compile: input file hello.hs
 *** Checking old interface for Main:
 [1 of 1] Compiling Main             ( hello.hs, hello.o )
 *** Parser:
 *** Renamer/typechecker:
 *** Desugar:
 Result size of Desugar (before optimization)
   = {terms: 15, types: 8, coercions: 0}
 Result size of Desugar (after optimization)
   = {terms: 13, types: 6, coercions: 0}
 *** Simplifier:
 Result size of Simplifier iteration=1
   = {terms: 17, types: 8, coercions: 0}
 Result size of Simplifier = {terms: 17, types: 8, coercions: 0}
 *** Tidy Core:
 Result size of Tidy Core = {terms: 17, types: 8, coercions: 0}
 writeBinIface: 1 Names
 writeBinIface: 18 dict entries
 Created temporary directory: /tmp/ghc22455_0
 *** CorePrep:
 Result size of CorePrep = {terms: 19, types: 9, coercions: 0}
 *** Stg2Stg:
 *** CodeGen:
 *** LLVM CodeGen:
 Using LLVM version: (3,7)
 *** LLVM Optimiser:
 /usr/local/bin/opt /tmp/ghc22455_0/ghc_2.ll -o /tmp/ghc22455_0/ghc_4.bc
 -mem2reg -globalopt '--enable-tbaa=true'
 *** LLVM Compiler:
 /usr/local/bin/llc -O1 '-relocation-model=static' /tmp/ghc22455_0/ghc_4.bc
 -o /tmp/ghc22455_0/ghc_5.lm_s '--enable-tbaa=true'
 *** LLVM Mangler:
 *** Assembler:
 /usr/bin/gcc -fno-stack-protector -DNO_REGS -DUSE_MINIINTERPRETER -I. -x
 assembler -c /tmp/ghc22455_0/ghc_6.s -o hello.o
 Upsweep completely successful.
 *** Deleting temp files:
 Deleting: /tmp/ghc22455_0/ghc_6.s /tmp/ghc22455_0/ghc_5.lm_s
 /tmp/ghc22455_0/ghc_4.bc /tmp/ghc22455_0/ghc_3.c /tmp/ghc22455_0/ghc_2.ll
 /tmp/ghc22455_0/ghc_1.ll
 Warning: deleting non-existent /tmp/ghc22455_0/ghc_3.c
 Warning: deleting non-existent /tmp/ghc22455_0/ghc_1.ll
 link: linkables are ...
 LinkableM (2016-02-16 10:42:45.064557751 UTC) Main
    [DotO hello.o]
 Linking hello ...
 *** C Compiler:
 /usr/bin/gcc -fno-stack-protector -DNO_REGS -DUSE_MINIINTERPRETER -c
 /tmp/ghc22455_0/ghc_7.c -o /tmp/ghc22455_0/ghc_8.o
 -I/usr/local/lib/ghc-8.1.20160209/include
 *** C Compiler:
 /usr/bin/gcc -fno-stack-protector -DNO_REGS -DUSE_MINIINTERPRETER -c
 /tmp/ghc22455_0/ghc_10.s -o /tmp/ghc22455_0/ghc_11.o
 -I/usr/local/lib/ghc-8.1.20160209/include
 *** Linker:
 /usr/bin/gcc -fno-stack-protector -DNO_REGS -DUSE_MINIINTERPRETER '-fuse-
 ld=gold' -Wl,-z,noexecstack -Wl,--no-as-needed -o hello -Wl,--gc-sections
 hello.o -L/usr/local/lib/ghc-8.1.20160209/base-4.9.0.0
 -L/usr/local/lib/ghc-8.1.20160209/integer-gmp-1.0.0.1
 -L/usr/local/lib/ghc-8.1.20160209/ghc-prim-0.5.0.0
 -L/usr/local/lib/ghc-8.1.20160209/rts /tmp/ghc22455_0/ghc_8.o
 /tmp/ghc22455_0/ghc_11.o -Wl,-u,ghczmprim_GHCziTypes_Izh_static_info
 -Wl,-u,ghczmprim_GHCziTypes_Czh_static_info
 -Wl,-u,ghczmprim_GHCziTypes_Fzh_static_info
 -Wl,-u,ghczmprim_GHCziTypes_Dzh_static_info
 -Wl,-u,base_GHCziPtr_Ptr_static_info
 -Wl,-u,ghczmprim_GHCziTypes_Wzh_static_info
 -Wl,-u,base_GHCziInt_I8zh_static_info
 -Wl,-u,base_GHCziInt_I16zh_static_info
 -Wl,-u,base_GHCziInt_I32zh_static_info
 -Wl,-u,base_GHCziInt_I64zh_static_info
 -Wl,-u,base_GHCziWord_W8zh_static_info
 -Wl,-u,base_GHCziWord_W16zh_static_info
 -Wl,-u,base_GHCziWord_W32zh_static_info
 -Wl,-u,base_GHCziWord_W64zh_static_info
 -Wl,-u,base_GHCziStable_StablePtr_static_info
 -Wl,-u,ghczmprim_GHCziTypes_Izh_con_info
 -Wl,-u,ghczmprim_GHCziTypes_Czh_con_info
 -Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info
 -Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info -Wl,-u,base_GHCziPtr_Ptr_con_info
 -Wl,-u,base_GHCziPtr_FunPtr_con_info
 -Wl,-u,base_GHCziStable_StablePtr_con_info
 -Wl,-u,ghczmprim_GHCziTypes_False_closure
 -Wl,-u,ghczmprim_GHCziTypes_True_closure
 -Wl,-u,base_GHCziPack_unpackCString_closure
 -Wl,-u,base_GHCziIOziException_stackOverflow_closure
 -Wl,-u,base_GHCziIOziException_heapOverflow_closure
 -Wl,-u,base_ControlziExceptionziBase_nonTermination_closure
 -Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure
 -Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure
 -Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure
 -Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure
 -Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure
 -Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure
 -Wl,-u,base_GHCziTopHandler_flushStdHandles_closure
 -Wl,-u,base_GHCziTopHandler_runIO_closure
 -Wl,-u,base_GHCziTopHandler_runNonIO_closure
 -Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure
 -Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure
 -Wl,-u,base_GHCziConcziSync_runSparks_closure
 -Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure -lHSbase-4.9.0.0
 -lHSinteger-gmp-1.0.0.1 -lHSghc-prim-0.5.0.0 -lHSrts -lCffi -lgmp -lm -lrt
 -ldl
 link: done
 *** Deleting temp files:
 Deleting: /tmp/ghc22455_0/ghc_13.rsp /tmp/ghc22455_0/ghc_12.rsp
 /tmp/ghc22455_0/ghc_11.o /tmp/ghc22455_0/ghc_10.s
 /tmp/ghc22455_0/ghc_9.rsp /tmp/ghc22455_0/ghc_8.o /tmp/ghc22455_0/ghc_7.c
 *** Deleting temp dirs:
 Deleting: /tmp/ghc22455_0
 }}}

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11578#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list