Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / arch / loongarch / include / asm / linkage.h
blobe2eca1a25b4ef7af3f5fb788d2a9e2d8fd6592d8
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_LINKAGE_H
3 #define __ASM_LINKAGE_H
5 #define __ALIGN .align 2
6 #define __ALIGN_STR __stringify(__ALIGN)
8 #define SYM_FUNC_START(name) \
9 SYM_START(name, SYM_L_GLOBAL, SYM_A_ALIGN) \
10 .cfi_startproc;
12 #define SYM_FUNC_START_NOALIGN(name) \
13 SYM_START(name, SYM_L_GLOBAL, SYM_A_NONE) \
14 .cfi_startproc;
16 #define SYM_FUNC_START_LOCAL(name) \
17 SYM_START(name, SYM_L_LOCAL, SYM_A_ALIGN) \
18 .cfi_startproc;
20 #define SYM_FUNC_START_LOCAL_NOALIGN(name) \
21 SYM_START(name, SYM_L_LOCAL, SYM_A_NONE) \
22 .cfi_startproc;
24 #define SYM_FUNC_START_WEAK(name) \
25 SYM_START(name, SYM_L_WEAK, SYM_A_ALIGN) \
26 .cfi_startproc;
28 #define SYM_FUNC_START_WEAK_NOALIGN(name) \
29 SYM_START(name, SYM_L_WEAK, SYM_A_NONE) \
30 .cfi_startproc;
32 #define SYM_FUNC_END(name) \
33 .cfi_endproc; \
34 SYM_END(name, SYM_T_FUNC)
36 #define SYM_CODE_START(name) \
37 SYM_START(name, SYM_L_GLOBAL, SYM_A_ALIGN) \
38 .cfi_startproc;
40 #define SYM_CODE_END(name) \
41 .cfi_endproc; \
42 SYM_END(name, SYM_T_NONE)
44 #endif