summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/annotate.h35
-rw-r--r--include/linux/objtool.h2
2 files changed, 15 insertions, 22 deletions
diff --git a/include/linux/annotate.h b/include/linux/annotate.h
index 7c10d34d198c..2f1599c9e573 100644
--- a/include/linux/annotate.h
+++ b/include/linux/annotate.h
@@ -6,41 +6,34 @@
#ifdef CONFIG_OBJTOOL
-#ifndef __ASSEMBLY__
-
#define __ASM_ANNOTATE(section, label, type) \
- ".pushsection " section ",\"M\", @progbits, 8\n\t" \
- ".long " __stringify(label) " - .\n\t" \
- ".long " __stringify(type) "\n\t" \
- ".popsection\n\t"
+ .pushsection section, "M", @progbits, 8; \
+ .long label - ., type; \
+ .popsection
+
+#ifndef __ASSEMBLY__
#define ASM_ANNOTATE_LABEL(label, type) \
- __ASM_ANNOTATE(".discard.annotate_insn", label, type)
+ __stringify(__ASM_ANNOTATE(.discard.annotate_insn, label, type))
#define ASM_ANNOTATE(type) \
- "911:\n\t" \
- ASM_ANNOTATE_LABEL(911b, type)
+ "911: " \
+ __stringify(__ASM_ANNOTATE(.discard.annotate_insn, 911b, type))
#define ASM_ANNOTATE_DATA(type) \
- "912:\n\t" \
- __ASM_ANNOTATE(".discard.annotate_data", 912b, type)
+ "912: " \
+ __stringify(__ASM_ANNOTATE(.discard.annotate_data, 912b, type))
#else /* __ASSEMBLY__ */
-.macro __ANNOTATE section, type
-.Lhere_\@:
- .pushsection \section, "M", @progbits, 8
- .long .Lhere_\@ - .
- .long \type
- .popsection
-.endm
-
.macro ANNOTATE type
- __ANNOTATE ".discard.annotate_insn", \type
+.Lhere_\@:
+ __ASM_ANNOTATE(.discard.annotate_insn, .Lhere_\@, \type)
.endm
.macro ANNOTATE_DATA type
- __ANNOTATE ".discard.annotate_data", \type
+.Lhere_\@:
+ __ASM_ANNOTATE(.discard.annotate_data, .Lhere_\@, \type)
.endm
#endif /* __ASSEMBLY__ */
diff --git a/include/linux/objtool.h b/include/linux/objtool.h
index b18ab53561c9..9a00e701454c 100644
--- a/include/linux/objtool.h
+++ b/include/linux/objtool.h
@@ -12,7 +12,7 @@
#define UNWIND_HINT(type, sp_reg, sp_offset, signal) \
"987: \n\t" \
".pushsection .discard.unwind_hints\n\t" \
- ANNOTATE_DATA_SPECIAL \
+ ANNOTATE_DATA_SPECIAL "\n\t" \
/* struct unwind_hint */ \
".long 987b - .\n\t" \
".short " __stringify(sp_offset) "\n\t" \