From d666e71f833de6390ce60ee5d6bb539d2b9ee209 Mon Sep 17 00:00:00 2001 From: uweigand Date: Wed, 14 Dec 2005 16:05:01 +0000 Subject: [PATCH] 2005-12-14 Adrian Straetling * config/s390/s390.md ("atype", "length"): Rewrite. ("*insv_reg_imm", "*insv_reg_extimm"): Add mode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108514 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/config/s390/s390.md | 44 +++++++------------------------------------- 2 files changed, 12 insertions(+), 37 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e49e19f7585..2a56930e486 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-12-14 Adrian Straetling + + * config/s390/s390.md ("atype", "length"): Rewrite. + ("*insv_reg_imm", "*insv_reg_extimm"): Add mode. + 2005-12-14 Sebastian Pop * tree-ssa-operands.c (build_ssa_operands): Update leading comment. diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md index c9ce6fd10dd..dab9b58eefe 100644 --- a/gcc/config/s390/s390.md +++ b/gcc/config/s390/s390.md @@ -213,45 +213,15 @@ ;; reg: Instruction does not use the agen unit (define_attr "atype" "agen,reg" - (cond [(eq_attr "op_type" "E") (const_string "reg") - (eq_attr "op_type" "RR") (const_string "reg") - (eq_attr "op_type" "RX") (const_string "agen") - (eq_attr "op_type" "RI") (const_string "reg") - (eq_attr "op_type" "RRE") (const_string "reg") - (eq_attr "op_type" "RS") (const_string "agen") - (eq_attr "op_type" "RSI") (const_string "agen") - (eq_attr "op_type" "S") (const_string "agen") - (eq_attr "op_type" "SI") (const_string "agen") - (eq_attr "op_type" "SS") (const_string "agen") - (eq_attr "op_type" "SSE") (const_string "agen") - (eq_attr "op_type" "RXE") (const_string "agen") - (eq_attr "op_type" "RSE") (const_string "agen") - (eq_attr "op_type" "RIL") (const_string "agen") - (eq_attr "op_type" "RXY") (const_string "agen") - (eq_attr "op_type" "RSY") (const_string "agen") - (eq_attr "op_type" "SIY") (const_string "agen")] - (const_string "agen"))) + (if_then_else (eq_attr "op_type" "E,RR,RI,RRE") + (const_string "reg") + (const_string "agen"))) ;; Length in bytes. (define_attr "length" "" - (cond [(eq_attr "op_type" "E") (const_int 2) - (eq_attr "op_type" "RR") (const_int 2) - (eq_attr "op_type" "RX") (const_int 4) - (eq_attr "op_type" "RI") (const_int 4) - (eq_attr "op_type" "RRE") (const_int 4) - (eq_attr "op_type" "RS") (const_int 4) - (eq_attr "op_type" "RSI") (const_int 4) - (eq_attr "op_type" "S") (const_int 4) - (eq_attr "op_type" "SI") (const_int 4) - (eq_attr "op_type" "SS") (const_int 6) - (eq_attr "op_type" "SSE") (const_int 6) - (eq_attr "op_type" "RXE") (const_int 6) - (eq_attr "op_type" "RSE") (const_int 6) - (eq_attr "op_type" "RIL") (const_int 6) - (eq_attr "op_type" "RXY") (const_int 6) - (eq_attr "op_type" "RSY") (const_int 6) - (eq_attr "op_type" "SIY") (const_int 6)] + (cond [(eq_attr "op_type" "E,RR") (const_int 2) + (eq_attr "op_type" "RX,RI,RRE,RS,RSI,S,SI") (const_int 4)] (const_int 6))) @@ -2615,7 +2585,7 @@ [(set (zero_extract:P (match_operand:P 0 "register_operand" "+d") (const_int 16) (match_operand 1 "const_int_operand" "n")) - (match_operand 2 "const_int_operand" "n"))] + (match_operand:P 2 "const_int_operand" "n"))] "TARGET_ZARCH && INTVAL (operands[1]) >= 0 && INTVAL (operands[1]) < BITS_PER_WORD @@ -2636,7 +2606,7 @@ [(set (zero_extract:P (match_operand:P 0 "register_operand" "+d") (const_int 32) (match_operand 1 "const_int_operand" "n")) - (match_operand 2 "const_int_operand" "n"))] + (match_operand:P 2 "const_int_operand" "n"))] "TARGET_EXTIMM && INTVAL (operands[1]) >= 0 && INTVAL (operands[1]) < BITS_PER_WORD -- 2.11.4.GIT