diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8d4f86cb61de..bdbc6619dba6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-11-29 Kazu Hirata + + * config/h8300/h8300.md (movsi_h8300hs): Change the order of + alternatives to correct the length when the memory operand is + either pre_dec or post_inc. + 2002-11-29 Kazu Hirata * config/h8300/h8300.md (an anonymous pattern): Give an diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md index 5da3397fffa3..08bdb8e4c69d 100644 --- a/gcc/config/h8300/h8300.md +++ b/gcc/config/h8300/h8300.md @@ -468,8 +468,8 @@ (set_attr "cc" "clobber")]) (define_insn "movsi_h8300hs" - [(set (match_operand:SI 0 "general_operand_dst" "=r,r,r,r,m,<,r,*a,*a,r") - (match_operand:SI 1 "general_operand_src" "I,r,i,m,r,r,>,I,r,*a"))] + [(set (match_operand:SI 0 "general_operand_dst" "=r,r,r,<,r,r,m,*a,*a,r") + (match_operand:SI 1 "general_operand_src" "I,r,i,r,>,m,r,I,r,*a"))] "(TARGET_H8300S || TARGET_H8300H) && (register_operand (operands[0], SImode) || register_operand (operands[1], SImode)) @@ -539,7 +539,7 @@ } return \"mov.l %S1,%S0\"; }" - [(set_attr "length" "2,2,6,10,10,4,4,2,6,4") + [(set_attr "length" "2,2,6,4,4,10,10,2,6,4") (set_attr "cc" "set_zn,set_znv,clobber,set_znv,set_znv,set_znv,set_znv,none_0hit,none_0hit,set_znv")]) (define_insn "movsf_h8300h"