avr-protos.h (avr_out_sbxx_branch): Declare.
* config/avr/avr-protos.h (avr_out_sbxx_branch): Declare. * config/avr/avr.c (jump_over_one_insn_p): Take length of the branch insn into account, do not assume 1. (avr_out_sbxx_branch): New function. Optimize cases of skipping over single word insn. Handle upper half of I/O space too. * config/avr/avr.md (*sbrx_branch): Use it. (*sbrx_and_branchhi, *sbrx_and_branchsi): Likewise. (*sbix_branch, *sbix_branch_bit7): Likewise. (*sbix_branch_tmp, *sbix_branch_tmp_bit7): New. Use RTL peepholes to optimize register operand sign tests. From-SVN: r53906
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment