xref: /optee_os/lib/libutils/ext/include/asm.S (revision 1bb929836182ecb96d2d9d268daa807c67596396)
1*1bb92983SJerome Forissier/* SPDX-License-Identifier: BSD-2-Clause */
2a0fdab65SJens Wiklander/*
3a0fdab65SJens Wiklander * Copyright (c) 2014, STMicroelectronics International N.V.
4a0fdab65SJens Wiklander * All rights reserved.
5a0fdab65SJens Wiklander *
6a0fdab65SJens Wiklander * Redistribution and use in source and binary forms, with or without
7a0fdab65SJens Wiklander * modification, are permitted provided that the following conditions are met:
8a0fdab65SJens Wiklander *
9a0fdab65SJens Wiklander * 1. Redistributions of source code must retain the above copyright notice,
10a0fdab65SJens Wiklander * this list of conditions and the following disclaimer.
11a0fdab65SJens Wiklander *
12a0fdab65SJens Wiklander * 2. Redistributions in binary form must reproduce the above copyright notice,
13a0fdab65SJens Wiklander * this list of conditions and the following disclaimer in the documentation
14a0fdab65SJens Wiklander * and/or other materials provided with the distribution.
15a0fdab65SJens Wiklander *
16a0fdab65SJens Wiklander * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17a0fdab65SJens Wiklander * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18a0fdab65SJens Wiklander * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19a0fdab65SJens Wiklander * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
20a0fdab65SJens Wiklander * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21a0fdab65SJens Wiklander * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22a0fdab65SJens Wiklander * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23a0fdab65SJens Wiklander * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24a0fdab65SJens Wiklander * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25a0fdab65SJens Wiklander * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26a0fdab65SJens Wiklander * POSSIBILITY OF SUCH DAMAGE.
27a0fdab65SJens Wiklander */
28a0fdab65SJens Wiklander
29a0fdab65SJens Wiklander	.macro FUNC name colon
308473540dSJens Wiklander	.section .text.\name
31a0fdab65SJens Wiklander	.global \name
32a0fdab65SJens Wiklander	.func \name
33a0fdab65SJens Wiklander	.type \name , %function
34a0fdab65SJens Wiklander	\name \colon
35a0fdab65SJens Wiklander	.endm
36a0fdab65SJens Wiklander
37a0fdab65SJens Wiklander	.macro DATA name colon
38a0fdab65SJens Wiklander	.global \name
39a0fdab65SJens Wiklander	.type \name , %object
40a0fdab65SJens Wiklander	\name \colon
41a0fdab65SJens Wiklander	.endm
42a0fdab65SJens Wiklander
43a0fdab65SJens Wiklander	.macro LOCAL_FUNC name colon
448473540dSJens Wiklander	.section .text.\name
45a0fdab65SJens Wiklander	.func \name
46a0fdab65SJens Wiklander	.type \name , %function
47a0fdab65SJens Wiklander	\name \colon
48a0fdab65SJens Wiklander	.endm
49a0fdab65SJens Wiklander
50a0fdab65SJens Wiklander	.macro LOCAL_DATA name colon
51a0fdab65SJens Wiklander	.type \name , %object
52a0fdab65SJens Wiklander	\name \colon
53a0fdab65SJens Wiklander	.endm
54a0fdab65SJens Wiklander
55a0fdab65SJens Wiklander	.macro END_DATA name
56a0fdab65SJens Wiklander	.size \name , .-\name
57a0fdab65SJens Wiklander	.endm
58a0fdab65SJens Wiklander
59a0fdab65SJens Wiklander	.macro END_FUNC name
60a0fdab65SJens Wiklander	.size \name , .-\name
61a0fdab65SJens Wiklander	.endfunc
62a0fdab65SJens Wiklander	.endm
63