xref: /openbmc/linux/arch/parisc/include/asm/linkage.h (revision 750afb08)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_PARISC_LINKAGE_H
3 #define __ASM_PARISC_LINKAGE_H
4 
5 #include <asm/dwarf.h>
6 
7 #ifndef __ALIGN
8 #define __ALIGN         .align 4
9 #define __ALIGN_STR     ".align 4"
10 #endif
11 
12 /*
13  * In parisc assembly a semicolon marks a comment while a
14  * exclamation mark is used to separate independent lines.
15  */
16 #define ASM_NL	!
17 
18 #ifdef __ASSEMBLY__
19 
20 #define ENTRY(name) \
21 	ALIGN	!\
22 name:		ASM_NL\
23 	.export name
24 
25 #define ENTRY_CFI(name, ...) \
26 	ENTRY(name)	ASM_NL\
27 	.proc		ASM_NL\
28 	.callinfo __VA_ARGS__	ASM_NL\
29 	.entry		ASM_NL\
30 	CFI_STARTPROC
31 
32 #define ENDPROC_CFI(name) \
33 	CFI_ENDPROC	ASM_NL\
34 	.exit		ASM_NL\
35 	.procend	ASM_NL\
36 	ENDPROC(name)
37 
38 #endif /* __ASSEMBLY__ */
39 
40 #endif  /* __ASM_PARISC_LINKAGE_H */
41