1 /* 2 * Macros for asm code. 3 * 4 * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5 * See https://llvm.org/LICENSE.txt for license information. 6 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7 */ 8 9 #ifndef _ASMDEFS_H 10 #define _ASMDEFS_H 11 12 #define ENTRY_ALIGN(name, alignment) \ 13 .global name; \ 14 .type name,%function; \ 15 .align alignment; \ 16 name: \ 17 .cfi_startproc; 18 19 #define ENTRY(name) ENTRY_ALIGN(name, 6) 20 21 #define ENTRY_ALIAS(name) \ 22 .global name; \ 23 .type name,%function; \ 24 name: 25 26 #define END(name) \ 27 .cfi_endproc; \ 28 .size name, .-name; 29 30 #define L(l) .L ## l 31 32 #endif 33