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