mirror of
https://github.com/reactos/reactos.git
synced 2025-05-09 03:37:08 +00:00
[ASM]
- Add CFI annotation macros CORE-13850 #resolve svn path=/trunk/; revision=75989
This commit is contained in:
parent
154f1aaacd
commit
9173e7c6cf
1 changed files with 34 additions and 8 deletions
|
@ -9,6 +9,13 @@
|
||||||
#ifndef __ASM_INC__
|
#ifndef __ASM_INC__
|
||||||
#define __ASM_INC__
|
#define __ASM_INC__
|
||||||
|
|
||||||
|
/* Common definitions for FPO macro
|
||||||
|
see http://msdn.microsoft.com/en-us/library/ms679352%28VS.85%29.aspx */
|
||||||
|
#define FRAME_FPO 0
|
||||||
|
#define FRAME_TRAP 1
|
||||||
|
#define FRAME_TSS 2
|
||||||
|
#define FRAME_NONFPO 3
|
||||||
|
|
||||||
#ifdef _USE_ML
|
#ifdef _USE_ML
|
||||||
|
|
||||||
/* Allow ".name" identifiers */
|
/* Allow ".name" identifiers */
|
||||||
|
@ -194,6 +201,18 @@ ENDM
|
||||||
#define LF 10
|
#define LF 10
|
||||||
#define NUL 0
|
#define NUL 0
|
||||||
|
|
||||||
|
/* For compatibility with gas */
|
||||||
|
#define CFI_STARTPROC
|
||||||
|
#define CFI_ENDPROC
|
||||||
|
#define CFI_ADJUST_CFA_OFFSET
|
||||||
|
#define CFI_OFFSET
|
||||||
|
#define CFI_REGISTER
|
||||||
|
#define CFI_DEF_CFA_REGISTER
|
||||||
|
#define CFI_DEF_CFA
|
||||||
|
#define CFI_REL_OFFSET
|
||||||
|
#define CFI_SAME_VALUE
|
||||||
|
#define CFI_DEF_CFA_OFFSET
|
||||||
|
|
||||||
#else /***********************************************************************/
|
#else /***********************************************************************/
|
||||||
|
|
||||||
/* Force intel syntax */
|
/* Force intel syntax */
|
||||||
|
@ -284,7 +303,9 @@ ENDM
|
||||||
/* check http://msdn.microsoft.com/en-us/library/9c9k076y%28VS.80%29.aspx
|
/* check http://msdn.microsoft.com/en-us/library/9c9k076y%28VS.80%29.aspx
|
||||||
and http://msdn.microsoft.com/en-us/library/ms679352%28VS.85%29.aspx */
|
and http://msdn.microsoft.com/en-us/library/ms679352%28VS.85%29.aspx */
|
||||||
.macro FPO cdwLocals, cdwParams, cbProlog, cbRegs, fUseBP, cbFrame
|
.macro FPO cdwLocals, cdwParams, cbProlog, cbRegs, fUseBP, cbFrame
|
||||||
/* dummy */
|
.if (cbFrame == FRAME_TRAP)
|
||||||
|
.cfi_signal_frame
|
||||||
|
.endif
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
/* Macros for x64 stack unwind OPs */
|
/* Macros for x64 stack unwind OPs */
|
||||||
|
@ -364,13 +385,18 @@ code = 1
|
||||||
#define LF "\n"
|
#define LF "\n"
|
||||||
#define NUL "\0"
|
#define NUL "\0"
|
||||||
|
|
||||||
|
/* CFI annotations */
|
||||||
|
#define CFI_STARTPROC .cfi_startproc
|
||||||
|
#define CFI_ENDPROC .cfi_endproc
|
||||||
|
#define CFI_ADJUST_CFA_OFFSET .cfi_adjust_cfa_offset
|
||||||
|
#define CFI_OFFSET .cfi_offset
|
||||||
|
#define CFI_REGISTER .cfi_register
|
||||||
|
#define CFI_DEF_CFA_REGISTER .cfi_def_cfa_register
|
||||||
|
#define CFI_DEF_CFA .cfi_def_cfa
|
||||||
|
#define CFI_REL_OFFSET .cfi_rel_offset
|
||||||
|
#define CFI_SAME_VALUE .cfi_same_value
|
||||||
|
#define CFI_DEF_CFA_OFFSET .cfi_def_cfa_offset
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Common definitions for FPO macro
|
|
||||||
see http://msdn.microsoft.com/en-us/library/ms679352%28VS.85%29.aspx */
|
|
||||||
#define FRAME_FPO 0
|
|
||||||
#define FRAME_TRAP 1
|
|
||||||
#define FRAME_TSS 2
|
|
||||||
#define FRAME_NONFPO 3
|
|
||||||
|
|
||||||
#endif /* __ASM_INC__ */
|
#endif /* __ASM_INC__ */
|
||||||
|
|
Loading…
Reference in a new issue