re PR target/49903 ([avr] Redundant comparisons in binary-search switch/case expansion)
authorGeorg-Johann Lay <avr@gjlay.de>
Sun, 14 Aug 2011 09:10:13 +0000 (09:10 +0000)
committerGeorg-Johann Lay <gjl@gcc.gnu.org>
Sun, 14 Aug 2011 09:10:13 +0000 (09:10 +0000)
commitf3713778332ef6b2d10c3981ebcc6ab8540b3f85
tree445db3c84b839c8c0923ff0ffe355b8a99eb20bf
parentfdf03377272dc39c9c9ceea453282ba7a8032142
re PR target/49903 ([avr] Redundant comparisons in binary-search switch/case expansion)

* PR target/49903
* config/avr/avr.md (UNSPEC_IDENTITY): New c_enum.
(branch_unspec): New insn.
(branch): Beauty farm.
* config/avr/avr.c (compare_condition): Use JUMP_P.  Test SET_SRC
to be IF_THEN_ELSE.
(avr_compare_pattern, avr_reorg_remove_redundant_compare):
New static functions.
(avr_reorg): Use them.  Use next_real_insn instead of NEXT_INSN.
Use CONST_INT_P.  Beauty.

From-SVN: r177744
gcc/ChangeLog
gcc/config/avr/avr.c
gcc/config/avr/avr.md