diff options
| -rw-r--r-- | gcc/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/config/avr/libgcc.S | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7f0266b..875ed0a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-03-31 Marek Michalkiewicz <marekm@linux.org.pl> + + * config/avr/libgcc.S (__mulhi3): Optimize previous change. + 2001-03-30 Bernd Schmidt <bernds@redhat.com> * loop.c (load_mems): When generating a load from a pseudo, update diff --git a/gcc/config/avr/libgcc.S b/gcc/config/avr/libgcc.S index b438954..d324a21 100644 --- a/gcc/config/avr/libgcc.S +++ b/gcc/config/avr/libgcc.S @@ -143,8 +143,7 @@ __mulhi3_skip1: lsr r_arg1H ; gets LSB of multiplier ror r_arg1L - cp r_arg1L,__zero_reg__ - cpc r_arg1H,__zero_reg__ + sbiw r_arg1L,0 brne __mulhi3_loop ; exit if multiplier = 0 __mulhi3_exit: mov r_arg1H,r_resH ; result to return register |
