1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef _ASM_X86_DWARF2_H |
3 | #define _ASM_X86_DWARF2_H |
4 | |
5 | #ifndef __ASSEMBLY__ |
6 | #warning "asm/dwarf2.h should be only included in pure assembly files" |
7 | #endif |
8 | |
9 | #define CFI_STARTPROC .cfi_startproc |
10 | #define CFI_ENDPROC .cfi_endproc |
11 | #define CFI_DEF_CFA .cfi_def_cfa |
12 | #define CFI_DEF_CFA_REGISTER .cfi_def_cfa_register |
13 | #define CFI_DEF_CFA_OFFSET .cfi_def_cfa_offset |
14 | #define CFI_ADJUST_CFA_OFFSET .cfi_adjust_cfa_offset |
15 | #define CFI_OFFSET .cfi_offset |
16 | #define CFI_REL_OFFSET .cfi_rel_offset |
17 | #define CFI_REGISTER .cfi_register |
18 | #define CFI_RESTORE .cfi_restore |
19 | #define CFI_REMEMBER_STATE .cfi_remember_state |
20 | #define CFI_RESTORE_STATE .cfi_restore_state |
21 | #define CFI_UNDEFINED .cfi_undefined |
22 | #define CFI_ESCAPE .cfi_escape |
23 | |
24 | #ifndef BUILD_VDSO |
25 | /* |
26 | * Emit CFI data in .debug_frame sections, not .eh_frame sections. |
27 | * The latter we currently just discard since we don't do DWARF |
28 | * unwinding at runtime. So only the offline DWARF information is |
29 | * useful to anyone. Note we should not use this directive if we |
30 | * ever decide to enable DWARF unwinding at runtime. |
31 | */ |
32 | .cfi_sections .debug_frame |
33 | #else |
34 | /* |
35 | * For the vDSO, emit both runtime unwind information and debug |
36 | * symbols for the .dbg file. |
37 | */ |
38 | .cfi_sections .eh_frame, .debug_frame |
39 | #endif |
40 | |
41 | #endif /* _ASM_X86_DWARF2_H */ |
42 | |