ARM: sfi_sp assembler macro

This commit is contained in:
Roland McGrath 2013-03-15 09:32:16 -07:00
parent a7ac752299
commit 1362a2aa4e
3 changed files with 9 additions and 1 deletions

View File

@ -1,5 +1,8 @@
2013-03-15 Roland McGrath <roland@hack.frob.com>
* sysdeps/arm/sysdep.h [!ARM_SFI_MACROS] (sfi_sp): New macro.
* sysdeps/arm/__longjmp.S: Use it.
* sysdeps/arm/sysdep.h [!ARM_SFI_MACROS]
(ARM_SFI_MACROS): Define it.
(sfi_breg, sfi_pld): New assembler macros.

View File

@ -36,7 +36,7 @@ ENTRY (__longjmp)
cfi_undefined (r4)
CHECK_SP (r4)
#endif
sfi_breg ip, \
sfi_sp sfi_breg ip, \
ldmia \B!, JMP_BUF_REGLIST
cfi_restore (v1)
cfi_restore (v2)

View File

@ -250,6 +250,11 @@
pld [\basereg, \offset]
.endm
/* This macro precedes any instruction that directly changes the SP.
It's not needed for push/pop or for any kind of load or store that
implicitly changes the SP via the ! syntax. */
# define sfi_sp /* Nothing to do. */
# endif
#endif /* __ASSEMBLER__ */