zephyr/scripts
Andrew Boie 990bf16206 kernel: abolish __syscall_inline
This used to exist because in earlier versions of the system call
interfaces, an "extern" declaration of the system call implementation
function would precede the real inline version of the implementation.
The compiler would not like this and would throw "static declaration
of ‘foo’ follows non-static declaration". So alternate macros were
needed which declare the implementation function as 'static inline'
instead of extern.

However, currently the inline version of these system call
implementations appear first, the K_SYSCALL_DECLARE() macros appear in
the header generated by gen_syscalls.py, which is always included at the
end of the header file. The compiler does not complain if a
static inline function is succeeded by an extern prototype of the
same function. This lets us simplify the generated system call
macros and just use __syscall everywhere.

The disassembly of this was checked on x86 to ensure that for
kernel-only or CONFIG_USERSPACE=n scenarios, everything is still being
inlined as expected.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-10-03 16:16:03 -04:00
..
basic scripts: Update fixdep from kernel.org 2016-10-31 20:58:57 +00:00
checkpatch scripts: move checkpatch scripts to checkpatch/ 2017-09-11 08:53:56 -07:00
ci ci: compliance script should use python3 2017-09-12 19:01:58 -04:00
cross_compiler xtools: add new configurations for xtools 1.23 2017-05-31 14:54:34 -04:00
dts scripts/dts/extract_dts_includes.py: allow multiple fixup files 2017-09-17 17:34:38 -04:00
footprint scripts: move footprint scripts to footprint/ 2017-09-11 08:53:56 -07:00
gitlint gitlint: ignore titles prefixed with Revert 2017-08-08 09:04:25 -04:00
kconfig scrips/merge_config.sh: fix corner case \n-less last line 2017-09-30 22:42:08 -04:00
sanity_chk cleanup: remove lots of references to unified kernel 2017-09-12 12:37:11 -04:00
support scripts: Run JLinkGDBServer in silent mode 2017-08-11 11:21:46 -04:00
.gitignore expr_parser.py: simple expression language 2016-05-04 22:57:39 +00:00
check_link_map.py check_link_map: fix check for app memory 2017-06-29 07:46:58 -04:00
checkpatch.pl scripts: Update checkpatch to latest from the linux kernel 2017-10-02 18:48:56 -04:00
checkstack.pl First commit 2015-04-10 16:44:37 -07:00
file2hex.py build: Add rules in Makefile.gen to generate a hex file 2017-09-18 14:56:16 -04:00
filter-known-issues.py doc: filter-known-issues.py and empty files 2017-09-21 16:58:17 -04:00
gcc-version.sh First commit 2015-04-10 16:44:37 -07:00
gen_gdt.py x86: implement userspace APIs 2017-09-12 12:46:36 -07:00
gen_idt.py scripts: add version check for pyelftools 2017-07-25 13:41:16 -04:00
gen_kobject_list.py gen_kobject_list.py: device driver support 2017-09-29 13:25:58 -07:00
gen_mmu.py gen_mmu.py: load directly 2017-09-21 13:27:25 -04:00
gen_offset_header.py scripts: fix offset.h header guard 2017-08-01 15:05:13 -04:00
gen_syscall_header.py kernel: abolish __syscall_inline 2017-10-03 16:16:03 -04:00
gen_syscalls.py kernel: abolish __syscall_inline 2017-10-03 16:16:03 -04:00
headerdep.pl First commit 2015-04-10 16:44:37 -07:00
Kbuild.include Kbuild.include: add function for unquoting strings 2017-05-18 07:18:36 -04:00
make-ll license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
Makefile build: Fix distclean for gen_idt 2017-08-01 22:10:22 -04:00
Makefile.build build: support pre-built host tools 2016-11-12 00:34:03 +00:00
Makefile.clean First commit 2015-04-10 16:44:37 -07:00
Makefile.extrawarn First commit 2015-04-10 16:44:37 -07:00
Makefile.gen build: Makefile.gen: reorder make rules to deal with greedy rule match 2017-09-28 09:29:34 -07:00
Makefile.headersinst First commit 2015-04-10 16:44:37 -07:00
Makefile.help First commit 2015-04-10 16:44:37 -07:00
Makefile.host First commit 2015-04-10 16:44:37 -07:00
Makefile.lib build: allow user to specify DTC_OVERLAY_FILE directly 2017-07-31 09:21:46 -05:00
Makefile.modbuiltin First commit 2015-04-10 16:44:37 -07:00
Makefile.qemu qemu: cleanup qemu configurations 2017-09-23 16:51:20 -07:00
Makefile.toolchain.espressif Support for Espressif SDK (ESP32, etc) 2017-06-21 12:35:49 -04:00
Makefile.toolchain.gccarmemb toolchain.gccarmemb: Fix support for where to find newlib 2017-06-08 14:52:49 -04:00
Makefile.toolchain.issm toolchains: add DTC to environment 2017-06-23 13:10:52 -05:00
Makefile.toolchain.riscv32 scripts: added Makefile to handle an external riscv32 toolchain 2017-01-13 19:52:22 +00:00
Makefile.toolchain.xcc xtensa: fix 'make debug' for xt-sim targets 2017-06-12 18:01:13 -04:00
Makefile.toolchain.xtools toolchains: add DTC to environment 2017-06-23 13:10:52 -05:00
Makefile.toolchain.zephyr Makefile.toolchain.zephyr: fix C++ on Xtensa 2017-06-06 20:37:11 -04:00
Makefile.xt-run emulation: fix path of ELF binary when running with xt-sim 2017-05-11 16:51:56 -04:00
Makefile.xtsc-run xtensa: build similar to other Zephyr arches 2017-04-13 12:42:06 +00:00
mkmakefile First commit 2015-04-10 16:44:37 -07:00
mksysmap First commit 2015-04-10 16:44:37 -07:00
process_gperf.py kernel: introduce object validation mechanism 2017-09-07 16:33:33 -07:00
qemu-machine-hack.py build: make sure we are calling python3 in all scripts 2017-04-13 20:22:54 +00:00
requirements.txt doc: add python pip requirements.txt 2017-07-22 14:04:20 -04:00
sanitycheck sanitycheck: save/load lists of filterd tests 2017-09-12 18:13:46 -04:00
spelling.txt scripts: updated spelling.txt file 2017-07-14 12:57:40 +03:00
tags.sh build: Add tags.sh to enable tagging targets 2016-02-05 20:24:36 -05:00
timestamp license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
uncrustify.cfg scripts: add configuration file for uncrustify 2017-02-04 01:46:29 +00:00
vercomp sdk: zephyr: check for minimum required version of SDK 2016-09-15 21:17:02 +00:00
waitpid sanitycheck: Let waitpid script kill Xtensa ISS if user hits ctrl+c. 2017-04-11 16:53:41 +00:00