xref: /optee_os/lib/libutils/ext/include/asm.S (revision 5b25c76ac40f830867e3d60800120ffd7874e8dc)
1/* SPDX-License-Identifier: BSD-2-Clause */
2/*
3 * Copyright (c) 2014, STMicroelectronics International N.V.
4 */
5
6	.macro FUNC name colon section=default
7	.ifc	\section\(),default
8	.section .text.\name
9	.else
10	.section \section , "ax" , %progbits
11	.endif
12	.global \name
13	.type \name , %function
14	.balign 4
15	\name \colon
16	.endm
17
18	.macro DATA name colon
19	.global \name
20	.type \name , %object
21	\name \colon
22	.endm
23
24	.macro LOCAL_FUNC name colon section=default
25	.ifc	\section\(),default
26	.section .text.\name
27	.else
28	.section \section , "ax" , %progbits
29	.endif
30	.type \name , %function
31	.balign 4
32	\name \colon
33	.endm
34
35	.macro LOCAL_DATA name colon
36	.type \name , %object
37	\name \colon
38	.endm
39
40	.macro END_DATA name
41	.size \name , .-\name
42	.endm
43
44	.macro END_FUNC name
45	.size \name , .-\name
46	.endm
47