
#14291: Tests tend to fail in the ext-interp way when split sections is enabled -------------------------------------+------------------------------------- Reporter: bgamari | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.4.1 Component: Compiler | Version: 8.2.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: 13716 Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): I think the issue may not be in the RTS linker; rather, I suspect the issue is that the system linker is rearranging our sections. In `Data/Data.o` I see {{{ $ readelf -W -s /mnt/work/ghc/ghc-compare-2/libraries/base/dist- install/build/Data/Data.o | grep DataAnyzuzdcgunfold 14326: 0000000000000000 0 OBJECT GLOBAL DEFAULT 5790 base_DataziData_zdfDataAnyzuzdcgunfold_closure 14327: 0000000000000020 68 OBJECT GLOBAL DEFAULT 5794 base_DataziData_zdfDataAnyzuzdcgunfold_info }}} With the sections 5790 and 5794 being {{{ [5790] .data.base_DataziData_zdfDataAnyzuzdcgunfold_closure PROGBITS 0000000000000000 033940 000010 00 WA 0 0 8 [5794] .text.base_DataziData_zdfDataAnyzuzdcgunfold_info PROGBITS 0000000000000000 033990 000064 00 AX 0 0 8 }}} Whereas in the merged object file I see, {{{ $ readelf -W -s /mnt/work/ghc/ghc-compare-2/libraries/base/dist- install/build/HSbase-4.10.0.0.o | grep DataAnyzuzdcgunfold 81410: 0000000000076338 68 OBJECT GLOBAL DEFAULT 1 base_DataziData_zdfDataAnyzuzdcgunfold_info 81411: 000000000000e6d0 0 OBJECT GLOBAL DEFAULT 2 base_DataziData_zdfDataAnyzuzdcgunfold_closure }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14291#comment:13 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler