re PR target/49687 ([avr] Missed optimization for widening MUL)
authorGeorg-Johann Lay <avr@gjlay.de>
Thu, 11 Aug 2011 07:50:37 +0000 (07:50 +0000)
committerGeorg-Johann Lay <gjl@gcc.gnu.org>
Thu, 11 Aug 2011 07:50:37 +0000 (07:50 +0000)
commit7ece388150bbbfb0c946b28efa43ad1eeb2f0bf8
tree336df3258cbf4c19f353f45981a4f0518f40ea77
parentfb2c2b167238f82d9103b7fb78ad24918548c245
re PR target/49687 ([avr] Missed optimization for widening MUL)

PR target/49687
* config/avr/avr.md (smulqi3_highpart): New insn.
(umulqi3_highpart): New insn.
(*subqi3.ashiftrt7): New insn.
(smulhi3_highpart): New expander.
(umulhi3_highpart): Nex expander.
(*smulhi3_highpart_call): New insn.
(*umulhi3_highpart_call): New insn.
(extend_u): New code attribute.
(extend_prefix): Rename code attribute to extend_su.
* config/avr/avr.c (avr_rtx_costs): Report costs of highpart of
widening QI/HI multiply.

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