arm: Use REG_CFA_REGISTER instead of UNSPEC_STACK_ALIGN.
authorRichard Henderson <rth@redhat.com>
Tue, 5 Jul 2011 17:03:41 +0000 (10:03 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 5 Jul 2011 17:03:41 +0000 (10:03 -0700)
commitddc6e7d62c53eb1ef02410d5494bd3fd726b9f68
tree69416bb78da1ba0cfd2424e0fa6865c87fed54b8
parenta35156057510d1933a0dab5d8bd2837bfd28fa8c
arm: Use REG_CFA_REGISTER instead of UNSPEC_STACK_ALIGN.

This requires a bit of extra preparation in arm_unwind_emit, in
order to handle the change for ARM unwinding.

        * config/arm/arm.c (arm_dwarf_handle_frame_unspec): Remove.
        (TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
        (arm_expand_prologue): Use REG_CFA_REGISTER to mark the
        stack pointer save.
        (arm_unwind_emit_set): Don't recognize UNSPEC_STACK_ALIGN.
        (arm_unwind_emit): Walk REG_NOTES for unwinding notes.  Emit
        proper unwind info for a REG_CFA_REGISTER save of stack pointer.
        * config/arm/arm.md (UNSPEC_STACK_ALIGN): Remove.

From-SVN: r175870
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/arm.md