aboutsummaryrefslogtreecommitdiff
path: root/sys/amd64
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2011-09-11 16:05:09 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2011-09-11 16:05:09 +0000
commit26ccf4f10f9288c19ebe345b0dee7396d6b12ee2 (patch)
tree0b0a99497de53c0baa2f389ba7ca1c651e4df409 /sys/amd64
parent637b8c6d881a99edd178203161fda260bc054d0d (diff)
downloadsrc-26ccf4f10f9288c19ebe345b0dee7396d6b12ee2.tar.gz
src-26ccf4f10f9288c19ebe345b0dee7396d6b12ee2.zip
Inline the syscallenter() and syscallret(). This reduces the time measured
by the syscall entry speed microbenchmarks by ~10% on amd64. Submitted by: jhb Approved by: re (bz) MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=225474
Diffstat (limited to 'sys/amd64')
-rw-r--r--sys/amd64/amd64/trap.c2
-rw-r--r--sys/amd64/ia32/ia32_syscall.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c
index 4e5f8b8aa9f5..a36a6be13ce3 100644
--- a/sys/amd64/amd64/trap.c
+++ b/sys/amd64/amd64/trap.c
@@ -883,6 +883,8 @@ cpu_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
return (error);
}
+#include "../../kern/subr_syscall.c"
+
/*
* syscall - system call request C handler
*
diff --git a/sys/amd64/ia32/ia32_syscall.c b/sys/amd64/ia32/ia32_syscall.c
index 0b46dae7a5e3..d79272a01dcf 100644
--- a/sys/amd64/ia32/ia32_syscall.c
+++ b/sys/amd64/ia32/ia32_syscall.c
@@ -163,6 +163,8 @@ ia32_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
return (error);
}
+#include "../../kern/subr_syscall.c"
+
void
ia32_syscall(struct trapframe *frame)
{