| /* SPDX-License-Identifier: GPL-2.0 */ | |
| #ifndef _ASM_LOONGARCH_UNWIND_HINTS_H | |
| #define _ASM_LOONGARCH_UNWIND_HINTS_H | |
| #include <linux/objtool.h> | |
| #include <asm/orc_types.h> | |
| #ifdef __ASSEMBLER__ | |
| .macro UNWIND_HINT_UNDEFINED | |
| UNWIND_HINT type=UNWIND_HINT_TYPE_UNDEFINED | |
| .endm | |
| .macro UNWIND_HINT_END_OF_STACK | |
| UNWIND_HINT type=UNWIND_HINT_TYPE_END_OF_STACK | |
| .endm | |
| .macro UNWIND_HINT_REGS | |
| UNWIND_HINT sp_reg=ORC_REG_SP type=UNWIND_HINT_TYPE_REGS | |
| .endm | |
| .macro UNWIND_HINT_FUNC | |
| UNWIND_HINT sp_reg=ORC_REG_SP type=UNWIND_HINT_TYPE_CALL | |
| .endm | |
| #else /* !__ASSEMBLER__ */ | |
| #define UNWIND_HINT_SAVE \ | |
| UNWIND_HINT(UNWIND_HINT_TYPE_SAVE, 0, 0, 0) | |
| #define UNWIND_HINT_RESTORE \ | |
| UNWIND_HINT(UNWIND_HINT_TYPE_RESTORE, 0, 0, 0) | |
| #endif /* !__ASSEMBLER__ */ | |
| #endif /* _ASM_LOONGARCH_UNWIND_HINTS_H */ |