[commit: ghc] master: PowerPC: Improve float register assignment. (3116003)

git at git.haskell.org git at git.haskell.org
Tue Feb 16 22:13:24 UTC 2016


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/31160036c71f6f913623ea5c889ec3963d49768c/ghc

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

commit 31160036c71f6f913623ea5c889ec3963d49768c
Author: Peter Trommler <ptrommler at acm.org>
Date:   Tue Feb 16 22:44:25 2016 +0100

    PowerPC: Improve float register assignment.
    
    On Linux assign F5 and F6 and D3 through D6 to caller-saved registers.
    
    Fixes #11273
    
    Test Plan: validate on powerpc (I validated on powerpc64)
    
    Reviewers: bgamari, erikd, austin
    
    Reviewed By: erikd, austin
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D1914
    
    GHC Trac Issues: #11273


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

31160036c71f6f913623ea5c889ec3963d49768c
 includes/stg/MachRegs.h | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/includes/stg/MachRegs.h b/includes/stg/MachRegs.h
index ce4ebf4..ab1a421 100644
--- a/includes/stg/MachRegs.h
+++ b/includes/stg/MachRegs.h
@@ -332,9 +332,15 @@ the stack. See Note [Overlapping global registers] for implications.
 #define REG_F2          fr15
 #define REG_F3          fr16
 #define REG_F4          fr17
-
-#define REG_D1          fr18
-#define REG_D2          fr19
+#define REG_F5          fr18
+#define REG_F6          fr19
+
+#define REG_D1          fr20
+#define REG_D2          fr21
+#define REG_D3          fr22
+#define REG_D4          fr23
+#define REG_D5          fr24
+#define REG_D6          fr25
 
 #endif
 



More information about the ghc-commits mailing list