summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2017-05-11 04:29:20 +0000
committerjhb <jhb@FreeBSD.org>2017-05-11 04:29:20 +0000
commita3bbb52744f6222d95f7329383f674e7c4472ab5 (patch)
tree23968dfe96202bd265de2e3f4786232265ad9dd1 /sys/kern
parentcd85d2ba464801be89680dd84abd9079acb5aca8 (diff)
downloadFreeBSD-src-a3bbb52744f6222d95f7329383f674e7c4472ab5.zip
FreeBSD-src-a3bbb52744f6222d95f7329383f674e7c4472ab5.tar.gz
MFC 313999: Consolidate statements to initialize files.
Previously, the first lines of various generated files from system call tables were generated in two sections. Some of the initialization was done in BEGIN, and the rest was done when the first line was encountered. The main reason for this split before r313564 was that most of the initialization done in the second section depended on the $FreeBSD$ tag extracted from the system call table. Now that the $FreeBSD$ tag is no longer used, consolidate all of the file initialization in the BEGIN section. This change was tested by confirming that the content of generated files did not change.
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/makesyscalls.sh56
1 files changed, 26 insertions, 30 deletions
diff --git a/sys/kern/makesyscalls.sh b/sys/kern/makesyscalls.sh
index fac830a..a386d6e 100644
--- a/sys/kern/makesyscalls.sh
+++ b/sys/kern/makesyscalls.sh
@@ -116,6 +116,9 @@ sed -e '
split(capenabled_string, capenabled, ",");
+ printf "\n/* The casts are bogus but will do for now. */\n" > sysent
+ printf "struct sysent %s[] = {\n",switchname > sysent
+
printf "/*\n * System call switch table.\n *\n" > syssw
printf " * DO NOT EDIT-- this file is automatically generated.\n" > syssw
printf " * $%s$\n", "FreeBSD" > syssw
@@ -125,35 +128,6 @@ sed -e '
printf " * DO NOT EDIT-- this file is automatically generated.\n" > sysarg
printf " * $%s$\n", "FreeBSD" > sysarg
printf " */\n\n" > sysarg
-
- printf "\n#ifdef %s\n\n", compat > syscompat
- printf "\n#ifdef %s\n\n", compat4 > syscompat4
- printf "\n#ifdef %s\n\n", compat6 > syscompat6
- printf "\n#ifdef %s\n\n", compat7 > syscompat7
- printf "\n#ifdef %s\n\n", compat10 > syscompat10
-
- printf "/*\n * System call names.\n *\n" > sysnames
- printf " * DO NOT EDIT-- this file is automatically generated.\n" > sysnames
- printf " * $%s$\n", "FreeBSD" > sysnames
- printf " */\n\n" > sysnames
-
- printf "/*\n * System call numbers.\n *\n" > syshdr
- printf " * DO NOT EDIT-- this file is automatically generated.\n" > syshdr
- printf " * $%s$\n", "FreeBSD" > syshdr
- printf " */\n\n" > syshdr
-
- printf "# FreeBSD system call object files.\n" > sysmk
- printf "# DO NOT EDIT-- this file is automatically generated.\n" > sysmk
- printf "# $%s$\n", "FreeBSD" > sysmk
-
- printf "/*\n * System call argument to DTrace register array converstion.\n *\n" > systrace
- printf " * DO NOT EDIT-- this file is automatically generated.\n" > systrace
- printf " * $%s$\n", "FreeBSD" > systrace
- }
- NR == 1 {
- printf "\n/* The casts are bogus but will do for now. */\n" > sysent
- printf "struct sysent %s[] = {\n",switchname > sysent
-
printf "#ifndef %s\n", sysproto_h > sysarg
printf "#define\t%s\n\n", sysproto_h > sysarg
printf "#include <sys/signal.h>\n" > sysarg
@@ -176,10 +150,31 @@ sed -e '
printf "#define\tPADR_(t)\t0\n" > sysarg
printf "#endif\n\n" > sysarg
+ printf "\n#ifdef %s\n\n", compat > syscompat
+ printf "\n#ifdef %s\n\n", compat4 > syscompat4
+ printf "\n#ifdef %s\n\n", compat6 > syscompat6
+ printf "\n#ifdef %s\n\n", compat7 > syscompat7
+ printf "\n#ifdef %s\n\n", compat10 > syscompat10
+
+ printf "/*\n * System call names.\n *\n" > sysnames
+ printf " * DO NOT EDIT-- this file is automatically generated.\n" > sysnames
+ printf " * $%s$\n", "FreeBSD" > sysnames
+ printf " */\n\n" > sysnames
printf "const char *%s[] = {\n", namesname > sysnames
+ printf "/*\n * System call numbers.\n *\n" > syshdr
+ printf " * DO NOT EDIT-- this file is automatically generated.\n" > syshdr
+ printf " * $%s$\n", "FreeBSD" > syshdr
+ printf " */\n\n" > syshdr
+
+ printf "# FreeBSD system call object files.\n" > sysmk
+ printf "# DO NOT EDIT-- this file is automatically generated.\n" > sysmk
+ printf "# $%s$\n", "FreeBSD" > sysmk
printf "MIASM = " > sysmk
+ printf "/*\n * System call argument to DTrace register array converstion.\n *\n" > systrace
+ printf " * DO NOT EDIT-- this file is automatically generated.\n" > systrace
+ printf " * $%s$\n", "FreeBSD" > systrace
printf " * This file is part of the DTrace syscall provider.\n */\n\n" > systrace
printf "static void\nsystrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)\n{\n" > systrace
printf "\tint64_t *iarg = (int64_t *) uarg;\n" > systrace
@@ -190,7 +185,8 @@ sed -e '
printf "static void\nsystrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)\n{\n\tconst char *p = NULL;\n" > systraceret
printf "\tswitch (sysnum) {\n" > systraceret
-
+ }
+ NR == 1 {
next
}
NF == 0 || $1 ~ /^;/ {
OpenPOWER on IntegriCloud