diff options
author | Jan Beulich <jbeulich@novell.com> | 2006-03-24 06:16:17 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-24 10:33:25 -0500 |
commit | ab7efcc97ebc92e03c0474dfd38f9c7b84b84115 (patch) | |
tree | b0eb6b9abce5c47af9c61b606f37ec1c4d247e65 /include/linux/linkage.h | |
parent | 09fe316a7b10219be592118626850e1dfdfcc1aa (diff) |
[PATCH] abstract type/size specification for assembly
Provide abstraction for generating type and size information of assembly
routines and data, while permitting architectures to override these
defaults.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Cc: "Russell King" <rmk@arm.linux.org.uk>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: "Andi Kleen" <ak@suse.de>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: Miles Bader <uclinux-v850@lsi.nec.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/linkage.h')
-rw-r--r-- | include/linux/linkage.h | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/include/linux/linkage.h b/include/linux/linkage.h index 147eb01e0d4b..c08c9983e840 100644 --- a/include/linux/linkage.h +++ b/include/linux/linkage.h | |||
@@ -28,17 +28,27 @@ | |||
28 | #define ALIGN __ALIGN | 28 | #define ALIGN __ALIGN |
29 | #define ALIGN_STR __ALIGN_STR | 29 | #define ALIGN_STR __ALIGN_STR |
30 | 30 | ||
31 | #ifndef ENTRY | ||
31 | #define ENTRY(name) \ | 32 | #define ENTRY(name) \ |
32 | .globl name; \ | 33 | .globl name; \ |
33 | ALIGN; \ | 34 | ALIGN; \ |
34 | name: | 35 | name: |
36 | #endif | ||
35 | 37 | ||
36 | #define KPROBE_ENTRY(name) \ | 38 | #define KPROBE_ENTRY(name) \ |
37 | .section .kprobes.text, "ax"; \ | 39 | .section .kprobes.text, "ax"; \ |
38 | .globl name; \ | 40 | ENTRY(name) |
39 | ALIGN; \ | ||
40 | name: | ||
41 | 41 | ||
42 | #ifndef END | ||
43 | #define END(name) \ | ||
44 | .size name, .-name | ||
45 | #endif | ||
46 | |||
47 | #ifndef ENDPROC | ||
48 | #define ENDPROC(name) \ | ||
49 | .type name, @function; \ | ||
50 | END(name) | ||
51 | #endif | ||
42 | 52 | ||
43 | #endif | 53 | #endif |
44 | 54 | ||