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