PR rtl-optimization/50063
commitb5b90b5a2b71100ac888ea978e13682cac81ad57
authorgjl <gjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Feb 2012 09:25:35 +0000 (22 09:25 +0000)
committergjl <gjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Feb 2012 09:25:35 +0000 (22 09:25 +0000)
treed09627a405e1eed17dec350d03c873a0a6a03ea2
parentd08a497645a01af8b1c81886107fd2337543015d
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184461 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/avr/avr.c
gcc/config/avr/avr.md