[GHC] #8748: ghc-7.8-rc1/HEAD: --enable-unregisterised fails to build and run with threaded RTS, profiling mode
GHC
ghc-devs at haskell.org
Thu Feb 13 08:07:52 UTC 2014
#8748: ghc-7.8-rc1/HEAD: --enable-unregisterised fails to build and run with
threaded RTS, profiling mode
-------------------------------------+------------------------------------
Reporter: slyfox | Owner:
Type: bug | Status: patch
Priority: high | Milestone: 7.8.1
Component: Compiler | Version: 7.8.1-rc1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets: 8301
-------------------------------------+------------------------------------
Comment (by slyfox):
With minor tweaks I've got ghci on ppc64 running:
{{{
timberdoodle ghc-7.8.20140130 # inplace/bin/ghc-stage2 --info
[("Project name","The Glorious Glasgow Haskell Compilation System")
,("GCC extra via C opts"," -fwrapv")
,("C compiler command","powerpc64-unknown-linux-gnu-gcc")
,("C compiler flags"," -fno-stack-protector")
,("C compiler link flags","")
,("ld command","/usr/bin/powerpc64-unknown-linux-gnu-ld")
,("ld flags","")
,("ld supports compact unwind","YES")
,("ld supports build-id","YES")
,("ld supports filelist","NO")
,("ld is GNU ld","YES")
,("ar command","/usr/bin/ar")
,("ar flags","q")
,("ar supports at file","YES")
,("touch command","touch")
,("dllwrap command","/bin/false")
,("windres command","/bin/false")
,("libtool command","libtool")
,("perl command","/usr/bin/perl")
,("target os","OSLinux")
,("target arch","ArchPPC_64")
,("target word size","8")
,("target has GNU nonexec stack","True")
,("target has .ident directive","True")
,("target has subsections via symbols","False")
,("Unregisterised","YES")
,("LLVM llc command","llc")
,("LLVM opt command","opt")
,("Project version","7.8.20140130")
,("Booter version","7.4.2")
,("Stage","2")
,("Build platform","powerpc64-unknown-linux")
,("Host platform","powerpc64-unknown-linux")
,("Target platform","powerpc64-unknown-linux")
,("Have interpreter","YES")
,("Object splitting supported","NO")
,("Have native code generator","NO")
,("Support SMP","NO")
,("Tables next to code","NO")
,("RTS ways","l debug thr thr_debug thr_l thr_p dyn debug_dyn thr_dyn
thr_debug_dyn l_dyn thr_l_dyn")
,("Support dynamic-too","YES")
,("Support parallel --make","YES")
,("Dynamic by default","NO")
,("GHC Dynamic","YES")
,("Leading underscore","NO")
,("Debug on","False")
,("LibDir","/var/tmp/portage/dev-
lang/ghc-7.8.1_rc1/work/ghc-7.8.20140130/inplace/lib")
,("Global Package DB","/var/tmp/portage/dev-
lang/ghc-7.8.1_rc1/work/ghc-7.8.20140130/inplace/lib/package.conf.d")
]
timberdoodle ghc-7.8.20140130 # inplace/bin/ghc-stage2 --interactive
GHCi, version 7.8.20140130: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Prelude> 2^128
340282366920938463463374607431768211456
Prelude>
}}}
The tweak is to build '''compiler/HsExpr.lhs''' as '''ghc --make -O'''
instead of '''ghc --make -O2'''. That makes C compiler happy.
I think it makes sense to downgrade down to '''-O''' on all UNREG arches,
as C cources are already too big to produce code of sane size.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8748#comment:10>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list