http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50063
--- Comment #21 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2012-02-22 09:25:48 UTC --- Author: gjl Date: Wed Feb 22 09:25:35 2012 New Revision: 184461 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=184461 Log: PR rtl-optimization/50063 * config/avr/avr.md (movhi_sp_r): Handle -1 (unknown IRQ state) and 2 (8-bit SP) in operand 2. * config/avr/avr.c (avr_prologue_setup_frame): Adjust prologue setup to use movhi_sp_r instead of vanilla move to write SP. Adjust REG_CFA notes to superseed unspec. (expand_epilogue): Adjust epilogue setup to use movhi_sp_r instead of vanilla move. As function body might contain CLI or SEI: Use irq_state 0 (IRQ known to be off) only with TARGET_NO_INTERRUPTS. Never use irq_state 1 (IRQ known to be on) here. Modified: trunk/gcc/ChangeLog trunk/gcc/config/avr/avr.c trunk/gcc/config/avr/avr.md