aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKazu Hirata <kazu@cs.umass.edu>2003-03-04 01:14:51 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2003-03-04 01:14:51 +0000
commit0d9bf032e5d3447f53bb10da134fc5b6fd3a2667 (patch)
tree2a6b5b71d5769dd8078c3ec3037a22dbde41a10e
parentf5d70cc0249ddd1745846c62ec171f0cfbeb7673 (diff)
downloadgcc-0d9bf032e5d3447f53bb10da134fc5b6fd3a2667.zip
gcc-0d9bf032e5d3447f53bb10da134fc5b6fd3a2667.tar.gz
gcc-0d9bf032e5d3447f53bb10da134fc5b6fd3a2667.tar.bz2
h8300.md (*extzv_8_8): Use '?' to simplify the pattern.
* config/h8300/h8300.md (*extzv_8_8): Use '?' to simplify the pattern. From-SVN: r63755
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/h8300/h8300.md19
2 files changed, 12 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0fd2fd3..890fafa 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*extzv_8_8): Use '?' to simplify the
+ pattern.
+
2003-03-03 Geoffrey Keating <geoffk@apple.com>
* doc/install.texi (Specific): Update entry for powerpc-darwin.
diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md
index 4da60c5..1286fd9 100644
--- a/gcc/config/h8300/h8300.md
+++ b/gcc/config/h8300/h8300.md
@@ -2625,21 +2625,16 @@
;; extzv:SI
(define_insn "*extzv_8_8"
- [(set (match_operand:SI 0 "register_operand" "=r")
- (zero_extract:SI (match_operand:SI 1 "register_operand" "r")
+ [(set (match_operand:SI 0 "register_operand" "=r,r")
+ (zero_extract:SI (match_operand:SI 1 "register_operand" "?0,r")
(const_int 8)
(const_int 8)))]
"TARGET_H8300H || TARGET_H8300S"
- "*
-{
- if (REG_P (operands[0]) && REG_P (operands[1])
- && REGNO (operands[0]) != REGNO (operands[1]))
- return \"sub.l\\t%S0,%S0\;mov.b\\t%x1,%w0\";
- else
- return \"mov.b\\t%x1,%w0\;extu.w\\t%f0\;extu.l\\t%S0\";
-}"
- [(set_attr "cc" "set_znv")
- (set_attr "length" "6")])
+ "@
+ mov.b\\t%x1,%w0\;extu.w\\t%f0\;extu.l\\t%S0
+ sub.l\\t%S0,%S0\;mov.b\\t%x1,%w0"
+ [(set_attr "cc" "clobber,set_znv")
+ (set_attr "length" "4,6")])
(define_insn "*extzv_8_16"
[(set (match_operand:SI 0 "register_operand" "=r")