diff options
author | DJ Delorie <dj@redhat.com> | 2006-03-31 16:53:04 -0500 |
---|---|---|
committer | DJ Delorie <dj@gcc.gnu.org> | 2006-03-31 16:53:04 -0500 |
commit | 16659fcf3307e1d41924bd4176053f2a2643fb38 (patch) | |
tree | a80662e4b59d239f622614367ca06c2977266d84 /gcc/config/m32c/shift.md | |
parent | 6b04402b9228b0d62e5dc8c3715543d19dde1e66 (diff) | |
download | gcc-16659fcf3307e1d41924bd4176053f2a2643fb38.tar.gz |
cond.md: Set condition flags properly throughout.
* config/m32c/cond.md: Set condition flags properly throughout.
* config/m32c/minmax.md: Likewise.
* config/m32c/prologue.md: Likewise.
* config/m32c/bitops.md: Likewise.
* config/m32c/muldiv.md: Likewise.
* config/m32c/mov.md: Likewise.
* config/m32c/addsub.md: Likewise.
* config/m32c/m32c.md: Likewise.
* config/m32c/jump.md: Likewise.
* config/m32c/shift.md: Likewise.
* config/m32c/cond.md (cmp<mode>): Call m32c_output_compare to
conditionally output the pattern for this.
* config/m32c/m32c.c (flags_needed_for_conditional): New.
(m32c_compare_redundant): New.
(m32c_output_compare): New.
* config/m32c/m32c-protos.h (m32c_output_compare): New.
* config/m32c/m32c.c (m32c_prepare_shift): Fix logic to clobber
dest, not src. Allow other 4-byte modes.
From-SVN: r112591
Diffstat (limited to 'gcc/config/m32c/shift.md')
-rw-r--r-- | gcc/config/m32c/shift.md | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/gcc/config/m32c/shift.md b/gcc/config/m32c/shift.md index 3e07b25c5ed..6679f38ffe7 100644 --- a/gcc/config/m32c/shift.md +++ b/gcc/config/m32c/shift.md @@ -39,6 +39,7 @@ "@ sha.b\t%2,%0 mov.b\t%2,r1h\n\tsha.b\tr1h,%0" + [(set_attr "flags" "oszc,oszc")] ) (define_insn "ashrqi3_i" @@ -50,6 +51,7 @@ "@ sha.b\t%2,%0 mov.b\t%2,r1h\n\tsha.b\tr1h,%0" + [(set_attr "flags" "oszc,oszc")] ) (define_insn "lshrqi3_i" @@ -61,6 +63,7 @@ "@ shl.b\t%2,%0 mov.b\t%2,r1h\n\tshl.b\tr1h,%0" + [(set_attr "flags" "szc,szc")] ) @@ -105,6 +108,7 @@ "@ sha.w\t%2,%0 mov.b\t%2,r1h\n\tsha.w\tr1h,%0" + [(set_attr "flags" "oszc,oszc")] ) (define_insn "ashrhi3_i" @@ -116,6 +120,7 @@ "@ sha.w\t%2,%0 mov.b\t%2,r1h\n\tsha.w\tr1h,%0" + [(set_attr "flags" "oszc,oszc")] ) (define_insn "lshrhi3_i" @@ -127,6 +132,7 @@ "@ shl.w\t%2,%0 mov.b\t%2,r1h\n\tshl.w\tr1h,%0" + [(set_attr "flags" "szc,szc")] ) @@ -175,6 +181,7 @@ "@ sha.l\t%2,%0 mov.b\t%2,r1h\n\tsha.l\tr1h,%0" + [(set_attr "flags" "oszc,oszc")] ) (define_insn "ashrpsi3_i" @@ -186,6 +193,7 @@ "@ sha.l\t%2,%0 mov.b\t%2,r1h\n\tsha.l\tr1h,%0" + [(set_attr "flags" "oszc,oszc")] ) (define_insn "lshrpsi3_i" @@ -197,6 +205,7 @@ "@ shl.l\t%2,%0 mov.b\t%2,r1h\n\tshl.l\tr1h,%0" + [(set_attr "flags" "szc,szc")] ) @@ -248,7 +257,7 @@ "@ sha.l\t%2,%0 mov.b\t%2,r1h\n\tsha.l\tr1h,%0" - [(set_attr "flags" "sz,sz")] + [(set_attr "flags" "oszc,oszc")] ) (define_insn "ashrsi3_16" @@ -260,6 +269,7 @@ "@ sha.l\t%2,%0 mov.b\t%2,r1h\n\tsha.l\tr1h,%0" + [(set_attr "flags" "oszc,oszc")] ) (define_insn "lshrsi3_16" @@ -271,6 +281,7 @@ "@ shl.l\t%2,%0 mov.b\t%2,r1h\n\tshl.l\tr1h,%0" + [(set_attr "flags" "szc,szc")] ) |