summaryrefslogtreecommitdiff
path: root/gcc/reg-stack.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-03-08 19:09:03 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-03-08 19:09:03 +0000
commit75ab846af632199b06815fc7afc3845aabf853ce (patch)
treecec8de1e3589cbc9f959c98d5fd44161c70c90d0 /gcc/reg-stack.c
parent345252d12490c007b0ffde566ba53be7dd79ef04 (diff)
downloadgcc-75ab846af632199b06815fc7afc3845aabf853ce.tar.gz
* reg-stack.c (move_for_stack_reg): Avoid non-poping fst for
TFmode too. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40325 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/reg-stack.c')
-rw-r--r--gcc/reg-stack.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c
index 94300c394d4..1d14a013cee 100644
--- a/gcc/reg-stack.c
+++ b/gcc/reg-stack.c
@@ -1119,7 +1119,8 @@ move_for_stack_reg (insn, regstack, pat)
regstack->top--;
CLEAR_HARD_REG_BIT (regstack->reg_set, REGNO (src));
}
- else if (GET_MODE (src) == XFmode && regstack->top < REG_STACK_SIZE - 1)
+ else if ((GET_MODE (src) == XFmode || GET_MODE (src) == TFmode)
+ && regstack->top < REG_STACK_SIZE - 1)
{
/* A 387 cannot write an XFmode value to a MEM without
clobbering the source reg. The output code can handle