diff options
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/config/h8300/h8300.md | 22 |
2 files changed, 8 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0002f07..f542b85 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2000-10-17 Kazu Hirata <kazu@hxi.com> + + * config/h8300/h8300.md: Remove an unnecessary zero_extend + expander that is used when not optimizing. Output a tab after + each assembly insns. + 2000-10-17 Chandrakala Chavva <cchavva@redhat.com> * gcc.c: New options --target-help. diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md index 9ade006..b7d1461 100644 --- a/gcc/config/h8300/h8300.md +++ b/gcc/config/h8300/h8300.md @@ -1634,24 +1634,6 @@ [(set (match_operand:SI 0 "register_operand" "") (zero_extend:SI (match_operand:HI 1 "register_operand" "")))] "" - " -{ - if (TARGET_H8300 - && GET_CODE (operands[1]) != CONST_INT - && !optimize) - { - emit_insn (gen_zero_extendhisi2_h8300 (operands[0], operands[1])); - DONE; - } -}") - -;; This is used when not optimizing. It avoids severe code explosion -;; due to poor register allocation. -(define_expand "zero_extendhisi2_h8300" - [(set (reg:HI 1) (match_operand:HI 1 "general_operand" "")) - (set (reg:SI 0) (zero_extend:SI (reg:HI 1))) - (set (match_operand:SI 0 "general_operand" "") (reg:SI 0))] - "TARGET_H8300" "") ;; %e prints the high part of a CONST_INT, not the low part. Arggh. @@ -1661,8 +1643,8 @@ "TARGET_H8300" "@ sub.w %e0,%e0 - mov.w %f1,%f0\;sub.w %e0,%e0 - mov.w %e1,%f0\;sub.w %e0,%e0" + mov.w %f1,%f0\;sub.w %e0,%e0 + mov.w %e1,%f0\;sub.w %e0,%e0" [(set_attr "length" "2,4,4") (set_attr "cc" "clobber,clobber,clobber")]) |
