diff options
author | zippel <zippel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-10 21:20:02 +0000 |
---|---|---|
committer | zippel <zippel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-10 21:20:02 +0000 |
commit | a53add809f636110657909ca4f563f15233f9121 (patch) | |
tree | ff3c1cdffb8947b4d8e00aa22563d7ba4db63d9f /libffi/src/m68k | |
parent | bb3218e990871769e1bebfd705ab7b49239517a0 (diff) | |
download | gcc-a53add809f636110657909ca4f563f15233f9121.tar.gz |
* configure.ac (HAVE_AS_CFI_PSEUDO_OP): New test.
* configure: Regenerate.
* fficonfig.h.in: Regenerate.
* src/m68k/sysv.S (CFI_STARTPROC,CFI_ENDPROC,
CFI_OFFSET,CFI_DEF_CFA): New macros.
(ffi_call_SYSV): Add callframe annotation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124600 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libffi/src/m68k')
-rw-r--r-- | libffi/src/m68k/sysv.S | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libffi/src/m68k/sysv.S b/libffi/src/m68k/sysv.S index efe5854c776..a3d9a4f7ff7 100644 --- a/libffi/src/m68k/sysv.S +++ b/libffi/src/m68k/sysv.S @@ -8,6 +8,18 @@ #include <fficonfig.h> #include <ffi.h> +#ifdef HAVE_AS_CFI_PSEUDO_OP +#define CFI_STARTPROC() .cfi_startproc +#define CFI_OFFSET(reg,off) .cfi_offset reg,off +#define CFI_DEF_CFA(reg,off) .cfi_def_cfa reg,off +#define CFI_ENDPROC() .cfi_endproc +#else +#define CFI_STARTPROC() +#define CFI_OFFSET(reg,off) +#define CFI_DEF_CFA(reg,off) +#define CFI_ENDPROC() +#endif + .text .globl ffi_call_SYSV @@ -15,8 +27,12 @@ .align 4 ffi_call_SYSV: + CFI_STARTPROC() link %fp,#0 + CFI_OFFSET(14,-8) + CFI_DEF_CFA(14,8) move.l %d2,-(%sp) + CFI_OFFSET(2,-12) | Make room for all of the new args. sub.l 12(%fp),%sp @@ -103,4 +119,5 @@ epilogue: move.l (%sp)+,%d2 unlk %fp rts + CFI_ENDPROC() .size ffi_call_SYSV,.-ffi_call_SYSV |