[GHC] #4012: Compilation results are not deterministic

GHC ghc-devs at haskell.org
Mon Jun 6 11:01:51 UTC 2016


#4012: Compilation results are not deterministic
-------------------------------------+-------------------------------------
        Reporter:  kili              |                Owner:  niteria
            Type:  bug               |               Status:  new
        Priority:  high              |            Milestone:  8.2.1
       Component:  Compiler          |              Version:  6.12.2
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  Other             |            Test Case:
      Blocked By:  11362             |             Blocking:
 Related Tickets:  #10424            |  Differential Rev(s):  Phab:D910,
                                     |  Phab:D1073, Phab:D1133, Phab:D1192,
                                     |  Phab:D1268, Phab:D1360, Phab:D1373,
       Wiki Page:                    |  Phab:D1396, Phab:D1457, Phab:D1468,
  DeterministicBuilds                |  Phab:D1487, Phab:D1504, Phab:D1508
-------------------------------------+-------------------------------------

Comment (by Bartosz Nitka <niteria@…>):

 In [changeset:"3042a9d8d55b4706d2ce366fee1712c7357d5a00/ghc"
 3042a9d8/ghc]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="3042a9d8d55b4706d2ce366fee1712c7357d5a00"
 Use UniqDFM for HomePackageTable

 This isn't strictly necessary for deterministic ABIs.
 The results of eltsHpt are consumed in two ways:
 1) they determine the order of linking
 2) if you track the data flow all the family instances get put in
    FamInstEnvs, so the nondeterministic order is forgotten.
 3) same for VectInfo stuff
 4) same for Annotations

 The problem is that I haven't found a nice way to do 2. in
 a local way and 1. is nice to have if we went for deterministic
 object files. Besides these maps are keyed on ModuleNames so they
 should be small relative to other things and the overhead should
 be negligible.

 As a bonus we also get more specific names.

 Test Plan: ./validate

 Reviewers: bgamari, austin, hvr, ezyang, simonmar

 Reviewed By: simonmar

 Subscribers: thomie

 Differential Revision: https://phabricator.haskell.org/D2300

 GHC Trac Issues: #4012
 }}}

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


More information about the ghc-tickets mailing list