avr-protos.h (output_reload_inhi): Change prototype.
authorGeorg-Johann Lay <avr@gjlay.de>
Mon, 26 Sep 2011 08:14:25 +0000 (08:14 +0000)
committerGeorg-Johann Lay <gjl@gcc.gnu.org>
Mon, 26 Sep 2011 08:14:25 +0000 (08:14 +0000)
commit20633efc34fadc76b339620c2d37f3c12231c40a
tree23c55d512e551d6f39bd0e5e625a4370ea4d9e12
parent50179d5882b4abaed3c5deaa6a3068e01956fe29
avr-protos.h (output_reload_inhi): Change prototype.

* config/avr/avr-protos.h (output_reload_inhi): Change prototype.
* config/avr/avr.md (adjust_len): Add "reload_in16" alternative.
(*reload_inhi): Use it.  Adapt call to output_reload_inhi to new
prototype.
(*movhi): Split constraint alternative "r,rL" into "r,r" and "r,L".
* config/avr/avr.c: Rename output_reload_insisf_1 to
output_reload_in_const.
(avr_popcount_each_byte): Handle SFmode, too.
(output_reload_in_const): Change so it can handle HI loads, too.
Use avr_popcount_each_byte to work out if scratch register must be
created on the fly.
(output_reload_inhi): Rewrite using output_reload_in_const and...
(output_movhi): ...use it to print constants' loads.
(adjust_insn_length): New case ADJUST_LEN_RELOAD_IN16. Cleanup code.

From-SVN: r179181
gcc/ChangeLog
gcc/config/avr/avr-protos.h
gcc/config/avr/avr.c
gcc/config/avr/avr.md