From df14489af1373b2358e19cee33a5d80d8730c1a1 Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Tue, 11 Jun 2002 14:47:04 +0000 Subject: [PATCH] s390.md (movsi): Only use floating point register alternatives when operands are already fprs. * config/s390/s390.md (movsi): Only use floating point register alternatives when operands are already fprs. (movdi_31, movdi_64): Likewise. From-SVN: r54506 --- gcc/ChangeLog | 6 ++++++ gcc/config/s390/s390.md | 12 ++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bc8dd0e5884..3b841018728 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-06-11 Ulrich Weigand + + * config/s390/s390.md (movsi): Only use floating point + register alternatives when operands are already fprs. + (movdi_31, movdi_64): Likewise. + 2002-06-11 David S. Miller * emit-rtl.c (try_split): Do not abort on non-INSN_P. diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md index f9a1d7b7af7..cbec795fcf3 100644 --- a/gcc/config/s390/s390.md +++ b/gcc/config/s390/s390.md @@ -947,8 +947,8 @@ (set_attr "atype" "mem")]) (define_insn "*movdi_64" - [(set (match_operand:DI 0 "nonimmediate_operand" "=d,d,m,f,f,m") - (match_operand:DI 1 "general_operand" "d,m,d,f,m,f"))] + [(set (match_operand:DI 0 "nonimmediate_operand" "=d,d,m,!*f,!*f,!m") + (match_operand:DI 1 "general_operand" "d,m,d,*f,m,*f"))] "TARGET_64BIT" "@ lgr\\t%0,%1 @@ -961,8 +961,8 @@ (set_attr "atype" "reg,mem,mem,reg,mem,mem")]) (define_insn "*movdi_31" - [(set (match_operand:DI 0 "nonimmediate_operand" "=d,Q,d,m,f,f,m") - (match_operand:DI 1 "general_operand" "Q,d,dKm,d,f,m,f"))] + [(set (match_operand:DI 0 "nonimmediate_operand" "=d,Q,d,m,!*f,!*f,!m") + (match_operand:DI 1 "general_operand" "Q,d,dKm,d,*f,m,*f"))] "!TARGET_64BIT" "@ lm\\t%0,%N0,%1 @@ -1100,8 +1100,8 @@ (set_attr "atype" "mem")]) (define_insn "*movsi" - [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d,m,f,f,m") - (match_operand:SI 1 "general_operand" "d,m,d,f,m,f"))] + [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d,m,!*f,!*f,!m") + (match_operand:SI 1 "general_operand" "d,m,d,*f,m,*f"))] "" "@ lr\\t%0,%1 -- 2.30.2