From: Kazu Hirata Date: Mon, 7 Apr 2003 10:17:24 +0000 (+0000) Subject: h8300.md (*zero_extendqisi2_h8300hs): Always split. X-Git-Tag: releases/gcc-3.4.0~7440 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=093b05b68f7b6c8bd35bf2dc50acfea95a418f39;p=thirdparty%2Fgcc.git h8300.md (*zero_extendqisi2_h8300hs): Always split. * config/h8300/h8300.md (*zero_extendqisi2_h8300hs): Always split. (a splitter): Do zero-extension via HImode. From-SVN: r65327 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a9d111deaf1a..716f7d164541 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-04-07 Kazu Hirata + + * config/h8300/h8300.md (*zero_extendqisi2_h8300hs): Always + split. + (a splitter): Do zero-extension via HImode. + 2003-04-07 James A. Morrison * doc/invoke.texi: Eliminate extra white-space caused by diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md index 6bc0cf0b7713..89014dd9e927 100644 --- a/gcc/config/h8300/h8300.md +++ b/gcc/config/h8300/h8300.md @@ -2084,11 +2084,7 @@ [(set (match_operand:SI 0 "register_operand" "=r,r") (zero_extend:SI (match_operand:QI 1 "general_operand_src" "0,g>")))] "TARGET_H8300H || TARGET_H8300S" - "@ - extu.w %T0\;extu.l %S0 - #" - [(set_attr "length" "4,12") - (set_attr "cc" "set_znv,set_znv")]) + "#") (define_split [(set (match_operand:SI 0 "register_operand" "") @@ -2098,9 +2094,12 @@ && reload_completed" [(set (match_dup 2) (match_dup 1)) + (set (match_dup 3) + (zero_extend:HI (match_dup 2))) (set (match_dup 0) - (zero_extend:SI (match_dup 2)))] - "operands[2] = gen_rtx_REG (QImode, REGNO (operands[0]));") + (zero_extend:SI (match_dup 3)))] + "operands[2] = gen_lowpart (QImode, operands[0]); + operands[3] = gen_lowpart (HImode, operands[0]);") (define_split [(set (match_operand:SI 0 "register_operand" "")