diff options
author | Marek Michalkiewicz <marekm@amelek.gda.pl> | 2005-01-26 22:44:25 +0100 |
---|---|---|
committer | Marek Michalkiewicz <marekm@gcc.gnu.org> | 2005-01-26 21:44:25 +0000 |
commit | a3cf59927ae1bfc5668a6eca5df377ce8572e783 (patch) | |
tree | 079662416201ff8fa42edb9cf9edd2f2a0575e3d /gcc/c-decl.c | |
parent | d487e3c10ad8ed3327106a84c27d97be497b4798 (diff) | |
download | gcc-a3cf59927ae1bfc5668a6eca5df377ce8572e783.zip gcc-a3cf59927ae1bfc5668a6eca5df377ce8572e783.tar.gz gcc-a3cf59927ae1bfc5668a6eca5df377ce8572e783.tar.bz2 |
re PR target/19293 (avr-gcc crashes when using shifts with negative shift count)
PR target/19293
PR target/19329
* config/avr/avr.c (notice_update_cc): Only set condition code for
ashrqi3 if shift count > 0.
(out_shift_with_cnt): Handle shift count <= 0 as a no-op.
(ashlqi3_out, ashlhi3_out, ashlsi3_out, ashrqi3_out, ashrhi3_out,
ashrsi3_out, lshrqi3_out, lshrhi3_out, lshrsi3_out): Handle shift
count <= 0 as a no-op, and shift count >= width by copying zero
or sign bit to all bits of the result.
* config/avr/avr.md (all shifts): Add alternatives for zero shift
count, with attribute "length" set to 0 and "cc" set to "none".
From-SVN: r94288
Diffstat (limited to 'gcc/c-decl.c')
0 files changed, 0 insertions, 0 deletions