at v2.6.14 849 B view raw
1#ifndef _LINUX_LINKAGE_H 2#define _LINUX_LINKAGE_H 3 4#include <linux/config.h> 5#include <asm/linkage.h> 6 7#ifdef __cplusplus 8#define CPP_ASMLINKAGE extern "C" 9#else 10#define CPP_ASMLINKAGE 11#endif 12 13#ifndef asmlinkage 14#define asmlinkage CPP_ASMLINKAGE 15#endif 16 17#ifndef prevent_tail_call 18# define prevent_tail_call(ret) do { } while (0) 19#endif 20 21#ifndef __ALIGN 22#define __ALIGN .align 4,0x90 23#define __ALIGN_STR ".align 4,0x90" 24#endif 25 26#ifdef __ASSEMBLY__ 27 28#define ALIGN __ALIGN 29#define ALIGN_STR __ALIGN_STR 30 31#define ENTRY(name) \ 32 .globl name; \ 33 ALIGN; \ 34 name: 35 36#define KPROBE_ENTRY(name) \ 37 .section .kprobes.text, "ax"; \ 38 .globl name; \ 39 ALIGN; \ 40 name: 41 42 43#endif 44 45#define NORET_TYPE /**/ 46#define ATTRIB_NORET __attribute__((noreturn)) 47#define NORET_AND noreturn, 48 49#ifndef FASTCALL 50#define FASTCALL(x) x 51#define fastcall 52#endif 53 54#endif