From 908528d80157e219654f094dff3ee154cd69e8fb Mon Sep 17 00:00:00 2001 From: Michael Munday Date: Wed, 18 Jan 2017 15:39:39 -0500 Subject: [PATCH] Revert "Avoid saving/restoring floating point registers when entering the interpreter." This reverts commit e151edea531cf9341cebb1763136529ca8a39bb1. --- src/vm_s390x.dasc | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/vm_s390x.dasc b/src/vm_s390x.dasc index f58d3690..d1cf9524 100644 --- a/src/vm_s390x.dasc +++ b/src/vm_s390x.dasc @@ -103,10 +103,26 @@ |.macro saveregs | stmg r6, r15, SAVE_GPRS_P | lay sp, -CFRAME_SPACE(sp) // Allocate stack frame. -| // f8-f15 are also callee-save but are not currently used in the interpreter. +| // TODO: save backchain? +| std f8, SAVE_FPR8 // f8-f15 are callee-saved. +| std f9, SAVE_FPR9 +| std f10, SAVE_FPR10 +| std f11, SAVE_FPR11 +| std f12, SAVE_FPR12 +| std f13, SAVE_FPR13 +| std f14, SAVE_FPR14 +| std f15, SAVE_FPR15 |.endmacro | |.macro restoreregs +| ld f8, SAVE_FPR8 // f8-f15 are callee-saved. +| ld f9, SAVE_FPR9 +| ld f10, SAVE_FPR10 +| ld f11, SAVE_FPR11 +| ld f12, SAVE_FPR12 +| ld f13, SAVE_FPR13 +| ld f14, SAVE_FPR14 +| ld f15, SAVE_FPR15 | lmg r6, r15, SAVE_GPRS // Restores the stack pointer. |.endmacro |