diff options
author | Anthony Green <green@moxielogic.com> | 2014-12-30 23:58:44 +0000 |
---|---|---|
committer | Anthony Green <green@gcc.gnu.org> | 2014-12-30 23:58:44 +0000 |
commit | fa7ac0a25eb3f5d87584a5703e0ffbabb615eefc (patch) | |
tree | 92e77e6967b9a7e4949768747bcf47dbabdc1e21 /gcc | |
parent | 581be128699c4f5953b9bfe70a6d7bf42dfd7d9e (diff) | |
download | gcc-fa7ac0a25eb3f5d87584a5703e0ffbabb615eefc.zip gcc-fa7ac0a25eb3f5d87584a5703e0ffbabb615eefc.tar.gz gcc-fa7ac0a25eb3f5d87584a5703e0ffbabb615eefc.tar.bz2 |
Fix zero extension for moxie
From-SVN: r219116
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/moxie/moxie.md | 20 |
2 files changed, 10 insertions, 16 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2b89c49..60986f9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-12-30 Anthony Green <green@moxielogic.com> + + * config/moxie/moxie.md (zero_extendqisi2, zero_extendhisi2): + Switch from define_insn_and_split to define_insn. Fix instruction + length. + 2014-12-30 Uros Bizjak <ubizjak@gmail.com> * config/i386/i386.c (ix86_legitimize_address): Declare diff --git a/gcc/config/moxie/moxie.md b/gcc/config/moxie/moxie.md index 32108ff..fe98eaa 100644 --- a/gcc/config/moxie/moxie.md +++ b/gcc/config/moxie/moxie.md @@ -268,7 +268,7 @@ ldo.l %0, %1" [(set_attr "length" "2,2,6,2,6,2,6,4,4")]) -(define_insn_and_split "zero_extendqisi2" +(define_insn "zero_extendqisi2" [(set (match_operand:SI 0 "register_operand" "=r,r,r,r") (zero_extend:SI (match_operand:QI 1 "nonimmediate_operand" "r,W,A,B")))] "" @@ -277,15 +277,9 @@ ld.b %0, %1 lda.b %0, %1 ldo.b %0, %1" - "reload_completed" - [(set (match_dup 2) (match_dup 1)) - (set (match_dup 0) (zero_extend:SI (match_dup 2)))] -{ - operands[2] = gen_lowpart (QImode, operands[0]); -} - [(set_attr "length" "2,2,6,6")]) + [(set_attr "length" "2,2,6,4")]) -(define_insn_and_split "zero_extendhisi2" +(define_insn "zero_extendhisi2" [(set (match_operand:SI 0 "register_operand" "=r,r,r,r") (zero_extend:SI (match_operand:HI 1 "nonimmediate_operand" "r,W,A,B")))] "" @@ -294,13 +288,7 @@ ld.s %0, %1 lda.s %0, %1 ldo.s %0, %1" - "reload_completed" - [(set (match_dup 2) (match_dup 1)) - (set (match_dup 0) (zero_extend:SI (match_dup 2)))] -{ - operands[2] = gen_lowpart (HImode, operands[0]); -} - [(set_attr "length" "2,2,6,6")]) + [(set_attr "length" "2,2,6,4")]) (define_insn "extendqisi2" [(set (match_operand:SI 0 "register_operand" "=r") |