[GHC] #10521: Wrong results in strict Word8 storage on x64

GHC ghc-devs at haskell.org
Thu Jun 25 18:26:37 UTC 2015


#10521: Wrong results in strict Word8 storage on x64
-------------------------------------+-------------------------------------
        Reporter:  VincentBerthoux2  |                   Owner:  rwbarton
            Type:  bug               |                  Status:  patch
        Priority:  highest           |               Milestone:  7.10.2
       Component:  Compiler          |                 Version:  7.10.1
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:  x86_64
 Type of failure:  Incorrect result  |  (amd64)
  at runtime                         |               Test Case:
      Blocked By:                    |                Blocking:
 Related Tickets:                    |  Differential Revisions:  Phab:D993
-------------------------------------+-------------------------------------

Comment (by Reid Barton <rwbarton@…>):

 In [changeset:"a2f828a370b220839ad9b31a274c0198ef91b7fe/ghc"]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="a2f828a370b220839ad9b31a274c0198ef91b7fe"
 Be aware of overlapping global STG registers in CmmSink (#10521)

 Summary:
 On x86_64, commit e2f6bbd3a27685bc667655fdb093734cb565b4cf assigned
 the STG registers F1 and D1 the same hardware register (xmm1), and
 the same for the registers F2 and D2, etc. When mixing calls to
 functions involving Float#s and Double#s, this can cause wrong Cmm
 optimizations that assume the F1 and D1 registers are independent.

 Reviewers: simonpj, austin

 Reviewed By: austin

 Subscribers: simonpj, thomie, bgamari

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

 GHC Trac Issues: #10521
 }}}

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


More information about the ghc-tickets mailing list