Skip to content
  • rwbarton's avatar
    Be aware of overlapping global STG registers in CmmSink (#10521) · a2f828a3
    rwbarton authored
    Summary:
    On x86_64, commit e2f6bbd3 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
    a2f828a3