[GHC] #16174: GhcEnableTablesNextToCode=NO breaks NCG on macOS

GHC ghc-devs at haskell.org
Sun Jan 13 12:40:47 UTC 2019


#16174: GhcEnableTablesNextToCode=NO breaks NCG on macOS
-------------------------------------+-------------------------------------
           Reporter:  angerman       |             Owner:  (none)
               Type:  bug            |            Status:  new
           Priority:  high           |         Milestone:  8.6.2
          Component:  Compiler       |           Version:  8.6.3
  (CodeGen)                          |
           Keywords:  NCG, TNCT,     |  Operating System:  Unknown/Multiple
  TablesNextToCode                   |
       Architecture:                 |   Type of failure:  None/Unknown
  Unknown/Multiple                   |
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 It appears as if `GhcEnableTablesNextToCode=NO` breaks the NCG on macOS as
 early as GHC 8.4.

 Running the following
 {{{
 git reset --hard HEAD
 git clean -xfd
 git submodule update --init --recursive
 git clean -xfd
 sed -E "s/^#BuildFlavour[ ]+= quick-cross$/BuildFlavour = quick/" <
 mk/build.mk.sample > mk/build.mk
 echo "GhcEnableTablesNextToCode=NO" >> mk/build.mk
 ./boot && ./configure --silent && make -s -j9
 }}}

 on macOS with the 8.4 and 8.6 generated duplicate symbols in the assembly
 file.

 Something like
 {{{
 .text
 .align 3
 Lc4l:
 Lc4l:
         jmp Lc4u
 .const_data
 .align 3
 .align 0
 _Lc4l_info:
         .quad   Lc4l
         .quad   259
         .long   30
         .long   0
 }}}

 which causes the assembler to choke.

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


More information about the ghc-tickets mailing list