mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-11-19 08:05:27 +08:00
[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>
This commit is contained in:
parent
09fe316a7b
commit
ab7efcc97e
@ -1,6 +1,14 @@
|
|||||||
#ifndef __ASM_LINKAGE_H
|
#ifndef __ASM_LINKAGE_H
|
||||||
#define __ASM_LINKAGE_H
|
#define __ASM_LINKAGE_H
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLY__
|
||||||
|
|
||||||
#define asmlinkage CPP_ASMLINKAGE __attribute__((syscall_linkage))
|
#define asmlinkage CPP_ASMLINKAGE __attribute__((syscall_linkage))
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#include <asm/asmmacro.h>
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
#ifndef __ASM_LINKAGE_H
|
#ifndef __ASM_LINKAGE_H
|
||||||
#define __ASM_LINKAGE_H
|
#define __ASM_LINKAGE_H
|
||||||
|
|
||||||
/* Nothing to see here... */
|
#ifdef __ASSEMBLY__
|
||||||
|
#include <asm/asm.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
#ifndef __ASM_LINKAGE_H
|
#ifndef __ASM_LINKAGE_H
|
||||||
#define __ASM_LINKAGE_H
|
#define __ASM_LINKAGE_H
|
||||||
|
|
||||||
/* Nothing to see here... */
|
#ifdef __ASSEMBLY__
|
||||||
|
#include <asm/asm.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -28,17 +28,27 @@
|
|||||||
#define ALIGN __ALIGN
|
#define ALIGN __ALIGN
|
||||||
#define ALIGN_STR __ALIGN_STR
|
#define ALIGN_STR __ALIGN_STR
|
||||||
|
|
||||||
|
#ifndef ENTRY
|
||||||
#define ENTRY(name) \
|
#define ENTRY(name) \
|
||||||
.globl name; \
|
.globl name; \
|
||||||
ALIGN; \
|
ALIGN; \
|
||||||
name:
|
name:
|
||||||
|
#endif
|
||||||
|
|
||||||
#define KPROBE_ENTRY(name) \
|
#define KPROBE_ENTRY(name) \
|
||||||
.section .kprobes.text, "ax"; \
|
.section .kprobes.text, "ax"; \
|
||||||
.globl name; \
|
ENTRY(name)
|
||||||
ALIGN; \
|
|
||||||
name:
|
|
||||||
|
|
||||||
|
#ifndef END
|
||||||
|
#define END(name) \
|
||||||
|
.size name, .-name
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ENDPROC
|
||||||
|
#define ENDPROC(name) \
|
||||||
|
.type name, @function; \
|
||||||
|
END(name)
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user