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