Ticket #4132 (closed feature request: wontfix)

Opened 3 years ago

Last modified 3 years ago

Generate .o, .dyn_o, .p_o etc. simultaneously

Reported by: ksf Owned by:
Priority: normal Milestone:
Component: Compiler Version: 6.12.3
Keywords: Cc: barsoap@…
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Difficulty:
Test Case: Blocked By:
Blocking: Related Tickets:

Description

I guesstimate there's a lot of work being unnecessarily duplicated when cabal calls ghc multiple times for each way, leading to unnecessarily long build times.

Change History

Changed 3 years ago by igloo

  • status changed from new to closed
  • resolution set to wontfix

Not as much work can be shared as you might expect. For example, when compiling for profiling, there are profiling annotations sprinkled throughout the code before the optimiser is run. Also, the .hi files for modules imported for different ways may have different unfoldings which get inlined. I don't think that enough could be shared that it would be worth the extra complexity.

There was discussion elsewhere about generating the same code for the "normal" and "dynamic" ways, to help with making ghci use dynamic libraries, but that's a relatively simple special case.

Note: See TracTickets for help on using tickets.