summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/asm.h
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2003-05-10 00:53:34 +0000
committerpeter <peter@FreeBSD.org>2003-05-10 00:53:34 +0000
commit4d4f676db4e68edc299c0c003783b0661e530e96 (patch)
tree3c7bfdc4ff6da60f2066d0298ee6ec9548ac7037 /sys/amd64/include/asm.h
parent26c4873253ecc98519d6c57ca4f62a36ecf964bb (diff)
downloadFreeBSD-src-4d4f676db4e68edc299c0c003783b0661e530e96.zip
FreeBSD-src-4d4f676db4e68edc299c0c003783b0661e530e96.tar.gz
Remove _ARCH_INDIRECT ifdefs. They existed for lib/msun/* on i386, which
could use different versions of the math code depending on whether there was real floating point hardware or math emulation. Since the fpu is part of the core specification on amd64, there is no need for this here. Approved by: re (blanket amd64/*)
Diffstat (limited to 'sys/amd64/include/asm.h')
-rw-r--r--sys/amd64/include/asm.h63
1 files changed, 0 insertions, 63 deletions
diff --git a/sys/amd64/include/asm.h b/sys/amd64/include/asm.h
index 8ea4122..d298454 100644
--- a/sys/amd64/include/asm.h
+++ b/sys/amd64/include/asm.h
@@ -91,67 +91,4 @@
#define __FBSDID(s) /* nothing */
#endif /* not lint and not STRIP_FBSDID */
-#ifdef _ARCH_INDIRECT
-/*
- * Generate code to select between the generic functions and _ARCH_INDIRECT
- * specific ones.
- * XXX nested __CONCATs don't work with non-ANSI cpp's.
- */
-#define ANAME(x) CNAME(__CONCAT(__CONCAT(__,_ARCH_INDIRECT),x))
-#define ASELNAME(x) CNAME(__CONCAT(__arch_select_,x))
-#define AVECNAME(x) CNAME(__CONCAT(__arch_,x))
-#define GNAME(x) CNAME(__CONCAT(__generic_,x))
-
-/* Don't bother profiling this. */
-#ifdef PIC
-#define ARCH_DISPATCH(x) \
- _START_ENTRY; \
- .globl CNAME(x); .type CNAME(x),@function; CNAME(x): ; \
- movq PIC_GOT(AVECNAME(x)),%rax; \
- jmpq *(%rax)
-
-#define ARCH_SELECT(x) _START_ENTRY; \
- .type ASELNAME(x),@function; \
- ASELNAME(x): \
- call PIC_PLT(CNAME(__get_hw_float)); \
- testq %rax,%rax; \
- movq PIC_GOT(ANAME(x)),%rax; \
- jne 8f; \
- movq PIC_GOT(GNAME(x)),%rax; \
- 8: \
- movq PIC_GOT(AVECNAME(x)),%rdx; \
- movq %rax,(%rdx); \
- jmpq *%rax
-#else /* !PIC */
-#define ARCH_DISPATCH(x) \
- _START_ENTRY; \
- .globl CNAME(x); .type CNAME(x),@function; CNAME(x): ; \
- jmpw *AVECNAME(x)
-
-#define ARCH_SELECT(x) _START_ENTRY; \
- .type ASELNAME(x),@function; \
- ASELNAME(x): \
- call CNAME(__get_hw_float); \
- testw %rax,%rax; \
- movw $ANAME(x),%rax; \
- jne 8f; \
- movw $GNAME(x),%rax; \
- 8: \
- movw %rax,AVECNAME(x); \
- jmpw *%rax
-#endif /* PIC */
-
-#define ARCH_VECTOR(x) .data; .p2align 2; \
- .globl AVECNAME(x); \
- .type AVECNAME(x),@object; \
- .size AVECNAME(x),4; \
- AVECNAME(x): .long ASELNAME(x)
-
-#undef _ENTRY
-#define _ENTRY(x) ARCH_VECTOR(x); ARCH_SELECT(x); ARCH_DISPATCH(x); \
- _START_ENTRY; \
- .globl ANAME(x); .type ANAME(x),@function; ANAME(x):
-
-#endif /* _ARCH_INDIRECT */
-
#endif /* !_MACHINE_ASM_H_ */
OpenPOWER on IntegriCloud