summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Trommler <ptrommler@acm.org>2016-02-16 22:44:25 +0100
committerBen Gamari <ben@smart-cactus.org>2016-02-16 22:44:36 +0100
commit31160036c71f6f913623ea5c889ec3963d49768c (patch)
tree95fc11b3868a09cdb6bb4dbc560cb171fe4921b2
parentaf5a0e5004cfb1e041280fd7c16f2c1bfee67961 (diff)
downloadhaskell-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.h12
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