18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef __ASM_LINKAGE_H 38c2ecf20Sopenharmony_ci#define __ASM_LINKAGE_H 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci#define __ALIGN .align 2 68c2ecf20Sopenharmony_ci#define __ALIGN_STR __stringify(__ALIGN) 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci#define SYM_FUNC_START(name) \ 98c2ecf20Sopenharmony_ci SYM_START(name, SYM_L_GLOBAL, SYM_A_ALIGN) \ 108c2ecf20Sopenharmony_ci .cfi_startproc; 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci#define SYM_FUNC_START_NOALIGN(name) \ 138c2ecf20Sopenharmony_ci SYM_START(name, SYM_L_GLOBAL, SYM_A_NONE) \ 148c2ecf20Sopenharmony_ci .cfi_startproc; 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci#define SYM_FUNC_START_LOCAL(name) \ 178c2ecf20Sopenharmony_ci SYM_START(name, SYM_L_LOCAL, SYM_A_ALIGN) \ 188c2ecf20Sopenharmony_ci .cfi_startproc; 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci#define SYM_FUNC_START_LOCAL_NOALIGN(name) \ 218c2ecf20Sopenharmony_ci SYM_START(name, SYM_L_LOCAL, SYM_A_NONE) \ 228c2ecf20Sopenharmony_ci .cfi_startproc; 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci#define SYM_FUNC_START_WEAK(name) \ 258c2ecf20Sopenharmony_ci SYM_START(name, SYM_L_WEAK, SYM_A_ALIGN) \ 268c2ecf20Sopenharmony_ci .cfi_startproc; 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci#define SYM_FUNC_START_WEAK_NOALIGN(name) \ 298c2ecf20Sopenharmony_ci SYM_START(name, SYM_L_WEAK, SYM_A_NONE) \ 308c2ecf20Sopenharmony_ci .cfi_startproc; 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci#define SYM_FUNC_END(name) \ 338c2ecf20Sopenharmony_ci .cfi_endproc; \ 348c2ecf20Sopenharmony_ci SYM_END(name, SYM_T_FUNC) 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci#define SYM_CODE_START(name) \ 378c2ecf20Sopenharmony_ci SYM_START(name, SYM_L_GLOBAL, SYM_A_ALIGN) \ 388c2ecf20Sopenharmony_ci .cfi_startproc; 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ci#define SYM_CODE_END(name) \ 418c2ecf20Sopenharmony_ci .cfi_endproc; \ 428c2ecf20Sopenharmony_ci SYM_END(name, SYM_T_NONE) 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ci#endif 45