diff options
author | Peter Trommler <ptrommler@acm.org> | 2016-02-16 22:44:25 +0100 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2016-02-16 22:44:36 +0100 |
commit | 31160036c71f6f913623ea5c889ec3963d49768c (patch) | |
tree | 95fc11b3868a09cdb6bb4dbc560cb171fe4921b2 | |
parent | af5a0e5004cfb1e041280fd7c16f2c1bfee67961 (diff) | |
download | haskell-31160036c71f6f913623ea5c889ec3963d49768c.tar.gz |
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
-rw-r--r-- | includes/stg/MachRegs.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/includes/stg/MachRegs.h b/includes/stg/MachRegs.h index ce4ebf4c62..ab1a421c01 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 |