xref: /DragonOS/kernel/src/common/asm.h (revision 1a72a751b18cf5bbe7b5b9e91aff530de0c18501)
1 #pragma once
2 
3 #ifndef __ASM__
4 #define __ASM__
5 
6 // 符号名
7 #define SYMBOL_NAME(X)	X
8 // 符号名字符串
9 #define SYMBOL_NAME_STR(X)	#X
10 // 符号名label
11 #define SYMBOL_NAME_LABEL(X) X##:
12 
13 #define L1_CACHE_BYTES 32
14 
15 #define asmlinkage __attribute__((regparm(0)))
16 
17 #define ____cacheline_aligned __attribute__((__aligned__(L1_CACHE_BYTES)))
18 
19 #define ENTRY(name)		\
20 .global	SYMBOL_NAME(name);	\
21 SYMBOL_NAME_LABEL(name)
22 
23 #endif