summaryrefslogtreecommitdiffstats
path: root/sys/sparc64
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2010-09-15 21:11:29 +0000
committermarius <marius@FreeBSD.org>2010-09-15 21:11:29 +0000
commit3ae351af19f39b4cc1b4584e13e097685bcaa96b (patch)
tree7a1c1454df60ad216ec8fbbaa179ef6f1a03cb6a /sys/sparc64
parentf431a31babb6f000b816e6b963b3812ac3866bcf (diff)
downloadFreeBSD-src-3ae351af19f39b4cc1b4584e13e097685bcaa96b.zip
FreeBSD-src-3ae351af19f39b4cc1b4584e13e097685bcaa96b.tar.gz
Add macros for alternate entry points.
Diffstat (limited to 'sys/sparc64')
-rw-r--r--sys/sparc64/include/asm.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/sparc64/include/asm.h b/sys/sparc64/include/asm.h
index 8182fe7..dea06c5 100644
--- a/sys/sparc64/include/asm.h
+++ b/sys/sparc64/include/asm.h
@@ -76,7 +76,7 @@
_ALIGN_TEXT
/*
- * Define a function entry point.
+ * Define function entry and alternate entry points.
*
* The compiler produces #function for the .type pseudo-op, but the '#'
* character has special meaning in cpp macros, so we use @function like
@@ -86,12 +86,19 @@
* value. Since this is difficult to predict and its expected that
* assembler code is already optimized, we leave it out.
*/
+
+#define _ALTENTRY(x) \
+ .globl CNAME(x) ; \
+ .type CNAME(x),@function ; \
+CNAME(x):
+
#define _ENTRY(x) \
_START_ENTRY ; \
.globl CNAME(x) ; \
.type CNAME(x),@function ; \
CNAME(x):
+#define ALTENTRY(x) _ALTENTRY(x)
#define ENTRY(x) _ENTRY(x)
#define END(x) .size x, . - x
OpenPOWER on IntegriCloud