[commit: ghc] master: Fix the generation of CallerSaves; fixes #7163 (6d3fb1b)

Ian Lynagh igloo at earth.li
Tue Aug 21 19:20:58 CEST 2012


Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/6d3fb1b1efee263f07da47693147990e8443ab1d

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

commit 6d3fb1b1efee263f07da47693147990e8443ab1d
Author: Ian Lynagh <ian at well-typed.com>
Date:   Tue Aug 21 16:41:30 2012 +0100

    Fix the generation of CallerSaves; fixes #7163
    
    Simon Marlow spotted that we were #include'ing MachRegs.h several times,
    but that doesn't work as (a) it uses ifdeffery to avoid being included
    multiple times, and (b) even if we work around that, then the #define's
    from previous inclusions are still defined when we #include it again.
    
    So we now put the platform code for each platform in a separate .hs file.

 compiler/codeGen/CallerSaves.hs                 |   51 ---------------------
 compiler/codeGen/CgUtils.hs                     |    2 +-
 compiler/codeGen/CodeGen/CallerSaves.hs         |   32 +++++++++++++
 compiler/codeGen/CodeGen/Platform/ARM.hs        |    9 ++++
 compiler/codeGen/CodeGen/Platform/NoRegs.hs     |    8 +++
 compiler/codeGen/CodeGen/Platform/PPC.hs        |    9 ++++
 compiler/codeGen/CodeGen/Platform/PPC_Darwin.hs |   10 ++++
 compiler/codeGen/CodeGen/Platform/SPARC.hs      |    9 ++++
 compiler/codeGen/CodeGen/Platform/X86.hs        |    9 ++++
 compiler/codeGen/CodeGen/Platform/X86_64.hs     |    9 ++++
 compiler/codeGen/StgCmmUtils.hs                 |    2 +-
 compiler/ghc.cabal.in                           |    9 +++-
 includes/CallerSaves.part.hs                    |   54 +++++++++++-----------
 13 files changed, 132 insertions(+), 81 deletions(-)


Diff suppressed because of size. To see it, use:

    git show 6d3fb1b1efee263f07da47693147990e8443ab1d



More information about the Cvs-ghc mailing list