Hendrik Brueckner | bc3703f | 2017-11-20 11:41:07 +0100 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
| 2 | #ifndef _ASM_S390_DWARF_H |
| 3 | #define _ASM_S390_DWARF_H |
| 4 | |
| 5 | #ifdef __ASSEMBLY__ |
| 6 | |
Hendrik Brueckner | 7bceec4 | 2017-11-20 11:46:13 +0100 | [diff] [blame] | 7 | #define CFI_STARTPROC .cfi_startproc |
| 8 | #define CFI_ENDPROC .cfi_endproc |
| 9 | #define CFI_DEF_CFA_OFFSET .cfi_def_cfa_offset |
| 10 | #define CFI_ADJUST_CFA_OFFSET .cfi_adjust_cfa_offset |
| 11 | #define CFI_RESTORE .cfi_restore |
| 12 | |
| 13 | #ifdef CONFIG_AS_CFI_VAL_OFFSET |
| 14 | #define CFI_VAL_OFFSET .cfi_val_offset |
| 15 | #else |
| 16 | #define CFI_VAL_OFFSET # |
| 17 | #endif |
| 18 | |
Hendrik Brueckner | bc3703f | 2017-11-20 11:41:07 +0100 | [diff] [blame] | 19 | #ifndef BUILD_VDSO |
| 20 | /* |
| 21 | * Emit CFI data in .debug_frame sections and not in .eh_frame |
| 22 | * sections. The .eh_frame CFI is used for runtime unwind |
| 23 | * information that is not being used. Hence, vmlinux.lds.S |
| 24 | * can discard the .eh_frame sections. |
| 25 | */ |
| 26 | .cfi_sections .debug_frame |
| 27 | #else |
| 28 | /* |
| 29 | * For vDSO, emit CFI data in both, .eh_frame and .debug_frame |
| 30 | * sections. |
| 31 | */ |
| 32 | .cfi_sections .eh_frame, .debug_frame |
| 33 | #endif |
| 34 | |
| 35 | #endif /* __ASSEMBLY__ */ |
| 36 | |
| 37 | #endif /* _ASM_S390_DWARF_H */ |