diff options
| author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-04 13:32:39 +0000 |
|---|---|---|
| committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-04 13:32:39 +0000 |
| commit | 997d68fef349f244932d14a82f06cbfe26e344f6 (patch) | |
| tree | 6743f11e58bd7a933b08900d973d89026cd11c43 /gcc/reg-stack.c | |
| parent | 68215e49a61b9179c353b5edd9b5796b04acdba0 (diff) | |
| download | ppe42-gcc-997d68fef349f244932d14a82f06cbfe26e344f6.tar.gz ppe42-gcc-997d68fef349f244932d14a82f06cbfe26e344f6.zip | |
* Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
for details.
* haifa-sched.c: Mirror recent changes from gcc2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@18984 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/reg-stack.c')
| -rw-r--r-- | gcc/reg-stack.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c index 0d17f3f87c4..ab3ded66eb4 100644 --- a/gcc/reg-stack.c +++ b/gcc/reg-stack.c @@ -1,5 +1,5 @@ /* Register to Stack convert for GNU compiler. - Copyright (C) 1992, 93-97, 1998 Free Software Foundation, Inc. + Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc. This file is part of GNU CC. @@ -1998,11 +1998,13 @@ compare_for_stack_reg (insn, regstack, pat) src2 = get_true_reg (&XEXP (SET_SRC (pat), 1)); cc0_user = next_cc0_user (insn); - /* If the insn that uses cc0 is a conditional move, then the destination + /* If the insn that uses cc0 is an FP-conditional move, then the destination must be the top of stack */ if (GET_CODE (PATTERN (cc0_user)) == SET && SET_DEST (PATTERN (cc0_user)) != pc_rtx - && GET_CODE (SET_SRC (PATTERN (cc0_user))) == IF_THEN_ELSE) + && GET_CODE (SET_SRC (PATTERN (cc0_user))) == IF_THEN_ELSE + && (GET_MODE_CLASS (GET_MODE (SET_DEST (PATTERN (cc0_user)))) + == MODE_FLOAT)) { rtx *dest; |

