objtool: Add asm version of STACK_FRAME_NON_STANDARD

commit 081df94301 upstream.

To be used for adding asm functions to the ignore list.  The "aw" is
needed to help the ELF section metadata match GCC-created sections.
Otherwise the linker creates duplicate sections instead of combining
them.

Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Link: https://lore.kernel.org/r/8faa476f9a5ac89af27944ec184c89f95f3c6c49.1611263462.git.jpoimboe@redhat.com
Signed-off-by: Daniel Sneddon <daniel.sneddon@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Josh Poimboeuf 2021-01-21 15:29:23 -06:00 committed by Greg Kroah-Hartman
parent bb5fb12c50
commit 1a038ea9f9
2 changed files with 16 additions and 0 deletions

View File

@ -141,6 +141,12 @@ struct unwind_hint {
.popsection
.endm
.macro STACK_FRAME_NON_STANDARD func:req
.pushsection .discard.func_stack_frame_non_standard, "aw"
.long \func - .
.popsection
.endm
#endif /* __ASSEMBLY__ */
#else /* !CONFIG_STACK_VALIDATION */
@ -158,6 +164,8 @@ struct unwind_hint {
.endm
.macro ANNOTATE_NOENDBR
.endm
.macro STACK_FRAME_NON_STANDARD func:req
.endm
#endif
#endif /* CONFIG_STACK_VALIDATION */

View File

@ -141,6 +141,12 @@ struct unwind_hint {
.popsection
.endm
.macro STACK_FRAME_NON_STANDARD func:req
.pushsection .discard.func_stack_frame_non_standard, "aw"
.long \func - .
.popsection
.endm
#endif /* __ASSEMBLY__ */
#else /* !CONFIG_STACK_VALIDATION */
@ -158,6 +164,8 @@ struct unwind_hint {
.endm
.macro ANNOTATE_NOENDBR
.endm
.macro STACK_FRAME_NON_STANDARD func:req
.endm
#endif
#endif /* CONFIG_STACK_VALIDATION */