[commit: ghc] ghc-7.8: Use the correct callClobberedRegs on Windows/x64 (#8834) (fc5aa5d)

git at git.haskell.org git at git.haskell.org
Thu Mar 27 21:03:33 UTC 2014


Repository : ssh://git@git.haskell.org/ghc

On branch  : ghc-7.8
Link       : http://ghc.haskell.org/trac/ghc/changeset/fc5aa5d8a0a7c7fc57cfe268f1e051e14c90b93b/ghc

>---------------------------------------------------------------

commit fc5aa5d8a0a7c7fc57cfe268f1e051e14c90b93b
Author: Simon Marlow <marlowsd at gmail.com>
Date:   Mon Mar 24 14:36:16 2014 +0000

    Use the correct callClobberedRegs on Windows/x64 (#8834)
    
    Signed-off-by: Austin Seipp <austin at well-typed.com>
    (cherry picked from commit c4eeacdfdf4578eb6e75bbf2e067bfe70ec94ab0)


>---------------------------------------------------------------

fc5aa5d8a0a7c7fc57cfe268f1e051e14c90b93b
 compiler/nativeGen/X86/Regs.hs |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/compiler/nativeGen/X86/Regs.hs b/compiler/nativeGen/X86/Regs.hs
index b5139c9..127a811 100644
--- a/compiler/nativeGen/X86/Regs.hs
+++ b/compiler/nativeGen/X86/Regs.hs
@@ -403,6 +403,9 @@ callClobberedRegs       :: Platform -> [Reg]
 -- caller-saves registers
 callClobberedRegs platform
  | target32Bit platform = [eax,ecx,edx] ++ map regSingle (floatregnos platform)
+ | platformOS platform == OSMinGW32
+   = [rax,rcx,rdx,r8,r9,r10,r11]
+   ++ map regSingle (floatregnos platform)
  | otherwise
     -- all xmm regs are caller-saves
     -- caller-saves registers



More information about the ghc-commits mailing list