l4re-base-25.08.0

This commit is contained in:
2025-09-12 15:55:45 +02:00
commit d959eaab98
37938 changed files with 9382688 additions and 0 deletions

182
Makefile Normal file
View File

@@ -0,0 +1,182 @@
SHELL = env bash
all:
@if [ -d obj ]; then \
$(MAKE) build_all; \
else \
echo "Call 'make setup' once for initial setup." ; \
exit 1; \
fi
clean:
@$(RM) -r obj pre-built-images
setup:
@+if [ -d obj ]; then \
echo "Snapshot has already been setup. Proceed with 'make setup' or 'make clean'."; \
else \
export PATH=$$(pwd)/bin:$$PATH; \
chmod +x ./bin/setup.d/*; \
for binary in bin/setup.d/*; do \
./$$binary config || exit 1; \
done; \
for binary in bin/setup.d/*; do \
./$$binary setup || exit 1; \
done; \
echo ====================================================================; \
echo ; \
echo Your L4Re tree is set up now. Type 'make' to build the tree. This; \
echo will take some time \(depending on the speed of your host system, of; \
echo course\).; \
echo ; \
echo Boot-images for ARM targets will be placed into obj/l4/arm-*/images.; \
echo Boot-images for MIPS targets will be placed into obj/l4/mips32/images.; \
echo Check obj/l4/.../conf/Makeconf.boot for path configuration during image builds.; \
echo ; \
fi
build_all: build_fiasco build_l4re build_l4linux
#.NOTPARALLEL: build_fiasco build_l4re build_l4linux build_images build_all
build_fiasco: $(addsuffix /fiasco,$(wildcard obj/fiasco/*))
build_l4re: $(addsuffix /l4defs.mk.inc,$(wildcard obj/l4/*))
build_l4linux: $(addsuffix /vmlinux,$(wildcard obj/l4linux/*))
$(addsuffix /fiasco,$(wildcard obj/fiasco/*)):
$(MAKE) -C $(@D)
$(addsuffix /l4defs.mk.inc,$(wildcard obj/l4/*)):
$(MAKE) -C $(@D)
obj/l4linux/amd64/vmlinux: obj/l4/amd64/l4defs.mk.inc
$(MAKE) -C src/l4linux O=$(abspath $(@D)) x86_64-mp_vPCI_defconfig
src/l4linux/scripts/config --file $(@D)/.config \
--set-str L4_OBJ_TREE $(abspath obj/l4/amd64)
# temporary quick fix
src/l4linux/scripts/config --file $(@D)/.config -e PCI -e L4_VPCI
$(MAKE) -C $(@D) olddefconfig
$(MAKE) -C $(@D)
obj/l4linux/ux/vmlinux: obj/l4/x86/l4defs.mk.inc
$(MAKE) -C src/l4linux O=$(abspath $(@D)) x86_32-ux_defconfig
src/l4linux/scripts/config --file $(@D)/.config \
--set-str L4_OBJ_TREE $(abspath obj/l4/x86)
$(MAKE) -C $(@D)
obj/l4linux/arm-mp/vmlinux: obj/l4/arm-v7/l4defs.mk.inc
+. obj/.config && $(MAKE) -C src/l4linux L4ARCH=arm \
CROSS_COMPILE=$$CROSS_COMPILE_ARM \
O=$(abspath $(@D)) arm-mp_defconfig
src/l4linux/scripts/config --file $(@D)/.config \
--set-str L4_OBJ_TREE $(abspath obj/l4/arm-v7)
+. obj/.config && $(MAKE) -C $(@D) CROSS_COMPILE=$$CROSS_COMPILE_ARM
obj/l4linux/arm-up/vmlinux: obj/l4/arm-v7/l4defs.mk.inc
+. obj/.config && $(MAKE) -C src/l4linux L4ARCH=arm \
CROSS_COMPILE=$$CROSS_COMPILE_ARM \
O=$(abspath $(@D)) arm_defconfig
src/l4linux/scripts/config --file $(@D)/.config \
--set-str L4_OBJ_TREE $(abspath obj/l4/arm-v7)
+. obj/.config && $(MAKE) -C $(@D) CROSS_COMPILE=$$CROSS_COMPILE_ARM
obj/l4linux/arm64/vmlinux: obj/l4/arm64/l4defs.mk.inc
+. obj/.config && $(MAKE) -C src/l4linux L4ARCH=arm64 \
CROSS_COMPILE=$$CROSS_COMPILE_ARM64 \
O=$(abspath $(@D)) arm64_defconfig
src/l4linux/scripts/config --file $(@D)/.config \
--set-str L4_OBJ_TREE $(abspath obj/l4/arm64)
+. obj/.config && $(MAKE) -C $(@D) CROSS_COMPILE=$$CROSS_COMPILE_ARM64
build_images: build_l4linux build_l4re build_fiasco
@echo "=============== Building Images ==============================="
@+set -e; \
export PATH=$$(pwd)/bin:$$PATH; \
[ -e obj/.config ] && . obj/.config; \
cd obj/l4; \
for d in *; do \
if [ -d "$$d" -a -e $$d/.imagebuilds ]; then \
cat $$d/.imagebuilds | while read args; do \
# Do EFI first, because the EFI build process also generates \
# an ELF file which is PIE and linked to 0 despite of any target \
# link address. \
if [ "$$d" = "amd64" ]; then \
$(MAKE) -C $$d efiimage $$args; \
fi; \
if [ "$$d" = "arm64" ]; then \
case "$$args" in \
*PT=arm_sbsa*) $(MAKE) -C $$d efiimage $$args;; \
esac; \
fi; \
if [ "$$d" != "amd64" -a "$$d" != "x86" ]; then \
$(MAKE) -C $$d uimage $$args; \
fi; \
$(MAKE) -C $$d elfimage $$args; \
if [ "$$d" = "amd64" -o "$$d" = "x86" ]; then \
if [ -z "$(GRUB_INST_PATH)" ]; then \
echo "Need to specify GRUB_INST_PATH"; exit 1; \
fi; \
PATH=$(GRUB_INST_PATH)/efi/bin:$$PATH $(MAKE) -C $$d grub2iso ISONAME_SUFFIX=.efi.iso $$args; \
PATH=$(GRUB_INST_PATH)/pc/bin:$$PATH $(MAKE) -C $$d grub2iso ISONAME_SUFFIX=.pc.iso $$args; \
fi; \
done; \
fi; \
done
@echo "=============== Build done ===================================="
gen_prebuilt: copy_prebuilt pre-built-images/l4image
copy_prebuilt2: build_images
@echo "Creating pre-built image directory"
@set -e; \
@cd obj/l4; \
for arch in *; do \
for i in $$arch/images/*; do \
if [ "$$arch" = "amd64" -o "$$arch" = "x86" ]; then \
mkdir -p ../../pre-built-images/$$arch; \
if [ -d $$i ]; then \
for f in $$i/*.elf; do \
cp $$f ../../pre-built-images/$$arch; \
done; \
fi; \
else \
if [ -d $$i ]; then \
pt=$${i#$$arch/images/}; \
mkdir -p ../../pre-built-images/$$arch/$$pt; \
for f in $$i/*.elf $$i/*.uimage; do \
cp $$f ../../pre-built-images/$$arch/$$pt; \
done; \
fi; \
fi; \
done; \
done
copy_prebuilt: build_images
@echo "Creating pre-built image directory"
@set -e; \
cd obj/l4; \
for arch in *; do \
mkdir -p ../../pre-built-images/$$arch; \
for i in $$arch/images/l4re_*.elf \
$$arch/images/l4re_*.efi \
$$arch/images/l4re_*.uimage; do \
[ -e $$i ] || continue; \
cp $$i ../../pre-built-images/$$arch; \
done; \
done
pre-built-images/l4image:
@echo Creating $@
@src/l4/tool/bin/l4image --create-l4image-binary $@
help:
@echo "Targets:"
@echo " all"
@echo " setup"
@echo " build_images"
@echo " gen_prebuilt"
.PHONY: setup all build_all clean help \
build_images build_fiasco build_l4re build_l4linux

406
README.html Normal file
View File

@@ -0,0 +1,406 @@
<h1>L4Re Snapshots</h1>
<p>The snapshots are a snapshot of the L4Re OS framework, ready to use and
explore. This README gives some insight on how to build and handle the
system.</p>
<p>The are two versions available, a base set (l4re-base) and a full snapshot
with many more things inside.
Both variants include the doxygen-based documentation in both
<a href="https://l4re.org/doc/">HTML</a> and PDF for your convenience.
The paravirtualized L4Linux is in an extra tar-file and needs to be unpacked
additionally to either the base or full snapshot tar-files.</p>
<h1>Host system requirements</h1>
<p>The host system shall be a 64bit-based system with a recent
Linux distribution installed and at least a few GB of free disk space.</p>
<p>All necessary tools required by the build are available from the provided
packages of the Linux distributions, including cross compilers. But
there are also other cross compiler packages available (see below).
You might want to run <code>make check_build_tools</code> in the src/l4
directory to verify the common tools are installed.</p>
<p>You are free to use any Linux distribution you like, or even BSDs or any of
its derivatives. But then you should know the game. Especially tool
versions should be recent, as installed on the listed distributions below.</p>
<p>We are confident that the snapshot works on the following distributions:</p>
<ul>
<li>Debian 11 or later</li>
<li>Ubuntu 22.04 or later</li>
</ul>
<h1>Pre-built Images</h1>
<p>Releases of the snapshot also comes with pre-built images for various
platforms, among them the QEMU virt platform for Arm and Raspberry Pi 3 and
4.</p>
<p>The x86 and arm-virt images can be run in QEMU, using the <code>l4image</code> tool
that is available as a stand-alone tool in the <code>pre-built-images</code>
sub-directory.</p>
<pre><code>$ wget https://l4re.org/download/snapshots/pre-built-images/arm64/bootstrap_hello_arm_virt.elf
$ pre-built-images/l4image -i bootstrap_hello_arm_virt.elf launch
L4 Bootstrapper
Build: #2 Sun Jan 23 21:26:47 CET 2022, 11.2.0
RAM: 0000000040000000 - 000000007fffffff: 1048576kB
Total RAM: 1024MB
Scanning fiasco
Scanning sigma0
Scanning moe
....
</code></pre>
<h1>Cross Compilers</h1>
<h2>Cross Compiling for ARM</h2>
<p>For compiling software for the ARM targets on an x86 host a cross compiler is needed.</p>
<p>Please install the appropriate cross-compilers from your distribution if
available. On Debian/Ubuntu the package are called g++-arm-linux-gnueabihf
and g++-aarch64-linux-gnu for arm32 and arm64 respectively.</p>
<p>Alternative Arm provides a freely available gcc-based toolchain as well:</p>
<p><a href="https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a">https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a</a></p>
<h2>Cross compiling for MIPS</h2>
<p>For compiling software for MIPS on an x86 host a cross compiler is needed.</p>
<p>Please install the appropriate cross-compilers for your distribution if
available.</p>
<p>There are also cross-compilers available from MIPS:</p>
<p><a href="https://codescape.mips.com/components/toolchain/2019.02-05/downloads.html">https://codescape.mips.com/components/toolchain/2019.02-05/downloads.html</a></p>
<p>Other cross compiler builds can also work. Any (positive + negative) feedback welcome.</p>
<h2>Using the Cross Compiler</h2>
<p>Cross compilers are used via the common <code>CROSS_COMPILE</code> variable.
<code>make setup</code> also asks for a <code>CROSS_COMPILE</code> prefix to be used for
a specific build.</p>
<h1>Building</h1>
<p>In the upper most directory of the archive (the same directory where this
README is located) contains a Makefile. To setup the snapshot issue</p>
<pre><code>make setup
</code></pre>
<p>and to build it issue</p>
<pre><code>make
</code></pre>
<p>in the snapshot directory. Add -j X as appropriate.</p>
<h1>Directory layout</h1>
<ul>
<li><p><code>bin/</code>
Configuration logics for this snapshot.</p></li>
<li><p><code>doc/</code></p>
<p><code>source/</code>
Contains documentation automatically generated from the documented
source code. Overview documentation is also included there.
l4re-doc-full.pdf and l4re-doc-base.pdf: PDF file of the generated code
html: HTML version of the documentation. Can be viewed in any recent
web browser.</p></li>
<li><p><code>obj/</code>
Generated object code will be placed under the obj directory.</p>
<p><code>fiasco/</code>
Fiasco build directories.</p>
<p><code>l4/</code>
L4Re build drectories.</p>
<p><code>l4linux/</code>
L4Linux build directories (in full snapshot)</p></li>
<li><p><code>src/</code>
Contains the source code:
<code>kernel/fiasco</code>: Fiasco source
<code>l4</code>: L4Re source
<code>l4linux</code>: L4Linux (in full snapshot)</p></li>
<li><p>files/
Miscellaneous files (in full snapshot)</p>
<ul>
<li><code>ramdisk-x86.rd</code>: Ramdisks for (L4)Linux.</li>
<li><code>ramdisk-arm.rd</code>: Ramdisks for (L4)Linux.</li>
<li><code>ramdisk-amd64.rd</code>: Ramdisks for (L4)Linux.</li>
<li><code>ramdisk-armv8-64.rd</code>: Ramdisks for (L4)Linux.</li>
</ul></li>
</ul>
<p>All object directories are built by default.</p>
<h1>Serial Console</h1>
<p>If you happen to use Windows as your workstation OS to connect to your
target machine we recommend using PuTTY (free, open source tool, ask your
favorite search engine) as a terminal emulator. Hyperterm is not
recommended because it is basically unable to display all the output
properly.</p>
<p>On Linux hosts the situation is much more relaxed, minicom and PuTTY are
known to work, as probably any other solution.</p>
<h1>QEMU</h1>
<p>To run the built system under QEMU, go to an appropriate
<code>obj/l4</code>-directory of your choice, such as <code>obj/l4/x86</code>, and run:</p>
<pre><code>make qemu
</code></pre>
<p>This will display a dialog menu to let you choose an entry to boot. For
example, choose 'hello' and you should see the system starting and finally
see "Hello World" scroll by periodically.</p>
<h1>Configuring yourself</h1>
<p>The <code>make setup</code> step configures predefined setups for both the
L4Re microkernel (Fiasco) and the L4Re user-level software, and
connects both together so the images for the target system can be
built.</p>
<p>Of course, you can also do this yourself for your specific targets.</p>
<p>Generally, the microkernel is built for a very specific target, i.e. it is
build for a SoC, such as ARM's Zedboard based on the Xilinx Zynq platform,
or the MIPS Baikal-T.</p>
<p>In contrast, L4Re is built for the architecture and possibly
sub-architecture (CPU variant). Again referring to the Zedboard and
Baikal-T, L4Re would be compiled for the ARMv7-A ARM CPU variant and
MIPS32r2 variant respectively.</p>
<h2>Configure the L4Re microkernel aka Fiasco </h2>
<p>Within the snapshot layout build directories for Fiasco are created under
<code>obj/fiasco</code>. To create a build directory, go to <code>src/kernel/fiasco</code> and do:</p>
<pre><code>$ cd src/kernel/fiasco
$ make B=../../../obj/fiasco/builddir
Creating build directory "../../../obj/fiasco/builddir"...
done.
</code></pre>
<p>This will have created a build directory, go there and configure it
according to your requirements:</p>
<pre><code>$ cd ../../../obj/fiasco/builddir
$ make config
</code></pre>
<p><code>make config</code> will open up a configuration menu. Configure Fiasco as
required. Finally save the configuration and build:</p>
<pre><code>$ make -j4
</code></pre>
<p>When successful, this will create a file <code>fiasco</code> in the build directory.</p>
<h2>Configure L4Re User-Level Infrastructure</h2>
<p>Within the snapshot layout build directories for the L4Re user-level
infrastructure are under <code>obj/l4</code>. To create a build directory, go to
<code>src/l4</code> and do:</p>
<pre><code>$ cd src/l4
$ make B=../../obj/l4/builddir
</code></pre>
<p>This will have created a build directory, go there and configure
it according to your requirements:</p>
<pre><code>$ cd ../../obj/l4/builddir
$ make config
</code></pre>
<p><code>make config</code> will open up a configuration menu. Configure as
required. Finally save the configuration build:</p>
<pre><code>$ make -j4
</code></pre>
<p>Building will compile all the components of L4Re, however, it will not build
an image that you can load on the target.</p>
<h2>Pulling it together</h2>
<p>For creating images to load on the target, the image building step
needs to know where all the files can be found to include in the image.
The image contains all the executable program files of the setup to build,
including the Fiasco kernel, but also other files that are necessary
to run the setup, such as configuration files, ramdisks, or data files.</p>
<p>The image building step is integrated in the L4Re build system. All
relevant configuration settings for building an image are
taken from <code>src/l4/conf/Makeconf.boot</code>. A template is available
as <code>src/l4/conf/Makeconf.boot.example</code>, and it is encouraged that you
copy that file to <code>src/l4/conf/Makeconf.boot</code>.</p>
<p>The most relevant variable in that file is <code>MODULE_SEARCH_PATH</code> which
defines where the image building process shall look for files. This variable
has absolute paths separated with either spaces or colons (':').
For the examples to work, we need to add the path to the Fiasco
build directory as you have chosen in the above building step.
Change the line accordingly.</p>
<p>When done, you can proceed to build an image. Go to the l4 build directory
and create an image. You can create ELF, uimage and raw images, chose
whichever one you need for your target's boot loader. For example:</p>
<pre><code>$ obj/l4/builddir
$ make uimage PLATFORM_TYPE=zynqmp
</code></pre>
<p>This will present you a menu of selectable setups and will finally
build the image. You can avoid some typing by using shortcuts:</p>
<pre><code>$ make uimage E=hello PT=zynqmp
</code></pre>
<p>The built image can be found in the <code>images</code> sub-directory, e.g. as
<code>images/bootstrap_hello.uimage</code>.</p>
<p>Use that uimage file to load it on the target using u-boot.</p>
<h2>Setup Configuration, and more</h2>
<p>The configuration file to configure the contents of images and generally
the entries to boot is</p>
<pre><code>src/l4/conf/modules.list
</code></pre>
<p>It contains <code>entry</code> sections with modules for each entries listed.
When using non-absolute paths, the image building will you the
<code>MODULE_SEARCH_PATH</code> to find those files. You can also use absolute paths.</p>
<p>The Makeconf.boot file is a <code>make</code> file, allowing for individual
configuration according to your needs. You may use available variables such
as <code>PLATFORM_TYPE</code>, <code>BUILD_ARCH</code>, and <code>QEMU_OPTIONS</code> to construct
configurations as required by different targets and architectures.</p>
<p>The Makeconf.boot file can also be stored in a build directory under the
<code>conf/</code> sub-directory.</p>
<h1>Adding your own code</h1>
<p>Your own code should be placed outside the snapshot directory. This allows
that the snapshot can be replaced with a more recent version without
needing to take care about your own files and directories.</p>
<p>Software components are usually put into so-called packages, and each
package has a structure like this:</p>
<pre><code>pkgname/
doc/ - Documentation for the package
include/ - Public headers for the package
lib/ - Library code
src/
server/ - Program code
src/
</code></pre>
<p>This is just a recommended structure, it is not required to be like that.
What is built is defined in the Makefiles in each directory.</p>
<p>A typical Makefile looks like this:</p>
<pre><code>PKGDIR ?= .
L4DIR ?= path/to/your/l4dir
# Statements specific to the used role
include $(L4DIR)/mk/&lt;role&gt;.mk
</code></pre>
<p>Role might be:
* <code>subdir</code>: Descent to further subdirectories
* <code>lib</code>: Build a library
* <code>prog</code>: Build a program
* <code>include</code>: Process include files</p>
<p>The directory <code>l4/mk/tmpl</code> contains a template package directory layout
structure and shows how a package might look like. It also contains
examples on what to do in the Makefiles.</p>
<p>A very basic example might go like this:</p>
<pre><code>$ mkdir /tmp/myfirstpkg
$ cd /tmp/myfirstpkg
$ editor Makefile
$ cat Makefile
PKGDIR ?= .
L4DIR ?= /path/to/snapshot/src/l4
TARGET = myfirstprogram
SRC_C = main.c
include $(L4DIR)/mk/prog.mk
$ editor main.c
$ cat main.c
#include &lt;stdio.h&gt;
int main(void)
{
printf("Hello!\n");
return 0;
}
$ make O=/path/to/snapshot/obj/l4/arm-rv-arm9
...
$ ls /path/to/snapshot/obj/l4/arm64/bin/arm_rv/l4f/myfirstprogram
/path/to/snapshot/obj/l4/arm64/bin/arm_rv/l4f/myfirstprogram
$
</code></pre>
<h2>Tips and tricks</h2>
<p>If you're just building for one build directory you can do the
following to avoid the <code>O=...</code> argument on every make call.</p>
<p>Put <code>O=/path/to/the/build-dir</code> into L4DIR/Makeconf.local</p>
<p>Also, you can just issue 'make' in the build directories directly.</p>
<h2>Setup for multiple packages</h2>
<p>Create a directory structure like this:</p>
<pre><code>dir/
dir/pkg1
dir/pkg2
dir/pkg3
</code></pre>
<p>Put this Makefile into dir/Makefile:</p>
<pre><code>PKGDIR = .
L4DIR ?= /path/to/your/l4dir/l4
TARGET = $(wildcard [a-zA-Z]*)
include $(L4DIR)/mk/subdir.mk
</code></pre>
<p>This will build all sub packages from within this directory. Make sure
to define L4DIR properly in every Makefile in the packages (or
alternatively, include a file which defines it, but this file has to be
absolute as well).
In the package directories you can have the normal Makefiles as in
<code>l4/pkg/pkgname</code>.</p>

421
README.md Normal file
View File

@@ -0,0 +1,421 @@
L4Re Snapshots
==============
The snapshots are a snapshot of the L4Re OS framework, ready to use and
explore. This README gives some insight on how to build and handle the
system.
The are two versions available, a base set (l4re-base) and a full snapshot
with many more things inside.
Both variants include the doxygen-based documentation in both
[HTML](https://l4re.org/doc/) and PDF for your convenience.
The paravirtualized L4Linux is in an extra tar-file and needs to be unpacked
additionally to either the base or full snapshot tar-files.
Host system requirements
========================
The host system shall be a 64bit-based system with a recent
Linux distribution installed and at least a few GB of free disk space.
All necessary tools required by the build are available from the provided
packages of the Linux distributions, including cross compilers. But
there are also other cross compiler packages available (see below).
You might want to run `make check_build_tools` in the src/l4
directory to verify the common tools are installed.
You are free to use any Linux distribution you like, or even BSDs or any of
its derivatives. But then you should know the game. Especially tool
versions should be recent, as installed on the listed distributions below.
We are confident that the snapshot works on the following distributions:
* Debian 11 or later
* Ubuntu 22.04 or later
Pre-built Images
================
Releases of the snapshot also comes with pre-built images for various
platforms, among them the QEMU virt platform for Arm and Raspberry Pi 3 and
4.
The x86 and arm-virt images can be run in QEMU, using the `l4image` tool
that is available as a stand-alone tool in the `pre-built-images`
sub-directory.
$ wget https://l4re.org/download/snapshots/pre-built-images/arm64/bootstrap_hello_arm_virt.elf
$ pre-built-images/l4image -i bootstrap_hello_arm_virt.elf launch
L4 Bootstrapper
Build: #2 Sun Jan 23 21:26:47 CET 2022, 11.2.0
RAM: 0000000040000000 - 000000007fffffff: 1048576kB
Total RAM: 1024MB
Scanning fiasco
Scanning sigma0
Scanning moe
....
Cross Compilers
===============
Cross Compiling for ARM
-----------------------
For compiling software for the ARM targets on an x86 host a cross compiler is needed.
Please install the appropriate cross-compilers from your distribution if
available. On Debian/Ubuntu the package are called g++-arm-linux-gnueabihf
and g++-aarch64-linux-gnu for arm32 and arm64 respectively.
Alternative Arm provides a freely available gcc-based toolchain as well:
[https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a](https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a)
Cross compiling for MIPS
------------------------
For compiling software for MIPS on an x86 host a cross compiler is needed.
Please install the appropriate cross-compilers for your distribution if
available.
There are also cross-compilers available from MIPS:
[https://codescape.mips.com/components/toolchain/2019.02-05/downloads.html](https://codescape.mips.com/components/toolchain/2019.02-05/downloads.html)
Other cross compiler builds can also work. Any (positive + negative) feedback welcome.
Using the Cross Compiler
------------------------
Cross compilers are used via the common `CROSS_COMPILE` variable.
`make setup` also asks for a `CROSS_COMPILE` prefix to be used for
a specific build.
Building
========
In the upper most directory of the archive (the same directory where this
README is located) contains a Makefile. To setup the snapshot issue
make setup
and to build it issue
make
in the snapshot directory. Add -j X as appropriate.
Directory layout
================
* `bin/`
Configuration logics for this snapshot.
* `doc/`
`source/`
Contains documentation automatically generated from the documented
source code. Overview documentation is also included there.
l4re-doc-full.pdf and l4re-doc-base.pdf: PDF file of the generated code
html: HTML version of the documentation. Can be viewed in any recent
web browser.
* `obj/`
Generated object code will be placed under the obj directory.
`fiasco/`
Fiasco build directories.
`l4/`
L4Re build drectories.
`l4linux/`
L4Linux build directories (in full snapshot)
* `src/`
Contains the source code:
`kernel/fiasco`: Fiasco source
`l4`: L4Re source
`l4linux`: L4Linux (in full snapshot)
* files/
Miscellaneous files (in full snapshot)
* `ramdisk-x86.rd`: Ramdisks for (L4)Linux.
* `ramdisk-arm.rd`: Ramdisks for (L4)Linux.
* `ramdisk-amd64.rd`: Ramdisks for (L4)Linux.
* `ramdisk-armv8-64.rd`: Ramdisks for (L4)Linux.
All object directories are built by default.
Serial Console
==============
If you happen to use Windows as your workstation OS to connect to your
target machine we recommend using PuTTY (free, open source tool, ask your
favorite search engine) as a terminal emulator. Hyperterm is not
recommended because it is basically unable to display all the output
properly.
On Linux hosts the situation is much more relaxed, minicom and PuTTY are
known to work, as probably any other solution.
QEMU
====
To run the built system under QEMU, go to an appropriate
`obj/l4`-directory of your choice, such as `obj/l4/x86`, and run:
make qemu
This will display a dialog menu to let you choose an entry to boot. For
example, choose 'hello' and you should see the system starting and finally
see "Hello World" scroll by periodically.
Configuring yourself
====================
The `make setup` step configures predefined setups for both the
L4Re microkernel (Fiasco) and the L4Re user-level software, and
connects both together so the images for the target system can be
built.
Of course, you can also do this yourself for your specific targets.
Generally, the microkernel is built for a very specific target, i.e. it is
build for a SoC, such as ARM's Zedboard based on the Xilinx Zynq platform,
or the MIPS Baikal-T.
In contrast, L4Re is built for the architecture and possibly
sub-architecture (CPU variant). Again referring to the Zedboard and
Baikal-T, L4Re would be compiled for the ARMv7-A ARM CPU variant and
MIPS32r2 variant respectively.
Configure the L4Re microkernel aka Fiasco
-----------------------------------------
Within the snapshot layout build directories for Fiasco are created under
`obj/fiasco`. To create a build directory, go to `src/kernel/fiasco` and do:
$ cd src/kernel/fiasco
$ make B=../../../obj/fiasco/builddir
Creating build directory "../../../obj/fiasco/builddir"...
done.
This will have created a build directory, go there and configure it
according to your requirements:
$ cd ../../../obj/fiasco/builddir
$ make config
`make config` will open up a configuration menu. Configure Fiasco as
required. Finally save the configuration and build:
$ make -j4
When successful, this will create a file `fiasco` in the build directory.
Configure L4Re User-Level Infrastructure
----------------------------------------
Within the snapshot layout build directories for the L4Re user-level
infrastructure are under `obj/l4`. To create a build directory, go to
`src/l4` and do:
$ cd src/l4
$ make B=../../obj/l4/builddir
This will have created a build directory, go there and configure
it according to your requirements:
$ cd ../../obj/l4/builddir
$ make config
`make config` will open up a configuration menu. Configure as
required. Finally save the configuration build:
$ make -j4
Building will compile all the components of L4Re, however, it will not build
an image that you can load on the target.
Pulling it together
-------------------
For creating images to load on the target, the image building step
needs to know where all the files can be found to include in the image.
The image contains all the executable program files of the setup to build,
including the Fiasco kernel, but also other files that are necessary
to run the setup, such as configuration files, ramdisks, or data files.
The image building step is integrated in the L4Re build system. All
relevant configuration settings for building an image are
taken from `src/l4/conf/Makeconf.boot`. A template is available
as `src/l4/conf/Makeconf.boot.example`, and it is encouraged that you
copy that file to `src/l4/conf/Makeconf.boot`.
The most relevant variable in that file is `MODULE_SEARCH_PATH` which
defines where the image building process shall look for files. This variable
has absolute paths separated with either spaces or colons (':').
For the examples to work, we need to add the path to the Fiasco
build directory as you have chosen in the above building step.
Change the line accordingly.
When done, you can proceed to build an image. Go to the l4 build directory
and create an image. You can create ELF, uimage and raw images, chose
whichever one you need for your target's boot loader. For example:
$ obj/l4/builddir
$ make uimage PLATFORM_TYPE=zynqmp
This will present you a menu of selectable setups and will finally
build the image. You can avoid some typing by using shortcuts:
$ make uimage E=hello PT=zynqmp
The built image can be found in the `images` sub-directory, e.g. as
`images/bootstrap_hello.uimage`.
Use that uimage file to load it on the target using u-boot.
Setup Configuration, and more
-----------------------------
The configuration file to configure the contents of images and generally
the entries to boot is
src/l4/conf/modules.list
It contains `entry` sections with modules for each entries listed.
When using non-absolute paths, the image building will you the
`MODULE_SEARCH_PATH` to find those files. You can also use absolute paths.
The Makeconf.boot file is a `make` file, allowing for individual
configuration according to your needs. You may use available variables such
as `PLATFORM_TYPE`, `BUILD_ARCH`, and `QEMU_OPTIONS` to construct
configurations as required by different targets and architectures.
The Makeconf.boot file can also be stored in a build directory under the
`conf/` sub-directory.
Adding your own code
====================
Your own code should be placed outside the snapshot directory. This allows
that the snapshot can be replaced with a more recent version without
needing to take care about your own files and directories.
Software components are usually put into so-called packages, and each
package has a structure like this:
pkgname/
doc/ - Documentation for the package
include/ - Public headers for the package
lib/ - Library code
src/
server/ - Program code
src/
This is just a recommended structure, it is not required to be like that.
What is built is defined in the Makefiles in each directory.
A typical Makefile looks like this:
PKGDIR ?= .
L4DIR ?= path/to/your/l4dir
# Statements specific to the used role
include $(L4DIR)/mk/<role>.mk
Role might be:
* `subdir`: Descent to further subdirectories
* `lib`: Build a library
* `prog`: Build a program
* `include`: Process include files
The directory `l4/mk/tmpl` contains a template package directory layout
structure and shows how a package might look like. It also contains
examples on what to do in the Makefiles.
A very basic example might go like this:
$ mkdir /tmp/myfirstpkg
$ cd /tmp/myfirstpkg
$ editor Makefile
$ cat Makefile
PKGDIR ?= .
L4DIR ?= /path/to/snapshot/src/l4
TARGET = myfirstprogram
SRC_C = main.c
include $(L4DIR)/mk/prog.mk
$ editor main.c
$ cat main.c
#include <stdio.h>
int main(void)
{
printf("Hello!\n");
return 0;
}
$ make O=/path/to/snapshot/obj/l4/arm-rv-arm9
...
$ ls /path/to/snapshot/obj/l4/arm64/bin/arm_rv/l4f/myfirstprogram
/path/to/snapshot/obj/l4/arm64/bin/arm_rv/l4f/myfirstprogram
$
Tips and tricks
---------------
If you're just building for one build directory you can do the
following to avoid the `O=...` argument on every make call.
Put `O=/path/to/the/build-dir` into L4DIR/Makeconf.local
Also, you can just issue 'make' in the build directories directly.
Setup for multiple packages
---------------------------
Create a directory structure like this:
dir/
dir/pkg1
dir/pkg2
dir/pkg3
Put this Makefile into dir/Makefile:
PKGDIR = .
L4DIR ?= /path/to/your/l4dir/l4
TARGET = $(wildcard [a-zA-Z]*)
include $(L4DIR)/mk/subdir.mk
This will build all sub packages from within this directory. Make sure
to define L4DIR properly in every Makefile in the packages (or
alternatively, include a file which defines it, but this file has to be
absolute as well).
In the package directories you can have the normal Makefiles as in
`l4/pkg/pkgname`.

1150
bin/setup.d/04-setup Executable file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,145 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-amd64/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-amd64_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jakub Jermar &lt;jakub.jermar@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2l4int_8h.html">l4/sys/l4int.h</a>&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &lt;x86/l4/drivers/asm_access.h&gt;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="keyword">namespace </span>Asm_access {</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span>{</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movq %[mem], %[val]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span>}</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *mem)</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>{</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movq %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>}</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>}</div>
<div class="ttc" id="agroup__l4__basic__types_html_gaf3331c485014bd12a9e4f9d27a55e689"><div class="ttname"><a href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div><div class="ttdeci">unsigned long long l4_uint64_t</div><div class="ttdoc">Unsigned 64bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00031">l4int.h:31</a></div></div>
<div class="ttc" id="al4_2sys_2l4int_8h_html"><div class="ttname"><a href="l4_2sys_2l4int_8h.html">l4int.h</a></div><div class="ttdoc">Fixed sized integer types, generic version.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-amd64</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,201 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-arm64/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-arm64_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jakub Jermar &lt;jakub.jermar@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2l4int_8h.html">l4/sys/l4int.h</a>&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">namespace </span>Asm_access {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>{</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ldrb %w[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>}</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>{</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ldrh %w[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span>}</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>{</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ldr %w[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>{</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ldr %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>}</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *mem)</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span>{</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;strb %w[val], %[mem]&quot;</span> :[mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>}</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *mem)</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>{</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;strh %w[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span>}</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *mem)</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span>{</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;str %w[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span>}</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *mem)</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span>{</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;str %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span>}</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> </div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span>}</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9678dc2e6bf3e4d8ec950162576b0fad"><div class="ttname"><a href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div><div class="ttdeci">unsigned char l4_uint8_t</div><div class="ttdoc">Unsigned 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gaf3331c485014bd12a9e4f9d27a55e689"><div class="ttname"><a href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div><div class="ttdeci">unsigned long long l4_uint64_t</div><div class="ttdoc">Unsigned 64bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00031">l4int.h:31</a></div></div>
<div class="ttc" id="al4_2sys_2l4int_8h_html"><div class="ttname"><a href="l4_2sys_2l4int_8h.html">l4int.h</a></div><div class="ttdoc">Fixed sized integer types, generic version.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-arm64</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,182 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-arm/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-arm_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jakub Jermar &lt;jakub.jermar@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2l4int_8h.html">l4/sys/l4int.h</a>&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">namespace </span>Asm_access {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>{</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ldrb %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>}</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>{</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ldrh %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span>}</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>{</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ldr %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *mem)</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>{</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;strb %[val], %[mem]&quot;</span> :[mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span>}</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *mem)</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>{</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;strh %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>}</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *mem)</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span>{</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;str %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span>}</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>}</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9678dc2e6bf3e4d8ec950162576b0fad"><div class="ttname"><a href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div><div class="ttdeci">unsigned char l4_uint8_t</div><div class="ttdoc">Unsigned 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="al4_2sys_2l4int_8h_html"><div class="ttname"><a href="l4_2sys_2l4int_8h.html">l4int.h</a></div><div class="ttdoc">Fixed sized integer types, generic version.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-arm</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-mips/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-mips_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jakub Jermar &lt;jakub.jermar@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;l4/drivers/asm_access_gen.h&gt;</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-mips</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-ppc32/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-ppc32_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jakub Jermar &lt;jakub.jermar@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;l4/drivers/asm_access_gen.h&gt;</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-ppc32</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,205 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-riscv/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-riscv_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Georg Kotheimer &lt;georg.kotheimer@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2l4int_8h.html">l4/sys/l4int.h</a>&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">namespace </span>Asm_access {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>{</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;lb %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>}</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>{</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;lh %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span>}</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>{</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;lw %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *mem)</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>{</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;sb %[val], %[mem]&quot;</span> :[mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span>}</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *mem)</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>{</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;sh %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>}</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *mem)</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span>{</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;sw %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span>}</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span><span class="preprocessor">#if __riscv_xlen == 64</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span>{</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;ld %[val], %[mem]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span>}</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *mem)</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span>{</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;sd %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;r&quot;</span> (val));</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span>}</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span>}</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9678dc2e6bf3e4d8ec950162576b0fad"><div class="ttname"><a href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div><div class="ttdeci">unsigned char l4_uint8_t</div><div class="ttdoc">Unsigned 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gaf3331c485014bd12a9e4f9d27a55e689"><div class="ttname"><a href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div><div class="ttdeci">unsigned long long l4_uint64_t</div><div class="ttdoc">Unsigned 64bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00031">l4int.h:31</a></div></div>
<div class="ttc" id="al4_2sys_2l4int_8h_html"><div class="ttname"><a href="l4_2sys_2l4int_8h.html">l4int.h</a></div><div class="ttdoc">Fixed sized integer types, generic version.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-riscv</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-sparc/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-sparc_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jakub Jermar &lt;jakub.jermar@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;l4/drivers/asm_access_gen.h&gt;</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-sparc</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,182 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: pkg/drivers-frst/include/ARCH-x86/asm_access.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('ARCH-x86_2asm__access_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">asm_access.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2021, 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jakub Jermar &lt;jakub.jermar@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2l4int_8h.html">l4/sys/l4int.h</a>&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">namespace </span>Asm_access {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>{</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movb %[mem], %[val]&quot;</span> : [val] <span class="stringliteral">&quot;=q&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>}</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>{</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movw %[mem], %[val]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span>}</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>read(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> <span class="keyword">const</span> *mem)</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>{</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movl %[mem], %[val]&quot;</span> : [val] <span class="stringliteral">&quot;=r&quot;</span> (val) : [mem] <span class="stringliteral">&quot;m&quot;</span> (*mem));</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> val;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *mem)</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>{</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movb %[val], %[mem]&quot;</span> :[mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;qi&quot;</span> (val));</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span>}</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *mem)</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>{</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movw %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;ri&quot;</span> (val));</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>}</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keyword">inline</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>write(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val, <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *mem)</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span>{</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keyword">asm</span> <span class="keyword">volatile</span> (<span class="stringliteral">&quot;movl %[val], %[mem]&quot;</span> : [mem] <span class="stringliteral">&quot;=m&quot;</span> (*mem) : [val] <span class="stringliteral">&quot;ri&quot;</span> (val));</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span>}</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>}</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9678dc2e6bf3e4d8ec950162576b0fad"><div class="ttname"><a href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div><div class="ttdeci">unsigned char l4_uint8_t</div><div class="ttdoc">Unsigned 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="al4_2sys_2l4int_8h_html"><div class="ttname"><a href="l4_2sys_2l4int_8h.html">l4int.h</a></div><div class="ttdoc">Fixed sized integer types, generic version.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>pkg</b></li><li class="navelem"><b>drivers-frst</b></li><li class="navelem"><b>include</b></li><li class="navelem"><b>ARCH-x86</b></li><li class="navelem"><b>asm_access.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,158 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__kernel_object_impl.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____kernel__object__impl_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__kernel_object_impl.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2ipc_8h.html">l4/sys/ipc.h</a>&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span>l4_invoke_debugger(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> obj, <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a> tag, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span>{</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a> t2;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keywordtype">unsigned</span> <span class="keyword">const</span> words = <a class="code hl_function" href="group__l4__msgtag__api.html#ga6d29d688c50ece7ec55f3c6ed749d375">l4_msgtag_words</a>(tag);</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <a class="code hl_union" href="unionl4__msg__regs__t.html">l4_msg_regs_t</a> *mr = l4_utcb_mr_u(utcb);</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__l4__cap__api.html#ga1aee507eabc91cc118429decc9e8cb45">l4_is_invalid_cap</a>(obj))</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(-<a class="code hl_enumvalue" href="group__l4__error__api.html#ggab4c8abc71ffa221a25c1ca5840a354f9a54ddbebc30b661c87177b968a77588b8">L4_EINVAL</a>, 0, 0, 0);</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">if</span> (words + 2 &gt; L4_UTCB_GENERIC_DATA_SIZE)</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(-<a class="code hl_enumvalue" href="group__l4__error__api.html#ggab4c8abc71ffa221a25c1ca5840a354f9a8992e4e5316985693c1b43ae4d9c461f">L4_EMSGTOOLONG</a>, 0, 0, 0);</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> mr-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[0] += 0x100;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> mr-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[words] = <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#gga94ecfe2908867c4ed0c13a7a97337f6aa818a51ad60a66f82775c39c2eb550f4d">L4_ITEM_MAP</a>;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> mr-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[words + 1] = <a class="code hl_function" href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54">l4_obj_fpage</a>(obj, 0, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020">L4_CAP_FPAGE_RWS</a>).<a class="code hl_variable" href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">raw</a>;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> t2 = <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(<a class="code hl_enumvalue" href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92adc55eb8da9eba43b3a014e5a5e0a9ac2">L4_PROTO_DEBUGGER</a>, words, 1, <a class="code hl_function" href="group__l4__msgtag__api.html#gaa8193318cfb7b2c055682481ef316cde">l4_msgtag_flags</a>(tag));</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a>(<a class="code hl_enumvalue" href="group__l4__cap__api.html#ggaa7801b63edba351bad9ea8026432b5c4a3b548600669ef80f419b7d7118768ecc">L4_BASE_DEBUGGER_CAP</a>, utcb, t2, <a class="code hl_define" href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a>);</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>}</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="ttc" id="agroup__l4__cap__api_html_ga1445e923ce73029130d569d6e69a4dd8"><div class="ttname"><a href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div><div class="ttdeci">unsigned long l4_cap_idx_t</div><div class="ttdoc">Capability selector type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00336">types.h:336</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ga1aee507eabc91cc118429decc9e8cb45"><div class="ttname"><a href="group__l4__cap__api.html#ga1aee507eabc91cc118429decc9e8cb45">l4_is_invalid_cap</a></div><div class="ttdeci">unsigned l4_is_invalid_cap(l4_cap_idx_t c) L4_NOTHROW</div><div class="ttdoc">Test if a capability selector is the invalid capability.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00389">types.h:389</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ggaa7801b63edba351bad9ea8026432b5c4a3b548600669ef80f419b7d7118768ecc"><div class="ttname"><a href="group__l4__cap__api.html#ggaa7801b63edba351bad9ea8026432b5c4a3b548600669ef80f419b7d7118768ecc">L4_BASE_DEBUGGER_CAP</a></div><div class="ttdeci">@ L4_BASE_DEBUGGER_CAP</div><div class="ttdoc">Capability selector for the debugger cap.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2consts_8h_source.html#l00366">consts.h:366</a></div></div>
<div class="ttc" id="agroup__l4__error__api_html_ggab4c8abc71ffa221a25c1ca5840a354f9a54ddbebc30b661c87177b968a77588b8"><div class="ttname"><a href="group__l4__error__api.html#ggab4c8abc71ffa221a25c1ca5840a354f9a54ddbebc30b661c87177b968a77588b8">L4_EINVAL</a></div><div class="ttdeci">@ L4_EINVAL</div><div class="ttdoc">Invalid argument.</div><div class="ttdef"><b>Definition</b> <a href="err_8h_source.html#l00046">err.h:46</a></div></div>
<div class="ttc" id="agroup__l4__error__api_html_ggab4c8abc71ffa221a25c1ca5840a354f9a8992e4e5316985693c1b43ae4d9c461f"><div class="ttname"><a href="group__l4__error__api.html#ggab4c8abc71ffa221a25c1ca5840a354f9a8992e4e5316985693c1b43ae4d9c461f">L4_EMSGTOOLONG</a></div><div class="ttdeci">@ L4_EMSGTOOLONG</div><div class="ttdoc">Message too long.</div><div class="ttdef"><b>Definition</b> <a href="err_8h_source.html#l00057">err.h:57</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga3eaf59757a63812044e2b3a1cdf09d54"><div class="ttname"><a href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54">l4_obj_fpage</a></div><div class="ttdeci">l4_fpage_t l4_obj_fpage(l4_cap_idx_t obj, unsigned int order, unsigned char rights) L4_NOTHROW</div><div class="ttdoc">Create a kernel-object flexpage.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00715">__l4_fpage.h:715</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020">L4_CAP_FPAGE_RWS</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RWS</div><div class="ttdoc">Read, interface specific &#39;W&#39;, and &#39;S&#39; rights for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00206">__l4_fpage.h:206</a></div></div>
<div class="ttc" id="agroup__l4__ipc__api_html_gab96d1669dcd54657237ee27b7f6862c6"><div class="ttname"><a href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a></div><div class="ttdeci">l4_msgtag_t l4_ipc_call(l4_cap_idx_t object, l4_utcb_t *utcb, l4_msgtag_t tag, l4_timeout_t timeout) L4_NOTHROW</div><div class="ttdoc">Object call (usual invocation).</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2ipc_8h_source.html#l00565">ipc.h:565</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_gga94ecfe2908867c4ed0c13a7a97337f6aa818a51ad60a66f82775c39c2eb550f4d"><div class="ttname"><a href="group__l4__msgitem__api.html#gga94ecfe2908867c4ed0c13a7a97337f6aa818a51ad60a66f82775c39c2eb550f4d">L4_ITEM_MAP</a></div><div class="ttdeci">@ L4_ITEM_MAP</div><div class="ttdoc">Identify a message item as map item.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2consts_8h_source.html#l00214">consts.h:214</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_ga661d71acad9d096fa990f7c94943bc78"><div class="ttname"><a href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a></div><div class="ttdeci">l4_msgtag_t l4_msgtag(long label, unsigned words, unsigned items, unsigned flags) L4_NOTHROW</div><div class="ttdoc">Create a message tag from the specified values.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00405">types.h:405</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_ga6d29d688c50ece7ec55f3c6ed749d375"><div class="ttname"><a href="group__l4__msgtag__api.html#ga6d29d688c50ece7ec55f3c6ed749d375">l4_msgtag_words</a></div><div class="ttdeci">unsigned l4_msgtag_words(l4_msgtag_t t) L4_NOTHROW</div><div class="ttdoc">Get the number of untyped words.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00427">types.h:427</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_gaa8193318cfb7b2c055682481ef316cde"><div class="ttname"><a href="group__l4__msgtag__api.html#gaa8193318cfb7b2c055682481ef316cde">l4_msgtag_flags</a></div><div class="ttdeci">unsigned l4_msgtag_flags(l4_msgtag_t t) L4_NOTHROW</div><div class="ttdoc">Get the flags.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00435">types.h:435</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_gga9ac8443c5696208bb0539dd659ea1c92adc55eb8da9eba43b3a014e5a5e0a9ac2"><div class="ttname"><a href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92adc55eb8da9eba43b3a014e5a5e0a9ac2">L4_PROTO_DEBUGGER</a></div><div class="ttdeci">@ L4_PROTO_DEBUGGER</div><div class="ttdoc">Protocol ID for the debugger.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00065">types.h:65</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_gaf01c5e1475efc4f33bc7d1985f7320d3"><div class="ttname"><a href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a></div><div class="ttdeci">#define L4_IPC_NEVER</div><div class="ttdoc">never timeout</div><div class="ttdef"><b>Definition</b> <a href="____timeout_8h_source.html#l00076">__timeout.h:76</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_ga89be8a86d11c1d532b636cc2df1330fb"><div class="ttname"><a href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a></div><div class="ttdeci">struct l4_utcb_t l4_utcb_t</div><div class="ttdoc">Opaque type for the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00056">utcb.h:56</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="al4_2sys_2ipc_8h_html"><div class="ttname"><a href="l4_2sys_2ipc_8h.html">ipc.h</a></div><div class="ttdoc">Common IPC interface.</div></div>
<div class="ttc" id="astructl4__msgtag__t_html"><div class="ttname"><a href="structl4__msgtag__t.html">l4_msgtag_t</a></div><div class="ttdoc">Message tag data structure.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00153">types.h:154</a></div></div>
<div class="ttc" id="aunionl4__fpage__t_html_a5db4caad82d0e823da85625f465634e0"><div class="ttname"><a href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">l4_fpage_t::raw</a></div><div class="ttdeci">l4_umword_t raw</div><div class="ttdoc">Raw value.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00078">__l4_fpage.h:78</a></div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html"><div class="ttname"><a href="unionl4__msg__regs__t.html">l4_msg_regs_t</a></div><div class="ttdoc">Encapsulation of the message-register block in the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00067">utcb.h:68</a></div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html_ad7d601b3b3808afaefe4c09d42de8b99"><div class="ttname"><a href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">l4_msg_regs_t::mr</a></div><div class="ttdeci">l4_umword_t mr[L4_UTCB_GENERIC_DATA_SIZE]</div><div class="ttdoc">Message registers.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00069">utcb.h:69</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__kernel_object_impl.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,156 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__ktrace-impl.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____ktrace-impl_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__ktrace-impl.h File Reference<div class="ingroups"><a class="el" href="group__l4__api.html">Base API</a> &raquo; <a class="el" href="group__api__calls__fiasco.html">Fiasco extensions</a></div></div></div>
</div><!--header-->
<div class="contents">
<p><a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> kernel event tracing.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="l4_2sys_2types_8h_source.html">l4/sys/types.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="kdebug_8h_source.html">l4/sys/kdebug.h</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for __ktrace-impl.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="____ktrace-impl_8h__incl.svg" width="730" height="550"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="____ktrace-impl_8h__dep__incl.svg" width="176" height="110"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="____ktrace-impl_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga11d469f93c5befca8389362282c5cb74" id="r_ga11d469f93c5befca8389362282c5cb74"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fiasco__trace__api.html#ga11d469f93c5befca8389362282c5cb74">fiasco_tbuf_log</a> (const char *text)</td></tr>
<tr class="memdesc:ga11d469f93c5befca8389362282c5cb74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new trace-buffer entry with describing &lt;text&gt;. <br /></td></tr>
<tr class="memitem:gac59d89f0e05763396f2fcda591ffe870" id="r_gac59d89f0e05763396f2fcda591ffe870"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fiasco__trace__api.html#gac59d89f0e05763396f2fcda591ffe870">fiasco_tbuf_log_3val</a> (const char *text, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> v1, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> v2, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> v3)</td></tr>
<tr class="memdesc:gac59d89f0e05763396f2fcda591ffe870"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new trace-buffer entry with describing &lt;text&gt; and three additional values. <br /></td></tr>
<tr class="memitem:ga2a50578d66208d4434fb1bd87cd2473e" id="r_ga2a50578d66208d4434fb1bd87cd2473e"><td class="memItemLeft" align="right" valign="top">
void&#160;</td><td class="memItemRight" valign="bottom"><b>fiasco_tbuf_clear</b> (void)</td></tr>
<tr class="memdesc:ga2a50578d66208d4434fb1bd87cd2473e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear trace-buffer. <br /></td></tr>
<tr class="memitem:gafcdf20a03560ad5e63462e59cd55d55c" id="r_gafcdf20a03560ad5e63462e59cd55d55c"><td class="memItemLeft" align="right" valign="top">
void&#160;</td><td class="memItemRight" valign="bottom"><b>fiasco_tbuf_dump</b> (void)</td></tr>
<tr class="memdesc:gafcdf20a03560ad5e63462e59cd55d55c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump trace-buffer to kernel console. <br /></td></tr>
<tr class="memitem:gacec61dde47b1cf788fcc51614bcc1a2f" id="r_gacec61dde47b1cf788fcc51614bcc1a2f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fiasco__trace__api.html#gacec61dde47b1cf788fcc51614bcc1a2f">fiasco_tbuf_log_binary</a> (const unsigned char *data)</td></tr>
<tr class="memdesc:gacec61dde47b1cf788fcc51614bcc1a2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new trace-buffer entry with binary data. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> kernel event tracing. </p>
<p class="definition">Definition in file <a class="el" href="____ktrace-impl_8h_source.html">__ktrace-impl.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="____ktrace-impl_8h.html">__ktrace-impl.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,8 @@
var ____ktrace_impl_8h =
[
[ "fiasco_tbuf_clear", "group__fiasco__trace__api.html#ga2a50578d66208d4434fb1bd87cd2473e", null ],
[ "fiasco_tbuf_dump", "group__fiasco__trace__api.html#gafcdf20a03560ad5e63462e59cd55d55c", null ],
[ "fiasco_tbuf_log", "group__fiasco__trace__api.html#ga11d469f93c5befca8389362282c5cb74", null ],
[ "fiasco_tbuf_log_3val", "group__fiasco__trace__api.html#gac59d89f0e05763396f2fcda591ffe870", null ],
[ "fiasco_tbuf_log_binary", "group__fiasco__trace__api.html#gacec61dde47b1cf788fcc51614bcc1a2f", null ]
];

View File

@@ -0,0 +1,5 @@
<map id="l4/sys/__ktrace&#45;impl.h" name="l4/sys/__ktrace&#45;impl.h">
<area shape="rect" id="Node000001" title="L4 kernel event tracing." alt="" coords="5,5,171,31"/>
<area shape="rect" id="Node000002" href="$ktrace_8h.html" title="L4 kernel event tracing." alt="" coords="29,79,147,104"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="91,44,91,79,85,79,85,44"/>
</map>

View File

@@ -0,0 +1 @@
c6023281685afdfa40ee5a7e105039d5

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: l4/sys/__ktrace&#45;impl.h Pages: 1 -->
<svg width="132pt" height="82pt"
viewBox="0.00 0.00 132.00 82.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 78)">
<title>l4/sys/__ktrace&#45;impl.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="L4 kernel event tracing.">
<polygon fill="#999999" stroke="#666666" points="124,-74 0,-74 0,-55 124,-55 124,-74"/>
<text text-anchor="middle" x="62" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__ktrace&#45;impl.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="ktrace_8h.html" target="_top" xlink:title="L4 kernel event tracing.">
<polygon fill="white" stroke="#666666" points="106,-19 18,-19 18,0 106,0 106,-19"/>
<text text-anchor="middle" x="62" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/ktrace.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M62,-44.66C62,-35.93 62,-25.99 62,-19.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="58.5,-44.75 62,-54.75 65.5,-44.75 58.5,-44.75"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1,37 @@
<map id="l4/sys/__ktrace&#45;impl.h" name="l4/sys/__ktrace&#45;impl.h">
<area shape="rect" id="Node000001" title="L4 kernel event tracing." alt="" coords="234,5,399,31"/>
<area shape="rect" id="Node000002" href="$l4_2sys_2types_8h.html" title="Common L4 ABI Data Types." alt="" coords="258,299,370,324"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="318,31,315,79,314,194,316,285,311,285,309,194,310,79,313,31"/>
<area shape="rect" id="Node000009" href="$kdebug_8h.html" title="Functionality for invoking the kernel debugger." alt="" coords="325,79,449,104"/>
<area shape="poly" id="edge13_Node000001_Node000009" title=" " alt="" coords="330,29,368,67,364,71,326,33"/>
<area shape="rect" id="Node000003" href="$l4_2sys_2l4int_8h.html" title="Fixed sized integer types, generic version." alt="" coords="5,445,111,471"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="258,319,196,326,129,336,71,352,50,362,36,374,30,387,31,402,44,432,39,435,25,403,25,386,32,370,47,358,69,347,128,331,195,320,257,314"/>
<area shape="rect" id="Node000004" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="412,445,544,471"/>
<area shape="poly" id="edge3_Node000002_Node000004" title=" " alt="" coords="325,323,355,357,394,395,449,436,446,440,391,399,351,360,321,326"/>
<area shape="rect" id="Node000006" href="$l4_2sys_2consts_8h.html" title="Common constants." alt="" coords="47,372,165,397"/>
<area shape="poly" id="edge5_Node000002_Node000006" title=" " alt="" coords="281,327,154,370,152,365,280,321"/>
<area shape="rect" id="Node000007" href="$____l4__fpage_8h_source.html" title=" " alt="" coords="405,372,551,397"/>
<area shape="poly" id="edge8_Node000002_Node000007" title=" " alt="" coords="341,322,440,364,438,369,339,326"/>
<area shape="rect" id="Node000008" href="$____timeout_8h_source.html" title=" " alt="" coords="189,372,330,397"/>
<area shape="poly" id="edge10_Node000002_Node000008" title=" " alt="" coords="307,326,279,363,274,360,303,323"/>
<area shape="rect" id="Node000005" title=" " alt="" coords="417,519,539,544"/>
<area shape="poly" id="edge4_Node000004_Node000005" title=" " alt="" coords="481,471,481,505,475,505,475,471"/>
<area shape="poly" id="edge7_Node000006_Node000003" title=" " alt="" coords="100,399,76,436,71,433,96,396"/>
<area shape="poly" id="edge6_Node000006_Node000004" title=" " alt="" coords="166,395,405,440,404,445,165,400"/>
<area shape="poly" id="edge9_Node000007_Node000004" title=" " alt="" coords="481,398,481,432,475,432,475,398"/>
<area shape="poly" id="edge11_Node000008_Node000003" title=" " alt="" coords="228,400,104,443,103,438,226,395"/>
<area shape="poly" id="edge12_Node000008_Node000004" title=" " alt="" coords="295,395,430,438,429,444,294,400"/>
<area shape="poly" id="edge14_Node000009_Node000004" title=" " alt="" coords="450,90,533,97,579,106,624,119,664,138,696,163,718,196,724,215,726,237,726,313,722,341,710,365,692,386,669,404,615,430,558,447,557,441,613,425,666,399,688,382,705,362,717,339,721,312,721,237,719,216,713,198,692,167,661,142,622,124,578,111,533,103,449,95"/>
<area shape="poly" id="edge15_Node000009_Node000006" title=" " alt="" coords="378,106,129,364,125,360,374,102"/>
<area shape="rect" id="Node000010" href="$l4_2sys_2ipc_8h.html" title="Common IPC interface." alt="" coords="359,152,453,177"/>
<area shape="poly" id="edge16_Node000009_Node000010" title=" " alt="" coords="393,104,402,138,397,140,388,105"/>
<area shape="poly" id="edge17_Node000010_Node000002" title=" " alt="" coords="392,180,368,200,346,227,331,256,322,286,317,284,326,255,341,224,364,196,388,176"/>
<area shape="rect" id="Node000011" href="$l4_2sys_2utcb_8h.html" title="UTCB definitions." alt="" coords="355,225,459,251"/>
<area shape="poly" id="edge18_Node000010_Node000011" title=" " alt="" coords="409,178,410,212,404,212,404,178"/>
<area shape="rect" id="Node000012" href="$err_8h.html" title="Error codes." alt="" coords="593,299,686,324"/>
<area shape="poly" id="edge22_Node000010_Node000012" title=" " alt="" coords="426,175,611,289,608,294,423,180"/>
<area shape="poly" id="edge19_Node000011_Node000002" title=" " alt="" coords="394,253,342,292,338,288,391,249"/>
<area shape="poly" id="edge21_Node000011_Node000003" title=" " alt="" coords="355,242,278,249,233,257,186,269,140,286,96,309,57,338,24,373,19,388,21,403,39,433,35,436,16,405,14,387,20,371,53,334,93,304,137,281,184,264,232,252,277,244,355,237"/>
<area shape="poly" id="edge20_Node000011_Node000004" title=" " alt="" coords="432,249,465,267,502,294,538,329,566,371,568,393,558,412,540,428,519,441,516,437,537,424,554,409,563,392,561,373,534,332,499,298,462,272,430,253"/>
<area shape="poly" id="edge23_Node000012_Node000004" title=" " alt="" coords="640,325,631,361,622,381,609,399,576,425,538,443,536,438,573,421,605,395,618,378,626,359,635,324"/>
</map>

View File

@@ -0,0 +1 @@
e31b7ef04c8d0cc8712439991777caeb

View File

@@ -0,0 +1,327 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: l4/sys/__ktrace&#45;impl.h Pages: 1 -->
<svg width="547pt" height="412pt"
viewBox="0.00 0.00 546.50 412.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 408)">
<title>l4/sys/__ktrace&#45;impl.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="L4 kernel event tracing.">
<polygon fill="#999999" stroke="#666666" points="295.5,-404 171.5,-404 171.5,-385 295.5,-385 295.5,-404"/>
<text text-anchor="middle" x="233.5" y="-392" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__ktrace&#45;impl.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="l4_2sys_2types_8h.html" target="_top" xlink:title="Common L4 ABI Data Types.">
<polygon fill="white" stroke="#666666" points="273.5,-184 189.5,-184 189.5,-165 273.5,-165 273.5,-184"/>
<text text-anchor="middle" x="231.5" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/types.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M232.75,-384.98C232.01,-376.03 230.92,-361.54 230.5,-349 228.6,-292.69 230.01,-226.05 230.91,-194.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="234.41,-194.27 231.21,-184.17 227.41,-194.06 234.41,-194.27"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="kdebug_8h.html" target="_top" xlink:title="Functionality for invoking the kernel debugger.">
<polygon fill="white" stroke="#666666" points="333,-349 240,-349 240,-330 333,-330 333,-349"/>
<text text-anchor="middle" x="286.5" y="-337" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/kdebug.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node9 -->
<g id="edge13_Node000001_Node000009" class="edge">
<title>Node1&#45;&gt;Node9</title>
<g id="a_edge13_Node000001_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M242.25,-384.75C249.97,-377.03 261.4,-365.6 270.72,-356.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="273.31,-358.64 277.91,-349.09 268.36,-353.69 273.31,-358.64"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="l4_2sys_2l4int_8h.html" target="_top" xlink:title="Fixed sized integer types, generic version.">
<polygon fill="white" stroke="#666666" points="79,-74 0,-74 0,-55 79,-55 79,-74"/>
<text text-anchor="middle" x="39.5" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/l4int.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M189.31,-170.68C134.18,-166.02 42.21,-154.55 21.5,-129 10.83,-115.83 18.49,-96.69 26.87,-82.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="29.95,-84.56 32.57,-74.29 24.12,-80.68 29.95,-84.56"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="compiler_8h.html" target="_top" xlink:title="L4 compiler related defines.">
<polygon fill="white" stroke="#666666" points="404,-74 305,-74 305,-55 404,-55 404,-74"/>
<text text-anchor="middle" x="354.5" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/compiler.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M238.6,-164.73C249.19,-151.94 270.04,-127.76 290.5,-110 303.41,-98.79 319.17,-87.81 331.81,-79.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="333.85,-82.41 340.39,-74.07 330.08,-76.51 333.85,-82.41"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="l4_2sys_2consts_8h.html" target="_top" xlink:title="Common constants.">
<polygon fill="white" stroke="#666666" points="120,-129 31,-129 31,-110 120,-110 120,-129"/>
<text text-anchor="middle" x="75.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/consts.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M206.44,-164.98C180.47,-156.16 139.69,-142.31 110.54,-132.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="111.35,-128.99 100.76,-129.08 109.1,-135.61 111.35,-128.99"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="____l4__fpage_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="409.5,-129 299.5,-129 299.5,-110 409.5,-110 409.5,-129"/>
<text text-anchor="middle" x="354.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__l4_fpage.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge8_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge8_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M251.26,-164.98C271.23,-156.38 302.3,-142.99 325.15,-133.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="326.58,-136.34 334.38,-129.17 323.81,-129.91 326.58,-136.34"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="____timeout_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="243.5,-129 137.5,-129 137.5,-110 243.5,-110 243.5,-129"/>
<text text-anchor="middle" x="190.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__timeout.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge10_Node000002_Node000008" class="edge">
<title>Node2&#45;&gt;Node8</title>
<g id="a_edge10_Node000002_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M224.73,-164.75C218.94,-157.26 210.44,-146.28 203.36,-137.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="206.03,-134.86 197.14,-129.09 200.49,-139.14 206.03,-134.86"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="400.5,-19 308.5,-19 308.5,0 400.5,0 400.5,-19"/>
<text text-anchor="middle" x="354.5" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/linkage.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node5 -->
<g id="edge4_Node000004_Node000005" class="edge">
<title>Node4&#45;&gt;Node5</title>
<g id="a_edge4_Node000004_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M354.5,-54.75C354.5,-47.8 354.5,-37.85 354.5,-29.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="358,-29.09 354.5,-19.09 351,-29.09 358,-29.09"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node3 -->
<g id="edge7_Node000006_Node000003" class="edge">
<title>Node6&#45;&gt;Node3</title>
<g id="a_edge7_Node000006_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M69.56,-109.75C64.52,-102.34 57.16,-91.5 50.99,-82.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="53.85,-80.39 45.33,-74.09 48.06,-84.33 53.85,-80.39"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge6_Node000006_Node000004" class="edge">
<title>Node6&#45;&gt;Node4</title>
<g id="a_edge6_Node000006_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.02,-110.04C168.77,-100.78 246.99,-85.92 299.53,-75.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="300.51,-79.32 309.68,-74.01 299.2,-72.44 300.51,-79.32"/>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node4 -->
<g id="edge9_Node000007_Node000004" class="edge">
<title>Node7&#45;&gt;Node4</title>
<g id="a_edge9_Node000007_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M354.5,-109.75C354.5,-102.8 354.5,-92.85 354.5,-84.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="358,-84.09 354.5,-74.09 351,-84.09 358,-84.09"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node3 -->
<g id="edge11_Node000008_Node000003" class="edge">
<title>Node8&#45;&gt;Node3</title>
<g id="a_edge11_Node000008_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M166.24,-109.98C141.18,-101.19 101.87,-87.39 73.67,-77.49"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="74.8,-74.18 64.2,-74.17 72.48,-80.78 74.8,-74.18"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node4 -->
<g id="edge12_Node000008_Node000004" class="edge">
<title>Node8&#45;&gt;Node4</title>
<g id="a_edge12_Node000008_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M216.85,-109.98C244.26,-101.13 287.39,-87.19 318.06,-77.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="319.5,-80.49 327.94,-74.08 317.35,-73.83 319.5,-80.49"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge14_Node000009_Node000004" class="edge">
<title>Node9&#45;&gt;Node4</title>
<g id="a_edge14_Node000009_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M333.01,-338.54C405.83,-335.88 538.5,-318.91 538.5,-230.5 538.5,-230.5 538.5,-230.5 538.5,-173.5 538.5,-114.74 467.85,-87.34 414.11,-74.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="414.81,-71.56 404.29,-72.85 413.32,-78.4 414.81,-71.56"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node6 -->
<g id="edge15_Node000009_Node000006" class="edge">
<title>Node9&#45;&gt;Node6</title>
<g id="a_edge15_Node000009_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M278.23,-329.95C246.59,-297.27 132.93,-179.83 91.1,-136.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="93.41,-133.98 83.94,-129.22 88.38,-138.84 93.41,-133.98"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="l4_2sys_2ipc_8h.html" target="_top" xlink:title="Common IPC interface.">
<polygon fill="white" stroke="#666666" points="336,-294 265,-294 265,-275 336,-275 336,-294"/>
<text text-anchor="middle" x="300.5" y="-282" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/ipc.h</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node10 -->
<g id="edge16_Node000009_Node000010" class="edge">
<title>Node9&#45;&gt;Node10</title>
<g id="a_edge16_Node000009_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M288.81,-329.75C290.67,-322.72 293.34,-312.62 295.65,-303.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="299.06,-304.65 298.23,-294.09 292.29,-302.86 299.06,-304.65"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node2 -->
<g id="edge17_Node000010_Node000002" class="edge">
<title>Node10&#45;&gt;Node2</title>
<g id="a_edge17_Node000010_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M288.53,-274.86C277.99,-266.69 262.88,-253.54 253.5,-239 244.6,-225.21 238.84,-207.41 235.46,-194.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="238.84,-193.24 233.15,-184.3 232.02,-194.83 238.84,-193.24"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="l4_2sys_2utcb_8h.html" target="_top" xlink:title="UTCB definitions.">
<polygon fill="white" stroke="#666666" points="340.5,-239 262.5,-239 262.5,-220 340.5,-220 340.5,-239"/>
<text text-anchor="middle" x="301.5" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/utcb.h</text>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node11 -->
<g id="edge18_Node000010_Node000011" class="edge">
<title>Node10&#45;&gt;Node11</title>
<g id="a_edge18_Node000010_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M300.67,-274.75C300.8,-267.8 300.98,-257.85 301.15,-249.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="304.65,-249.15 301.34,-239.09 297.65,-249.02 304.65,-249.15"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="err_8h.html" target="_top" xlink:title="Error codes.">
<polygon fill="white" stroke="#666666" points="510.5,-184 440.5,-184 440.5,-165 510.5,-165 510.5,-184"/>
<text text-anchor="middle" x="475.5" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/err.h</text>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node12 -->
<g id="edge22_Node000010_Node000012" class="edge">
<title>Node10&#45;&gt;Node12</title>
<g id="a_edge22_Node000010_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M314.53,-274.84C344.73,-256.2 416.17,-212.11 452.87,-189.46"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="454.74,-192.43 461.41,-184.2 451.06,-186.47 454.74,-192.43"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node2 -->
<g id="edge19_Node000011_Node000002" class="edge">
<title>Node11&#45;&gt;Node2</title>
<g id="a_edge19_Node000011_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M290.25,-219.98C279.7,-212 263.7,-199.88 251.06,-190.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="253.04,-187.42 242.95,-184.17 248.81,-193 253.04,-187.42"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node3 -->
<g id="edge21_Node000011_Node000003" class="edge">
<title>Node11&#45;&gt;Node3</title>
<g id="a_edge21_Node000011_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M262.39,-228.32C197.77,-225.64 70.12,-209.78 12.5,-129 2.13,-114.46 12.99,-95.33 23.87,-81.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="26.52,-84.16 30.46,-74.33 21.25,-79.56 26.52,-84.16"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node4 -->
<g id="edge20_Node000011_Node000004" class="edge">
<title>Node11&#45;&gt;Node4</title>
<g id="a_edge20_Node000011_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M319.17,-219.88C346.48,-205.45 397.91,-173.53 418.5,-129 428.23,-107.96 405.28,-90.01 384.21,-78.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="385.6,-75.4 375.1,-74.01 382.44,-81.65 385.6,-75.4"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node4 -->
<g id="edge23_Node000012_Node000004" class="edge">
<title>Node12&#45;&gt;Node4</title>
<g id="a_edge23_Node000012_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M474.31,-164.58C472.09,-151.16 466.14,-125.68 451.5,-110 437.35,-94.85 417.04,-84.44 398.66,-77.52"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="399.58,-74.13 388.98,-74.12 397.26,-80.74 399.58,-74.13"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,188 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__ktrace-impl.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____ktrace-impl_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__ktrace-impl.h</div></div>
</div><!--header-->
<div class="contents">
<a href="____ktrace-impl_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Björn Döbel &lt;doebel@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * Torsten Frenzel &lt;frenzel@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> *</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> */</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2types_8h.html">l4/sys/types.h</a>&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;<a class="code" href="kdebug_8h.html">l4/sys/kdebug.h</a>&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment">/*****************************************************************************</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"> *** Implementation</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> *****************************************************************************/</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="foldopen" id="foldopen00024" data-start="{" data-end="}">
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="group__fiasco__trace__api.html#ga11d469f93c5befca8389362282c5cb74"> 24</a></span><a class="code hl_function" href="group__fiasco__trace__api.html#ga11d469f93c5befca8389362282c5cb74">fiasco_tbuf_log</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *text)</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span>{</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keyword">enum</span> { TBUF_LOG = L4_KDEBUG_GROUP_TRACE + 0x01 };</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__ipc__err__api.html#ga05c11e3e10b6c2aa941396ac2018899f">l4_error</a>(<a class="code hl_function" href="kdebug_8h.html#ab2ebe85a62a8d8b933eef79a3ca418d7">__kdebug_text</a>(TBUF_LOG, text, __builtin_strlen(text)));</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>}</div>
</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="foldopen" id="foldopen00031" data-start="{" data-end="}">
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="group__fiasco__trace__api.html#gac59d89f0e05763396f2fcda591ffe870"> 31</a></span><a class="code hl_function" href="group__fiasco__trace__api.html#gac59d89f0e05763396f2fcda591ffe870">fiasco_tbuf_log_3val</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *text, <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> v1, <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> v2,</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> v3)</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>{</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">enum</span> { TBUF_LOG_3VAL = L4_KDEBUG_GROUP_TRACE + 0x04 };</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__ipc__err__api.html#ga05c11e3e10b6c2aa941396ac2018899f">l4_error</a>(<a class="code hl_function" href="kdebug_8h.html#a05f504b0c16b751c78927a464615a746">__kdebug_3_text</a>(TBUF_LOG_3VAL, text,</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> __builtin_strlen(text), v1, v2, v3));</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>}</div>
</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> </div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00040" data-start="{" data-end="}">
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="group__fiasco__trace__api.html#ga2a50578d66208d4434fb1bd87cd2473e"> 40</a></span><a class="code hl_function" href="group__fiasco__trace__api.html#ga2a50578d66208d4434fb1bd87cd2473e">fiasco_tbuf_clear</a>(<span class="keywordtype">void</span>)</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span>{</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">enum</span> { TBUF_CLEAR = L4_KDEBUG_GROUP_TRACE + 0x02 };</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <a class="code hl_function" href="kdebug_8h.html#afe49ad144e638cf6f2854f3a0403c7da">__kdebug_op</a>(TBUF_CLEAR);</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span>}</div>
</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00047" data-start="{" data-end="}">
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="group__fiasco__trace__api.html#gafcdf20a03560ad5e63462e59cd55d55c"> 47</a></span><a class="code hl_function" href="group__fiasco__trace__api.html#gafcdf20a03560ad5e63462e59cd55d55c">fiasco_tbuf_dump</a>(<span class="keywordtype">void</span>)</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span>{</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">enum</span> { TBUF_DUMP = L4_KDEBUG_GROUP_TRACE + 0x03 };</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <a class="code hl_function" href="kdebug_8h.html#afe49ad144e638cf6f2854f3a0403c7da">__kdebug_op</a>(TBUF_DUMP);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span>}</div>
</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="foldopen" id="foldopen00054" data-start="{" data-end="}">
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="group__fiasco__trace__api.html#gacec61dde47b1cf788fcc51614bcc1a2f"> 54</a></span><a class="code hl_function" href="group__fiasco__trace__api.html#gacec61dde47b1cf788fcc51614bcc1a2f">fiasco_tbuf_log_binary</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data)</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span>{</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keyword">enum</span> { TBUF_LOG_BIN = L4_KDEBUG_GROUP_TRACE + 0x08 };</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__ipc__err__api.html#ga05c11e3e10b6c2aa941396ac2018899f">l4_error</a>(<a class="code hl_function" href="kdebug_8h.html#ab2ebe85a62a8d8b933eef79a3ca418d7">__kdebug_text</a>(TBUF_LOG_BIN, (<span class="keyword">const</span> <span class="keywordtype">char</span> *)data, 24));</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>}</div>
</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="ttc" id="agroup__fiasco__trace__api_html_ga11d469f93c5befca8389362282c5cb74"><div class="ttname"><a href="group__fiasco__trace__api.html#ga11d469f93c5befca8389362282c5cb74">fiasco_tbuf_log</a></div><div class="ttdeci">l4_umword_t fiasco_tbuf_log(const char *text)</div><div class="ttdoc">Create new trace-buffer entry with describing &lt;text&gt;.</div><div class="ttdef"><b>Definition</b> <a href="#l00024">__ktrace-impl.h:24</a></div></div>
<div class="ttc" id="agroup__fiasco__trace__api_html_ga2a50578d66208d4434fb1bd87cd2473e"><div class="ttname"><a href="group__fiasco__trace__api.html#ga2a50578d66208d4434fb1bd87cd2473e">fiasco_tbuf_clear</a></div><div class="ttdeci">void fiasco_tbuf_clear(void)</div><div class="ttdoc">Clear trace-buffer.</div><div class="ttdef"><b>Definition</b> <a href="#l00040">__ktrace-impl.h:40</a></div></div>
<div class="ttc" id="agroup__fiasco__trace__api_html_gac59d89f0e05763396f2fcda591ffe870"><div class="ttname"><a href="group__fiasco__trace__api.html#gac59d89f0e05763396f2fcda591ffe870">fiasco_tbuf_log_3val</a></div><div class="ttdeci">l4_umword_t fiasco_tbuf_log_3val(const char *text, l4_umword_t v1, l4_umword_t v2, l4_umword_t v3)</div><div class="ttdoc">Create new trace-buffer entry with describing &lt;text&gt; and three additional values.</div><div class="ttdef"><b>Definition</b> <a href="#l00031">__ktrace-impl.h:31</a></div></div>
<div class="ttc" id="agroup__fiasco__trace__api_html_gacec61dde47b1cf788fcc51614bcc1a2f"><div class="ttname"><a href="group__fiasco__trace__api.html#gacec61dde47b1cf788fcc51614bcc1a2f">fiasco_tbuf_log_binary</a></div><div class="ttdeci">l4_umword_t fiasco_tbuf_log_binary(const unsigned char *data)</div><div class="ttdoc">Create new trace-buffer entry with binary data.</div><div class="ttdef"><b>Definition</b> <a href="#l00054">__ktrace-impl.h:54</a></div></div>
<div class="ttc" id="agroup__fiasco__trace__api_html_gafcdf20a03560ad5e63462e59cd55d55c"><div class="ttname"><a href="group__fiasco__trace__api.html#gafcdf20a03560ad5e63462e59cd55d55c">fiasco_tbuf_dump</a></div><div class="ttdeci">void fiasco_tbuf_dump(void)</div><div class="ttdoc">Dump trace-buffer to kernel console.</div><div class="ttdef"><b>Definition</b> <a href="#l00047">__ktrace-impl.h:47</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__ipc__err__api_html_ga05c11e3e10b6c2aa941396ac2018899f"><div class="ttname"><a href="group__l4__ipc__err__api.html#ga05c11e3e10b6c2aa941396ac2018899f">l4_error</a></div><div class="ttdeci">long l4_error(l4_msgtag_t tag) L4_NOTHROW</div><div class="ttdoc">Get IPC error code if any or message tag label otherwise for an IPC call.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2ipc_8h_source.html#l00646">ipc.h:646</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="akdebug_8h_html"><div class="ttname"><a href="kdebug_8h.html">kdebug.h</a></div><div class="ttdoc">Functionality for invoking the kernel debugger.</div></div>
<div class="ttc" id="akdebug_8h_html_a05f504b0c16b751c78927a464615a746"><div class="ttname"><a href="kdebug_8h.html#a05f504b0c16b751c78927a464615a746">__kdebug_3_text</a></div><div class="ttdeci">l4_msgtag_t __kdebug_3_text(unsigned op, char const *text, unsigned len, l4_umword_t v1, l4_umword_t v2, l4_umword_t v3) L4_NOTHROW</div><div class="ttdoc">Invoke a text output operation with 3 additional machine word arguments on the base debugger capabili...</div><div class="ttdef"><b>Definition</b> <a href="kdebug_8h_source.html#l00139">kdebug.h:139</a></div></div>
<div class="ttc" id="akdebug_8h_html_ab2ebe85a62a8d8b933eef79a3ca418d7"><div class="ttname"><a href="kdebug_8h.html#ab2ebe85a62a8d8b933eef79a3ca418d7">__kdebug_text</a></div><div class="ttdeci">l4_msgtag_t __kdebug_text(unsigned op, char const *text, unsigned len) L4_NOTHROW</div><div class="ttdoc">Invoke a text output operation on the base debugger capability.</div><div class="ttdef"><b>Definition</b> <a href="kdebug_8h_source.html#l00098">kdebug.h:98</a></div></div>
<div class="ttc" id="akdebug_8h_html_afe49ad144e638cf6f2854f3a0403c7da"><div class="ttname"><a href="kdebug_8h.html#afe49ad144e638cf6f2854f3a0403c7da">__kdebug_op</a></div><div class="ttdeci">l4_msgtag_t __kdebug_op(unsigned op) L4_NOTHROW</div><div class="ttdoc">Invoke a nullary operation on the base debugger capability.</div><div class="ttdef"><b>Definition</b> <a href="kdebug_8h_source.html#l00068">kdebug.h:68</a></div></div>
<div class="ttc" id="al4_2sys_2types_8h_html"><div class="ttname"><a href="l4_2sys_2types_8h.html">types.h</a></div><div class="ttdoc">Common L4 ABI Data Types.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="____ktrace-impl_8h.html">__ktrace-impl.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,606 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__l4_fpage.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____l4__fpage_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__l4_fpage.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * Björn Döbel &lt;doebel@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * Torsten Frenzel &lt;frenzel@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> *</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="comment"> */</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;<a class="code" href="compiler_8h.html">l4/sys/compiler.h</a>&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span></div>
<div class="foldopen" id="foldopen00048" data-start="{" data-end="};">
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gafe2c2fe155ab50ff0f3cf3b3a2c6f912"> 48</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__fpage__api.html#gafe2c2fe155ab50ff0f3cf3b3a2c6f912">L4_fpage_consts</a></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>{</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f"> 50</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f">L4_FPAGE_RIGHTS_SHIFT</a> = 0, </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a52ce37be44fed1c912b4cbf3d6c263cb"> 51</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a52ce37be44fed1c912b4cbf3d6c263cb">L4_FPAGE_TYPE_SHIFT</a> = 4, </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912afd349028410be3c104040d52ff8e4b0c"> 52</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912afd349028410be3c104040d52ff8e4b0c">L4_FPAGE_SIZE_SHIFT</a> = 6, </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5"> 53</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a> = 12, </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aaf66cb52092d494ab57290d1eaf681b7"> 55</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aaf66cb52092d494ab57290d1eaf681b7">L4_FPAGE_RIGHTS_BITS</a> = 4, </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a96b503ed985670a75840e6838530f459"> 56</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a96b503ed985670a75840e6838530f459">L4_FPAGE_TYPE_BITS</a> = 2, </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aee14168391d1c2ef49e074778f0e11e5"> 57</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aee14168391d1c2ef49e074778f0e11e5">L4_FPAGE_SIZE_BITS</a> = 6, </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ac412abb32e9c295bcde26f99636be449"> 58</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ac412abb32e9c295bcde26f99636be449">L4_FPAGE_ADDR_BITS</a> = <a class="code hl_define" href="group__l4__basic__types.html#ga994a270c5c1613a5e235e212bc6a5af9">L4_MWORD_BITS</a> - <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a>, </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e"> 61</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e">L4_FPAGE_RIGHTS_MASK</a> = ((1UL &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aaf66cb52092d494ab57290d1eaf681b7">L4_FPAGE_RIGHTS_BITS</a>) - 1)</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f">L4_FPAGE_RIGHTS_SHIFT</a>,</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> L4_FPAGE_TYPE_MASK = ((1UL &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a96b503ed985670a75840e6838530f459">L4_FPAGE_TYPE_BITS</a>) - 1)</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a52ce37be44fed1c912b4cbf3d6c263cb">L4_FPAGE_TYPE_SHIFT</a>,</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> L4_FPAGE_SIZE_MASK = ((1UL &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aee14168391d1c2ef49e074778f0e11e5">L4_FPAGE_SIZE_BITS</a>) - 1)</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912afd349028410be3c104040d52ff8e4b0c">L4_FPAGE_SIZE_SHIFT</a>,</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> L4_FPAGE_ADDR_MASK = ~0UL &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a>,</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ab5310ae4b740e308cf0c8ef97ba99760"> 69</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ab5310ae4b740e308cf0c8ef97ba99760">L4_FPAGE_RIGHTS_ALL</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e">L4_FPAGE_RIGHTS_MASK</a>,</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span>};</div>
</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span></div>
<div class="foldopen" id="foldopen00076" data-start="{" data-end="};">
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="unionl4__fpage__t.html"> 76</a></span><span class="keyword">typedef</span> <span class="keyword">union </span>{</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="unionl4__fpage__t.html#aa63e8d3b5f8f5d4bd6f634160a08a68a"> 77</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="unionl4__fpage__t.html#aa63e8d3b5f8f5d4bd6f634160a08a68a">fpage</a>; </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0"> 78</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">raw</a>; </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span>} <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a>;</div>
</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span><span class="keyword">enum</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>{</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggacc6c0122f495fff4979d66cd56351eceac173c35abf62068a3720e4a9dc257f17"> 92</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacc6c0122f495fff4979d66cd56351eceac173c35abf62068a3720e4a9dc257f17">L4_WHOLE_ADDRESS_SPACE</a> = 63</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span>};</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span></div>
<div class="foldopen" id="foldopen00099" data-start="{" data-end="};">
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="structl4__snd__fpage__t.html"> 99</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"><a class="line" href="structl4__snd__fpage__t.html#af6ab00233d8628dd13af14d4db9a8189"> 100</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__snd__fpage__t.html#af6ab00233d8628dd13af14d4db9a8189">snd_base</a>; </div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="structl4__snd__fpage__t.html#adddf1207c4cafb5754c32fcfefeae05a"> 101</a></span> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> <a class="code hl_variable" href="structl4__snd__fpage__t.html#adddf1207c4cafb5754c32fcfefeae05a">fpage</a>; </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span>} <a class="code hl_struct" href="structl4__snd__fpage__t.html">l4_snd_fpage_t</a>;</div>
</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span></div>
<div class="foldopen" id="foldopen00118" data-start="{" data-end="};">
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga5d4f4972d58f72b2a33b6c139b5950a8"> 118</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__fpage__api.html#ga5d4f4972d58f72b2a33b6c139b5950a8">L4_fpage_rights</a></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span>{</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a27bc89a69305a219b6a7a9595340f381"> 120</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a27bc89a69305a219b6a7a9595340f381">L4_FPAGE_X</a> = 1, </div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8af8a8c87ad74735a7db0eae5e656e4a17"> 121</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8af8a8c87ad74735a7db0eae5e656e4a17">L4_FPAGE_W</a> = 2, </div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a555326b01b4fe72916157bdc90307691"> 122</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a555326b01b4fe72916157bdc90307691">L4_FPAGE_RO</a> = 4, </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8aa9a87bc5e91b05451bfd72b5278b7d1b"> 123</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8aa9a87bc5e91b05451bfd72b5278b7d1b">L4_FPAGE_RW</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a555326b01b4fe72916157bdc90307691">L4_FPAGE_RO</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8af8a8c87ad74735a7db0eae5e656e4a17">L4_FPAGE_W</a>, </div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a4acdf2dd52149127096ffc4770615d46"> 124</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a4acdf2dd52149127096ffc4770615d46">L4_FPAGE_RX</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a555326b01b4fe72916157bdc90307691">L4_FPAGE_RO</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a27bc89a69305a219b6a7a9595340f381">L4_FPAGE_X</a>, </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a371a1fb2c09f17c7eb32ac296b87cf38"> 125</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a371a1fb2c09f17c7eb32ac296b87cf38">L4_FPAGE_RWX</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8aa9a87bc5e91b05451bfd72b5278b7d1b">L4_FPAGE_RW</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a27bc89a69305a219b6a7a9595340f381">L4_FPAGE_X</a>, </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span>};</div>
</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span></div>
<div class="foldopen" id="foldopen00148" data-start="{" data-end="};">
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gaee60789a48cab2782f5a368237591b39"> 148</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__fpage__api.html#gaee60789a48cab2782f5a368237591b39">L4_cap_fpage_rights</a></div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span>{</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a561054fb4021ff4a22ab1881c7a7de5a"> 157</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a561054fb4021ff4a22ab1881c7a7de5a">L4_CAP_FPAGE_W</a> = 0x1,</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39acb2b2e95f6be245f64937ac48a068066"> 169</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39acb2b2e95f6be245f64937ac48a068066">L4_CAP_FPAGE_S</a> = 0x2,</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a1cdb82ad70ed42f63968df2f8ce84bf5"> 175</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a1cdb82ad70ed42f63968df2f8ce84bf5">L4_CAP_FPAGE_R</a> = 0x4,</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a11c1416f531fdb44d1d02c3de2fcb3e8"> 176</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a11c1416f531fdb44d1d02c3de2fcb3e8">L4_CAP_FPAGE_RO</a> = 0x4, </div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39ac27389ac207e3f0bef4e25e698fd7697"> 185</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39ac27389ac207e3f0bef4e25e698fd7697">L4_CAP_FPAGE_D</a> = 0x8,</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a3cca0a716e3eb64c770567932460203f"> 192</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a3cca0a716e3eb64c770567932460203f">L4_CAP_FPAGE_RW</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a1cdb82ad70ed42f63968df2f8ce84bf5">L4_CAP_FPAGE_R</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a561054fb4021ff4a22ab1881c7a7de5a">L4_CAP_FPAGE_W</a>,</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a62e94e726e5a938876de01d9e4ba0587"> 199</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a62e94e726e5a938876de01d9e4ba0587">L4_CAP_FPAGE_RS</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a1cdb82ad70ed42f63968df2f8ce84bf5">L4_CAP_FPAGE_R</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39acb2b2e95f6be245f64937ac48a068066">L4_CAP_FPAGE_S</a>,</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020"> 206</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020">L4_CAP_FPAGE_RWS</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a3cca0a716e3eb64c770567932460203f">L4_CAP_FPAGE_RW</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39acb2b2e95f6be245f64937ac48a068066">L4_CAP_FPAGE_S</a>,</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a7442df84ed315158c6ea15368d1abff1"> 212</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a7442df84ed315158c6ea15368d1abff1">L4_CAP_FPAGE_RWSD</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020">L4_CAP_FPAGE_RWS</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39ac27389ac207e3f0bef4e25e698fd7697">L4_CAP_FPAGE_D</a>,</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39aeb102b9ca78285e5c7569bf5bbc77097"> 218</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39aeb102b9ca78285e5c7569bf5bbc77097">L4_CAP_FPAGE_RWD</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a3cca0a716e3eb64c770567932460203f">L4_CAP_FPAGE_RW</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39ac27389ac207e3f0bef4e25e698fd7697">L4_CAP_FPAGE_D</a>,</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a96e848408fc6b8eaca8114a26b128916"> 224</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a96e848408fc6b8eaca8114a26b128916">L4_CAP_FPAGE_RSD</a> = <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a62e94e726e5a938876de01d9e4ba0587">L4_CAP_FPAGE_RS</a> | <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39ac27389ac207e3f0bef4e25e698fd7697">L4_CAP_FPAGE_D</a>,</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span>};</div>
</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span></div>
<div class="foldopen" id="foldopen00230" data-start="{" data-end="};">
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gacbb9260e4a3b77be0fc14df24b838d52"> 230</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__fpage__api.html#gacbb9260e4a3b77be0fc14df24b838d52">L4_fpage_type</a></div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span>{</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52ae0c8f334d7955ee515bb7dd22251ac60"> 232</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52ae0c8f334d7955ee515bb7dd22251ac60">L4_FPAGE_SPECIAL</a> = 0, </div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a525dbaaf5f4c521dcd3dbeee3f687487"> 235</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a525dbaaf5f4c521dcd3dbeee3f687487">L4_FPAGE_MEMORY</a> = 1, </div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a52707a541db3c03794f0f445befd23fe"> 236</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a52707a541db3c03794f0f445befd23fe">L4_FPAGE_IO</a> = 2, </div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52aaab489a70d369e24131b1357dec9f037"> 237</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52aaab489a70d369e24131b1357dec9f037">L4_FPAGE_OBJ</a> = 3, </div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span>};</div>
</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span></div>
<div class="foldopen" id="foldopen00243" data-start="{" data-end="};">
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga684a8de4337d3522078bec37d96d2098"> 243</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__fpage__api.html#ga684a8de4337d3522078bec37d96d2098">L4_fpage_control</a></div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span>{</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a90f1acbd6fc58aed6c345d4886bde997"> 247</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a90f1acbd6fc58aed6c345d4886bde997">L4_FPAGE_CONTROL_OFFSET_SHIFT</a> = 12,</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a43fd079bdf2475e28052c9a804687400"> 250</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a43fd079bdf2475e28052c9a804687400">L4_FPAGE_CONTROL_MASK</a> = ~0UL &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a90f1acbd6fc58aed6c345d4886bde997">L4_FPAGE_CONTROL_OFFSET_SHIFT</a>,</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span>};</div>
</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span></div>
<div class="foldopen" id="foldopen00262" data-start="{" data-end="};">
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#gad142e99a533af52d358f9940fa00966a"> 262</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__msgitem__api.html#gad142e99a533af52d358f9940fa00966a">L4_obj_fpage_ctl</a></div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span>{</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aae99eaaf78b0f1e2c47aa06bb3ecf75bb"> 264</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aae99eaaf78b0f1e2c47aa06bb3ecf75bb">L4_FPAGE_C_REF_CNT</a> = 0x00, </div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa0155a27c030c4f1575bd4ff20a9f6187"> 265</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa0155a27c030c4f1575bd4ff20a9f6187">L4_FPAGE_C_NO_REF_CNT</a> = 0x10, </div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> </div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa6d6eba5513250e9861fe748df4fe0fa5"> 267</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa6d6eba5513250e9861fe748df4fe0fa5">L4_FPAGE_C_OBJ_RIGHT1</a> = 0x20, </div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa8834856d49119629d22e70cddee41f3e"> 268</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa8834856d49119629d22e70cddee41f3e">L4_FPAGE_C_OBJ_RIGHT2</a> = 0x40, </div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa954f8c7a95fbab8ef05831ed866ebe0a"> 269</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa954f8c7a95fbab8ef05831ed866ebe0a">L4_FPAGE_C_OBJ_RIGHT3</a> = 0x80, </div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aae690696fb5b770b579e15348503b32ba"> 270</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aae690696fb5b770b579e15348503b32ba">L4_FPAGE_C_OBJ_RIGHTS</a> = 0xe0, </div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span></div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa8436980325edd409d8aa71e1ef567bc4"> 277</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa8436980325edd409d8aa71e1ef567bc4">L4_FPAGE_C_IPCGATE_SVR</a> = <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa6d6eba5513250e9861fe748df4fe0fa5">L4_FPAGE_C_OBJ_RIGHT1</a></div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span>};</div>
</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> </div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span></div>
<div class="foldopen" id="foldopen00291" data-start="{" data-end="};">
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ga547729eef68ea9c0e085c34a66e133fa"> 291</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__msgitem__api.html#ga547729eef68ea9c0e085c34a66e133fa">l4_fpage_cacheability_opt_t</a></div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span>{</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa020b367a4fd713478c5728e30c27be9b"> 295</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa020b367a4fd713478c5728e30c27be9b">L4_FPAGE_CACHE_OPT</a> = 0x1,</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span></div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa0107b2bd5876b8a3bb3ffb738a22a5aa"> 299</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa0107b2bd5876b8a3bb3ffb738a22a5aa">L4_FPAGE_CACHEABLE</a> = 0x3,</div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span></div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa63cb59df38cd7648ee0163b777cdf84f"> 303</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa63cb59df38cd7648ee0163b777cdf84f">L4_FPAGE_BUFFERABLE</a> = 0x5,</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span></div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa5ee8ca3328cbd7da944ffa573baf9d97"> 307</a></span> <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa5ee8ca3328cbd7da944ffa573baf9d97">L4_FPAGE_UNCACHEABLE</a> = 0x1</div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span>};</div>
</div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> </div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span></div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span><span class="keyword">enum</span></div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span>{</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga55e7ad6ea6bbd07efe2d7f9501bb44e3a56842adf0290f2327a557c91dc590fde"> 319</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga55e7ad6ea6bbd07efe2d7f9501bb44e3a56842adf0290f2327a557c91dc590fde">L4_WHOLE_IOADDRESS_SPACE</a> = 16,</div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span></div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gga55e7ad6ea6bbd07efe2d7f9501bb44e3a96adafdf05a382f5d9e9882630098753"> 322</a></span> <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga55e7ad6ea6bbd07efe2d7f9501bb44e3a96adafdf05a382f5d9e9882630098753">L4_IOPORT_MAX</a> = (1L &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga55e7ad6ea6bbd07efe2d7f9501bb44e3a56842adf0290f2327a557c91dc590fde">L4_WHOLE_IOADDRESS_SPACE</a>)</div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span>};</div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span> </div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span> </div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span></div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span><a class="code hl_function" href="group__l4__fpage__api.html#ga8d185d1e2ec513f1b3e8a5634469b756">l4_fpage</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> address, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span></div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span><a class="code hl_function" href="group__l4__fpage__api.html#ga571572d1f1f3895b06562aa6a818bf12">l4_fpage_all</a>(<span class="keywordtype">void</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span></div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"> 365</span><a class="code hl_function" href="group__l4__fpage__api.html#gae582748fc4a5aa86207a840e3488819a">l4_fpage_invalid</a>(<span class="keywordtype">void</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> </div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span></div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span><a class="code hl_function" href="group__l4__fpage__api.html#gab918a25f8a923b7a68158e737d4801a8">l4_iofpage</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> port, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> </div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span></div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"> 394</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"> 395</span><a class="code hl_function" href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54">l4_obj_fpage</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> obj, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"> 396</span></div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span><a class="code hl_function" href="group__l4__fpage__api.html#gabc522b5b530c73bfd45e3c34956bac94">l4_is_fpage_writable</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> fp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> </div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span></div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span></div>
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"> 456</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span><a class="code hl_function" href="group__l4__msgitem__api.html#ga1ce1321fd25614e9af43a35819540ba7">l4_map_control</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> spot, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> cache, <span class="keywordtype">unsigned</span> grant) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span></div>
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"> 472</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span><a class="code hl_function" href="group__l4__msgitem__api.html#ga6c9056957ac92e458eaabcbf3223ce6f">l4_map_obj_control</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> spot, <span class="keywordtype">unsigned</span> grant) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"> 474</span></div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span><a class="code hl_function" href="group__l4__fpage__api.html#gaad7579a5ab36d5cbda48bbb4fc365cd7">l4_fpage_rights</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"> 485</span></div>
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"> 494</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"> 495</span><a class="code hl_function" href="group__l4__fpage__api.html#ga7616290ff22f4145650aa664d012f833">l4_fpage_type</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00496" name="l00496"></a><span class="lineno"> 496</span></div>
<div class="line"><a id="l00507" name="l00507"></a><span class="lineno"> 507</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="line"><a id="l00508" name="l00508"></a><span class="lineno"> 508</span><a class="code hl_function" href="group__l4__fpage__api.html#ga905f25ce8cd4e02fb988702dc85e18e0">l4_fpage_size</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00509" name="l00509"></a><span class="lineno"> 509</span></div>
<div class="line"><a id="l00520" name="l00520"></a><span class="lineno"> 520</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span></div>
<div class="line"><a id="l00521" name="l00521"></a><span class="lineno"> 521</span><a class="code hl_function" href="group__l4__fpage__api.html#ga0a2b8a60053c0a34eb1cbdcc5db9a430">l4_fpage_page</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00522" name="l00522"></a><span class="lineno"> 522</span></div>
<div class="line"><a id="l00536" name="l00536"></a><span class="lineno"> 536</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a></div>
<div class="line"><a id="l00537" name="l00537"></a><span class="lineno"> 537</span><a class="code hl_function" href="group__l4__fpage__api.html#ga87c7b03e1b72e9cfed3ad4b31a0c58ba">l4_fpage_memaddr</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00538" name="l00538"></a><span class="lineno"> 538</span></div>
<div class="line"><a id="l00552" name="l00552"></a><span class="lineno"> 552</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div>
<div class="line"><a id="l00553" name="l00553"></a><span class="lineno"> 553</span><a class="code hl_function" href="group__l4__fpage__api.html#gaeb484f02b9ea93d811fea4e5d0c4fb45">l4_fpage_obj</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00554" name="l00554"></a><span class="lineno"> 554</span></div>
<div class="line"><a id="l00568" name="l00568"></a><span class="lineno"> 568</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span></div>
<div class="line"><a id="l00569" name="l00569"></a><span class="lineno"> 569</span><a class="code hl_function" href="group__l4__fpage__api.html#ga870f97aa1727c673716618514a124bf8">l4_fpage_ioport</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00570" name="l00570"></a><span class="lineno"> 570</span></div>
<div class="line"><a id="l00580" name="l00580"></a><span class="lineno"> 580</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00581" name="l00581"></a><span class="lineno"> 581</span><a class="code hl_function" href="group__l4__fpage__api.html#ga5880fdaee96b73af90089df79c0d42a5">l4_fpage_set_rights</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> src, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> new_rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00582" name="l00582"></a><span class="lineno"> 582</span></div>
<div class="line"><a id="l00594" name="l00594"></a><span class="lineno"> 594</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00595" name="l00595"></a><span class="lineno"> 595</span><a class="code hl_function" href="group__l4__fpage__api.html#ga19e0b3ccdc9b32f1e9851b904a588d04">l4_fpage_contains</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> fpage, <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> addr, <span class="keywordtype">unsigned</span> order) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00596" name="l00596"></a><span class="lineno"> 596</span></div>
<div class="line"><a id="l00613" name="l00613"></a><span class="lineno"> 613</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span></div>
<div class="line"><a id="l00614" name="l00614"></a><span class="lineno"> 614</span><a class="code hl_function" href="group__l4__fpage__api.html#ga960465b596caf60adc6c5042e9257f0a">l4_fpage_max_order</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> order, <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> addr,</div>
<div class="line"><a id="l00615" name="l00615"></a><span class="lineno"> 615</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> min_addr, <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> max_addr,</div>
<div class="line"><a id="l00616" name="l00616"></a><span class="lineno"> 616</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> hotspot L4_DEFAULT_PARAM(0));</div>
<div class="line"><a id="l00617" name="l00617"></a><span class="lineno"> 617</span></div>
<div class="line"><a id="l00627" name="l00627"></a><span class="lineno"> 627</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00628" name="l00628"></a><span class="lineno"> 628</span><a class="code hl_function" href="group__l4__fpage__api.html#gafb0dbbb12ec10205ca4411d7a10e224e">l4_is_fpage_valid</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> fp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00629" name="l00629"></a><span class="lineno"> 629</span> </div>
<div class="line"><a id="l00630" name="l00630"></a><span class="lineno"> 630</span><span class="comment">/*************************************************************************</span></div>
<div class="line"><a id="l00631" name="l00631"></a><span class="lineno"> 631</span><span class="comment"> * Implementations</span></div>
<div class="line"><a id="l00632" name="l00632"></a><span class="lineno"> 632</span><span class="comment"> *************************************************************************/</span></div>
<div class="line"><a id="l00633" name="l00633"></a><span class="lineno"> 633</span> </div>
<div class="line"><a id="l00634" name="l00634"></a><span class="lineno"> 634</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="foldopen" id="foldopen00635" data-start="{" data-end="}">
<div class="line"><a id="l00635" name="l00635"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gaad7579a5ab36d5cbda48bbb4fc365cd7"> 635</a></span><a class="code hl_function" href="group__l4__fpage__api.html#gaad7579a5ab36d5cbda48bbb4fc365cd7">l4_fpage_rights</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00636" name="l00636"></a><span class="lineno"> 636</span>{</div>
<div class="line"><a id="l00637" name="l00637"></a><span class="lineno"> 637</span> <span class="keywordflow">return</span> (f.raw &amp; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e">L4_FPAGE_RIGHTS_MASK</a>) &gt;&gt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f">L4_FPAGE_RIGHTS_SHIFT</a>;</div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"> 638</span>}</div>
</div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno"> 639</span> </div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno"> 640</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="foldopen" id="foldopen00641" data-start="{" data-end="}">
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga7616290ff22f4145650aa664d012f833"> 641</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga7616290ff22f4145650aa664d012f833">l4_fpage_type</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span>{</div>
<div class="line"><a id="l00643" name="l00643"></a><span class="lineno"> 643</span> <span class="keywordflow">return</span> (f.raw &amp; L4_FPAGE_TYPE_MASK) &gt;&gt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a52ce37be44fed1c912b4cbf3d6c263cb">L4_FPAGE_TYPE_SHIFT</a>;</div>
<div class="line"><a id="l00644" name="l00644"></a><span class="lineno"> 644</span>}</div>
</div>
<div class="line"><a id="l00645" name="l00645"></a><span class="lineno"> 645</span> </div>
<div class="line"><a id="l00646" name="l00646"></a><span class="lineno"> 646</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="foldopen" id="foldopen00647" data-start="{" data-end="}">
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga905f25ce8cd4e02fb988702dc85e18e0"> 647</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga905f25ce8cd4e02fb988702dc85e18e0">l4_fpage_size</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00648" name="l00648"></a><span class="lineno"> 648</span>{</div>
<div class="line"><a id="l00649" name="l00649"></a><span class="lineno"> 649</span> <span class="keywordflow">return</span> (f.raw &amp; L4_FPAGE_SIZE_MASK) &gt;&gt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912afd349028410be3c104040d52ff8e4b0c">L4_FPAGE_SIZE_SHIFT</a>;</div>
<div class="line"><a id="l00650" name="l00650"></a><span class="lineno"> 650</span>}</div>
</div>
<div class="line"><a id="l00651" name="l00651"></a><span class="lineno"> 651</span> </div>
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"> 652</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span></div>
<div class="foldopen" id="foldopen00653" data-start="{" data-end="}">
<div class="line"><a id="l00653" name="l00653"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga0a2b8a60053c0a34eb1cbdcc5db9a430"> 653</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga0a2b8a60053c0a34eb1cbdcc5db9a430">l4_fpage_page</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00654" name="l00654"></a><span class="lineno"> 654</span>{</div>
<div class="line"><a id="l00655" name="l00655"></a><span class="lineno"> 655</span> <span class="keywordflow">return</span> (f.raw &amp; L4_FPAGE_ADDR_MASK) &gt;&gt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a>;</div>
<div class="line"><a id="l00656" name="l00656"></a><span class="lineno"> 656</span>}</div>
</div>
<div class="line"><a id="l00657" name="l00657"></a><span class="lineno"> 657</span> </div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"> 658</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span></div>
<div class="foldopen" id="foldopen00659" data-start="{" data-end="}">
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga870f97aa1727c673716618514a124bf8"> 659</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga870f97aa1727c673716618514a124bf8">l4_fpage_ioport</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00660" name="l00660"></a><span class="lineno"> 660</span>{</div>
<div class="line"><a id="l00661" name="l00661"></a><span class="lineno"> 661</span> <span class="keywordflow">return</span> (f.raw &amp; L4_FPAGE_ADDR_MASK) &gt;&gt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a>;</div>
<div class="line"><a id="l00662" name="l00662"></a><span class="lineno"> 662</span>}</div>
</div>
<div class="line"><a id="l00663" name="l00663"></a><span class="lineno"> 663</span> </div>
<div class="line"><a id="l00664" name="l00664"></a><span class="lineno"> 664</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a></div>
<div class="foldopen" id="foldopen00665" data-start="{" data-end="}">
<div class="line"><a id="l00665" name="l00665"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga87c7b03e1b72e9cfed3ad4b31a0c58ba"> 665</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga87c7b03e1b72e9cfed3ad4b31a0c58ba">l4_fpage_memaddr</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00666" name="l00666"></a><span class="lineno"> 666</span>{</div>
<div class="line"><a id="l00667" name="l00667"></a><span class="lineno"> 667</span> <span class="keywordflow">return</span> f.raw &amp; L4_FPAGE_ADDR_MASK;</div>
<div class="line"><a id="l00668" name="l00668"></a><span class="lineno"> 668</span>}</div>
</div>
<div class="line"><a id="l00669" name="l00669"></a><span class="lineno"> 669</span> </div>
<div class="line"><a id="l00670" name="l00670"></a><span class="lineno"> 670</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div>
<div class="foldopen" id="foldopen00671" data-start="{" data-end="}">
<div class="line"><a id="l00671" name="l00671"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gaeb484f02b9ea93d811fea4e5d0c4fb45"> 671</a></span><a class="code hl_function" href="group__l4__fpage__api.html#gaeb484f02b9ea93d811fea4e5d0c4fb45">l4_fpage_obj</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00672" name="l00672"></a><span class="lineno"> 672</span>{</div>
<div class="line"><a id="l00673" name="l00673"></a><span class="lineno"> 673</span> <span class="keywordflow">return</span> f.raw &amp; L4_FPAGE_ADDR_MASK;</div>
<div class="line"><a id="l00674" name="l00674"></a><span class="lineno"> 674</span>}</div>
</div>
<div class="line"><a id="l00675" name="l00675"></a><span class="lineno"> 675</span></div>
<div class="line"><a id="l00677" name="l00677"></a><span class="lineno"> 677</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00678" name="l00678"></a><span class="lineno"> 678</span>__l4_fpage_generic(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> address, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> type,</div>
<div class="line"><a id="l00679" name="l00679"></a><span class="lineno"> 679</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00680" name="l00680"></a><span class="lineno"> 680</span> </div>
<div class="line"><a id="l00681" name="l00681"></a><span class="lineno"> 681</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="line"><a id="l00682" name="l00682"></a><span class="lineno"> 682</span>__l4_fpage_generic(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> address, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> type,</div>
<div class="line"><a id="l00683" name="l00683"></a><span class="lineno"> 683</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00684" name="l00684"></a><span class="lineno"> 684</span>{</div>
<div class="line"><a id="l00685" name="l00685"></a><span class="lineno"> 685</span> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> t;</div>
<div class="line"><a id="l00686" name="l00686"></a><span class="lineno"> 686</span> t.<a class="code hl_variable" href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">raw</a> = ((rights &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f">L4_FPAGE_RIGHTS_SHIFT</a>) &amp; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e">L4_FPAGE_RIGHTS_MASK</a>)</div>
<div class="line"><a id="l00687" name="l00687"></a><span class="lineno"> 687</span> | ((type &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a52ce37be44fed1c912b4cbf3d6c263cb">L4_FPAGE_TYPE_SHIFT</a>) &amp; L4_FPAGE_TYPE_MASK)</div>
<div class="line"><a id="l00688" name="l00688"></a><span class="lineno"> 688</span> | ((order &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912afd349028410be3c104040d52ff8e4b0c">L4_FPAGE_SIZE_SHIFT</a>) &amp; L4_FPAGE_SIZE_MASK)</div>
<div class="line"><a id="l00689" name="l00689"></a><span class="lineno"> 689</span> | ((address ) &amp; L4_FPAGE_ADDR_MASK);</div>
<div class="line"><a id="l00690" name="l00690"></a><span class="lineno"> 690</span> <span class="keywordflow">return</span> t;</div>
<div class="line"><a id="l00691" name="l00691"></a><span class="lineno"> 691</span>}</div>
<div class="line"><a id="l00692" name="l00692"></a><span class="lineno"> 692</span> </div>
<div class="line"><a id="l00693" name="l00693"></a><span class="lineno"> 693</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="foldopen" id="foldopen00694" data-start="{" data-end="}">
<div class="line"><a id="l00694" name="l00694"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga5880fdaee96b73af90089df79c0d42a5"> 694</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga5880fdaee96b73af90089df79c0d42a5">l4_fpage_set_rights</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> src, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> new_rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00695" name="l00695"></a><span class="lineno"> 695</span>{</div>
<div class="line"><a id="l00696" name="l00696"></a><span class="lineno"> 696</span> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> f;</div>
<div class="line"><a id="l00697" name="l00697"></a><span class="lineno"> 697</span> f.<a class="code hl_variable" href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">raw</a> = ((L4_FPAGE_TYPE_MASK | L4_FPAGE_SIZE_MASK | L4_FPAGE_ADDR_MASK) &amp; src.raw)</div>
<div class="line"><a id="l00698" name="l00698"></a><span class="lineno"> 698</span> | ((new_rights &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f">L4_FPAGE_RIGHTS_SHIFT</a>) &amp; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e">L4_FPAGE_RIGHTS_MASK</a>);</div>
<div class="line"><a id="l00699" name="l00699"></a><span class="lineno"> 699</span> <span class="keywordflow">return</span> f;</div>
<div class="line"><a id="l00700" name="l00700"></a><span class="lineno"> 700</span>}</div>
</div>
<div class="line"><a id="l00701" name="l00701"></a><span class="lineno"> 701</span> </div>
<div class="line"><a id="l00702" name="l00702"></a><span class="lineno"> 702</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="foldopen" id="foldopen00703" data-start="{" data-end="}">
<div class="line"><a id="l00703" name="l00703"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga8d185d1e2ec513f1b3e8a5634469b756"> 703</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga8d185d1e2ec513f1b3e8a5634469b756">l4_fpage</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> address, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00704" name="l00704"></a><span class="lineno"> 704</span>{</div>
<div class="line"><a id="l00705" name="l00705"></a><span class="lineno"> 705</span> <span class="keywordflow">return</span> __l4_fpage_generic(address, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a525dbaaf5f4c521dcd3dbeee3f687487">L4_FPAGE_MEMORY</a>, order, rights);</div>
<div class="line"><a id="l00706" name="l00706"></a><span class="lineno"> 706</span>}</div>
</div>
<div class="line"><a id="l00707" name="l00707"></a><span class="lineno"> 707</span> </div>
<div class="line"><a id="l00708" name="l00708"></a><span class="lineno"> 708</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="foldopen" id="foldopen00709" data-start="{" data-end="}">
<div class="line"><a id="l00709" name="l00709"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gab918a25f8a923b7a68158e737d4801a8"> 709</a></span><a class="code hl_function" href="group__l4__fpage__api.html#gab918a25f8a923b7a68158e737d4801a8">l4_iofpage</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> port, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00710" name="l00710"></a><span class="lineno"> 710</span>{</div>
<div class="line"><a id="l00711" name="l00711"></a><span class="lineno"> 711</span> <span class="keywordflow">return</span> __l4_fpage_generic(port &lt;&lt; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a>, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a52707a541db3c03794f0f445befd23fe">L4_FPAGE_IO</a>, order, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8aa9a87bc5e91b05451bfd72b5278b7d1b">L4_FPAGE_RW</a>);</div>
<div class="line"><a id="l00712" name="l00712"></a><span class="lineno"> 712</span>}</div>
</div>
<div class="line"><a id="l00713" name="l00713"></a><span class="lineno"> 713</span> </div>
<div class="line"><a id="l00714" name="l00714"></a><span class="lineno"> 714</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="foldopen" id="foldopen00715" data-start="{" data-end="}">
<div class="line"><a id="l00715" name="l00715"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54"> 715</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54">l4_obj_fpage</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> obj, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> order, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> rights) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00716" name="l00716"></a><span class="lineno"> 716</span>{</div>
<div class="line"><a id="l00717" name="l00717"></a><span class="lineno"> 717</span> <span class="keyword">static_assert</span>((<span class="keywordtype">unsigned</span> long)<a class="code hl_enumvalue" href="group__l4__cap__api.html#ggafee0421c2fe0e5cfc59f17f16ea10879ac13ad59620aeba353454514a42950a85">L4_CAP_SHIFT</a> &gt;= <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a>,</div>
<div class="line"><a id="l00718" name="l00718"></a><span class="lineno"> 718</span> <span class="stringliteral">&quot;Capability index does not fit into fpage.&quot;</span>);</div>
<div class="line"><a id="l00719" name="l00719"></a><span class="lineno"> 719</span> <span class="keywordflow">return</span> __l4_fpage_generic(obj, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52aaab489a70d369e24131b1357dec9f037">L4_FPAGE_OBJ</a>, order, rights);</div>
<div class="line"><a id="l00720" name="l00720"></a><span class="lineno"> 720</span>}</div>
</div>
<div class="line"><a id="l00721" name="l00721"></a><span class="lineno"> 721</span> </div>
<div class="line"><a id="l00722" name="l00722"></a><span class="lineno"> 722</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="foldopen" id="foldopen00723" data-start="{" data-end="}">
<div class="line"><a id="l00723" name="l00723"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga571572d1f1f3895b06562aa6a818bf12"> 723</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga571572d1f1f3895b06562aa6a818bf12">l4_fpage_all</a>(<span class="keywordtype">void</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00724" name="l00724"></a><span class="lineno"> 724</span>{</div>
<div class="line"><a id="l00725" name="l00725"></a><span class="lineno"> 725</span> <span class="keywordflow">return</span> __l4_fpage_generic(0, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52ae0c8f334d7955ee515bb7dd22251ac60">L4_FPAGE_SPECIAL</a>, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacc6c0122f495fff4979d66cd56351eceac173c35abf62068a3720e4a9dc257f17">L4_WHOLE_ADDRESS_SPACE</a>, 0);</div>
<div class="line"><a id="l00726" name="l00726"></a><span class="lineno"> 726</span>}</div>
</div>
<div class="line"><a id="l00727" name="l00727"></a><span class="lineno"> 727</span> </div>
<div class="line"><a id="l00728" name="l00728"></a><span class="lineno"> 728</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a></div>
<div class="foldopen" id="foldopen00729" data-start="{" data-end="}">
<div class="line"><a id="l00729" name="l00729"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gae582748fc4a5aa86207a840e3488819a"> 729</a></span><a class="code hl_function" href="group__l4__fpage__api.html#gae582748fc4a5aa86207a840e3488819a">l4_fpage_invalid</a>(<span class="keywordtype">void</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00730" name="l00730"></a><span class="lineno"> 730</span>{</div>
<div class="line"><a id="l00731" name="l00731"></a><span class="lineno"> 731</span> <span class="keywordflow">return</span> __l4_fpage_generic(0, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52ae0c8f334d7955ee515bb7dd22251ac60">L4_FPAGE_SPECIAL</a>, 0, 0);</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno"> 732</span>}</div>
</div>
<div class="line"><a id="l00733" name="l00733"></a><span class="lineno"> 733</span> </div>
<div class="line"><a id="l00734" name="l00734"></a><span class="lineno"> 734</span> </div>
<div class="line"><a id="l00735" name="l00735"></a><span class="lineno"> 735</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00736" data-start="{" data-end="}">
<div class="line"><a id="l00736" name="l00736"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gabc522b5b530c73bfd45e3c34956bac94"> 736</a></span><a class="code hl_function" href="group__l4__fpage__api.html#gabc522b5b530c73bfd45e3c34956bac94">l4_is_fpage_writable</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> fp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00737" name="l00737"></a><span class="lineno"> 737</span>{</div>
<div class="line"><a id="l00738" name="l00738"></a><span class="lineno"> 738</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__fpage__api.html#gaad7579a5ab36d5cbda48bbb4fc365cd7">l4_fpage_rights</a>(fp) &amp; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8af8a8c87ad74735a7db0eae5e656e4a17">L4_FPAGE_W</a>;</div>
<div class="line"><a id="l00739" name="l00739"></a><span class="lineno"> 739</span>}</div>
</div>
<div class="line"><a id="l00740" name="l00740"></a><span class="lineno"> 740</span> </div>
<div class="line"><a id="l00741" name="l00741"></a><span class="lineno"> 741</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="foldopen" id="foldopen00742" data-start="{" data-end="}">
<div class="line"><a id="l00742" name="l00742"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ga1ce1321fd25614e9af43a35819540ba7"> 742</a></span><a class="code hl_function" href="group__l4__msgitem__api.html#ga1ce1321fd25614e9af43a35819540ba7">l4_map_control</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> snd_base, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> cache, <span class="keywordtype">unsigned</span> grant) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00743" name="l00743"></a><span class="lineno"> 743</span>{</div>
<div class="line"><a id="l00744" name="l00744"></a><span class="lineno"> 744</span> <span class="keywordflow">return</span> (snd_base &amp; <a class="code hl_enumvalue" href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a43fd079bdf2475e28052c9a804687400">L4_FPAGE_CONTROL_MASK</a>)</div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno"> 745</span> | ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)cache &lt;&lt; 4) | <a class="code hl_enumvalue" href="group__l4__msgitem__api.html#gga94ecfe2908867c4ed0c13a7a97337f6aa818a51ad60a66f82775c39c2eb550f4d">L4_ITEM_MAP</a> | grant;</div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"> 746</span>}</div>
</div>
<div class="line"><a id="l00747" name="l00747"></a><span class="lineno"> 747</span> </div>
<div class="line"><a id="l00748" name="l00748"></a><span class="lineno"> 748</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="foldopen" id="foldopen00749" data-start="{" data-end="}">
<div class="line"><a id="l00749" name="l00749"></a><span class="lineno"><a class="line" href="group__l4__msgitem__api.html#ga6c9056957ac92e458eaabcbf3223ce6f"> 749</a></span><a class="code hl_function" href="group__l4__msgitem__api.html#ga6c9056957ac92e458eaabcbf3223ce6f">l4_map_obj_control</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> snd_base, <span class="keywordtype">unsigned</span> grant) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00750" name="l00750"></a><span class="lineno"> 750</span>{</div>
<div class="line"><a id="l00751" name="l00751"></a><span class="lineno"> 751</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__msgitem__api.html#ga1ce1321fd25614e9af43a35819540ba7">l4_map_control</a>(snd_base, 0, grant);</div>
<div class="line"><a id="l00752" name="l00752"></a><span class="lineno"> 752</span>}</div>
</div>
<div class="line"><a id="l00753" name="l00753"></a><span class="lineno"> 753</span> </div>
<div class="line"><a id="l00754" name="l00754"></a><span class="lineno"> 754</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00755" data-start="{" data-end="}">
<div class="line"><a id="l00755" name="l00755"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga19e0b3ccdc9b32f1e9851b904a588d04"> 755</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga19e0b3ccdc9b32f1e9851b904a588d04">l4_fpage_contains</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> fpage, <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> addr, <span class="keywordtype">unsigned</span> log2size) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00756" name="l00756"></a><span class="lineno"> 756</span>{</div>
<div class="line"><a id="l00757" name="l00757"></a><span class="lineno"> 757</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> fa = <a class="code hl_function" href="group__l4__fpage__api.html#ga87c7b03e1b72e9cfed3ad4b31a0c58ba">l4_fpage_memaddr</a>(fpage);</div>
<div class="line"><a id="l00758" name="l00758"></a><span class="lineno"> 758</span> <span class="keywordflow">return</span> (fa &lt;= addr)</div>
<div class="line"><a id="l00759" name="l00759"></a><span class="lineno"> 759</span> &amp;&amp; (fa + (1UL &lt;&lt; <a class="code hl_function" href="group__l4__fpage__api.html#ga905f25ce8cd4e02fb988702dc85e18e0">l4_fpage_size</a>(fpage)) &gt;= addr + (1UL &lt;&lt; log2size));</div>
<div class="line"><a id="l00760" name="l00760"></a><span class="lineno"> 760</span>}</div>
</div>
<div class="line"><a id="l00761" name="l00761"></a><span class="lineno"> 761</span> </div>
<div class="line"><a id="l00762" name="l00762"></a><span class="lineno"> 762</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span></div>
<div class="foldopen" id="foldopen00763" data-start="{" data-end="}">
<div class="line"><a id="l00763" name="l00763"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#ga960465b596caf60adc6c5042e9257f0a"> 763</a></span><a class="code hl_function" href="group__l4__fpage__api.html#ga960465b596caf60adc6c5042e9257f0a">l4_fpage_max_order</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> order, <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> addr,</div>
<div class="line"><a id="l00764" name="l00764"></a><span class="lineno"> 764</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> min_addr, <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> max_addr,</div>
<div class="line"><a id="l00765" name="l00765"></a><span class="lineno"> 765</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> hotspot)</div>
<div class="line"><a id="l00766" name="l00766"></a><span class="lineno"> 766</span>{</div>
<div class="line"><a id="l00767" name="l00767"></a><span class="lineno"> 767</span> <span class="keywordflow">while</span> (order &lt; 30 <span class="comment">/* limit to 1GB flexpages */</span>)</div>
<div class="line"><a id="l00768" name="l00768"></a><span class="lineno"> 768</span> {</div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno"> 769</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> mask;</div>
<div class="line"><a id="l00770" name="l00770"></a><span class="lineno"> 770</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> base = <a class="code hl_function" href="group__l4__memory__api.html#ga792959ba1e87fecf90018876f32d7bc9">l4_trunc_size</a>(addr, order + 1);</div>
<div class="line"><a id="l00771" name="l00771"></a><span class="lineno"> 771</span> <span class="keywordflow">if</span> (base &lt; min_addr)</div>
<div class="line"><a id="l00772" name="l00772"></a><span class="lineno"> 772</span> <span class="keywordflow">return</span> order;</div>
<div class="line"><a id="l00773" name="l00773"></a><span class="lineno"> 773</span> </div>
<div class="line"><a id="l00774" name="l00774"></a><span class="lineno"> 774</span> <span class="keywordflow">if</span> (base + (1UL &lt;&lt; (order + 1)) - 1 &gt; max_addr - 1)</div>
<div class="line"><a id="l00775" name="l00775"></a><span class="lineno"> 775</span> <span class="keywordflow">return</span> order;</div>
<div class="line"><a id="l00776" name="l00776"></a><span class="lineno"> 776</span> </div>
<div class="line"><a id="l00777" name="l00777"></a><span class="lineno"> 777</span> mask = ~(~0UL &lt;&lt; (order + 1));</div>
<div class="line"><a id="l00778" name="l00778"></a><span class="lineno"> 778</span> <span class="keywordflow">if</span> (hotspot == ~0UL || ((addr ^ hotspot) &amp; mask))</div>
<div class="line"><a id="l00779" name="l00779"></a><span class="lineno"> 779</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00780" name="l00780"></a><span class="lineno"> 780</span> </div>
<div class="line"><a id="l00781" name="l00781"></a><span class="lineno"> 781</span> ++order;</div>
<div class="line"><a id="l00782" name="l00782"></a><span class="lineno"> 782</span> }</div>
<div class="line"><a id="l00783" name="l00783"></a><span class="lineno"> 783</span> </div>
<div class="line"><a id="l00784" name="l00784"></a><span class="lineno"> 784</span> <span class="keywordflow">return</span> order;</div>
<div class="line"><a id="l00785" name="l00785"></a><span class="lineno"> 785</span>}</div>
</div>
<div class="line"><a id="l00786" name="l00786"></a><span class="lineno"> 786</span> </div>
<div class="line"><a id="l00787" name="l00787"></a><span class="lineno"> 787</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00788" data-start="{" data-end="}">
<div class="line"><a id="l00788" name="l00788"></a><span class="lineno"><a class="line" href="group__l4__fpage__api.html#gafb0dbbb12ec10205ca4411d7a10e224e"> 788</a></span><a class="code hl_function" href="group__l4__fpage__api.html#gafb0dbbb12ec10205ca4411d7a10e224e">l4_is_fpage_valid</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> fp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00789" name="l00789"></a><span class="lineno"> 789</span>{</div>
<div class="line"><a id="l00790" name="l00790"></a><span class="lineno"> 790</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__fpage__api.html#ga7616290ff22f4145650aa664d012f833">l4_fpage_type</a>(fp) != <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52ae0c8f334d7955ee515bb7dd22251ac60">L4_FPAGE_SPECIAL</a> || <a class="code hl_function" href="group__l4__fpage__api.html#ga905f25ce8cd4e02fb988702dc85e18e0">l4_fpage_size</a>(fp) != 0;</div>
<div class="line"><a id="l00791" name="l00791"></a><span class="lineno"> 791</span>}</div>
</div>
<div class="ttc" id="acompiler_8h_html"><div class="ttname"><a href="compiler_8h.html">compiler.h</a></div><div class="ttdoc">L4 compiler related defines.</div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga4087b991c40c0d2fcde9ca331049a4d4"><div class="ttname"><a href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a></div><div class="ttdeci">unsigned long l4_addr_t</div><div class="ttdoc">Address type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00034">l4int.h:34</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga994a270c5c1613a5e235e212bc6a5af9"><div class="ttname"><a href="group__l4__basic__types.html#ga994a270c5c1613a5e235e212bc6a5af9">L4_MWORD_BITS</a></div><div class="ttdeci">#define L4_MWORD_BITS</div><div class="ttdoc">Size of machine words in bits.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2l4int_8h_source.html#l00022">l4int.h:22</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ga1445e923ce73029130d569d6e69a4dd8"><div class="ttname"><a href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div><div class="ttdeci">unsigned long l4_cap_idx_t</div><div class="ttdoc">Capability selector type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00336">types.h:336</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ggafee0421c2fe0e5cfc59f17f16ea10879ac13ad59620aeba353454514a42950a85"><div class="ttname"><a href="group__l4__cap__api.html#ggafee0421c2fe0e5cfc59f17f16ea10879ac13ad59620aeba353454514a42950a85">L4_CAP_SHIFT</a></div><div class="ttdeci">@ L4_CAP_SHIFT</div><div class="ttdoc">Capability index shift.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2consts_8h_source.html#l00142">consts.h:142</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga0a2b8a60053c0a34eb1cbdcc5db9a430"><div class="ttname"><a href="group__l4__fpage__api.html#ga0a2b8a60053c0a34eb1cbdcc5db9a430">l4_fpage_page</a></div><div class="ttdeci">unsigned long l4_fpage_page(l4_fpage_t f) L4_NOTHROW</div><div class="ttdoc">Return the page part from a flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00653">__l4_fpage.h:653</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga19e0b3ccdc9b32f1e9851b904a588d04"><div class="ttname"><a href="group__l4__fpage__api.html#ga19e0b3ccdc9b32f1e9851b904a588d04">l4_fpage_contains</a></div><div class="ttdeci">int l4_fpage_contains(l4_fpage_t fpage, l4_addr_t addr, unsigned order) L4_NOTHROW</div><div class="ttdoc">Test whether a given range is completely within an fpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00755">__l4_fpage.h:755</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga3eaf59757a63812044e2b3a1cdf09d54"><div class="ttname"><a href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54">l4_obj_fpage</a></div><div class="ttdeci">l4_fpage_t l4_obj_fpage(l4_cap_idx_t obj, unsigned int order, unsigned char rights) L4_NOTHROW</div><div class="ttdoc">Create a kernel-object flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00715">__l4_fpage.h:715</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga571572d1f1f3895b06562aa6a818bf12"><div class="ttname"><a href="group__l4__fpage__api.html#ga571572d1f1f3895b06562aa6a818bf12">l4_fpage_all</a></div><div class="ttdeci">l4_fpage_t l4_fpage_all(void) L4_NOTHROW</div><div class="ttdoc">Get a flexpage, describing all address spaces at once.</div><div class="ttdef"><b>Definition</b> <a href="#l00723">__l4_fpage.h:723</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga5880fdaee96b73af90089df79c0d42a5"><div class="ttname"><a href="group__l4__fpage__api.html#ga5880fdaee96b73af90089df79c0d42a5">l4_fpage_set_rights</a></div><div class="ttdeci">l4_fpage_t l4_fpage_set_rights(l4_fpage_t src, unsigned char new_rights) L4_NOTHROW</div><div class="ttdoc">Set new right in a flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00694">__l4_fpage.h:694</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga5d4f4972d58f72b2a33b6c139b5950a8"><div class="ttname"><a href="group__l4__fpage__api.html#ga5d4f4972d58f72b2a33b6c139b5950a8">L4_fpage_rights</a></div><div class="ttdeci">L4_fpage_rights</div><div class="ttdoc">Memory and IO port flexpage rights.</div><div class="ttdef"><b>Definition</b> <a href="#l00118">__l4_fpage.h:119</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga684a8de4337d3522078bec37d96d2098"><div class="ttname"><a href="group__l4__fpage__api.html#ga684a8de4337d3522078bec37d96d2098">L4_fpage_control</a></div><div class="ttdeci">L4_fpage_control</div><div class="ttdoc">Flexpage map control flags.</div><div class="ttdef"><b>Definition</b> <a href="#l00243">__l4_fpage.h:244</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga7616290ff22f4145650aa664d012f833"><div class="ttname"><a href="group__l4__fpage__api.html#ga7616290ff22f4145650aa664d012f833">l4_fpage_type</a></div><div class="ttdeci">unsigned l4_fpage_type(l4_fpage_t f) L4_NOTHROW</div><div class="ttdoc">Return type from a flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00641">__l4_fpage.h:641</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga870f97aa1727c673716618514a124bf8"><div class="ttname"><a href="group__l4__fpage__api.html#ga870f97aa1727c673716618514a124bf8">l4_fpage_ioport</a></div><div class="ttdeci">unsigned long l4_fpage_ioport(l4_fpage_t f) L4_NOTHROW</div><div class="ttdoc">Return the IO port number from the IO flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00659">__l4_fpage.h:659</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga87c7b03e1b72e9cfed3ad4b31a0c58ba"><div class="ttname"><a href="group__l4__fpage__api.html#ga87c7b03e1b72e9cfed3ad4b31a0c58ba">l4_fpage_memaddr</a></div><div class="ttdeci">l4_addr_t l4_fpage_memaddr(l4_fpage_t f) L4_NOTHROW</div><div class="ttdoc">Return the memory address from the memory flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00665">__l4_fpage.h:665</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga8d185d1e2ec513f1b3e8a5634469b756"><div class="ttname"><a href="group__l4__fpage__api.html#ga8d185d1e2ec513f1b3e8a5634469b756">l4_fpage</a></div><div class="ttdeci">l4_fpage_t l4_fpage(l4_addr_t address, unsigned int order, unsigned char rights) L4_NOTHROW</div><div class="ttdoc">Create a memory flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00703">__l4_fpage.h:703</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga905f25ce8cd4e02fb988702dc85e18e0"><div class="ttname"><a href="group__l4__fpage__api.html#ga905f25ce8cd4e02fb988702dc85e18e0">l4_fpage_size</a></div><div class="ttdeci">unsigned l4_fpage_size(l4_fpage_t f) L4_NOTHROW</div><div class="ttdoc">Return size (log2) from a flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00647">__l4_fpage.h:647</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga960465b596caf60adc6c5042e9257f0a"><div class="ttname"><a href="group__l4__fpage__api.html#ga960465b596caf60adc6c5042e9257f0a">l4_fpage_max_order</a></div><div class="ttdeci">unsigned char l4_fpage_max_order(unsigned char order, l4_addr_t addr, l4_addr_t min_addr, l4_addr_t max_addr, l4_addr_t hotspot=0)</div><div class="ttdoc">Determine maximum flexpage size of a region.</div><div class="ttdef"><b>Definition</b> <a href="#l00763">__l4_fpage.h:763</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gaad7579a5ab36d5cbda48bbb4fc365cd7"><div class="ttname"><a href="group__l4__fpage__api.html#gaad7579a5ab36d5cbda48bbb4fc365cd7">l4_fpage_rights</a></div><div class="ttdeci">unsigned l4_fpage_rights(l4_fpage_t f) L4_NOTHROW</div><div class="ttdoc">Return rights from a flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00635">__l4_fpage.h:635</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gab918a25f8a923b7a68158e737d4801a8"><div class="ttname"><a href="group__l4__fpage__api.html#gab918a25f8a923b7a68158e737d4801a8">l4_iofpage</a></div><div class="ttdeci">l4_fpage_t l4_iofpage(unsigned long port, unsigned int order) L4_NOTHROW</div><div class="ttdoc">Create an IO-port flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00709">__l4_fpage.h:709</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gabc522b5b530c73bfd45e3c34956bac94"><div class="ttname"><a href="group__l4__fpage__api.html#gabc522b5b530c73bfd45e3c34956bac94">l4_is_fpage_writable</a></div><div class="ttdeci">int l4_is_fpage_writable(l4_fpage_t fp) L4_NOTHROW</div><div class="ttdoc">Test if the flexpage is writable.</div><div class="ttdef"><b>Definition</b> <a href="#l00736">__l4_fpage.h:736</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gacbb9260e4a3b77be0fc14df24b838d52"><div class="ttname"><a href="group__l4__fpage__api.html#gacbb9260e4a3b77be0fc14df24b838d52">L4_fpage_type</a></div><div class="ttdeci">L4_fpage_type</div><div class="ttdoc">Flexpage type.</div><div class="ttdef"><b>Definition</b> <a href="#l00230">__l4_fpage.h:231</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gae582748fc4a5aa86207a840e3488819a"><div class="ttname"><a href="group__l4__fpage__api.html#gae582748fc4a5aa86207a840e3488819a">l4_fpage_invalid</a></div><div class="ttdeci">l4_fpage_t l4_fpage_invalid(void) L4_NOTHROW</div><div class="ttdoc">Get an invalid flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00729">__l4_fpage.h:729</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gaeb484f02b9ea93d811fea4e5d0c4fb45"><div class="ttname"><a href="group__l4__fpage__api.html#gaeb484f02b9ea93d811fea4e5d0c4fb45">l4_fpage_obj</a></div><div class="ttdeci">l4_cap_idx_t l4_fpage_obj(l4_fpage_t f) L4_NOTHROW</div><div class="ttdoc">Return the capability index from the object flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00671">__l4_fpage.h:671</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gaee60789a48cab2782f5a368237591b39"><div class="ttname"><a href="group__l4__fpage__api.html#gaee60789a48cab2782f5a368237591b39">L4_cap_fpage_rights</a></div><div class="ttdeci">L4_cap_fpage_rights</div><div class="ttdoc">Object flexpage rights.</div><div class="ttdef"><b>Definition</b> <a href="#l00148">__l4_fpage.h:149</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gafb0dbbb12ec10205ca4411d7a10e224e"><div class="ttname"><a href="group__l4__fpage__api.html#gafb0dbbb12ec10205ca4411d7a10e224e">l4_is_fpage_valid</a></div><div class="ttdeci">int l4_is_fpage_valid(l4_fpage_t fp) L4_NOTHROW</div><div class="ttdoc">Test if the flexpage is valid.</div><div class="ttdef"><b>Definition</b> <a href="#l00788">__l4_fpage.h:788</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gafe2c2fe155ab50ff0f3cf3b3a2c6f912"><div class="ttname"><a href="group__l4__fpage__api.html#gafe2c2fe155ab50ff0f3cf3b3a2c6f912">L4_fpage_consts</a></div><div class="ttdeci">L4_fpage_consts</div><div class="ttdoc">L4 flexpage structure.</div><div class="ttdef"><b>Definition</b> <a href="#l00048">__l4_fpage.h:49</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga55e7ad6ea6bbd07efe2d7f9501bb44e3a56842adf0290f2327a557c91dc590fde"><div class="ttname"><a href="group__l4__fpage__api.html#gga55e7ad6ea6bbd07efe2d7f9501bb44e3a56842adf0290f2327a557c91dc590fde">L4_WHOLE_IOADDRESS_SPACE</a></div><div class="ttdeci">@ L4_WHOLE_IOADDRESS_SPACE</div><div class="ttdoc">Whole I/O address space size.</div><div class="ttdef"><b>Definition</b> <a href="#l00319">__l4_fpage.h:319</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga55e7ad6ea6bbd07efe2d7f9501bb44e3a96adafdf05a382f5d9e9882630098753"><div class="ttname"><a href="group__l4__fpage__api.html#gga55e7ad6ea6bbd07efe2d7f9501bb44e3a96adafdf05a382f5d9e9882630098753">L4_IOPORT_MAX</a></div><div class="ttdeci">@ L4_IOPORT_MAX</div><div class="ttdoc">Maximum I/O port address plus 1.</div><div class="ttdef"><b>Definition</b> <a href="#l00322">__l4_fpage.h:322</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga5d4f4972d58f72b2a33b6c139b5950a8a27bc89a69305a219b6a7a9595340f381"><div class="ttname"><a href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a27bc89a69305a219b6a7a9595340f381">L4_FPAGE_X</a></div><div class="ttdeci">@ L4_FPAGE_X</div><div class="ttdoc">Executable flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00120">__l4_fpage.h:120</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga5d4f4972d58f72b2a33b6c139b5950a8a371a1fb2c09f17c7eb32ac296b87cf38"><div class="ttname"><a href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a371a1fb2c09f17c7eb32ac296b87cf38">L4_FPAGE_RWX</a></div><div class="ttdeci">@ L4_FPAGE_RWX</div><div class="ttdoc">Read-write-execute flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00125">__l4_fpage.h:125</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga5d4f4972d58f72b2a33b6c139b5950a8a4acdf2dd52149127096ffc4770615d46"><div class="ttname"><a href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a4acdf2dd52149127096ffc4770615d46">L4_FPAGE_RX</a></div><div class="ttdeci">@ L4_FPAGE_RX</div><div class="ttdoc">Read-execute flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00124">__l4_fpage.h:124</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga5d4f4972d58f72b2a33b6c139b5950a8a555326b01b4fe72916157bdc90307691"><div class="ttname"><a href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8a555326b01b4fe72916157bdc90307691">L4_FPAGE_RO</a></div><div class="ttdeci">@ L4_FPAGE_RO</div><div class="ttdoc">Read-only flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00122">__l4_fpage.h:122</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga5d4f4972d58f72b2a33b6c139b5950a8aa9a87bc5e91b05451bfd72b5278b7d1b"><div class="ttname"><a href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8aa9a87bc5e91b05451bfd72b5278b7d1b">L4_FPAGE_RW</a></div><div class="ttdeci">@ L4_FPAGE_RW</div><div class="ttdoc">Read-write flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00123">__l4_fpage.h:123</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga5d4f4972d58f72b2a33b6c139b5950a8af8a8c87ad74735a7db0eae5e656e4a17"><div class="ttname"><a href="group__l4__fpage__api.html#gga5d4f4972d58f72b2a33b6c139b5950a8af8a8c87ad74735a7db0eae5e656e4a17">L4_FPAGE_W</a></div><div class="ttdeci">@ L4_FPAGE_W</div><div class="ttdoc">Writable flexpage.</div><div class="ttdef"><b>Definition</b> <a href="#l00121">__l4_fpage.h:121</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga684a8de4337d3522078bec37d96d2098a43fd079bdf2475e28052c9a804687400"><div class="ttname"><a href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a43fd079bdf2475e28052c9a804687400">L4_FPAGE_CONTROL_MASK</a></div><div class="ttdeci">@ L4_FPAGE_CONTROL_MASK</div><div class="ttdoc">Mask for truncating the lower bits of the send base or the index of the control word.</div><div class="ttdef"><b>Definition</b> <a href="#l00250">__l4_fpage.h:250</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_gga684a8de4337d3522078bec37d96d2098a90f1acbd6fc58aed6c345d4886bde997"><div class="ttname"><a href="group__l4__fpage__api.html#gga684a8de4337d3522078bec37d96d2098a90f1acbd6fc58aed6c345d4886bde997">L4_FPAGE_CONTROL_OFFSET_SHIFT</a></div><div class="ttdeci">@ L4_FPAGE_CONTROL_OFFSET_SHIFT</div><div class="ttdoc">Number of bits an index must be shifted or an address must be aligned to in the control word.</div><div class="ttdef"><b>Definition</b> <a href="#l00247">__l4_fpage.h:247</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggacbb9260e4a3b77be0fc14df24b838d52a525dbaaf5f4c521dcd3dbeee3f687487"><div class="ttname"><a href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a525dbaaf5f4c521dcd3dbeee3f687487">L4_FPAGE_MEMORY</a></div><div class="ttdeci">@ L4_FPAGE_MEMORY</div><div class="ttdoc">Flexpage for memory spaces.</div><div class="ttdef"><b>Definition</b> <a href="#l00235">__l4_fpage.h:235</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggacbb9260e4a3b77be0fc14df24b838d52a52707a541db3c03794f0f445befd23fe"><div class="ttname"><a href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52a52707a541db3c03794f0f445befd23fe">L4_FPAGE_IO</a></div><div class="ttdeci">@ L4_FPAGE_IO</div><div class="ttdoc">Flexpage for I/O port spaces.</div><div class="ttdef"><b>Definition</b> <a href="#l00236">__l4_fpage.h:236</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggacbb9260e4a3b77be0fc14df24b838d52aaab489a70d369e24131b1357dec9f037"><div class="ttname"><a href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52aaab489a70d369e24131b1357dec9f037">L4_FPAGE_OBJ</a></div><div class="ttdeci">@ L4_FPAGE_OBJ</div><div class="ttdoc">Flexpage for object spaces.</div><div class="ttdef"><b>Definition</b> <a href="#l00237">__l4_fpage.h:237</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggacbb9260e4a3b77be0fc14df24b838d52ae0c8f334d7955ee515bb7dd22251ac60"><div class="ttname"><a href="group__l4__fpage__api.html#ggacbb9260e4a3b77be0fc14df24b838d52ae0c8f334d7955ee515bb7dd22251ac60">L4_FPAGE_SPECIAL</a></div><div class="ttdeci">@ L4_FPAGE_SPECIAL</div><div class="ttdoc">Special flexpage, either l4_fpage_invalid() or l4_fpage_all(); only supported by selected interfaces.</div><div class="ttdef"><b>Definition</b> <a href="#l00232">__l4_fpage.h:232</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggacc6c0122f495fff4979d66cd56351eceac173c35abf62068a3720e4a9dc257f17"><div class="ttname"><a href="group__l4__fpage__api.html#ggacc6c0122f495fff4979d66cd56351eceac173c35abf62068a3720e4a9dc257f17">L4_WHOLE_ADDRESS_SPACE</a></div><div class="ttdeci">@ L4_WHOLE_ADDRESS_SPACE</div><div class="ttdoc">Whole address space size.</div><div class="ttdef"><b>Definition</b> <a href="#l00092">__l4_fpage.h:92</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39a11c1416f531fdb44d1d02c3de2fcb3e8"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a11c1416f531fdb44d1d02c3de2fcb3e8">L4_CAP_FPAGE_RO</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RO</div><div class="ttdoc">Read right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00176">__l4_fpage.h:176</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39a1cdb82ad70ed42f63968df2f8ce84bf5"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a1cdb82ad70ed42f63968df2f8ce84bf5">L4_CAP_FPAGE_R</a></div><div class="ttdeci">@ L4_CAP_FPAGE_R</div><div class="ttdoc">Read right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00175">__l4_fpage.h:175</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39a3cca0a716e3eb64c770567932460203f"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a3cca0a716e3eb64c770567932460203f">L4_CAP_FPAGE_RW</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RW</div><div class="ttdoc">Read and interface specific &#39;W&#39; right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00192">__l4_fpage.h:192</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39a561054fb4021ff4a22ab1881c7a7de5a"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a561054fb4021ff4a22ab1881c7a7de5a">L4_CAP_FPAGE_W</a></div><div class="ttdeci">@ L4_CAP_FPAGE_W</div><div class="ttdoc">Interface specific &#39;W&#39; right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00157">__l4_fpage.h:157</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39a62e94e726e5a938876de01d9e4ba0587"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a62e94e726e5a938876de01d9e4ba0587">L4_CAP_FPAGE_RS</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RS</div><div class="ttdoc">Read and interface specific &#39;S&#39; right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00199">__l4_fpage.h:199</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39a7442df84ed315158c6ea15368d1abff1"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a7442df84ed315158c6ea15368d1abff1">L4_CAP_FPAGE_RWSD</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RWSD</div><div class="ttdoc">Full rights for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00212">__l4_fpage.h:212</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39a96e848408fc6b8eaca8114a26b128916"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a96e848408fc6b8eaca8114a26b128916">L4_CAP_FPAGE_RSD</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RSD</div><div class="ttdoc">Read, &#39;S&#39;, and delete right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00224">__l4_fpage.h:224</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020">L4_CAP_FPAGE_RWS</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RWS</div><div class="ttdoc">Read, interface specific &#39;W&#39;, and &#39;S&#39; rights for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00206">__l4_fpage.h:206</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39ac27389ac207e3f0bef4e25e698fd7697"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39ac27389ac207e3f0bef4e25e698fd7697">L4_CAP_FPAGE_D</a></div><div class="ttdeci">@ L4_CAP_FPAGE_D</div><div class="ttdoc">Delete right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00185">__l4_fpage.h:185</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39acb2b2e95f6be245f64937ac48a068066"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39acb2b2e95f6be245f64937ac48a068066">L4_CAP_FPAGE_S</a></div><div class="ttdeci">@ L4_CAP_FPAGE_S</div><div class="ttdoc">Interface specific &#39;S&#39; right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00169">__l4_fpage.h:169</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39aeb102b9ca78285e5c7569bf5bbc77097"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39aeb102b9ca78285e5c7569bf5bbc77097">L4_CAP_FPAGE_RWD</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RWD</div><div class="ttdoc">Read, write, and delete right for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="#l00218">__l4_fpage.h:218</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a2dbf44d03d51b8f6748ecc29d4bed0d5">L4_FPAGE_ADDR_SHIFT</a></div><div class="ttdeci">@ L4_FPAGE_ADDR_SHIFT</div><div class="ttdoc">Page address shift.</div><div class="ttdef"><b>Definition</b> <a href="#l00053">__l4_fpage.h:53</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a52ce37be44fed1c912b4cbf3d6c263cb"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a52ce37be44fed1c912b4cbf3d6c263cb">L4_FPAGE_TYPE_SHIFT</a></div><div class="ttdeci">@ L4_FPAGE_TYPE_SHIFT</div><div class="ttdoc">Flexpage type shift (memory, IO port, obj...).</div><div class="ttdef"><b>Definition</b> <a href="#l00051">__l4_fpage.h:51</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a62fcb3cfc81bd68f871c532d54ae452e">L4_FPAGE_RIGHTS_MASK</a></div><div class="ttdeci">@ L4_FPAGE_RIGHTS_MASK</div><div class="ttdoc">Mask to get the flexpage rights.</div><div class="ttdef"><b>Definition</b> <a href="#l00061">__l4_fpage.h:61</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a96b503ed985670a75840e6838530f459"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912a96b503ed985670a75840e6838530f459">L4_FPAGE_TYPE_BITS</a></div><div class="ttdeci">@ L4_FPAGE_TYPE_BITS</div><div class="ttdoc">Flexpage type size (memory, IO port, obj...).</div><div class="ttdef"><b>Definition</b> <a href="#l00056">__l4_fpage.h:56</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aaf66cb52092d494ab57290d1eaf681b7"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aaf66cb52092d494ab57290d1eaf681b7">L4_FPAGE_RIGHTS_BITS</a></div><div class="ttdeci">@ L4_FPAGE_RIGHTS_BITS</div><div class="ttdoc">Access permissions size.</div><div class="ttdef"><b>Definition</b> <a href="#l00055">__l4_fpage.h:55</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ab5310ae4b740e308cf0c8ef97ba99760"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ab5310ae4b740e308cf0c8ef97ba99760">L4_FPAGE_RIGHTS_ALL</a></div><div class="ttdeci">@ L4_FPAGE_RIGHTS_ALL</div><div class="ttdoc">Specify as flexpage rights during grant.</div><div class="ttdef"><b>Definition</b> <a href="#l00069">__l4_fpage.h:69</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ac412abb32e9c295bcde26f99636be449"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912ac412abb32e9c295bcde26f99636be449">L4_FPAGE_ADDR_BITS</a></div><div class="ttdeci">@ L4_FPAGE_ADDR_BITS</div><div class="ttdoc">Page address size.</div><div class="ttdef"><b>Definition</b> <a href="#l00058">__l4_fpage.h:58</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aee14168391d1c2ef49e074778f0e11e5"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912aee14168391d1c2ef49e074778f0e11e5">L4_FPAGE_SIZE_BITS</a></div><div class="ttdeci">@ L4_FPAGE_SIZE_BITS</div><div class="ttdoc">Flexpage size size (log2-based).</div><div class="ttdef"><b>Definition</b> <a href="#l00057">__l4_fpage.h:57</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912af1732de023f921efbb10475a64bdc87f">L4_FPAGE_RIGHTS_SHIFT</a></div><div class="ttdeci">@ L4_FPAGE_RIGHTS_SHIFT</div><div class="ttdoc">Access permissions shift.</div><div class="ttdef"><b>Definition</b> <a href="#l00050">__l4_fpage.h:50</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggafe2c2fe155ab50ff0f3cf3b3a2c6f912afd349028410be3c104040d52ff8e4b0c"><div class="ttname"><a href="group__l4__fpage__api.html#ggafe2c2fe155ab50ff0f3cf3b3a2c6f912afd349028410be3c104040d52ff8e4b0c">L4_FPAGE_SIZE_SHIFT</a></div><div class="ttdeci">@ L4_FPAGE_SIZE_SHIFT</div><div class="ttdoc">Flexpage size shift (log2-based).</div><div class="ttdef"><b>Definition</b> <a href="#l00052">__l4_fpage.h:52</a></div></div>
<div class="ttc" id="agroup__l4__memory__api_html_ga792959ba1e87fecf90018876f32d7bc9"><div class="ttname"><a href="group__l4__memory__api.html#ga792959ba1e87fecf90018876f32d7bc9">l4_trunc_size</a></div><div class="ttdeci">l4_addr_t l4_trunc_size(l4_addr_t address, unsigned char bits) L4_NOTHROW</div><div class="ttdoc">Round an address down to the next lower flexpage with size bits.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2consts_8h_source.html#l00459">consts.h:459</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ga1ce1321fd25614e9af43a35819540ba7"><div class="ttname"><a href="group__l4__msgitem__api.html#ga1ce1321fd25614e9af43a35819540ba7">l4_map_control</a></div><div class="ttdeci">l4_umword_t l4_map_control(l4_umword_t spot, unsigned char cache, unsigned grant) L4_NOTHROW</div><div class="ttdoc">Create the first word for a map item that is a send item for the memory space.</div><div class="ttdef"><b>Definition</b> <a href="#l00742">__l4_fpage.h:742</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ga547729eef68ea9c0e085c34a66e133fa"><div class="ttname"><a href="group__l4__msgitem__api.html#ga547729eef68ea9c0e085c34a66e133fa">l4_fpage_cacheability_opt_t</a></div><div class="ttdeci">l4_fpage_cacheability_opt_t</div><div class="ttdoc">Cacheability options for memory send items.</div><div class="ttdef"><b>Definition</b> <a href="#l00291">__l4_fpage.h:292</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ga6c9056957ac92e458eaabcbf3223ce6f"><div class="ttname"><a href="group__l4__msgitem__api.html#ga6c9056957ac92e458eaabcbf3223ce6f">l4_map_obj_control</a></div><div class="ttdeci">l4_umword_t l4_map_obj_control(l4_umword_t spot, unsigned grant) L4_NOTHROW</div><div class="ttdoc">Create the first word for a map item that is a send item for the object space.</div><div class="ttdef"><b>Definition</b> <a href="#l00749">__l4_fpage.h:749</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_gad142e99a533af52d358f9940fa00966a"><div class="ttname"><a href="group__l4__msgitem__api.html#gad142e99a533af52d358f9940fa00966a">L4_obj_fpage_ctl</a></div><div class="ttdeci">L4_obj_fpage_ctl</div><div class="ttdoc">Attributes and additional permissions for object send items.</div><div class="ttdef"><b>Definition</b> <a href="#l00262">__l4_fpage.h:263</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_gga547729eef68ea9c0e085c34a66e133faa0107b2bd5876b8a3bb3ffb738a22a5aa"><div class="ttname"><a href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa0107b2bd5876b8a3bb3ffb738a22a5aa">L4_FPAGE_CACHEABLE</a></div><div class="ttdeci">@ L4_FPAGE_CACHEABLE</div><div class="ttdoc">Cacheability option to enable caches for the mapping.</div><div class="ttdef"><b>Definition</b> <a href="#l00299">__l4_fpage.h:299</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_gga547729eef68ea9c0e085c34a66e133faa020b367a4fd713478c5728e30c27be9b"><div class="ttname"><a href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa020b367a4fd713478c5728e30c27be9b">L4_FPAGE_CACHE_OPT</a></div><div class="ttdeci">@ L4_FPAGE_CACHE_OPT</div><div class="ttdoc">Enable the cacheability option in a memory send item.</div><div class="ttdef"><b>Definition</b> <a href="#l00295">__l4_fpage.h:295</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_gga547729eef68ea9c0e085c34a66e133faa5ee8ca3328cbd7da944ffa573baf9d97"><div class="ttname"><a href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa5ee8ca3328cbd7da944ffa573baf9d97">L4_FPAGE_UNCACHEABLE</a></div><div class="ttdeci">@ L4_FPAGE_UNCACHEABLE</div><div class="ttdoc">Cacheability option to disable caching for the mapping.</div><div class="ttdef"><b>Definition</b> <a href="#l00307">__l4_fpage.h:307</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_gga547729eef68ea9c0e085c34a66e133faa63cb59df38cd7648ee0163b777cdf84f"><div class="ttname"><a href="group__l4__msgitem__api.html#gga547729eef68ea9c0e085c34a66e133faa63cb59df38cd7648ee0163b777cdf84f">L4_FPAGE_BUFFERABLE</a></div><div class="ttdeci">@ L4_FPAGE_BUFFERABLE</div><div class="ttdoc">Cacheability option to enable buffered writes for the mapping.</div><div class="ttdef"><b>Definition</b> <a href="#l00303">__l4_fpage.h:303</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_gga94ecfe2908867c4ed0c13a7a97337f6aa818a51ad60a66f82775c39c2eb550f4d"><div class="ttname"><a href="group__l4__msgitem__api.html#gga94ecfe2908867c4ed0c13a7a97337f6aa818a51ad60a66f82775c39c2eb550f4d">L4_ITEM_MAP</a></div><div class="ttdeci">@ L4_ITEM_MAP</div><div class="ttdoc">Identify a message item as map item.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2consts_8h_source.html#l00214">consts.h:214</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ggad142e99a533af52d358f9940fa00966aa0155a27c030c4f1575bd4ff20a9f6187"><div class="ttname"><a href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa0155a27c030c4f1575bd4ff20a9f6187">L4_FPAGE_C_NO_REF_CNT</a></div><div class="ttdeci">@ L4_FPAGE_C_NO_REF_CNT</div><div class="ttdoc">Don&#39;t increase the reference counter.</div><div class="ttdef"><b>Definition</b> <a href="#l00265">__l4_fpage.h:265</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ggad142e99a533af52d358f9940fa00966aa6d6eba5513250e9861fe748df4fe0fa5"><div class="ttname"><a href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa6d6eba5513250e9861fe748df4fe0fa5">L4_FPAGE_C_OBJ_RIGHT1</a></div><div class="ttdeci">@ L4_FPAGE_C_OBJ_RIGHT1</div><div class="ttdoc">Object-type specific right.</div><div class="ttdef"><b>Definition</b> <a href="#l00267">__l4_fpage.h:267</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ggad142e99a533af52d358f9940fa00966aa8436980325edd409d8aa71e1ef567bc4"><div class="ttname"><a href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa8436980325edd409d8aa71e1ef567bc4">L4_FPAGE_C_IPCGATE_SVR</a></div><div class="ttdeci">@ L4_FPAGE_C_IPCGATE_SVR</div><div class="ttdoc">The receiver may invoke IPC-gate-specific functions on the capability, e.g.</div><div class="ttdef"><b>Definition</b> <a href="#l00277">__l4_fpage.h:277</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ggad142e99a533af52d358f9940fa00966aa8834856d49119629d22e70cddee41f3e"><div class="ttname"><a href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa8834856d49119629d22e70cddee41f3e">L4_FPAGE_C_OBJ_RIGHT2</a></div><div class="ttdeci">@ L4_FPAGE_C_OBJ_RIGHT2</div><div class="ttdoc">Object-type specific right.</div><div class="ttdef"><b>Definition</b> <a href="#l00268">__l4_fpage.h:268</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ggad142e99a533af52d358f9940fa00966aa954f8c7a95fbab8ef05831ed866ebe0a"><div class="ttname"><a href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aa954f8c7a95fbab8ef05831ed866ebe0a">L4_FPAGE_C_OBJ_RIGHT3</a></div><div class="ttdeci">@ L4_FPAGE_C_OBJ_RIGHT3</div><div class="ttdoc">Object-type specific right.</div><div class="ttdef"><b>Definition</b> <a href="#l00269">__l4_fpage.h:269</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ggad142e99a533af52d358f9940fa00966aae690696fb5b770b579e15348503b32ba"><div class="ttname"><a href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aae690696fb5b770b579e15348503b32ba">L4_FPAGE_C_OBJ_RIGHTS</a></div><div class="ttdeci">@ L4_FPAGE_C_OBJ_RIGHTS</div><div class="ttdoc">All Object-type specific right bits.</div><div class="ttdef"><b>Definition</b> <a href="#l00270">__l4_fpage.h:270</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ggad142e99a533af52d358f9940fa00966aae99eaaf78b0f1e2c47aa06bb3ecf75bb"><div class="ttname"><a href="group__l4__msgitem__api.html#ggad142e99a533af52d358f9940fa00966aae99eaaf78b0f1e2c47aa06bb3ecf75bb">L4_FPAGE_C_REF_CNT</a></div><div class="ttdeci">@ L4_FPAGE_C_REF_CNT</div><div class="ttdoc">Mapping is reference-counted (default).</div><div class="ttdef"><b>Definition</b> <a href="#l00264">__l4_fpage.h:264</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="astructl4__snd__fpage__t_html"><div class="ttname"><a href="structl4__snd__fpage__t.html">l4_snd_fpage_t</a></div><div class="ttdoc">Send-flexpage types.</div><div class="ttdef"><b>Definition</b> <a href="#l00099">__l4_fpage.h:99</a></div></div>
<div class="ttc" id="astructl4__snd__fpage__t_html_adddf1207c4cafb5754c32fcfefeae05a"><div class="ttname"><a href="structl4__snd__fpage__t.html#adddf1207c4cafb5754c32fcfefeae05a">l4_snd_fpage_t::fpage</a></div><div class="ttdeci">l4_fpage_t fpage</div><div class="ttdoc">Source flexpage descriptor.</div><div class="ttdef"><b>Definition</b> <a href="#l00101">__l4_fpage.h:101</a></div></div>
<div class="ttc" id="astructl4__snd__fpage__t_html_af6ab00233d8628dd13af14d4db9a8189"><div class="ttname"><a href="structl4__snd__fpage__t.html#af6ab00233d8628dd13af14d4db9a8189">l4_snd_fpage_t::snd_base</a></div><div class="ttdeci">l4_umword_t snd_base</div><div class="ttdoc">Offset in receive window (send base).</div><div class="ttdef"><b>Definition</b> <a href="#l00100">__l4_fpage.h:100</a></div></div>
<div class="ttc" id="aunionl4__fpage__t_html"><div class="ttname"><a href="unionl4__fpage__t.html">l4_fpage_t</a></div><div class="ttdoc">L4 flexpage type.</div><div class="ttdef"><b>Definition</b> <a href="#l00076">__l4_fpage.h:76</a></div></div>
<div class="ttc" id="aunionl4__fpage__t_html_a5db4caad82d0e823da85625f465634e0"><div class="ttname"><a href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">l4_fpage_t::raw</a></div><div class="ttdeci">l4_umword_t raw</div><div class="ttdoc">Raw value.</div><div class="ttdef"><b>Definition</b> <a href="#l00078">__l4_fpage.h:78</a></div></div>
<div class="ttc" id="aunionl4__fpage__t_html_aa63e8d3b5f8f5d4bd6f634160a08a68a"><div class="ttname"><a href="unionl4__fpage__t.html#aa63e8d3b5f8f5d4bd6f634160a08a68a">l4_fpage_t::fpage</a></div><div class="ttdeci">l4_umword_t fpage</div><div class="ttdoc">Raw value.</div><div class="ttdef"><b>Definition</b> <a href="#l00077">__l4_fpage.h:77</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__l4_fpage.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,179 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__platform_control-arm.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____platform__control-arm_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__platform_control-arm.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2024 Kernkonzept GmbH.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Author(s): Jan Klötzke &lt;jan.kloetzke@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2types_8h.html">l4/sys/types.h</a>&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><a class="code hl_function" href="group__l4__platform__control__api.html#ga5cfac77fbfddca4498c22517a5f8238a">l4_platform_ctl_set_task_asid</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> pfc,</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task,</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> asid) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>l4_platform_ctl_set_task_asid_u(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> pfc,</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task,</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> asid,</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="comment">/* IMPLEMENTATION -----------------------------------------------------------*/</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span>l4_platform_ctl_set_task_asid_u(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> pfc,</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task,</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> asid,</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span>{</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <a class="code hl_union" href="unionl4__msg__regs__t.html">l4_msg_regs_t</a> *v = l4_utcb_mr_u(utcb);</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> v-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[0] = <a class="code hl_enumvalue" href="group__l4__protocol__ops.html#gga23eef0a63655492f17c8b4aff576ebf5ab39e52ddda48700c212737927011e6cc">L4_PLATFORM_CTL_SET_TASK_ASID_OP</a>;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> v-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[1] = asid;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> v-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[2] = <a class="code hl_function" href="group__l4__msgitem__api.html#ga6c9056957ac92e458eaabcbf3223ce6f">l4_map_obj_control</a>(0,0);</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> v-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[3] = <a class="code hl_function" href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54">l4_obj_fpage</a>(task, 0, <a class="code hl_enumvalue" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020">L4_CAP_FPAGE_RWS</a>).<a class="code hl_variable" href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">raw</a>;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a>(pfc, utcb, <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(<a class="code hl_enumvalue" href="group__l4__msgtag__api.html#gga3b9e290891059ae64daab8e01c02eeb3a107f89be6beed111d0f240371876e73d">L4_PROTO_PLATFORM_CTL</a>, 2, 1, 0),</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <a class="code hl_define" href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a>);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>}</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="foldopen" id="foldopen00062" data-start="{" data-end="}">
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="group__l4__platform__control__api.html#ga5cfac77fbfddca4498c22517a5f8238a"> 62</a></span><a class="code hl_function" href="group__l4__platform__control__api.html#ga5cfac77fbfddca4498c22517a5f8238a">l4_platform_ctl_set_task_asid</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> pfc,</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task,</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> asid) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span>{</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">return</span> l4_platform_ctl_set_task_asid_u(pfc, task, asid, <a class="code hl_function" href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644">l4_utcb</a>());</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span>}</div>
</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ga1445e923ce73029130d569d6e69a4dd8"><div class="ttname"><a href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div><div class="ttdeci">unsigned long l4_cap_idx_t</div><div class="ttdoc">Capability selector type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00336">types.h:336</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ga3eaf59757a63812044e2b3a1cdf09d54"><div class="ttname"><a href="group__l4__fpage__api.html#ga3eaf59757a63812044e2b3a1cdf09d54">l4_obj_fpage</a></div><div class="ttdeci">l4_fpage_t l4_obj_fpage(l4_cap_idx_t obj, unsigned int order, unsigned char rights) L4_NOTHROW</div><div class="ttdoc">Create a kernel-object flexpage.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00715">__l4_fpage.h:715</a></div></div>
<div class="ttc" id="agroup__l4__fpage__api_html_ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020"><div class="ttname"><a href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39abf42b05aa006bc62a22f1be1aa760020">L4_CAP_FPAGE_RWS</a></div><div class="ttdeci">@ L4_CAP_FPAGE_RWS</div><div class="ttdoc">Read, interface specific &#39;W&#39;, and &#39;S&#39; rights for capability flexpages.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00206">__l4_fpage.h:206</a></div></div>
<div class="ttc" id="agroup__l4__ipc__api_html_gab96d1669dcd54657237ee27b7f6862c6"><div class="ttname"><a href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a></div><div class="ttdeci">l4_msgtag_t l4_ipc_call(l4_cap_idx_t object, l4_utcb_t *utcb, l4_msgtag_t tag, l4_timeout_t timeout) L4_NOTHROW</div><div class="ttdoc">Object call (usual invocation).</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2ipc_8h_source.html#l00565">ipc.h:565</a></div></div>
<div class="ttc" id="agroup__l4__msgitem__api_html_ga6c9056957ac92e458eaabcbf3223ce6f"><div class="ttname"><a href="group__l4__msgitem__api.html#ga6c9056957ac92e458eaabcbf3223ce6f">l4_map_obj_control</a></div><div class="ttdeci">l4_umword_t l4_map_obj_control(l4_umword_t spot, unsigned grant) L4_NOTHROW</div><div class="ttdoc">Create the first word for a map item that is a send item for the object space.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00749">__l4_fpage.h:749</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_ga661d71acad9d096fa990f7c94943bc78"><div class="ttname"><a href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a></div><div class="ttdeci">l4_msgtag_t l4_msgtag(long label, unsigned words, unsigned items, unsigned flags) L4_NOTHROW</div><div class="ttdoc">Create a message tag from the specified values.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00405">types.h:405</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_gga3b9e290891059ae64daab8e01c02eeb3a107f89be6beed111d0f240371876e73d"><div class="ttname"><a href="group__l4__msgtag__api.html#gga3b9e290891059ae64daab8e01c02eeb3a107f89be6beed111d0f240371876e73d">L4_PROTO_PLATFORM_CTL</a></div><div class="ttdeci">@ L4_PROTO_PLATFORM_CTL</div><div class="ttdoc">Protocol messages to a platform control object.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2platform__control_8h_source.html#l00181">platform_control.h:181</a></div></div>
<div class="ttc" id="agroup__l4__platform__control__api_html_ga5cfac77fbfddca4498c22517a5f8238a"><div class="ttname"><a href="group__l4__platform__control__api.html#ga5cfac77fbfddca4498c22517a5f8238a">l4_platform_ctl_set_task_asid</a></div><div class="ttdeci">l4_msgtag_t l4_platform_ctl_set_task_asid(l4_cap_idx_t pfc, l4_cap_idx_t task, l4_umword_t asid) L4_NOTHROW</div><div class="ttdoc">Set ASID of task.</div><div class="ttdef"><b>Definition</b> <a href="#l00062">__platform_control-arm.h:62</a></div></div>
<div class="ttc" id="agroup__l4__protocol__ops_html_gga23eef0a63655492f17c8b4aff576ebf5ab39e52ddda48700c212737927011e6cc"><div class="ttname"><a href="group__l4__protocol__ops.html#gga23eef0a63655492f17c8b4aff576ebf5ab39e52ddda48700c212737927011e6cc">L4_PLATFORM_CTL_SET_TASK_ASID_OP</a></div><div class="ttdeci">@ L4_PLATFORM_CTL_SET_TASK_ASID_OP</div><div class="ttdoc">Arm: set task ASID.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2platform__control_8h_source.html#l00167">platform_control.h:167</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_gaf01c5e1475efc4f33bc7d1985f7320d3"><div class="ttname"><a href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a></div><div class="ttdeci">#define L4_IPC_NEVER</div><div class="ttdoc">never timeout</div><div class="ttdef"><b>Definition</b> <a href="____timeout_8h_source.html#l00076">__timeout.h:76</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_ga89be8a86d11c1d532b636cc2df1330fb"><div class="ttname"><a href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a></div><div class="ttdeci">struct l4_utcb_t l4_utcb_t</div><div class="ttdoc">Opaque type for the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00056">utcb.h:56</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_gadc099b4a59e1d99638c72c11a8c8b644"><div class="ttname"><a href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644">l4_utcb</a></div><div class="ttdeci">l4_utcb_t * l4_utcb(void) L4_NOTHROW L4_PURE</div><div class="ttdoc">Get the UTCB address.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00346">utcb.h:346</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="al4_2sys_2types_8h_html"><div class="ttname"><a href="l4_2sys_2types_8h.html">types.h</a></div><div class="ttdoc">Common L4 ABI Data Types.</div></div>
<div class="ttc" id="astructl4__msgtag__t_html"><div class="ttname"><a href="structl4__msgtag__t.html">l4_msgtag_t</a></div><div class="ttdoc">Message tag data structure.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00153">types.h:154</a></div></div>
<div class="ttc" id="aunionl4__fpage__t_html_a5db4caad82d0e823da85625f465634e0"><div class="ttname"><a href="unionl4__fpage__t.html#a5db4caad82d0e823da85625f465634e0">l4_fpage_t::raw</a></div><div class="ttdeci">l4_umword_t raw</div><div class="ttdoc">Raw value.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00078">__l4_fpage.h:78</a></div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html"><div class="ttname"><a href="unionl4__msg__regs__t.html">l4_msg_regs_t</a></div><div class="ttdoc">Encapsulation of the message-register block in the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00067">utcb.h:68</a></div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html_ad7d601b3b3808afaefe4c09d42de8b99"><div class="ttname"><a href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">l4_msg_regs_t::mr</a></div><div class="ttdeci">l4_umword_t mr[L4_UTCB_GENERIC_DATA_SIZE]</div><div class="ttdoc">Message registers.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00069">utcb.h:69</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__platform_control-arm.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,164 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__task-arm.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____task-arm_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__task-arm.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * (c) 2018 Adam Lackorzynski &lt;adam@l4re.org&gt;</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> *</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> */</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2types_8h.html">l4/sys/types.h</a>&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span>l4_task_vgicc_map_u(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task, <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> vgicc_fpage,</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *u) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><a class="code hl_function" href="group__l4__task__api.html#ga2f2c7940a3aa7223a5750562d933d5a4">l4_task_vgicc_map</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task, <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> vgicc_fpage) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment">/* IMPLEMENTATION -----------------------------------------------------------*/</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2ipc_8h.html">l4/sys/ipc.h</a>&gt;</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span>l4_task_vgicc_map_u(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task, <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> vgicc_fpage,</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *u) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>{</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <a class="code hl_union" href="unionl4__msg__regs__t.html">l4_msg_regs_t</a> *v = l4_utcb_mr_u(u);</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> v-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[0] = <a class="code hl_enumvalue" href="group__l4__protocol__ops.html#gga23a759356490c4b1feffc9f36440a82da317f1418430c7753e2a6655caa8ca420">L4_TASK_MAP_VGICC_ARM_OP</a>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> v-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[1] = vgicc_fpage.raw;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a>(task, u, <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(<a class="code hl_enumvalue" href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92a5a866db052f859a32768fc3a703fa40d">L4_PROTO_TASK</a>, 2, 0, 0), <a class="code hl_define" href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a>);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span>}</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a></div>
<div class="foldopen" id="foldopen00046" data-start="{" data-end="}">
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="group__l4__task__api.html#ga2f2c7940a3aa7223a5750562d933d5a4"> 46</a></span><a class="code hl_function" href="group__l4__task__api.html#ga2f2c7940a3aa7223a5750562d933d5a4">l4_task_vgicc_map</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task, <a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> vgicc_fpage) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span>{</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">return</span> l4_task_vgicc_map_u(task, vgicc_fpage, <a class="code hl_function" href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644">l4_utcb</a>());</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>}</div>
</div>
<div class="ttc" id="agroup__l4__cap__api_html_ga1445e923ce73029130d569d6e69a4dd8"><div class="ttname"><a href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div><div class="ttdeci">unsigned long l4_cap_idx_t</div><div class="ttdoc">Capability selector type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00336">types.h:336</a></div></div>
<div class="ttc" id="agroup__l4__ipc__api_html_gab96d1669dcd54657237ee27b7f6862c6"><div class="ttname"><a href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a></div><div class="ttdeci">l4_msgtag_t l4_ipc_call(l4_cap_idx_t object, l4_utcb_t *utcb, l4_msgtag_t tag, l4_timeout_t timeout) L4_NOTHROW</div><div class="ttdoc">Object call (usual invocation).</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2ipc_8h_source.html#l00565">ipc.h:565</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_ga661d71acad9d096fa990f7c94943bc78"><div class="ttname"><a href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a></div><div class="ttdeci">l4_msgtag_t l4_msgtag(long label, unsigned words, unsigned items, unsigned flags) L4_NOTHROW</div><div class="ttdoc">Create a message tag from the specified values.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00405">types.h:405</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_gga9ac8443c5696208bb0539dd659ea1c92a5a866db052f859a32768fc3a703fa40d"><div class="ttname"><a href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92a5a866db052f859a32768fc3a703fa40d">L4_PROTO_TASK</a></div><div class="ttdeci">@ L4_PROTO_TASK</div><div class="ttdoc">Protocol for messages to a task object.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00053">types.h:53</a></div></div>
<div class="ttc" id="agroup__l4__protocol__ops_html_gga23a759356490c4b1feffc9f36440a82da317f1418430c7753e2a6655caa8ca420"><div class="ttname"><a href="group__l4__protocol__ops.html#gga23a759356490c4b1feffc9f36440a82da317f1418430c7753e2a6655caa8ca420">L4_TASK_MAP_VGICC_ARM_OP</a></div><div class="ttdeci">@ L4_TASK_MAP_VGICC_ARM_OP</div><div class="ttdoc">Arm: Map virtual GICC area.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2task_8h_source.html#l00348">task.h:348</a></div></div>
<div class="ttc" id="agroup__l4__task__api_html_ga2f2c7940a3aa7223a5750562d933d5a4"><div class="ttname"><a href="group__l4__task__api.html#ga2f2c7940a3aa7223a5750562d933d5a4">l4_task_vgicc_map</a></div><div class="ttdeci">l4_msgtag_t l4_task_vgicc_map(l4_cap_idx_t task, l4_fpage_t vgicc_fpage) L4_NOTHROW</div><div class="ttdoc">Map the GIC virtual CPU interface page to the task in case Fiasco detected a GIC version 2.</div><div class="ttdef"><b>Definition</b> <a href="#l00046">__task-arm.h:46</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_gaf01c5e1475efc4f33bc7d1985f7320d3"><div class="ttname"><a href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a></div><div class="ttdeci">#define L4_IPC_NEVER</div><div class="ttdoc">never timeout</div><div class="ttdef"><b>Definition</b> <a href="____timeout_8h_source.html#l00076">__timeout.h:76</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_ga89be8a86d11c1d532b636cc2df1330fb"><div class="ttname"><a href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a></div><div class="ttdeci">struct l4_utcb_t l4_utcb_t</div><div class="ttdoc">Opaque type for the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00056">utcb.h:56</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_gadc099b4a59e1d99638c72c11a8c8b644"><div class="ttname"><a href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644">l4_utcb</a></div><div class="ttdeci">l4_utcb_t * l4_utcb(void) L4_NOTHROW L4_PURE</div><div class="ttdoc">Get the UTCB address.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00346">utcb.h:346</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="al4_2sys_2ipc_8h_html"><div class="ttname"><a href="l4_2sys_2ipc_8h.html">ipc.h</a></div><div class="ttdoc">Common IPC interface.</div></div>
<div class="ttc" id="al4_2sys_2types_8h_html"><div class="ttname"><a href="l4_2sys_2types_8h.html">types.h</a></div><div class="ttdoc">Common L4 ABI Data Types.</div></div>
<div class="ttc" id="astructl4__msgtag__t_html"><div class="ttname"><a href="structl4__msgtag__t.html">l4_msgtag_t</a></div><div class="ttdoc">Message tag data structure.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00153">types.h:154</a></div></div>
<div class="ttc" id="aunionl4__fpage__t_html"><div class="ttname"><a href="unionl4__fpage__t.html">l4_fpage_t</a></div><div class="ttdoc">L4 flexpage type.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00076">__l4_fpage.h:76</a></div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html"><div class="ttname"><a href="unionl4__msg__regs__t.html">l4_msg_regs_t</a></div><div class="ttdoc">Encapsulation of the message-register block in the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00067">utcb.h:68</a></div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html_ad7d601b3b3808afaefe4c09d42de8b99"><div class="ttname"><a href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">l4_msg_regs_t::mr</a></div><div class="ttdeci">l4_umword_t mr[L4_UTCB_GENERIC_DATA_SIZE]</div><div class="ttdoc">Message registers.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00069">utcb.h:69</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__task-arm.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,351 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__timeout.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____timeout_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__timeout.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * Torsten Frenzel &lt;frenzel@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> *</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> */</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#ifndef L4_SYS_TIMEOUT_H__</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#define L4_SYS_TIMEOUT_H__</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2l4int_8h.html">l4/sys/l4int.h</a>&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;<a class="code" href="compiler_8h.html">l4/sys/compiler.h</a>&gt;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span></div>
<div class="foldopen" id="foldopen00040" data-start="{" data-end="};">
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="structl4__timeout__s.html"> 40</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> {</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="structl4__timeout__s.html#a21ffd90db09f5ce67eaabe0cf616de5e"> 41</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <a class="code hl_variable" href="structl4__timeout__s.html#a21ffd90db09f5ce67eaabe0cf616de5e">t</a>; </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#gae8d92e6e03cfe8c597003069302500a5"> 42</a></span>} __attribute__((packed)) <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a>;</div>
</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span></div>
<div class="foldopen" id="foldopen00052" data-start="{" data-end="};">
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="unionl4__timeout__t.html"> 52</a></span><span class="keyword">typedef</span> <span class="keyword">union </span><a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span>{</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="unionl4__timeout__t.html#a725392ca39e3c206b5732521ff423e76"> 54</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> <a class="code hl_variable" href="unionl4__timeout__t.html#a725392ca39e3c206b5732521ff423e76">raw</a>; </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keyword">struct</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="preprocessor">#ifdef __BIG_ENDIAN__</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> <a class="code hl_variable" href="unionl4__timeout__t.html#a9e20b6f3f5669761952fe8c0d93662fd">snd</a>; </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> <a class="code hl_variable" href="unionl4__timeout__t.html#ad701def0cd596dd740df297e89298ea6">rcv</a>; </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="unionl4__timeout__t.html#ad701def0cd596dd740df297e89298ea6"> 61</a></span> <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> <a class="code hl_variable" href="unionl4__timeout__t.html#ad701def0cd596dd740df297e89298ea6">rcv</a>; </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="unionl4__timeout__t.html#a9e20b6f3f5669761952fe8c0d93662fd"> 62</a></span> <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> <a class="code hl_variable" href="unionl4__timeout__t.html#a9e20b6f3f5669761952fe8c0d93662fd">snd</a>; </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="unionl4__timeout__t.html#a13e6b984a65ded4e9fa25eb614a73c87"> 64</a></span> } <a class="code hl_variable" href="unionl4__timeout__t.html#a13e6b984a65ded4e9fa25eb614a73c87">p</a>; </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga208b8e86227b25b180a9283d37d3c468"> 65</a></span>} <a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a>;</div>
</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga1fd51d98ee92362453e7bc266fa8b455"> 73</a></span><span class="preprocessor">#define L4_IPC_TIMEOUT_0 ((l4_timeout_s){0x0400}) </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga10233285bd94a308b93087f765c83218"> 74</a></span><span class="preprocessor">#define L4_IPC_TIMEOUT_NEVER ((l4_timeout_s){0}) </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga001c8f4d28b1d35cbf5efcc9af2d53f1"> 75</a></span><span class="preprocessor">#define L4_IPC_NEVER_INITIALIZER {0} </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3"> 76</a></span><span class="preprocessor">#define L4_IPC_NEVER ((l4_timeout_t){0}) </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga2b4da3c70663874f146d8309ff6d0bc1"> 77</a></span><span class="preprocessor">#define L4_IPC_RECV_TIMEOUT_0 ((l4_timeout_t){0x00000400}) </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga22a6a662679f6baaa0ae931d8bb443ea"> 78</a></span><span class="preprocessor">#define L4_IPC_SEND_TIMEOUT_0 ((l4_timeout_t){0x04000000}) </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#gac33be3c7adb0515c7085b82d647517a2"> 79</a></span><span class="preprocessor">#define L4_IPC_BOTH_TIMEOUT_0 ((l4_timeout_t){0x04000400}) </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga34e6a9e35574ebeb3c4fea0bf6149a4b"> 85</a></span><span class="preprocessor">#define L4_TIMEOUT_US_NEVER (~0ULL)</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#gaa93cb666f12fc206a0095c899f417787"> 91</a></span><span class="preprocessor">#define L4_TIMEOUT_US_MAX ((1ULL &lt;&lt; 41) - 1)</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span></div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span><a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga0967b51ac450edca1eae7b6289320731">l4_timeout_rel</a>(<span class="keywordtype">unsigned</span> man, <span class="keywordtype">unsigned</span> exp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga4f2ccd6c8ff6672a6bb22803a1009126">l4_ipc_timeout</a>(<span class="keywordtype">unsigned</span> snd_man, <span class="keywordtype">unsigned</span> snd_exp,</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">unsigned</span> rcv_man, <span class="keywordtype">unsigned</span> rcv_exp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span></div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span><a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga7c5eebe8f0c4b5718ead96072886e7d2">l4_timeout</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> snd, <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> rcv) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span></div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span><span class="keywordtype">void</span> <a class="code hl_function" href="group__l4__timeout__api.html#ga81a3cccb62603cf13f26d61a61a442cd">l4_snd_timeout</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> snd, <a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> *to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span></div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span><span class="keywordtype">void</span> <a class="code hl_function" href="group__l4__timeout__api.html#ga153f7988c40df2fb5dd6dd468923e5f6">l4_rcv_timeout</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> rcv, <a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> *to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span></div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span><a class="code hl_typedef" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#gad36403610d9a5b4d3bdcb6fcb249ba6c">l4_timeout_rel_get</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> </div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span></div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span><span class="keywordtype">unsigned</span> <a class="code hl_function" href="group__l4__timeout__api.html#gabad6526067fe7f0e0268fa00efab7599">l4_timeout_is_absolute</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span></div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span><a class="code hl_typedef" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga1e9fecdd16e5d68f816797453e74d6c5">l4_timeout_get</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a> cur, <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span></div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span><a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> l4_timeout_from_us(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> us) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> </div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span><span class="comment">/*</span></div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span><span class="comment"> * Implementation</span></div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span><span class="comment"> */</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> </div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00203" data-start="{" data-end="}">
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga4f2ccd6c8ff6672a6bb22803a1009126"> 203</a></span><a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga4f2ccd6c8ff6672a6bb22803a1009126">l4_ipc_timeout</a>(<span class="keywordtype">unsigned</span> snd_man, <span class="keywordtype">unsigned</span> snd_exp,</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <span class="keywordtype">unsigned</span> rcv_man, <span class="keywordtype">unsigned</span> rcv_exp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span>{</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> snd = (snd_man &amp; 0x3ff) | ((snd_exp &lt;&lt; 10) &amp; 0x7c00);</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> rcv = (rcv_man &amp; 0x3ff) | ((rcv_exp &lt;&lt; 10) &amp; 0x7c00);</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__timeout__api.html#ga7c5eebe8f0c4b5718ead96072886e7d2">l4_timeout</a>((<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a>){snd}, (<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a>){rcv});</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span>}</div>
</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> </div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> </div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00213" data-start="{" data-end="}">
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga7c5eebe8f0c4b5718ead96072886e7d2"> 213</a></span><a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga7c5eebe8f0c4b5718ead96072886e7d2">l4_timeout</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> snd, <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> rcv) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span>{</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="keywordflow">return</span> (<a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a>){ ((<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a>){snd.t} &lt;&lt; 16) | rcv.t };</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span>}</div>
</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> </div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> </div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00220" data-start="{" data-end="}">
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga81a3cccb62603cf13f26d61a61a442cd"> 220</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__l4__timeout__api.html#ga81a3cccb62603cf13f26d61a61a442cd">l4_snd_timeout</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> snd, <a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> *to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span>{</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> to-&gt;p.snd = snd;</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span>}</div>
</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> </div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> </div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00227" data-start="{" data-end="}">
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga153f7988c40df2fb5dd6dd468923e5f6"> 227</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__l4__timeout__api.html#ga153f7988c40df2fb5dd6dd468923e5f6">l4_rcv_timeout</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> rcv, <a class="code hl_union" href="unionl4__timeout__t.html">l4_timeout_t</a> *to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span>{</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> to-&gt;p.rcv = rcv;</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span>}</div>
</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> </div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> </div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00234" data-start="{" data-end="}">
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga0967b51ac450edca1eae7b6289320731"> 234</a></span><a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga0967b51ac450edca1eae7b6289320731">l4_timeout_rel</a>(<span class="keywordtype">unsigned</span> man, <span class="keywordtype">unsigned</span> exp) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span>{</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> <span class="keywordflow">return</span> (<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a>){(<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a>)((man &amp; 0x3ff) | ((exp &lt;&lt; 10) &amp; 0x7c00))};</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span>}</div>
</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> </div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> </div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00241" data-start="{" data-end="}">
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#gad36403610d9a5b4d3bdcb6fcb249ba6c"> 241</a></span><a class="code hl_typedef" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#gad36403610d9a5b4d3bdcb6fcb249ba6c">l4_timeout_rel_get</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span>{</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <span class="keywordflow">if</span> (to.t == 0)</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">return</span> ~0ULL;</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">return</span> (<a class="code hl_typedef" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a>)(to.t &amp; 0x3ff) &lt;&lt; ((to.t &gt;&gt; 10) &amp; 0x1f);</div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span>}</div>
</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> </div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> </div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00250" data-start="{" data-end="}">
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#gabad6526067fe7f0e0268fa00efab7599"> 250</a></span><span class="keywordtype">unsigned</span> <a class="code hl_function" href="group__l4__timeout__api.html#gabad6526067fe7f0e0268fa00efab7599">l4_timeout_is_absolute</a>(<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span>{</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> <span class="keywordflow">return</span> to.t &amp; 0x8000;</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span>}</div>
</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> </div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> </div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="foldopen" id="foldopen00257" data-start="{" data-end="}">
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"><a class="line" href="group__l4__timeout__api.html#ga1e9fecdd16e5d68f816797453e74d6c5"> 257</a></span><a class="code hl_typedef" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a> <a class="code hl_function" href="group__l4__timeout__api.html#ga1e9fecdd16e5d68f816797453e74d6c5">l4_timeout_get</a>(<a class="code hl_typedef" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a> cur, <a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> to) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span>{</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__l4__timeout__api.html#gabad6526067fe7f0e0268fa00efab7599">l4_timeout_is_absolute</a>(to))</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> <span class="keywordflow">return</span> 0; <span class="comment">/* We cannot retrieve the value ... */</span></div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> <span class="keywordflow">return</span> cur + <a class="code hl_function" href="group__l4__timeout__api.html#gad36403610d9a5b4d3bdcb6fcb249ba6c">l4_timeout_rel_get</a>(to);</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span>}</div>
</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> </div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span><a class="code hl_define" href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a> <a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span><a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a> l4_timeout_from_us(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> us) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span>{</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> <span class="keywordflow">if</span> (us == 0)</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> <span class="keywordflow">return</span> <a class="code hl_define" href="group__l4__timeout__api.html#ga1fd51d98ee92362453e7bc266fa8b455">L4_IPC_TIMEOUT_0</a>;</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (us == <a class="code hl_define" href="group__l4__timeout__api.html#ga34e6a9e35574ebeb3c4fea0bf6149a4b">L4_TIMEOUT_US_NEVER</a> || us &gt; <a class="code hl_define" href="group__l4__timeout__api.html#gaa93cb666f12fc206a0095c899f417787">L4_TIMEOUT_US_MAX</a>)</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">return</span> <a class="code hl_define" href="group__l4__timeout__api.html#ga10233285bd94a308b93087f765c83218">L4_IPC_TIMEOUT_NEVER</a>;</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> {</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> <span class="comment">/* Here it is certain that at least one bit in &#39;us&#39; is set. */</span></div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> </div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> m = 0; <span class="comment">// initialization required by constexpr, optimized away</span></div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> v = 0; <span class="comment">// initialization required by constexpr, optimized away</span></div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> <span class="keywordtype">int</span> e = (63 - __builtin_clzll(us)) - 9;</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> <span class="keywordflow">if</span> (e &lt; 0)</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> e = 0;</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> </div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> <span class="comment">/* Here it is certain that &#39;0 &lt;= e &lt;= 31&#39; and &#39;1 &lt;= 2^e &lt;= 2^31&#39;:</span></div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span><span class="comment"> * L4_TIMEOUT_US_MAX = 2^41-1 = 0x000001ffffffffff =&gt; e = 31.</span></div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span><span class="comment"> * Note: 2^41-1 (0x000001ffffffffff) &gt; 1023*2^31 (0x00001ff800000000). */</span></div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> </div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> m = us &gt;&gt; e;</div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> </div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> <span class="comment">/* Here it is certain that &#39;1 &lt;= m &lt;= 1023. Consider the following cases:</span></div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span><span class="comment"> * o 1 &lt;= us &lt;= 1023: e = 0; 2^e = 1; 1 &lt;= us/1 &lt;= 1023</span></div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span><span class="comment"> * o 1024 &lt;= us &lt;= 2047: e = 1; 2^e = 2; 512 &lt;= us/2 &lt;= 1023</span></div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span><span class="comment"> * o 2048 &lt;= us &lt;= 4095: e = 2; 2^e = 4; 512 &lt;= us/4 &lt;= 1023</span></div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span><span class="comment"> * ...</span></div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span><span class="comment"> * o 2^31 &lt;= us &lt;= 2^32-1: e = 22; 512 &lt;= us/2^22 &lt;= 1023</span></div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span><span class="comment"> * o 2^40 &lt;= us &lt;= 2^41-1: e = 31; 512 &lt;= us/2^31 &lt;= 1023</span></div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span><span class="comment"> *</span></div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span><span class="comment"> * Dividing by (1&lt;&lt;e) ensures that for all us &lt; 2^41: m &lt; 2^10.</span></div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span><span class="comment"> *</span></div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span><span class="comment"> * Maximum possible timeout using this format: L4_TIMEOUT_US_MAX = 2^41-1:</span></div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span><span class="comment"> * e = 31, m = 1023 =&gt; 2&#39;196&#39;875&#39;771&#39;904 us = 610h 14m 35s.</span></div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span><span class="comment"> */</span></div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> </div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> <span class="comment">/* Without introducing &#39;v&#39; we had to type-cast the expression to</span></div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span><span class="comment"> * l4_uint16_t. This cannot be avoided by declaring m and e_pow_10 as</span></div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span><span class="comment"> * l4_uint16_t due to C++ integer promotion. */</span></div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> v = (e &lt;&lt; 10) | m;</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> <span class="keywordflow">return</span> (<a class="code hl_struct" href="structl4__timeout__s.html">l4_timeout_s</a>){v};</div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> }</div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span>}</div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> </div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="acompiler_8h_html"><div class="ttname"><a href="compiler_8h.html">compiler.h</a></div><div class="ttdoc">L4 compiler related defines.</div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gab71da24eb7cda2c035f18b862309b101"><div class="ttname"><a href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a></div><div class="ttdeci">l4_uint64_t l4_kernel_clock_t</div><div class="ttdoc">Kernel clock type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00053">l4int.h:53</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gaf3331c485014bd12a9e4f9d27a55e689"><div class="ttname"><a href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div><div class="ttdeci">unsigned long long l4_uint64_t</div><div class="ttdoc">Unsigned 64bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00031">l4int.h:31</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga0967b51ac450edca1eae7b6289320731"><div class="ttname"><a href="group__l4__timeout__api.html#ga0967b51ac450edca1eae7b6289320731">l4_timeout_rel</a></div><div class="ttdeci">L4_CONSTEXPR l4_timeout_s l4_timeout_rel(unsigned man, unsigned exp) L4_NOTHROW</div><div class="ttdoc">Get relative timeout consisting of mantissa and exponent.</div><div class="ttdef"><b>Definition</b> <a href="#l00234">__timeout.h:234</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga10233285bd94a308b93087f765c83218"><div class="ttname"><a href="group__l4__timeout__api.html#ga10233285bd94a308b93087f765c83218">L4_IPC_TIMEOUT_NEVER</a></div><div class="ttdeci">#define L4_IPC_TIMEOUT_NEVER</div><div class="ttdoc">never timeout</div><div class="ttdef"><b>Definition</b> <a href="#l00074">__timeout.h:74</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga153f7988c40df2fb5dd6dd468923e5f6"><div class="ttname"><a href="group__l4__timeout__api.html#ga153f7988c40df2fb5dd6dd468923e5f6">l4_rcv_timeout</a></div><div class="ttdeci">L4_CONSTEXPR void l4_rcv_timeout(l4_timeout_s rcv, l4_timeout_t *to) L4_NOTHROW</div><div class="ttdoc">Set receive timeout in given to timeout.</div><div class="ttdef"><b>Definition</b> <a href="#l00227">__timeout.h:227</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga1e9fecdd16e5d68f816797453e74d6c5"><div class="ttname"><a href="group__l4__timeout__api.html#ga1e9fecdd16e5d68f816797453e74d6c5">l4_timeout_get</a></div><div class="ttdeci">L4_CONSTEXPR l4_kernel_clock_t l4_timeout_get(l4_kernel_clock_t cur, l4_timeout_s to) L4_NOTHROW</div><div class="ttdoc">Get clock value for a clock + a timeout.</div><div class="ttdef"><b>Definition</b> <a href="#l00257">__timeout.h:257</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga1fd51d98ee92362453e7bc266fa8b455"><div class="ttname"><a href="group__l4__timeout__api.html#ga1fd51d98ee92362453e7bc266fa8b455">L4_IPC_TIMEOUT_0</a></div><div class="ttdeci">#define L4_IPC_TIMEOUT_0</div><div class="ttdoc">Timeout constants.</div><div class="ttdef"><b>Definition</b> <a href="#l00073">__timeout.h:73</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga34e6a9e35574ebeb3c4fea0bf6149a4b"><div class="ttname"><a href="group__l4__timeout__api.html#ga34e6a9e35574ebeb3c4fea0bf6149a4b">L4_TIMEOUT_US_NEVER</a></div><div class="ttdeci">#define L4_TIMEOUT_US_NEVER</div><div class="ttdoc">The waiting period in microseconds which is interpreted as &quot;never&quot; by l4_timeout_from_us().</div><div class="ttdef"><b>Definition</b> <a href="#l00085">__timeout.h:85</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga4f2ccd6c8ff6672a6bb22803a1009126"><div class="ttname"><a href="group__l4__timeout__api.html#ga4f2ccd6c8ff6672a6bb22803a1009126">l4_ipc_timeout</a></div><div class="ttdeci">L4_CONSTEXPR l4_timeout_t l4_ipc_timeout(unsigned snd_man, unsigned snd_exp, unsigned rcv_man, unsigned rcv_exp) L4_NOTHROW</div><div class="ttdoc">Convert explicit timeout values to l4_timeout_t type.</div><div class="ttdef"><b>Definition</b> <a href="#l00203">__timeout.h:203</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga7c5eebe8f0c4b5718ead96072886e7d2"><div class="ttname"><a href="group__l4__timeout__api.html#ga7c5eebe8f0c4b5718ead96072886e7d2">l4_timeout</a></div><div class="ttdeci">L4_CONSTEXPR l4_timeout_t l4_timeout(l4_timeout_s snd, l4_timeout_s rcv) L4_NOTHROW</div><div class="ttdoc">Combine send and receive timeout in a timeout.</div><div class="ttdef"><b>Definition</b> <a href="#l00213">__timeout.h:213</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_ga81a3cccb62603cf13f26d61a61a442cd"><div class="ttname"><a href="group__l4__timeout__api.html#ga81a3cccb62603cf13f26d61a61a442cd">l4_snd_timeout</a></div><div class="ttdeci">L4_CONSTEXPR void l4_snd_timeout(l4_timeout_s snd, l4_timeout_t *to) L4_NOTHROW</div><div class="ttdoc">Set send timeout in given to timeout.</div><div class="ttdef"><b>Definition</b> <a href="#l00220">__timeout.h:220</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_gaa93cb666f12fc206a0095c899f417787"><div class="ttname"><a href="group__l4__timeout__api.html#gaa93cb666f12fc206a0095c899f417787">L4_TIMEOUT_US_MAX</a></div><div class="ttdeci">#define L4_TIMEOUT_US_MAX</div><div class="ttdoc">The longest waiting period in microseconds accepted by l4_timeout_from_us().</div><div class="ttdef"><b>Definition</b> <a href="#l00091">__timeout.h:91</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_gabad6526067fe7f0e0268fa00efab7599"><div class="ttname"><a href="group__l4__timeout__api.html#gabad6526067fe7f0e0268fa00efab7599">l4_timeout_is_absolute</a></div><div class="ttdeci">L4_CONSTEXPR unsigned l4_timeout_is_absolute(l4_timeout_s to) L4_NOTHROW</div><div class="ttdoc">Return whether the given timeout is absolute or not.</div><div class="ttdef"><b>Definition</b> <a href="#l00250">__timeout.h:250</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_gad36403610d9a5b4d3bdcb6fcb249ba6c"><div class="ttname"><a href="group__l4__timeout__api.html#gad36403610d9a5b4d3bdcb6fcb249ba6c">l4_timeout_rel_get</a></div><div class="ttdeci">L4_CONSTEXPR l4_kernel_clock_t l4_timeout_rel_get(l4_timeout_s to) L4_NOTHROW</div><div class="ttdoc">Get clock value of out timeout.</div><div class="ttdef"><b>Definition</b> <a href="#l00241">__timeout.h:241</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga72341295822842d4830284fa77b9a46a"><div class="ttname"><a href="group__l4sys__defines.html#ga72341295822842d4830284fa77b9a46a">L4_CONSTEXPR</a></div><div class="ttdeci">#define L4_CONSTEXPR</div><div class="ttdoc">Constexpr function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00194">compiler.h:194</a></div></div>
<div class="ttc" id="al4_2sys_2l4int_8h_html"><div class="ttname"><a href="l4_2sys_2l4int_8h.html">l4int.h</a></div><div class="ttdoc">Fixed sized integer types, generic version.</div></div>
<div class="ttc" id="astructl4__timeout__s_html"><div class="ttname"><a href="structl4__timeout__s.html">l4_timeout_s</a></div><div class="ttdoc">Basic timeout specification.</div><div class="ttdef"><b>Definition</b> <a href="#l00040">__timeout.h:40</a></div></div>
<div class="ttc" id="astructl4__timeout__s_html_a21ffd90db09f5ce67eaabe0cf616de5e"><div class="ttname"><a href="structl4__timeout__s.html#a21ffd90db09f5ce67eaabe0cf616de5e">l4_timeout_s::t</a></div><div class="ttdeci">l4_uint16_t t</div><div class="ttdoc">timeout value</div><div class="ttdef"><b>Definition</b> <a href="#l00041">__timeout.h:41</a></div></div>
<div class="ttc" id="aunionl4__timeout__t_html"><div class="ttname"><a href="unionl4__timeout__t.html">l4_timeout_t</a></div><div class="ttdoc">Timeout pair.</div><div class="ttdef"><b>Definition</b> <a href="#l00052">__timeout.h:53</a></div></div>
<div class="ttc" id="aunionl4__timeout__t_html_a13e6b984a65ded4e9fa25eb614a73c87"><div class="ttname"><a href="unionl4__timeout__t.html#a13e6b984a65ded4e9fa25eb614a73c87">l4_timeout_t::p</a></div><div class="ttdeci">struct l4_timeout_t::@311374065204270174372252366326004043071275262153 p</div><div class="ttdoc">combined timeout</div></div>
<div class="ttc" id="aunionl4__timeout__t_html_a725392ca39e3c206b5732521ff423e76"><div class="ttname"><a href="unionl4__timeout__t.html#a725392ca39e3c206b5732521ff423e76">l4_timeout_t::raw</a></div><div class="ttdeci">l4_uint32_t raw</div><div class="ttdoc">raw value</div><div class="ttdef"><b>Definition</b> <a href="#l00054">__timeout.h:54</a></div></div>
<div class="ttc" id="aunionl4__timeout__t_html_a9e20b6f3f5669761952fe8c0d93662fd"><div class="ttname"><a href="unionl4__timeout__t.html#a9e20b6f3f5669761952fe8c0d93662fd">l4_timeout_t::snd</a></div><div class="ttdeci">l4_timeout_s snd</div><div class="ttdoc">send timeout</div><div class="ttdef"><b>Definition</b> <a href="#l00062">__timeout.h:62</a></div></div>
<div class="ttc" id="aunionl4__timeout__t_html_ad701def0cd596dd740df297e89298ea6"><div class="ttname"><a href="unionl4__timeout__t.html#ad701def0cd596dd740df297e89298ea6">l4_timeout_t::rcv</a></div><div class="ttdeci">l4_timeout_s rcv</div><div class="ttdoc">receive timeout</div><div class="ttdef"><b>Definition</b> <a href="#l00061">__timeout.h:61</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__timeout.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,213 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__typeinfo.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____typeinfo_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__typeinfo.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Type information handling.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="types_source.html">cxx/types</a>&quot;</code><br />
<code>#include &quot;cxx/ipc_basics&quot;</code><br />
<code>#include &quot;cxx/capability.h&quot;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for __typeinfo.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="____typeinfo_8h__incl.svg" width="744" height="623"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="____typeinfo_8h__dep__incl.svg" width="5698" height="1136"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="____typeinfo_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-nested-classes" class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3AP_5Fdispatch_3C_20LIST_20_3E" id="r_L4_3A_3ATypeid_3A_3AP_5Fdispatch_3C_20LIST_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1P__dispatch.html">L4::Typeid::P_dispatch&lt; LIST &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use for protocol based dispatch stage. <a href="structL4_1_1Typeid_1_1P__dispatch.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ADetail_3A_3ARpcs_5Fend" id="r_L4_3A_3ATypeid_3A_3ADetail_3A_3ARpcs_5Fend"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Detail_1_1Rpcs__end.html">L4::Typeid::Detail::Rpcs_end</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal end-of-list marker. <a href="structL4_1_1Typeid_1_1Detail_1_1Rpcs__end.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20X_20_3E" id="r_L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20X_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs.html">L4::Typeid::Detail::_Rpcs&lt; OPCODE, O, X &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty list of RPCs. <a href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20R_2C_20X_2E_2E_2E_20_3E" id="r_L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20R_2C_20X_2E_2E_2E_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01R_00_01X_8_8_8_01_4.html">L4::Typeid::Detail::_Rpcs&lt; OPCODE, O, R, X... &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Non-empty list of RPCs. <a href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01R_00_01X_8_8_8_01_4.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20R_2C_20X_2E_2E_2E_20_3E_3A_3ARpc_3C_20Y_20_3E" id="r_L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20R_2C_20X_2E_2E_2E_20_3E_3A_3ARpc_3C_20Y_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01R_00_01X_8_8_8_01_4_1_1Rpc.html">L4::Typeid::Detail::_Rpcs&lt; OPCODE, O, R, X... &gt;::Rpc&lt; Y &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the given RPC in the list. <a href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01R_00_01X_8_8_8_01_4_1_1Rpc.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20Default_5Fop_3C_20R_20_3E_20_3E_3A_3ARpc_3C_20Y_20_3E" id="r_L4_3A_3ATypeid_3A_3ADetail_3A_3A_5FRpcs_3C_20OPCODE_2C_20O_2C_20Default_5Fop_3C_20R_20_3E_20_3E_3A_3ARpc_3C_20Y_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01Default__op_3_01R_01_4_01_4_1_1Rpc.html">L4::Typeid::Detail::_Rpcs&lt; OPCODE, O, Default_op&lt; R &gt; &gt;::Rpc&lt; Y &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the given RPC in the list. <a href="structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01Default__op_3_01R_01_4_01_4_1_1Rpc.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ARaw_5Fipc_3C_20CLASS_20_3E" id="r_L4_3A_3ATypeid_3A_3ARaw_5Fipc_3C_20CLASS_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Raw__ipc.html">L4::Typeid::Raw_ipc&lt; CLASS &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">RPCs list for passing raw incoming IPC to the server object. <a href="structL4_1_1Typeid_1_1Raw__ipc.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ARpcs_3C_20RPCS_20_3E" id="r_L4_3A_3ATypeid_3A_3ARpcs_3C_20RPCS_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Rpcs.html">L4::Typeid::Rpcs&lt; RPCS &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard list of RPCs of an interface. <a href="structL4_1_1Typeid_1_1Rpcs.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ARpcs_5Fcode_3C_20OPCODE_5FTYPE_20_3E" id="r_L4_3A_3ATypeid_3A_3ARpcs_5Fcode_3C_20OPCODE_5FTYPE_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Rpcs__code.html">L4::Typeid::Rpcs_code&lt; OPCODE_TYPE &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of RPCs of an interface using a special opcode type. <a href="structL4_1_1Typeid_1_1Rpcs__code.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ARpcs_5Fcode_3C_20OPCODE_5FTYPE_20_3E_3A_3AF_3C_20RPCS_20_3E" id="r_L4_3A_3ATypeid_3A_3ARpcs_5Fcode_3C_20OPCODE_5FTYPE_20_3E_3A_3AF_3C_20RPCS_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Rpcs__code_1_1F.html">L4::Typeid::Rpcs_code&lt; OPCODE_TYPE &gt;::F&lt; RPCS &gt;</a></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ARpc_5Fnocode_3C_20OPERATION_20_3E" id="r_L4_3A_3ATypeid_3A_3ARpc_5Fnocode_3C_20OPERATION_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Rpc__nocode.html">L4::Typeid::Rpc_nocode&lt; OPERATION &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of RPCs of an interface using a single operation without an opcode. <a href="structL4_1_1Typeid_1_1Rpc__nocode.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid_3A_3ARpcs_5Fsys_3C_20ARG_20_3E" id="r_L4_3A_3ATypeid_3A_3ARpcs_5Fsys_3C_20ARG_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Typeid_1_1Rpcs__sys.html">L4::Typeid::Rpcs_sys&lt; ARG &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of RPCs typically used for kernel interfaces. <a href="structL4_1_1Typeid_1_1Rpcs__sys.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AType_5Finfo" id="r_L4_3A_3AType_5Finfo"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Type__info.html">L4::Type_info</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dynamic Type Information for <a class="el" href="namespaceL4Re.html" title="L4Re C++ Interfaces.">L4Re</a> Interfaces. <a href="structL4_1_1Type__info.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AType_5Finfo_3A_3ADemand" id="r_L4_3A_3AType_5Finfo_3A_3ADemand"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classL4_1_1Type__info_1_1Demand.html">L4::Type_info::Demand</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data type for expressing the needed receive buffers at the server-side of an interface. <a href="classL4_1_1Type__info_1_1Demand.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AType_5Finfo_3A_3ADemand_5Ft_3C_20CAPS_2C_20FLAGS_2C_20MEM_2C_20PORTS_20_3E" id="r_L4_3A_3AType_5Finfo_3A_3ADemand_5Ft_3C_20CAPS_2C_20FLAGS_2C_20MEM_2C_20PORTS_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Type__info_1_1Demand__t.html">L4::Type_info::Demand_t&lt; CAPS, FLAGS, MEM, PORTS &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template type statically describing demand of receive buffers. <a href="structL4_1_1Type__info_1_1Demand__t.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AType_5Finfo_3A_3ADemand_5Funion_5Ft_3C_20D1_2C_20D2_20_3E" id="r_L4_3A_3AType_5Finfo_3A_3ADemand_5Funion_5Ft_3C_20D1_2C_20D2_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Type__info_1_1Demand__union__t.html">L4::Type_info::Demand_union_t&lt; D1, D2 &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template type statically describing the combination of two <a class="el" href="classL4_1_1Type__info_1_1Demand.html" title="Data type for expressing the needed receive buffers at the server-side of an interface.">Demand</a> object. <a href="structL4_1_1Type__info_1_1Demand__union__t.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AKobject_5Ftypeid_3C_20T_20_3E" id="r_L4_3A_3AKobject_5Ftypeid_3C_20T_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Kobject__typeid.html">L4::Kobject_typeid&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classL4_1_1Meta.html" title="Meta interface that shall be implemented by each L4Re object and gives access to the dynamic type inf...">Meta</a> object for handling access to type information of Kobjects. <a href="structL4_1_1Kobject__typeid.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AKobject_5Ftypeid_3C_20void_20_3E" id="r_L4_3A_3AKobject_5Ftypeid_3C_20void_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Kobject__typeid_3_01void_01_4.html">L4::Kobject_typeid&lt; void &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minimalistic ID for <span class="tt">void</span> interface. <a href="structL4_1_1Kobject__typeid_3_01void_01_4.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AKobject_5Ft_3C_20Derived_2C_20Base_2C_20PROTO_2C_20S_5FDEMAND_20_3E" id="r_L4_3A_3AKobject_5Ft_3C_20Derived_2C_20Base_2C_20PROTO_2C_20S_5FDEMAND_20_3E"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classL4_1_1Kobject__t.html">L4::Kobject_t&lt; Derived, Base, PROTO, S_DEMAND &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper class to create an <a class="el" href="namespaceL4Re.html" title="L4Re C++ Interfaces.">L4Re</a> interface class that is derived from a single base class. <a href="classL4_1_1Kobject__t.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AKobject_5F2t_3C_20Derived_2C_20Base1_2C_20Base2_2C_20PROTO_2C_20S_5FDEMAND_20_3E" id="r_L4_3A_3AKobject_5F2t_3C_20Derived_2C_20Base1_2C_20Base2_2C_20PROTO_2C_20S_5FDEMAND_20_3E"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classL4_1_1Kobject__2t.html">L4::Kobject_2t&lt; Derived, Base1, Base2, PROTO, S_DEMAND &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper class to create an <a class="el" href="namespaceL4Re.html" title="L4Re C++ Interfaces.">L4Re</a> interface class that is derived from two base classes (see <span class="tt"><a class="el" href="classL4_1_1Kobject__t.html" title="Helper class to create an L4Re interface class that is derived from a single base class.">L4::Kobject_t</a></span>). <a href="classL4_1_1Kobject__2t.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AKobject_5F3t_3C_20Derived_2C_20Base1_2C_20Base2_2C_20Base3_2C_20PROTO_2C_20S_5FDEMAND_20_3E" id="r_L4_3A_3AKobject_5F3t_3C_20Derived_2C_20Base1_2C_20Base2_2C_20Base3_2C_20PROTO_2C_20S_5FDEMAND_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Kobject__3t.html">L4::Kobject_3t&lt; Derived, Base1, Base2, Base3, PROTO, S_DEMAND &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper class to create an <a class="el" href="namespaceL4Re.html" title="L4Re C++ Interfaces.">L4Re</a> interface class that is derived from three base classes (see <span class="tt"><a class="el" href="classL4_1_1Kobject__t.html" title="Helper class to create an L4Re interface class that is derived from a single base class.">L4::Kobject_t</a></span>). <a href="structL4_1_1Kobject__3t.html#details">More...</a><br /></td></tr>
<tr class="memitem:L4_3A_3AProto_5Ft_3C_20P_20_3E" id="r_L4_3A_3AProto_5Ft_3C_20P_20_3E"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structL4_1_1Proto__t.html">L4::Proto_t&lt; P &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data type for defining protocol numbers. <a href="structL4_1_1Proto__t.html#details">More...</a><br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-namespaces" class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:L4" id="r_L4"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceL4.html">L4</a></td></tr>
<tr class="memdesc:namespaceL4"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> low-level kernel interface. <br /></td></tr>
<tr class="memitem:L4_3A_3ATypeid" id="r_L4_3A_3ATypeid"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceL4_1_1Typeid.html">L4::Typeid</a></td></tr>
<tr class="memdesc:namespaceL4_1_1Typeid"><td class="mdescLeft">&#160;</td><td class="mdescRight">Definition of interface data-type helpers. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-typedef-members" class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a037b99ac2eb59d597e1e41c06619d487" id="r_a037b99ac2eb59d597e1e41c06619d487"><td class="memItemLeft" align="right" valign="top"><a id="a037b99ac2eb59d597e1e41c06619d487" name="a037b99ac2eb59d597e1e41c06619d487"></a>
typedef int&#160;</td><td class="memItemRight" valign="bottom"><b>L4::Opcode</b></td></tr>
<tr class="memdesc:a037b99ac2eb59d597e1e41c06619d487"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data type for RPC opcodes. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-enum-members" class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ae9cf58a7c791432c3132efdd12f4dfc7" id="r_ae9cf58a7c791432c3132efdd12f4dfc7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="namespaceL4.html#ae9cf58a7c791432c3132efdd12f4dfc7aee065cbb7d28b97710ed4d87ab34367e">L4::PROTO_ANY</a> = 0
, <a class="el" href="namespaceL4.html#ae9cf58a7c791432c3132efdd12f4dfc7a051f2204cdcb44d7d3ca9f6d5d424be2">L4::PROTO_EMPTY</a> = -19
}</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga97e693dfd1d5e0539507686c133ba05d" id="r_ga97e693dfd1d5e0539507686c133ba05d"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:ga97e693dfd1d5e0539507686c133ba05d template"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structL4_1_1Type__info.html">Type_info</a> const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__kobject__rtti.html#ga97e693dfd1d5e0539507686c133ba05d">L4::kobject_typeid</a> () noexcept</td></tr>
<tr class="memdesc:ga97e693dfd1d5e0539507686c133ba05d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the <a class="el" href="structL4_1_1Type__info.html" title="Dynamic Type Information for L4Re Interfaces.">L4::Type_info</a> for the <a class="el" href="namespaceL4Re.html" title="L4Re C++ Interfaces.">L4Re</a> interface given in <span class="tt">T</span>. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Type information handling. </p>
<p class="definition">Definition in file <a class="el" href="____typeinfo_8h_source.html">__typeinfo.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="____typeinfo_8h.html">__typeinfo.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,22 @@
var ____typeinfo_8h =
[
[ "L4::Typeid::P_dispatch< LIST >", "structL4_1_1Typeid_1_1P__dispatch.html", null ],
[ "L4::Typeid::Detail::Rpcs_end", "structL4_1_1Typeid_1_1Detail_1_1Rpcs__end.html", null ],
[ "L4::Typeid::Detail::_Rpcs< OPCODE, O, X >", "structL4_1_1Typeid_1_1Detail_1_1__Rpcs.html", null ],
[ "L4::Typeid::Detail::_Rpcs< OPCODE, O, R, X... >", "structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01R_00_01X_8_8_8_01_4.html", "structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01R_00_01X_8_8_8_01_4" ],
[ "L4::Typeid::Detail::_Rpcs< OPCODE, O, R, X... >::Rpc< Y >", "structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01R_00_01X_8_8_8_01_4_1_1Rpc.html", null ],
[ "L4::Typeid::Detail::_Rpcs< OPCODE, O, Default_op< R > >::Rpc< Y >", "structL4_1_1Typeid_1_1Detail_1_1__Rpcs_3_01OPCODE_00_01O_00_01Default__op_3_01R_01_4_01_4_1_1Rpc.html", null ],
[ "L4::Typeid::Raw_ipc< CLASS >", "structL4_1_1Typeid_1_1Raw__ipc.html", null ],
[ "L4::Typeid::Rpcs< RPCS >", "structL4_1_1Typeid_1_1Rpcs.html", null ],
[ "L4::Typeid::Rpcs_code< OPCODE_TYPE >", "structL4_1_1Typeid_1_1Rpcs__code.html", "structL4_1_1Typeid_1_1Rpcs__code" ],
[ "L4::Typeid::Rpcs_code< OPCODE_TYPE >::F< RPCS >", "structL4_1_1Typeid_1_1Rpcs__code_1_1F.html", null ],
[ "L4::Typeid::Rpc_nocode< OPERATION >", "structL4_1_1Typeid_1_1Rpc__nocode.html", null ],
[ "L4::Typeid::Rpcs_sys< ARG >", "structL4_1_1Typeid_1_1Rpcs__sys.html", null ],
[ "L4::Type_info::Demand", "classL4_1_1Type__info_1_1Demand.html", "classL4_1_1Type__info_1_1Demand" ],
[ "L4::Type_info::Demand_t< CAPS, FLAGS, MEM, PORTS >", "structL4_1_1Type__info_1_1Demand__t.html", null ],
[ "L4::Type_info::Demand_union_t< D1, D2 >", "structL4_1_1Type__info_1_1Demand__union__t.html", null ],
[ "L4::Kobject_typeid< void >", "structL4_1_1Kobject__typeid_3_01void_01_4.html", null ],
[ "L4::Proto_t< P >", "structL4_1_1Proto__t.html", null ],
[ "L4::Opcode", "namespaceL4.html#a037b99ac2eb59d597e1e41c06619d487", null ],
[ "L4::kobject_typeid", "group__l4__kobject__rtti.html#ga97e693dfd1d5e0539507686c133ba05d", null ]
];

View File

@@ -0,0 +1,361 @@
<map id="l4/sys/__typeinfo.h" name="l4/sys/__typeinfo.h">
<area shape="rect" id="Node000001" title="Type information handling." alt="" coords="1181,5,1325,31"/>
<area shape="rect" id="Node000002" href="$ipc__client.html" title=" " alt="" coords="3443,387,3597,412"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="1340,21,1720,45,2263,87,2546,114,2811,146,3038,183,3131,202,3208,223,3300,260,3387,306,3459,351,3506,384,3503,389,3456,356,3384,311,3298,265,3206,228,3130,207,3037,188,2810,152,2546,120,2263,92,1720,50,1339,27"/>
<area shape="rect" id="Node000033" href="$ipc__epiface_source.html" title=" " alt="" coords="741,387,907,412"/>
<area shape="poly" id="edge31_Node000001_Node000033" title=" " alt="" coords="1168,32,1059,50,943,78,893,96,852,116,825,139,818,151,816,164,816,239,820,324,825,386,820,387,814,324,811,239,811,163,813,149,821,135,849,112,891,91,942,73,1058,45,1167,27"/>
<area shape="rect" id="Node000050" href="$ipc__iface.html" title="Interface Definition Language." alt="" coords="4301,79,4451,104"/>
<area shape="poly" id="edge70_Node000001_Node000050" title=" " alt="" coords="1339,19,4301,86,4301,91,1339,24"/>
<area shape="rect" id="Node000096" href="$sys_2cxx_2ipc__server_source.html" title=" " alt="" coords="1174,152,1333,177"/>
<area shape="poly" id="edge255_Node000001_Node000096" title=" " alt="" coords="1256,45,1256,152,1251,152,1251,45"/>
<area shape="rect" id="Node000142" href="$kobject_source.html" title=" " alt="" coords="1037,79,1147,104"/>
<area shape="poly" id="edge256_Node000001_Node000142" title=" " alt="" coords="1216,39,1119,81,1117,76,1214,34"/>
<area shape="rect" id="Node000003" href="$l4virtio_source.html" title=" " alt="" coords="2283,555,2418,581"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="3430,415,3073,463,3046,472,3026,483,3006,493,2978,503,2823,534,2667,554,2527,564,2418,569,2418,563,2526,559,2666,549,2822,529,2977,497,3004,488,3023,478,3044,467,3071,457,3430,409"/>
<area shape="rect" id="Node000030" href="$dataspace__impl_8h.html" title="Dataspace client stub implementation." alt="" coords="3443,460,3597,500"/>
<area shape="poly" id="edge28_Node000002_Node000030" title=" " alt="" coords="3523,426,3523,460,3517,460,3517,426"/>
<area shape="rect" id="Node000031" href="$namespace__impl_8h.html" title="Namespace client stub implementation." alt="" coords="2699,460,2861,500"/>
<area shape="poly" id="edge29_Node000002_Node000031" title=" " alt="" coords="3430,409,3179,428,3027,443,2875,463,2862,465,2861,459,2874,457,3027,438,3179,423,3429,403"/>
<area shape="rect" id="Node000032" href="$rm__impl_8h.html" title="Region map client stub implementation." alt="" coords="2797,555,2952,581"/>
<area shape="poly" id="edge30_Node000002_Node000032" title=" " alt="" coords="3430,415,3314,435,3187,463,3130,481,3073,503,2909,558,2908,553,3071,497,3128,476,3186,457,3313,430,3429,410"/>
<area shape="rect" id="Node000004" href="$client_2l4virtio_source.html" title=" " alt="" coords="3839,724,3963,764"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="2373,588,2430,634,2466,656,2505,673,2562,689,2629,700,2788,714,2968,719,3161,717,3536,710,3698,711,3827,721,3840,723,3839,729,3826,727,3698,717,3536,715,3161,722,2968,724,2787,720,2629,706,2561,694,2503,679,2464,661,2427,638,2370,592"/>
<area shape="rect" id="Node000005" href="$client_2virtio-block_source.html" title=" " alt="" coords="3939,812,4063,852"/>
<area shape="poly" id="edge6_Node000003_Node000005" title=" " alt="" coords="2363,593,2382,633,2410,680,2449,726,2472,746,2497,761,2689,773,3118,792,3939,826,3939,831,3118,798,2689,779,2495,767,2469,750,2445,730,2406,683,2377,635,2358,595"/>
<area shape="rect" id="Node000006" href="$virtio-net_source.html" title=" " alt="" coords="3331,812,3455,852"/>
<area shape="poly" id="edge7_Node000003_Node000006" title=" " alt="" coords="2345,595,2336,632,2331,678,2337,723,2346,744,2359,762,2378,774,2411,784,2508,802,2639,814,2790,822,3098,829,3331,829,3331,834,3098,834,2790,827,2639,819,2508,807,2409,790,2376,779,2356,766,2341,747,2332,725,2326,678,2331,631,2340,594"/>
<area shape="rect" id="Node000007" href="$server_2l4virtio_source.html" title=" " alt="" coords="1769,636,1898,676"/>
<area shape="poly" id="edge8_Node000003_Node000007" title=" " alt="" coords="2287,586,2264,591,2065,624,1898,648,1898,643,2064,619,2264,585,2286,581"/>
<area shape="rect" id="Node000011" href="$virtio-gpio-device_source.html" title=" " alt="" coords="965,724,1107,764"/>
<area shape="poly" id="edge23_Node000003_Node000011" title=" " alt="" coords="2270,581,2170,591,2022,600,1907,604,1793,613,1649,639,1618,648,1595,658,1572,669,1541,679,1424,700,1331,707,1238,712,1120,727,1107,729,1106,724,1120,721,1238,707,1331,702,1423,695,1539,673,1570,664,1593,653,1616,643,1647,633,1792,607,1907,598,2022,595,2169,585,2269,575"/>
<area shape="rect" id="Node000012" href="$virtio-i2c-device_source.html" title=" " alt="" coords="1131,724,1263,764"/>
<area shape="poly" id="edge24_Node000003_Node000012" title=" " alt="" coords="2270,581,1964,614,1758,639,1727,648,1704,658,1680,669,1649,679,1264,736,1263,731,1647,673,1678,664,1702,653,1725,643,1757,633,1964,608,2269,575"/>
<area shape="rect" id="Node000013" href="$virtio-rng-device_source.html" title=" " alt="" coords="1978,724,2113,764"/>
<area shape="poly" id="edge25_Node000003_Node000013" title=" " alt="" coords="2320,590,2080,726,2077,722,2318,585"/>
<area shape="rect" id="Node000014" href="$virtio-scmi-device_source.html" title=" " alt="" coords="1809,724,1953,764"/>
<area shape="poly" id="edge26_Node000003_Node000014" title=" " alt="" coords="2307,588,2165,639,1931,726,1929,721,2163,633,2305,583"/>
<area shape="rect" id="Node000015" href="$l4re-snapshot-25_808_80_2src_2l4_2pkg_2virtio-net-switch_2server_2switch_2virtio__net_8h_source.html" title=" " alt="" coords="1493,724,1683,764"/>
<area shape="poly" id="edge27_Node000003_Node000015" title=" " alt="" coords="2285,586,2058,639,1911,679,1684,727,1683,722,1910,673,2057,633,2284,581"/>
<area shape="poly" id="edge4_Node000004_Node000005" title=" " alt="" coords="3936,771,3981,810,3977,814,3932,775"/>
<area shape="poly" id="edge5_Node000004_Node000006" title=" " alt="" coords="3826,767,3619,803,3456,826,3455,820,3618,797,3826,761"/>
<area shape="rect" id="Node000008" href="$server_2virtio-block_source.html" title=" " alt="" coords="1339,724,1469,764"/>
<area shape="poly" id="edge9_Node000007_Node000008" title=" " alt="" coords="1756,677,1750,679,1616,702,1482,727,1469,729,1468,724,1481,721,1615,697,1749,673,1755,672"/>
<area shape="poly" id="edge10_Node000007_Node000011" title=" " alt="" coords="1756,668,1648,679,1499,691,1384,697,1268,707,1120,727,1107,729,1106,724,1120,721,1267,702,1383,692,1499,685,1648,673,1755,663"/>
<area shape="poly" id="edge11_Node000007_Node000012" title=" " alt="" coords="1756,678,1750,679,1632,696,1539,705,1328,727,1264,735,1263,730,1328,721,1539,700,1631,691,1749,673,1755,672"/>
<area shape="poly" id="edge12_Node000007_Node000013" title=" " alt="" coords="1893,679,2000,722,1998,726,1891,684"/>
<area shape="poly" id="edge13_Node000007_Node000014" title=" " alt="" coords="1853,687,1873,722,1868,725,1848,689"/>
<area shape="poly" id="edge14_Node000007_Node000015" title=" " alt="" coords="1767,683,1643,727,1641,721,1766,678"/>
<area shape="rect" id="Node000016" href="$port__l4virtio_8h_source.html" title=" " alt="" coords="1473,1091,1681,1131"/>
<area shape="poly" id="edge15_Node000015_Node000016" title=" " alt="" coords="1600,776,1612,828,1623,895,1626,969,1623,1007,1616,1043,1606,1069,1593,1092,1588,1089,1601,1067,1611,1042,1617,1006,1620,969,1617,895,1607,829,1595,778"/>
<area shape="rect" id="Node000020" href="$request_8h_source.html" title=" " alt="" coords="1372,900,1551,940"/>
<area shape="poly" id="edge16_Node000015_Node000020" title=" " alt="" coords="1569,777,1514,854,1478,901,1474,898,1510,850,1565,774"/>
<area shape="rect" id="Node000027" href="$request__l4virtio_8h_source.html" title=" " alt="" coords="1434,988,1601,1043"/>
<area shape="poly" id="edge19_Node000015_Node000027" title=" " alt="" coords="1591,778,1585,854,1577,898,1565,941,1553,967,1539,989,1535,987,1549,964,1560,939,1572,897,1579,853,1585,778"/>
<area shape="rect" id="Node000028" href="$vlan_8h_source.html" title=" " alt="" coords="1343,812,1500,852"/>
<area shape="poly" id="edge20_Node000015_Node000028" title=" " alt="" coords="1541,773,1459,814,1457,810,1538,768"/>
<area shape="poly" id="edge17_Node000020_Node000027" title=" " alt="" coords="1482,950,1504,987,1499,989,1477,953"/>
<area shape="poly" id="edge18_Node000027_Node000016" title=" " alt="" coords="1544,1053,1567,1089,1563,1092,1540,1056"/>
<area shape="poly" id="edge22_Node000028_Node000020" title=" " alt="" coords="1438,863,1455,899,1450,901,1433,866"/>
<area shape="rect" id="Node000018" href="$main_8cc_source.html" title=" " alt="" coords="729,900,897,940"/>
<area shape="poly" id="edge21_Node000028_Node000018" title=" " alt="" coords="1329,853,1320,855,1091,887,898,912,897,906,1090,882,1320,849,1329,848"/>
<area shape="poly" id="edge33_Node000033_Node000008" title=" " alt="" coords="818,426,809,459,802,500,802,545,813,587,831,619,851,641,876,657,910,674,962,694,1007,707,1048,713,1088,715,1171,714,1220,716,1276,721,1339,730,1339,736,1276,727,1219,721,1171,719,1088,720,1048,718,1006,712,960,699,908,678,873,662,847,645,827,622,808,589,797,545,797,500,803,458,813,424"/>
<area shape="poly" id="edge34_Node000033_Node000011" title=" " alt="" coords="728,404,553,407,349,417,255,424,174,434,114,447,95,454,83,462,78,471,76,479,84,499,110,534,139,552,174,566,217,586,313,638,357,656,415,673,490,691,567,705,719,725,858,735,965,739,965,745,857,741,719,730,566,711,489,696,414,679,355,661,311,642,215,590,172,571,137,557,106,537,79,501,71,479,73,469,79,458,92,449,113,442,173,429,254,419,349,411,552,402,728,399"/>
<area shape="poly" id="edge35_Node000033_Node000012" title=" " alt="" coords="728,403,636,406,539,415,455,433,424,446,403,462,398,471,396,479,404,499,418,520,433,535,467,554,507,567,554,586,655,636,701,655,761,673,860,695,938,702,1018,707,1119,721,1131,724,1130,729,1118,727,1017,713,938,708,859,700,759,679,699,660,653,641,552,590,505,572,465,559,430,539,414,523,399,501,391,480,393,469,399,458,421,442,453,428,538,410,635,401,728,397"/>
<area shape="poly" id="edge36_Node000033_Node000013" title=" " alt="" coords="920,409,928,409,998,415,1057,415,1159,413,1208,415,1259,421,1316,435,1381,458,1397,467,1408,477,1418,488,1433,498,1502,528,1563,546,1619,558,1672,565,1725,572,1781,584,1843,603,1912,634,1946,654,1978,678,2028,722,2025,726,1975,682,1943,659,1909,638,1841,608,1780,589,1724,578,1671,570,1618,563,1562,552,1500,533,1431,502,1415,492,1405,481,1394,471,1379,462,1314,440,1258,426,1207,420,1159,419,1057,421,997,420,928,415,920,414"/>
<area shape="poly" id="edge69_Node000033_Node000015" title=" " alt="" coords="823,426,821,462,824,505,835,549,845,568,858,586,899,623,938,645,978,657,1018,662,1109,662,1160,665,1218,673,1493,723,1492,728,1217,679,1160,670,1108,667,1018,667,977,663,936,650,896,627,854,590,840,571,830,550,818,506,816,462,818,426"/>
<area shape="poly" id="edge68_Node000033_Node000018" title=" " alt="" coords="728,406,552,413,348,424,169,440,106,451,71,462,41,483,22,505,11,531,8,567,8,745,14,770,30,793,56,813,90,831,132,847,180,861,290,883,409,898,529,908,729,916,729,921,529,913,409,904,289,888,179,866,131,852,88,836,53,818,26,797,9,773,3,746,3,567,6,530,17,502,38,479,68,458,105,445,168,435,347,419,552,407,728,401"/>
<area shape="rect" id="Node000034" href="$cxx_2ipc__server.html" title="IPC server loop." alt="" coords="867,555,999,581"/>
<area shape="poly" id="edge32_Node000033_Node000034" title=" " alt="" coords="841,422,928,554,924,557,837,425"/>
<area shape="rect" id="Node000035" href="$dbg__events_source.html" title=" " alt="" coords="3027,555,3157,581"/>
<area shape="poly" id="edge37_Node000033_Node000035" title=" " alt="" coords="920,409,928,409,1090,416,1291,417,1759,415,1999,416,2226,422,2426,435,2512,445,2586,457,2616,466,2637,476,2659,487,2687,497,2829,523,3027,554,3026,559,2828,528,2686,503,2657,492,2635,481,2614,471,2585,463,2511,450,2425,440,2226,427,1999,422,1759,420,1291,422,1090,421,928,415,920,414"/>
<area shape="rect" id="Node000036" href="$name__space__svr_source.html" title=" " alt="" coords="968,467,1157,493"/>
<area shape="poly" id="edge38_Node000033_Node000036" title=" " alt="" coords="872,414,1029,465,1027,470,871,419"/>
<area shape="rect" id="Node000037" href="$ipc__legacy_source.html" title=" " alt="" coords="2413,467,2573,493"/>
<area shape="poly" id="edge39_Node000033_Node000037" title=" " alt="" coords="920,409,928,409,1271,430,1538,439,1805,445,2148,457,2413,471,2413,477,2148,463,1805,450,1538,444,1271,436,928,415,920,414"/>
<area shape="rect" id="Node000043" href="$ipc__server__loop_source.html" title=" " alt="" coords="94,467,287,493"/>
<area shape="poly" id="edge47_Node000033_Node000043" title=" " alt="" coords="728,415,283,470,282,465,727,410"/>
<area shape="rect" id="Node000047" href="$typeinfo__svr.html" title="Type information server template." alt="" coords="414,467,559,493"/>
<area shape="poly" id="edge62_Node000033_Node000047" title=" " alt="" coords="762,418,536,470,535,465,761,412"/>
<area shape="rect" id="Node000049" href="$cmd__control_source.html" title=" " alt="" coords="584,460,741,500"/>
<area shape="poly" id="edge67_Node000033_Node000049" title=" " alt="" coords="790,420,703,462,701,457,787,415"/>
<area shape="poly" id="edge40_Node000037_Node000007" title=" " alt="" coords="2425,498,2314,524,2228,550,2211,560,2200,570,2188,581,2170,590,2119,606,2048,622,1899,648,1898,642,2047,617,2118,601,2168,586,2185,576,2196,566,2208,556,2226,546,2313,519,2424,493"/>
<area shape="rect" id="Node000038" href="$dataspace__svr_source.html" title=" " alt="" coords="1819,555,1994,581"/>
<area shape="poly" id="edge41_Node000037_Node000038" title=" " alt="" coords="2423,498,2395,503,2286,518,2201,527,2116,536,2007,551,1965,558,1964,553,2006,545,2115,530,2200,521,2285,512,2394,497,2422,493"/>
<area shape="rect" id="Node000039" href="$event__svr_source.html" title=" " alt="" coords="3431,731,3575,757"/>
<area shape="poly" id="edge42_Node000037_Node000039" title=" " alt="" coords="2521,499,2757,674,2814,689,2887,699,3059,710,3233,714,3368,721,3431,729,3430,734,3368,727,3233,720,3059,715,2886,704,2813,694,2755,678,2518,503"/>
<area shape="rect" id="Node000040" href="$icu__svr_source.html" title=" " alt="" coords="3431,643,3558,669"/>
<area shape="poly" id="edge43_Node000037_Node000040" title=" " alt="" coords="2531,496,2643,542,2714,566,2786,585,3057,613,3432,646,3431,652,3057,618,2785,591,2712,571,2642,547,2529,501"/>
<area shape="rect" id="Node000041" href="$vcon__svr_source.html" title=" " alt="" coords="2019,555,2157,581"/>
<area shape="poly" id="edge45_Node000037_Node000041" title=" " alt="" coords="2426,498,2177,551,2142,558,2141,553,2175,545,2425,493"/>
<area shape="rect" id="Node000042" href="$goos__svr_source.html" title=" " alt="" coords="3544,555,3723,581"/>
<area shape="poly" id="edge46_Node000037_Node000042" title=" " alt="" coords="2587,488,2687,497,3059,522,3431,545,3544,555,3543,561,3430,551,3058,527,2686,503,2587,494"/>
<area shape="poly" id="edge44_Node000040_Node000039" title=" " alt="" coords="3500,682,3504,731,3499,731,3494,683"/>
<area shape="poly" id="edge48_Node000043_Node000034" title=" " alt="" coords="301,491,867,556,867,562,300,497"/>
<area shape="rect" id="Node000044" href="$ipc__timeout__queue_source.html" title=" " alt="" coords="266,548,409,588"/>
<area shape="poly" id="edge49_Node000043_Node000044" title=" " alt="" coords="224,497,306,546,304,550,221,502"/>
<area shape="rect" id="Node000045" href="$br__manager_source.html" title=" " alt="" coords="427,643,586,669"/>
<area shape="poly" id="edge54_Node000043_Node000045" title=" " alt="" coords="201,505,221,547,236,568,255,586,295,610,340,628,385,640,428,647,427,652,384,645,338,633,293,615,252,590,232,571,217,550,196,507"/>
<area shape="rect" id="Node000046" href="$object__registry_source.html" title=" " alt="" coords="1350,643,1527,669"/>
<area shape="poly" id="edge55_Node000043_Node000046" title=" " alt="" coords="244,494,421,545,487,568,554,585,664,603,777,618,1000,638,1198,648,1350,652,1350,657,1198,653,999,643,776,623,663,609,553,591,485,573,419,551,242,499"/>
<area shape="poly" id="edge50_Node000044_Node000045" title=" " alt="" coords="388,592,485,641,483,646,386,597"/>
<area shape="poly" id="edge51_Node000045_Node000011" title=" " alt="" coords="591,668,966,729,965,734,591,674"/>
<area shape="poly" id="edge52_Node000045_Node000012" title=" " alt="" coords="600,663,878,691,1119,721,1131,724,1130,729,1118,727,877,697,600,669"/>
<area shape="poly" id="edge53_Node000045_Node000018" title=" " alt="" coords="515,681,527,719,545,764,572,810,607,850,635,869,666,885,730,905,728,910,664,890,632,874,604,854,567,813,540,766,522,720,510,683"/>
<area shape="poly" id="edge56_Node000046_Node000004" title=" " alt="" coords="1541,662,1757,673,1960,678,2210,680,2793,681,3093,684,3376,691,3626,702,3827,721,3840,723,3839,729,3826,727,3626,708,3376,696,3093,689,2793,687,2210,685,1959,684,1757,679,1541,667"/>
<area shape="poly" id="edge57_Node000046_Node000005" title=" " alt="" coords="1542,667,1640,688,1692,703,1741,722,1758,732,1770,743,1781,753,1798,761,1844,771,1912,780,2107,793,2355,801,2629,805,3468,809,3939,826,3939,831,3468,815,2629,810,2354,806,2107,798,1912,785,1843,777,1796,767,1778,758,1766,747,1755,736,1739,726,1690,708,1639,693,1541,672"/>
<area shape="poly" id="edge58_Node000046_Node000011" title=" " alt="" coords="1371,674,1121,727,1108,729,1106,724,1119,721,1370,669"/>
<area shape="poly" id="edge59_Node000046_Node000012" title=" " alt="" coords="1394,676,1251,726,1250,721,1392,671"/>
<area shape="poly" id="edge60_Node000046_Node000014" title=" " alt="" coords="1514,669,1791,721,1810,725,1809,730,1790,727,1513,674"/>
<area shape="poly" id="edge61_Node000046_Node000018" title=" " alt="" coords="1336,663,1232,669,1121,680,1021,699,983,711,955,726,940,740,931,754,923,784,917,817,910,835,898,854,872,881,845,902,841,898,869,877,894,850,905,833,911,816,918,783,926,752,936,736,952,722,981,706,1020,694,1120,675,1232,663,1336,657"/>
<area shape="poly" id="edge63_Node000047_Node000034" title=" " alt="" coords="552,493,573,497,868,553,867,558,571,503,551,498"/>
<area shape="rect" id="Node000048" href="$re_2util_2meta_source.html" title=" " alt="" coords="565,555,680,581"/>
<area shape="poly" id="edge64_Node000047_Node000048" title=" " alt="" coords="518,498,606,553,603,557,515,502"/>
<area shape="poly" id="edge65_Node000048_Node000007" title=" " alt="" coords="694,573,856,585,1768,648,1768,653,856,591,694,578"/>
<area shape="poly" id="edge66_Node000048_Node000018" title=" " alt="" coords="620,595,613,646,611,714,615,750,622,785,634,819,653,850,669,867,687,881,730,900,728,905,685,886,665,871,649,854,630,822,617,787,609,750,606,714,608,646,615,594"/>
<area shape="poly" id="edge157_Node000050_Node000002" title=" " alt="" coords="4287,98,4163,103,4021,114,3889,130,3835,141,3796,154,3749,179,3705,209,3627,277,3567,342,3530,388,3526,385,3563,339,3623,273,3702,204,3747,174,3794,150,3834,136,3888,125,4020,108,4163,98,4287,92"/>
<area shape="rect" id="Node000051" href="$dataspace.html" title="Dataspace interface." alt="" coords="3804,387,3927,412"/>
<area shape="poly" id="edge71_Node000050_Node000051" title=" " alt="" coords="4354,115,4307,154,4200,252,4138,305,4087,341,4047,359,4005,373,3927,391,3926,386,4004,368,4045,354,4084,336,4135,301,4196,248,4304,150,4350,111"/>
<area shape="rect" id="Node000063" href="$dma__space.html" title=" " alt="" coords="4459,467,4589,493"/>
<area shape="poly" id="edge133_Node000050_Node000063" title=" " alt="" coords="4465,92,4635,98,4833,108,5007,125,5068,136,5103,150,5133,182,5147,215,5157,298,5163,320,5163,330,5157,340,5142,353,5124,362,5076,375,5019,381,4957,382,4832,381,4779,383,4738,389,4682,407,4629,429,4546,469,4544,465,4627,424,4681,402,4737,384,4778,378,4832,376,4957,377,5019,375,5075,370,5122,357,5139,348,5153,337,5158,329,5158,321,5152,299,5142,216,5129,185,5100,154,5067,141,5006,130,4833,114,4634,103,4465,97"/>
<area shape="rect" id="Node000068" href="$event_source.html" title=" " alt="" coords="4459,555,4551,581"/>
<area shape="poly" id="edge134_Node000050_Node000068" title=" " alt="" coords="4464,92,4641,98,4849,108,5032,125,5096,136,5133,150,5150,166,5158,183,5168,225,5190,285,5192,311,5188,326,5178,340,5166,350,5146,359,5087,376,4921,410,4753,439,4690,452,4654,462,4628,480,4603,502,4524,557,4521,553,4600,498,4625,476,4652,458,4689,447,4752,434,4920,405,5086,371,5144,354,5163,345,5174,337,5183,323,5187,311,5185,286,5163,226,5153,184,5146,169,5131,154,5095,142,5031,131,4848,114,4640,103,4464,97"/>
<area shape="rect" id="Node000073" href="$remote__access_source.html" title=" " alt="" coords="3673,467,3826,493"/>
<area shape="poly" id="edge153_Node000050_Node000073" title=" " alt="" coords="4319,110,4211,145,4071,202,3997,239,3925,283,3856,332,3794,388,3779,408,3768,430,3755,468,3750,466,3763,428,3775,405,3790,385,3852,328,3922,278,3995,235,4069,197,4209,140,4318,105"/>
<area shape="rect" id="Node000074" href="$rm.html" title="Region mapper interface." alt="" coords="3294,467,3367,493"/>
<area shape="poly" id="edge154_Node000050_Node000074" title=" " alt="" coords="4296,109,4211,128,4121,155,4040,186,3974,218,3865,282,3757,348,3691,381,3610,415,3497,445,3368,474,3367,468,3495,440,3608,409,3689,376,3755,343,3863,278,3971,213,4038,181,4119,149,4210,123,4295,104"/>
<area shape="rect" id="Node000084" href="$goos_source.html" title=" " alt="" coords="4054,467,4181,493"/>
<area shape="poly" id="edge155_Node000050_Node000084" title=" " alt="" coords="4465,103,4669,140,4788,165,4903,194,5004,227,5080,262,5105,280,5121,300,5124,320,5113,340,5097,354,5077,364,5026,379,4964,386,4896,388,4761,387,4703,386,4658,389,4389,432,4177,470,4176,465,4388,426,4657,384,4703,381,4761,381,4896,383,4964,381,5025,373,5075,359,5094,349,5109,337,5118,319,5116,302,5102,284,5077,266,5002,232,4902,200,4787,170,4668,145,4464,109"/>
<area shape="rect" id="Node000087" href="$debug.html" title="Debug interface." alt="" coords="4329,306,4423,331"/>
<area shape="poly" id="edge132_Node000050_Node000087" title=" " alt="" coords="4379,118,4379,306,4373,306,4373,118"/>
<area shape="rect" id="Node000088" href="$inhibitor_source.html" title=" " alt="" coords="5325,306,5435,331"/>
<area shape="poly" id="edge135_Node000050_Node000088" title=" " alt="" coords="4465,92,4706,99,5006,110,5266,127,5351,138,5377,143,5391,150,5404,169,5410,190,5410,234,5400,276,5388,307,5383,305,5395,274,5405,234,5405,190,5399,171,5388,154,5376,148,5350,143,5265,132,5005,116,4706,104,4465,97"/>
<area shape="rect" id="Node000089" href="$itas_source.html" title=" " alt="" coords="2886,467,2965,493"/>
<area shape="poly" id="edge137_Node000050_Node000089" title=" " alt="" coords="4288,94,4177,97,4041,106,3892,124,3817,138,3745,155,3651,183,3575,213,3509,245,3449,278,3324,346,3249,380,3157,415,3105,430,3065,439,3024,448,2973,463,2953,470,2951,465,2971,457,3023,443,3063,434,3104,425,3155,409,3247,375,3322,341,3447,273,3507,240,3573,208,3650,178,3743,149,3816,132,3891,119,4040,101,4177,92,4288,89"/>
<area shape="rect" id="Node000090" href="$mem__alloc.html" title="Memory allocator interface." alt="" coords="4979,467,5106,493"/>
<area shape="poly" id="edge138_Node000050_Node000090" title=" " alt="" coords="4464,92,4696,99,4981,111,5228,128,5309,138,5334,144,5347,150,5356,161,5361,175,5361,191,5356,211,5344,235,5324,264,5258,341,5237,358,5219,368,5176,389,5060,469,5057,465,5173,384,5216,363,5234,353,5254,337,5320,261,5339,233,5351,209,5356,191,5355,176,5351,164,5344,154,5332,149,5308,143,5228,133,4981,116,4696,105,4464,97"/>
<area shape="rect" id="Node000091" href="$mmio__space.html" title="Interface definition to emit MMIO&#45;like accesses via IPC." alt="" coords="4448,306,4587,331"/>
<area shape="poly" id="edge141_Node000050_Node000091" title=" " alt="" coords="4393,114,4512,304,4508,307,4388,117"/>
<area shape="rect" id="Node000092" href="$namespace.html" title="Namespace interface." alt="" coords="1707,387,1837,412"/>
<area shape="poly" id="edge142_Node000050_Node000092" title=" " alt="" coords="4288,96,3900,101,3346,111,2784,128,2550,140,2372,155,2269,161,2175,158,2090,154,2011,153,1938,161,1903,171,1869,185,1836,204,1803,229,1771,261,1738,300,1733,310,1732,321,1737,345,1750,367,1763,385,1759,388,1745,370,1732,347,1726,321,1728,309,1734,297,1767,257,1800,225,1833,199,1867,180,1902,166,1937,156,2011,148,2090,148,2176,153,2269,155,2372,149,2549,135,2784,123,3346,106,3900,95,4288,91"/>
<area shape="rect" id="Node000093" href="$parent.html" title="Parent interface." alt="" coords="4155,306,4253,331"/>
<area shape="poly" id="edge150_Node000050_Node000093" title=" " alt="" coords="4361,117,4215,307,4211,304,4357,114"/>
<area shape="rect" id="Node000094" href="$random.html" title="Random number generator interface definition." alt="" coords="5435,643,5541,669"/>
<area shape="poly" id="edge152_Node000050_Node000094" title=" " alt="" coords="4464,89,4724,89,5055,96,5215,103,5354,114,5460,129,5497,139,5520,150,5548,174,5568,203,5582,234,5591,268,5595,304,5594,342,5583,418,5563,491,5538,557,5497,644,5492,642,5533,555,5557,489,5578,417,5589,341,5589,305,5586,269,5577,236,5563,205,5544,178,5517,154,5495,144,5459,135,5353,119,5214,109,5055,101,4724,95,4464,95"/>
<area shape="rect" id="Node000095" href="$arm__smccc.html" title="ARM secure monitor call functions." alt="" coords="4611,306,4749,331"/>
<area shape="poly" id="edge156_Node000050_Node000095" title=" " alt="" coords="4404,110,4666,304,4663,308,4401,114"/>
<area shape="poly" id="edge158_Node000050_Node000096" title=" " alt="" coords="4287,95,3845,97,3137,105,2283,122,1839,136,1403,155,1333,159,1333,154,1403,149,1839,131,2283,117,3137,99,3845,92,4287,90"/>
<area shape="rect" id="Node000097" href="$exception.html" title="Exception C++ interface." alt="" coords="4773,306,4901,331"/>
<area shape="poly" id="edge160_Node000050_Node000097" title=" " alt="" coords="4413,108,4815,304,4813,308,4411,112"/>
<area shape="rect" id="Node000098" href="$factory.html" title="Common factory related definitions." alt="" coords="5215,387,5326,412"/>
<area shape="poly" id="edge161_Node000050_Node000098" title=" " alt="" coords="4464,91,4728,97,5061,108,5352,125,5447,136,5477,143,5492,150,5511,173,5524,196,5532,220,5534,243,5530,267,5522,291,5493,340,5466,359,5424,374,5327,393,5326,388,5422,369,5464,354,5489,337,5518,289,5525,266,5528,243,5526,221,5519,198,5507,176,5489,154,5475,148,5447,142,5351,131,5060,114,4728,103,4464,97"/>
<area shape="rect" id="Node000099" href="$iommu_source.html" title=" " alt="" coords="5222,152,5333,177"/>
<area shape="poly" id="edge170_Node000050_Node000099" title=" " alt="" coords="4465,94,4790,113,4996,129,5203,149,5222,152,5222,157,5202,155,4995,134,4790,119,4464,99"/>
<area shape="rect" id="Node000100" href="$ipc__gate.html" title="The C++ IPC gate interface." alt="" coords="1443,467,1562,493"/>
<area shape="poly" id="edge171_Node000050_Node000100" title=" " alt="" coords="4288,96,3746,101,2965,113,2243,130,1997,141,1919,148,1878,155,1766,194,1722,215,1683,237,1646,265,1611,297,1536,388,1524,408,1515,430,1507,467,1502,466,1510,428,1519,406,1531,385,1607,294,1643,260,1680,233,1719,210,1764,189,1877,149,1919,143,1997,136,2243,125,2965,107,3746,96,4288,91"/>
<area shape="rect" id="Node000101" href="$irq.html" title="C++ Irq interface." alt="" coords="4665,467,4746,493"/>
<area shape="poly" id="edge173_Node000050_Node000101" title=" " alt="" coords="4464,92,5018,112,5286,128,5374,138,5416,150,5456,194,5470,217,5477,241,5480,266,5476,291,5466,316,5448,341,5154,398,4747,474,4746,469,5153,393,5445,336,5461,313,5471,289,5474,265,5472,242,5465,219,5452,197,5413,154,5373,144,5285,134,5018,117,4464,97"/>
<area shape="rect" id="Node000103" href="$scheduler.html" title="Scheduler object functions." alt="" coords="5565,643,5691,669"/>
<area shape="poly" id="edge253_Node000050_Node000103" title=" " alt="" coords="4464,91,4728,94,5067,104,5375,121,5486,134,5525,141,5550,150,5582,165,5607,181,5624,204,5629,236,5629,481,5631,643,5625,643,5624,481,5624,237,5619,206,5603,185,5580,170,5548,154,5523,146,5485,139,5375,126,5066,109,4728,100,4464,96"/>
<area shape="rect" id="Node000107" href="$sys_2meta.html" title="Meta interface for getting dynamic type information about objects behind capabilities." alt="" coords="1000,152,1099,177"/>
<area shape="poly" id="edge187_Node000050_Node000107" title=" " alt="" coords="4288,96,2794,113,1855,130,1460,142,1163,155,1099,160,1099,155,1162,149,1460,136,1855,125,2794,107,4288,91"/>
<area shape="rect" id="Node000129" href="$pager.html" title="Pager and Io_pager C++ interface." alt="" coords="3219,306,3320,331"/>
<area shape="poly" id="edge250_Node000050_Node000129" title=" " alt="" coords="4288,95,4102,97,3871,105,3755,112,3649,123,3559,137,3492,155,3457,170,3424,188,3363,232,3314,275,3282,308,3278,304,3310,271,3360,228,3421,184,3455,165,3490,149,3558,132,3648,118,3755,107,3870,100,4101,91,4288,90"/>
<area shape="rect" id="Node000130" href="$platform__control.html" title="Platform control object." alt="" coords="4926,306,5098,331"/>
<area shape="poly" id="edge251_Node000050_Node000130" title=" " alt="" coords="4422,106,4981,303,4979,308,4420,111"/>
<area shape="rect" id="Node000131" href="$rcv__endpoint.html" title="The C++ Receive endpoint interface." alt="" coords="2043,387,2191,412"/>
<area shape="poly" id="edge252_Node000050_Node000131" title=" " alt="" coords="4287,96,3757,103,3387,113,2994,130,2613,156,2438,173,2280,192,2143,214,2031,240,1948,269,1920,284,1901,300,1895,310,1893,318,1901,337,1922,352,1957,366,2043,385,2042,390,1956,371,1919,357,1897,340,1888,319,1890,308,1897,297,1917,280,1946,264,2029,235,2142,209,2279,187,2438,167,2612,151,2993,125,3387,108,3757,98,4287,90"/>
<area shape="rect" id="Node000133" href="$snd__destination.html" title="The C++ Sender destination interface." alt="" coords="1910,306,2077,331"/>
<area shape="poly" id="edge254_Node000050_Node000133" title=" " alt="" coords="4288,100,3915,120,3432,155,2759,214,2466,248,2090,301,2048,309,2047,303,2089,296,2465,242,2759,208,3432,149,3915,115,4288,94"/>
<area shape="poly" id="edge78_Node000051_Node000003" title=" " alt="" coords="3790,408,3468,430,3298,446,3174,463,3137,472,3109,482,3081,493,3043,503,2868,531,2693,550,2537,562,2418,567,2418,562,2536,556,2692,545,2867,526,3042,497,3079,488,3107,477,3135,467,3173,457,3297,441,3467,425,3790,402"/>
<area shape="poly" id="edge75_Node000051_Node000004" title=" " alt="" coords="3929,415,3961,432,3986,459,4001,494,4004,532,3999,571,3987,608,3953,676,3919,725,3915,722,3948,674,3982,606,3994,569,3999,532,3996,496,3982,461,3958,436,3926,419"/>
<area shape="poly" id="edge76_Node000051_Node000005" title=" " alt="" coords="3941,400,4398,419,4628,436,4711,446,4760,458,4774,467,4783,477,4791,488,4804,498,4830,509,4853,515,4897,517,4940,522,4962,531,4987,546,5009,565,5023,585,5040,635,5050,673,5054,707,5046,737,5023,766,5002,778,4969,788,4871,804,4742,816,4594,824,4292,832,4063,834,4063,828,4292,827,4594,819,4742,811,4871,799,4968,783,5000,773,5020,762,5042,735,5048,706,5045,674,5035,637,5018,587,5005,569,4984,550,4960,535,4938,527,4896,523,4853,520,4828,514,4801,502,4788,492,4779,481,4771,471,4758,462,4710,451,4628,441,4397,425,3941,405"/>
<area shape="poly" id="edge77_Node000051_Node000006" title=" " alt="" coords="3875,426,3878,462,3876,482,3869,501,3843,538,3814,560,3779,575,3735,591,3688,603,3644,606,3565,596,3528,593,3493,596,3458,609,3422,638,3407,657,3397,679,3387,727,3387,774,3392,811,3387,812,3382,774,3382,727,3392,677,3403,654,3418,634,3455,605,3492,591,3528,587,3565,591,3644,600,3687,598,3734,585,3777,570,3812,555,3839,535,3864,499,3871,481,3873,462,3869,426"/>
<area shape="poly" id="edge79_Node000051_Node000007" title=" " alt="" coords="3790,407,3609,415,2923,421,2698,426,2495,434,2336,446,2280,454,2244,462,2229,471,2219,481,2209,493,2193,502,2155,512,2107,515,1992,515,1934,516,1881,521,1839,531,1822,539,1810,550,1801,569,1803,592,1811,614,1822,634,1818,637,1806,617,1798,593,1796,568,1806,546,1819,535,1837,526,1880,515,1933,511,1992,510,2106,510,2155,506,2191,498,2206,488,2215,478,2225,467,2242,458,2279,448,2336,441,2495,429,2698,421,2923,416,3609,409,3790,402"/>
<area shape="poly" id="edge131_Node000051_Node000015" title=" " alt="" coords="3790,407,3609,415,2896,419,2663,423,2453,431,2289,444,2231,452,2193,462,2180,471,2172,481,2163,492,2149,502,2098,521,2052,529,2010,529,1969,526,1930,523,1888,523,1843,531,1793,550,1761,568,1731,590,1677,638,1633,687,1603,725,1599,722,1629,683,1673,635,1728,585,1758,564,1791,546,1842,526,1888,518,1930,518,1970,521,2010,524,2051,524,2096,516,2147,498,2160,489,2168,478,2176,467,2191,458,2230,447,2288,439,2453,426,2663,418,2896,413,3609,409,3790,402"/>
<area shape="poly" id="edge88_Node000051_Node000030" title=" " alt="" coords="3802,418,3598,464,3597,459,3801,412"/>
<area shape="poly" id="edge90_Node000051_Node000032" title=" " alt="" coords="3791,406,3498,424,3346,440,3285,451,3238,463,3220,471,3207,481,3193,492,3174,502,3074,527,2931,558,2930,553,3073,522,3172,498,3190,488,3203,477,3217,467,3236,457,3284,445,3346,435,3497,419,3790,401"/>
<area shape="poly" id="edge120_Node000051_Node000038" title=" " alt="" coords="3790,407,3609,415,3425,420,3269,421,3003,418,2876,420,2739,426,2584,439,2402,463,2357,471,2322,480,2243,503,1966,558,1965,553,2242,497,2321,475,2356,466,2401,457,2584,434,2739,421,2876,414,3003,413,3269,416,3425,415,3609,409,3790,401"/>
<area shape="poly" id="edge121_Node000051_Node000042" title=" " alt="" coords="3868,426,3861,464,3853,484,3841,502,3815,519,3776,534,3688,558,3686,553,3774,529,3812,514,3837,498,3848,482,3856,463,3862,425"/>
<area shape="rect" id="Node000052" href="$ns__fs__impl_8h_source.html" title=" " alt="" coords="2507,724,2650,764"/>
<area shape="poly" id="edge72_Node000051_Node000052" title=" " alt="" coords="3790,406,3520,424,3382,441,3326,451,3284,462,3267,471,3255,481,3243,492,3225,502,3167,520,3119,526,3072,531,3046,538,3016,550,3001,560,2992,570,2981,581,2965,590,2920,601,2862,604,2724,601,2655,600,2592,604,2540,616,2521,626,2506,638,2500,648,2499,658,2508,681,2528,703,2551,722,2548,726,2524,707,2504,684,2493,659,2495,646,2502,634,2518,621,2539,611,2591,599,2655,595,2724,595,2862,598,2919,595,2963,586,2978,577,2988,567,2998,556,3013,546,3044,533,3071,526,3119,520,3166,515,3223,498,3240,488,3251,477,3264,467,3282,458,3325,446,3381,435,3520,419,3790,401"/>
<area shape="rect" id="Node000053" href="$vfs__impl_8h_source.html" title=" " alt="" coords="3668,724,3815,764"/>
<area shape="poly" id="edge73_Node000051_Node000053" title=" " alt="" coords="3899,418,3919,436,3936,459,3951,493,3958,524,3956,554,3942,589,3928,613,3911,636,3870,674,3826,704,3786,726,3783,722,3823,700,3867,670,3907,632,3924,610,3938,587,3950,553,3953,524,3946,495,3931,461,3915,440,3895,422"/>
<area shape="rect" id="Node000054" href="$vfs_8h_source.html" title=" " alt="" coords="2009,467,2135,493"/>
<area shape="poly" id="edge74_Node000051_Node000054" title=" " alt="" coords="3790,407,3609,415,3388,421,3200,421,2880,417,2727,418,2562,424,2375,438,2155,463,2116,470,2115,465,2154,457,2375,433,2562,419,2726,413,2880,412,3200,416,3388,415,3609,409,3790,402"/>
<area shape="poly" id="edge80_Node000051_Node000063" title=" " alt="" coords="3941,406,4390,457,4460,467,4459,472,4389,463,3940,411"/>
<area shape="rect" id="Node000064" href="$vbus_source.html" title=" " alt="" coords="4695,643,4799,669"/>
<area shape="poly" id="edge127_Node000051_Node000064" title=" " alt="" coords="3941,406,4113,427,4196,442,4256,457,4288,472,4314,488,4354,521,4393,554,4418,570,4449,586,4495,600,4561,616,4695,643,4694,648,4560,621,4494,606,4447,590,4415,575,4390,558,4350,525,4311,492,4285,477,4254,463,4195,447,4112,433,3940,411"/>
<area shape="poly" id="edge82_Node000051_Node000068" title=" " alt="" coords="3940,406,4172,431,4279,445,4340,458,4489,553,4486,557,4338,462,4278,451,4172,437,3940,411"/>
<area shape="rect" id="Node000072" href="$mem__alloc__impl_8h.html" title="Memory allocator client stub implementation." alt="" coords="5048,548,5208,588"/>
<area shape="poly" id="edge89_Node000051_Node000072" title=" " alt="" coords="3941,400,4382,419,4626,436,4727,446,4803,457,4882,476,4959,500,5084,545,5082,550,4958,505,4881,481,4802,463,4726,451,4625,441,4382,425,3941,406"/>
<area shape="poly" id="edge91_Node000051_Node000073" title=" " alt="" coords="3838,422,3768,469,3765,465,3835,418"/>
<area shape="poly" id="edge93_Node000051_Node000074" title=" " alt="" coords="3791,412,3625,434,3431,463,3368,474,3367,469,3430,457,3625,429,3790,407"/>
<area shape="rect" id="Node000081" href="$stats_8h_source.html" title=" " alt="" coords="4141,636,4302,676"/>
<area shape="poly" id="edge130_Node000051_Node000081" title=" " alt="" coords="3941,404,4061,422,4129,437,4194,458,4277,494,4320,520,4348,547,4355,568,4348,589,4336,605,4321,619,4287,638,4284,633,4317,614,4332,602,4343,587,4349,568,4343,549,4317,524,4275,499,4192,462,4127,442,4060,427,3940,409"/>
<area shape="poly" id="edge122_Node000051_Node000084" title=" " alt="" coords="3916,414,4081,465,4080,470,3914,419"/>
<area shape="rect" id="Node000086" href="$options_8h_source.html" title=" " alt="" coords="662,812,839,852"/>
<area shape="poly" id="edge128_Node000051_Node000086" title=" " alt="" coords="3790,407,3609,415,3197,420,2667,422,2395,426,2138,433,1911,444,1728,463,1685,471,1652,480,1575,503,1460,526,1345,551,1207,583,1101,612,1051,630,1000,654,945,685,882,726,821,772,773,814,770,810,818,768,878,722,942,680,998,649,1049,625,1099,606,1206,578,1343,545,1459,521,1574,497,1650,475,1684,466,1728,457,1910,439,2138,427,2395,420,2667,417,3197,415,3609,409,3790,402"/>
<area shape="poly" id="edge81_Node000063_Node000064" title=" " alt="" coords="4542,503,4574,544,4616,586,4668,618,4717,641,4715,646,4665,623,4613,590,4570,548,4537,506"/>
<area shape="poly" id="edge86_Node000068_Node000039" title=" " alt="" coords="4552,583,4590,601,4624,623,4636,636,4643,649,4643,664,4634,678,4616,686,4582,692,4471,702,4150,716,3656,727,3575,735,3574,730,3656,721,4150,710,4471,697,4581,687,4615,680,4630,674,4638,662,4638,650,4632,639,4621,627,4588,606,4550,588"/>
<area shape="poly" id="edge87_Node000068_Node000064" title=" " alt="" coords="4551,583,4715,641,4713,646,4550,588"/>
<area shape="rect" id="Node000069" href="$console_source.html" title=" " alt="" coords="4514,643,4619,669"/>
<area shape="poly" id="edge83_Node000068_Node000069" title=" " alt="" coords="4524,591,4560,641,4556,644,4520,594"/>
<area shape="rect" id="Node000070" href="$event__buffer_source.html" title=" " alt="" coords="4327,643,4489,669"/>
<area shape="poly" id="edge84_Node000068_Node000070" title=" " alt="" coords="4484,592,4423,645,4420,641,4480,588"/>
<area shape="rect" id="Node000071" href="$util_2event.html" title=" " alt="" coords="4051,731,4168,757"/>
<area shape="poly" id="edge85_Node000070_Node000071" title=" " alt="" coords="4355,675,4150,734,4149,729,4354,670"/>
<area shape="poly" id="edge92_Node000073_Node000035" title=" " alt="" coords="3659,496,3610,503,3222,551,3158,560,3157,554,3221,545,3609,497,3658,491"/>
<area shape="poly" id="edge95_Node000074_Node000007" title=" " alt="" coords="3281,487,2708,520,2411,539,2273,551,2257,559,2246,569,2234,580,2217,590,2172,607,2133,616,2064,624,1994,627,1906,639,1899,640,1897,635,1905,633,1993,621,2063,619,2132,611,2170,601,2215,586,2231,576,2242,566,2254,555,2271,545,2410,533,2708,515,3280,481"/>
<area shape="poly" id="edge113_Node000074_Node000032" title=" " alt="" coords="3281,493,2936,558,2935,553,3280,488"/>
<area shape="poly" id="edge96_Node000074_Node000035" title=" " alt="" coords="3287,500,3125,558,3123,553,3285,495"/>
<area shape="poly" id="edge94_Node000074_Node000053" title=" " alt="" coords="3366,497,3453,546,3604,643,3717,722,3714,726,3601,648,3451,550,3364,501"/>
<area shape="poly" id="edge115_Node000074_Node000070" title=" " alt="" coords="3381,489,3431,497,3523,507,3601,512,3734,514,3867,519,3944,529,4035,545,4068,554,4093,564,4149,585,4261,617,4359,641,4358,646,4260,622,4147,591,4091,569,4066,559,4034,551,3944,534,3866,525,3734,519,3601,517,3522,513,3430,503,3381,494"/>
<area shape="poly" id="edge114_Node000074_Node000071" title=" " alt="" coords="3381,489,3431,497,3544,504,3690,508,3834,518,3894,529,3941,546,3972,565,4000,588,4049,641,4084,693,4106,730,4101,733,4080,695,4045,644,3997,592,3969,569,3939,550,3893,534,3833,524,3689,513,3543,510,3430,503,3381,494"/>
<area shape="rect" id="Node000075" href="$env.html" title="Environment interface." alt="" coords="3849,555,3927,581"/>
<area shape="poly" id="edge97_Node000074_Node000075" title=" " alt="" coords="3375,494,3387,497,3593,527,3849,559,3848,564,3593,532,3386,503,3374,499"/>
<area shape="rect" id="Node000077" href="$goos__fb_source.html" title=" " alt="" coords="3161,731,3332,757"/>
<area shape="poly" id="edge119_Node000074_Node000077" title=" " alt="" coords="3366,497,3406,522,3433,547,3440,568,3433,589,3421,603,3409,612,3382,619,3354,623,3340,629,3326,638,3302,661,3282,687,3255,733,3250,730,3277,684,3298,658,3322,634,3338,624,3353,618,3381,613,3407,607,3418,599,3428,587,3435,568,3428,549,3403,526,3363,502"/>
<area shape="rect" id="Node000082" href="$region__mapping.html" title="Region handling." alt="" coords="3233,555,3418,581"/>
<area shape="poly" id="edge116_Node000074_Node000082" title=" " alt="" coords="3332,507,3329,555,3323,555,3326,506"/>
<area shape="rect" id="Node000083" href="$region__mapping__svr__2_source.html" title=" " alt="" coords="3069,636,3254,676"/>
<area shape="poly" id="edge118_Node000074_Node000083" title=" " alt="" coords="3293,501,3257,522,3223,550,3191,594,3171,637,3166,635,3187,592,3219,546,3254,518,3290,497"/>
<area shape="poly" id="edge100_Node000075_Node000004" title=" " alt="" coords="3886,595,3882,633,3884,676,3897,723,3891,724,3879,676,3877,633,3881,594"/>
<area shape="poly" id="edge101_Node000075_Node000005" title=" " alt="" coords="3906,591,3942,649,3978,723,3993,770,4001,811,3996,812,3988,771,3974,725,3938,652,3901,594"/>
<area shape="poly" id="edge102_Node000075_Node000006" title=" " alt="" coords="3862,591,3723,684,3646,733,3588,766,3521,795,3456,816,3455,811,3519,790,3585,762,3643,729,3720,680,3859,586"/>
<area shape="poly" id="edge103_Node000075_Node000007" title=" " alt="" coords="3835,580,3735,591,3413,606,2864,625,1898,655,1898,650,2864,620,3413,600,3734,585,3835,574"/>
<area shape="poly" id="edge109_Node000075_Node000040" title=" " alt="" coords="3842,587,3830,591,3704,616,3578,639,3545,646,3543,641,3577,633,3703,611,3829,585,3841,582"/>
<area shape="poly" id="edge110_Node000075_Node000046" title=" " alt="" coords="3835,580,3735,591,3434,610,3179,620,2955,624,2747,625,2314,625,2059,629,1757,639,1528,651,1527,646,1757,633,2058,623,2314,619,2747,620,2955,619,3179,615,3434,604,3734,585,3835,574"/>
<area shape="poly" id="edge99_Node000075_Node000053" title=" " alt="" coords="3872,593,3759,726,3755,722,3868,589"/>
<area shape="poly" id="edge108_Node000075_Node000071" title=" " alt="" coords="3915,587,4096,729,4093,733,3911,591"/>
<area shape="rect" id="Node000060" href="$vcon__stream__impl_8h_source.html" title=" " alt="" coords="4823,724,4982,764"/>
<area shape="poly" id="edge98_Node000075_Node000060" title=" " alt="" coords="3921,585,4013,631,4071,655,4130,673,4190,685,4269,696,4461,714,4823,736,4823,742,4461,720,4268,701,4189,691,4129,679,4069,660,4011,636,3919,590"/>
<area shape="rect" id="Node000076" href="$env__ns_source.html" title=" " alt="" coords="2515,643,2642,669"/>
<area shape="poly" id="edge104_Node000075_Node000076" title=" " alt="" coords="3835,579,3735,591,3460,609,3246,616,3031,622,2756,639,2642,650,2642,644,2756,633,3031,617,3245,611,3460,604,3734,585,3835,574"/>
<area shape="poly" id="edge111_Node000075_Node000077" title=" " alt="" coords="3841,587,3830,591,3773,603,3727,610,3683,619,3629,638,3613,648,3601,658,3589,669,3572,678,3511,700,3448,717,3333,737,3332,732,3447,712,3510,695,3570,674,3586,664,3598,654,3610,644,3627,634,3682,614,3726,604,3772,598,3829,585,3840,582"/>
<area shape="poly" id="edge112_Node000075_Node000081" title=" " alt="" coords="3941,580,4148,633,4147,638,3940,585"/>
<area shape="poly" id="edge105_Node000076_Node000052" title=" " alt="" coords="2581,682,2581,724,2576,724,2576,682"/>
<area shape="poly" id="edge106_Node000076_Node000077" title=" " alt="" coords="2638,669,2662,673,2798,694,2935,711,3161,733,3161,738,2934,716,2797,699,2661,679,2637,674"/>
<area shape="poly" id="edge107_Node000077_Node000077" title=" " alt="" coords="3294,726,3337,727,3352,733,3359,744,3351,756,3332,762,3307,763,3280,759,3281,754,3308,758,3331,757,3348,752,3353,744,3349,737,3336,732,3294,732"/>
<area shape="poly" id="edge117_Node000082_Node000083" title=" " alt="" coords="3292,590,3199,638,3196,633,3290,585"/>
<area shape="poly" id="edge125_Node000084_Node000042" title=" " alt="" coords="4041,498,3698,558,3697,553,4040,492"/>
<area shape="poly" id="edge123_Node000084_Node000069" title=" " alt="" coords="4130,504,4156,547,4174,568,4196,586,4237,607,4274,619,4308,624,4342,625,4413,623,4455,626,4502,633,4531,641,4529,646,4501,639,4454,631,4413,629,4342,631,4308,630,4273,624,4235,612,4193,590,4171,572,4152,550,4126,507"/>
<area shape="poly" id="edge124_Node000084_Node000077" title=" " alt="" coords="4047,498,3947,521,3838,551,3787,571,3735,591,3688,601,3647,607,3576,610,3506,616,3467,624,3421,638,3373,660,3328,686,3262,733,3259,729,3326,682,3371,655,3419,634,3465,619,3506,610,3576,605,3646,601,3687,596,3734,585,3785,566,3836,545,3946,515,4046,493"/>
<area shape="rect" id="Node000085" href="$view_source.html" title=" " alt="" coords="4206,555,4333,581"/>
<area shape="poly" id="edge126_Node000084_Node000085" title=" " alt="" coords="4151,497,4250,553,4247,557,4148,502"/>
<area shape="poly" id="edge129_Node000086_Node000018" title=" " alt="" coords="775,862,802,898,797,901,771,865"/>
<area shape="poly" id="edge136_Node000088_Node000064" title=" " alt="" coords="5331,338,5259,363,5205,389,5190,403,5179,417,5165,446,5150,475,5138,489,5120,502,5079,521,5041,529,5005,530,4971,526,4937,523,4902,523,4865,531,4825,550,4800,571,4779,597,4754,644,4749,642,4775,594,4796,568,4823,546,4864,526,4901,518,4937,518,4971,521,5005,524,5040,524,5077,516,5117,498,5134,485,5145,472,5160,444,5175,414,5186,399,5203,384,5257,358,5329,333"/>
<area shape="poly" id="edge140_Node000090_Node000072" title=" " alt="" coords="5066,501,5111,546,5107,549,5062,504"/>
<area shape="poly" id="edge139_Node000090_Node000075" title=" " alt="" coords="4966,490,3928,566,3928,561,4965,484"/>
<area shape="poly" id="edge146_Node000092_Node000031" title=" " alt="" coords="1851,405,1900,409,2120,422,2291,427,2462,436,2680,457,2699,460,2698,465,2680,463,2461,441,2291,432,2119,427,1900,415,1851,411"/>
<area shape="poly" id="edge148_Node000092_Node000036" title=" " alt="" coords="1693,412,1220,463,1157,470,1157,465,1220,457,1692,406"/>
<area shape="poly" id="edge147_Node000092_Node000076" title=" " alt="" coords="1809,416,1889,458,1921,480,1934,489,1953,497,2023,516,2084,523,2140,523,2192,519,2245,515,2300,516,2362,524,2432,546,2474,567,2514,593,2569,641,2566,645,2510,597,2472,571,2430,550,2360,530,2300,521,2245,520,2192,524,2140,528,2084,529,2022,521,1951,503,1931,494,1918,484,1887,462,1807,420"/>
<area shape="poly" id="edge149_Node000092_Node000077" title=" " alt="" coords="1827,414,1882,433,1940,458,1969,479,1981,489,1998,498,2069,518,2130,527,2186,529,2239,526,2292,523,2349,522,2412,529,2485,545,2524,561,2573,585,2656,634,2678,656,2686,665,2700,674,2737,686,2787,698,2911,716,3044,728,3161,736,3161,741,3044,734,2910,721,2786,703,2735,692,2698,678,2683,669,2674,659,2653,638,2570,590,2522,566,2483,551,2411,534,2349,528,2292,528,2239,531,2186,534,2130,533,2068,523,1996,502,1978,493,1966,483,1937,462,1880,438,1825,419"/>
<area shape="rect" id="Node000056" href="$ns__fs_8h_source.html" title=" " alt="" coords="2768,643,2941,669"/>
<area shape="poly" id="edge143_Node000092_Node000056" title=" " alt="" coords="1851,405,1900,409,2051,414,2247,417,2346,421,2440,428,2522,440,2586,457,2614,471,2636,485,2669,515,2700,549,2743,586,2835,641,2832,646,2740,590,2696,553,2665,519,2633,489,2612,475,2584,463,2521,445,2440,433,2346,426,2246,422,2051,419,1900,415,1851,411"/>
<area shape="poly" id="edge144_Node000056_Node000052" title=" " alt="" coords="2805,675,2640,726,2639,721,2804,670"/>
<area shape="poly" id="edge145_Node000056_Node000053" title=" " alt="" coords="2955,664,3058,673,3322,696,3587,721,3668,731,3668,736,3586,727,3322,701,3057,679,2954,669"/>
<area shape="poly" id="edge151_Node000093_Node000075" title=" " alt="" coords="4214,344,4220,378,4222,420,4216,463,4208,484,4195,502,4177,516,4149,528,4076,547,3996,559,3928,566,3927,561,3995,554,4075,542,4147,523,4174,512,4191,498,4203,481,4211,462,4217,420,4215,379,4208,345"/>
<area shape="poly" id="edge159_Node000096_Node000033" title=" " alt="" coords="1221,186,847,389,844,384,1219,182"/>
<area shape="poly" id="edge163_Node000098_Node000004" title=" " alt="" coords="5273,426,5270,462,5262,505,5247,550,5222,590,5199,614,5176,632,5131,654,5081,666,5018,679,4924,694,4806,704,4530,714,4253,718,4134,721,4039,727,3964,736,3963,730,4038,721,4134,716,4253,712,4530,708,4805,699,4923,689,5017,673,5080,661,5130,649,5173,628,5195,610,5218,586,5242,547,5257,503,5265,461,5268,426"/>
<area shape="poly" id="edge164_Node000098_Node000005" title=" " alt="" coords="5301,418,5332,444,5365,478,5390,519,5397,543,5400,567,5400,658,5397,671,5387,684,5352,706,5298,726,5228,744,5047,773,4832,795,4605,811,4386,822,4064,832,4063,827,4386,817,4604,806,4832,790,5046,768,5226,738,5297,721,5350,701,5384,680,5392,669,5395,657,5395,567,5392,544,5385,522,5360,481,5329,448,5298,422"/>
<area shape="poly" id="edge169_Node000098_Node000018" title=" " alt="" coords="5201,404,4630,409,3753,420,2901,437,2587,449,2402,463,2358,471,2324,481,2290,492,2246,503,2179,513,2122,517,2025,520,1929,525,1873,535,1809,551,1731,580,1674,612,1618,645,1541,679,1481,694,1433,699,1386,706,1329,726,1314,736,1303,746,1277,766,1178,813,1075,851,978,881,896,903,895,897,977,876,1074,846,1176,808,1275,762,1300,741,1311,731,1327,722,1385,701,1432,694,1480,688,1539,673,1615,640,1672,607,1729,575,1807,545,1872,529,1928,520,2025,514,2122,512,2179,507,2245,497,2289,487,2322,476,2356,466,2401,457,2586,444,2901,432,3753,414,4630,403,5201,398"/>
<area shape="poly" id="edge168_Node000098_Node000046" title=" " alt="" coords="5201,404,4614,409,3707,419,2825,437,2499,449,2307,463,2262,471,2228,481,2194,492,2148,503,2074,513,2011,518,1903,519,1796,524,1734,533,1662,551,1602,572,1544,598,1458,646,1456,641,1542,593,1600,567,1661,545,1733,528,1795,518,1903,513,2011,512,2074,508,2148,497,2192,487,2226,476,2261,466,2306,457,2498,444,2824,432,3707,414,4614,403,5201,398"/>
<area shape="poly" id="edge167_Node000098_Node000071" title=" " alt="" coords="5278,425,5284,481,5282,553,5275,590,5262,624,5242,654,5215,678,5165,689,5063,699,4758,718,4168,743,4168,738,4757,713,5062,694,5164,684,5212,674,5238,651,5257,622,5270,588,5277,552,5279,482,5273,426"/>
<area shape="poly" id="edge165_Node000098_Node000072" title=" " alt="" coords="5254,424,5146,550,5142,546,5250,421"/>
<area shape="poly" id="edge162_Node000098_Node000060" title=" " alt="" coords="5294,421,5307,438,5317,459,5334,525,5336,554,5334,582,5326,608,5312,633,5292,656,5265,678,5244,690,5215,700,5142,717,4983,738,4982,733,5141,712,5213,695,5242,685,5263,674,5289,652,5308,630,5321,606,5329,581,5331,554,5328,526,5312,461,5303,441,5290,424"/>
<area shape="poly" id="edge166_Node000098_Node000090" title=" " alt="" coords="5225,419,5077,470,5075,465,5224,414"/>
<area shape="poly" id="edge172_Node000100_Node000046" title=" " alt="" coords="1463,501,1433,521,1410,549,1405,574,1410,599,1420,623,1432,641,1428,644,1416,625,1405,601,1400,573,1406,547,1430,517,1460,497"/>
<area shape="poly" id="edge174_Node000101_Node000003" title=" " alt="" coords="4651,495,4602,503,4326,527,4092,541,3887,547,3695,547,3297,543,3062,544,2785,551,2418,566,2418,561,2785,545,3062,539,3297,538,3695,542,3886,541,4092,536,4326,522,4601,497,4651,490"/>
<area shape="poly" id="edge175_Node000101_Node000068" title=" " alt="" coords="4667,501,4534,558,4531,553,4665,496"/>
<area shape="rect" id="Node000102" href="$icu.html" title="Interrupt controller." alt="" coords="4627,555,4709,581"/>
<area shape="poly" id="edge176_Node000101_Node000102" title=" " alt="" coords="4697,506,4676,556,4671,554,4692,504"/>
<area shape="rect" id="Node000106" href="$semaphore.html" title="Semaphore class definition." alt="" coords="4835,555,4973,581"/>
<area shape="poly" id="edge181_Node000101_Node000106" title=" " alt="" coords="4746,496,4878,553,4876,558,4744,501"/>
<area shape="poly" id="edge178_Node000102_Node000040" title=" " alt="" coords="4613,583,4564,591,4270,620,3981,639,3732,650,3558,656,3558,651,3732,645,3981,634,4270,614,4564,585,4612,578"/>
<area shape="poly" id="edge180_Node000102_Node000064" title=" " alt="" coords="4690,589,4738,641,4734,645,4686,593"/>
<area shape="poly" id="edge177_Node000102_Node000094" title=" " alt="" coords="4724,574,4824,585,5435,647,5435,652,4824,591,4723,579"/>
<area shape="poly" id="edge179_Node000102_Node000103" title=" " alt="" coords="4723,574,4824,585,5029,598,5190,602,5350,609,5443,618,5554,633,5589,641,5587,646,5553,639,5443,623,5349,614,5190,607,5029,604,4824,591,4723,579"/>
<area shape="poly" id="edge185_Node000106_Node000004" title=" " alt="" coords="4940,585,4968,604,4993,627,5005,652,5004,665,4996,678,4979,685,4946,692,4837,702,4523,715,4039,727,3964,736,3963,730,4038,721,4523,710,4837,696,4945,686,4978,680,4993,674,4999,664,5000,653,4989,630,4965,609,4937,590"/>
<area shape="poly" id="edge186_Node000106_Node000005" title=" " alt="" coords="4956,584,4991,604,5007,618,5020,635,5025,650,5025,669,5018,710,5006,747,4997,766,4976,777,4943,786,4848,802,4723,814,4580,822,4286,831,4063,833,4063,828,4286,826,4579,817,4723,808,4848,797,4942,781,4974,772,4993,762,5001,745,5013,709,5020,669,5019,651,5015,637,5003,621,4988,608,4954,588"/>
<area shape="rect" id="Node000059" href="$vcon__stream_8h_source.html" title=" " alt="" coords="4823,636,4982,676"/>
<area shape="poly" id="edge182_Node000106_Node000059" title=" " alt="" coords="4906,594,4906,636,4900,635,4901,594"/>
<area shape="poly" id="edge184_Node000059_Node000053" title=" " alt="" coords="4810,679,4660,694,4533,701,4316,701,4101,703,3976,711,3828,727,3815,729,3815,723,3828,721,3975,705,4101,698,4316,696,4533,695,4660,688,4809,673"/>
<area shape="poly" id="edge183_Node000059_Node000060" title=" " alt="" coords="4905,690,4905,724,4900,724,4900,690"/>
<area shape="poly" id="edge248_Node000107_Node000033" title=" " alt="" coords="1019,187,964,227,922,271,885,317,834,388,829,385,880,313,918,267,961,223,1016,182"/>
<area shape="poly" id="edge249_Node000107_Node000047" title=" " alt="" coords="1015,186,933,228,681,369,507,470,505,465,678,364,931,223,1012,181"/>
<area shape="poly" id="edge188_Node000107_Node000048" title=" " alt="" coords="987,181,590,260,404,300,327,319,328,400,333,434,348,458,372,477,403,498,442,520,485,537,566,557,565,562,483,542,440,525,400,502,369,481,344,461,328,436,323,401,323,316,403,294,589,255,986,176"/>
<area shape="rect" id="Node000108" href="$capability.html" title="L4::Cap related definitions." alt="" coords="3067,225,3195,251"/>
<area shape="poly" id="edge189_Node000107_Node000108" title=" " alt="" coords="1113,174,1118,175,1301,188,1545,199,2127,217,3067,233,3066,239,2127,222,1545,205,1301,193,1117,180,1112,179"/>
<area shape="poly" id="edge202_Node000108_Node000003" title=" " alt="" coords="3053,243,2735,249,2308,260,1925,277,1797,288,1757,295,1737,301,1708,325,1689,351,1685,365,1684,380,1688,395,1697,410,1712,427,1728,436,1762,441,1801,443,1823,448,1845,458,1859,468,1868,479,1876,489,1889,498,1948,512,2054,528,2283,557,2283,562,2053,533,1947,517,1887,502,1872,493,1864,482,1855,472,1843,462,1821,453,1801,448,1762,447,1726,441,1709,431,1693,414,1683,397,1679,380,1679,364,1684,349,1704,321,1735,296,1756,289,1796,283,1925,272,2308,255,2734,244,3053,238"/>
<area shape="poly" id="edge194_Node000108_Node000034" title=" " alt="" coords="3053,242,2700,246,2211,256,1750,273,1582,286,1524,293,1485,301,1404,332,1346,367,1292,409,1222,462,1197,483,1171,502,1128,521,1083,537,1000,558,999,553,1082,532,1126,516,1168,498,1194,479,1218,458,1289,405,1343,363,1402,327,1483,296,1523,288,1582,281,1750,268,2210,250,2700,241,3053,237"/>
<area shape="poly" id="edge219_Node000108_Node000036" title=" " alt="" coords="3053,243,2683,247,2167,257,1680,274,1502,286,1398,301,1348,317,1298,338,1205,386,1129,434,1079,469,1076,465,1126,430,1203,382,1296,333,1346,312,1397,296,1501,281,1679,269,2167,251,2683,241,3053,237"/>
<area shape="poly" id="edge220_Node000108_Node000042" title=" " alt="" coords="3209,251,3271,269,3333,296,3347,307,3356,317,3364,327,3377,336,3411,349,3442,353,3501,349,3529,347,3556,351,3584,362,3611,385,3626,405,3636,428,3644,477,3643,522,3638,555,3633,555,3638,522,3639,477,3631,430,3621,408,3607,388,3581,367,3555,356,3529,353,3501,354,3442,358,3410,354,3375,341,3361,331,3352,321,3343,311,3331,301,3269,274,3207,256"/>
<area shape="poly" id="edge207_Node000108_Node000051" title=" " alt="" coords="3192,251,3377,296,3542,336,3804,385,3803,390,3541,341,3375,301,3190,257"/>
<area shape="poly" id="edge201_Node000108_Node000054" title=" " alt="" coords="3053,243,2764,247,2384,257,2048,275,1937,287,1903,294,1887,301,1883,309,1881,323,1885,357,1893,391,1902,410,1922,425,1955,440,2030,465,2029,470,1953,445,1920,430,1898,414,1888,393,1880,358,1876,322,1878,308,1883,297,1901,289,1936,281,2047,269,2384,252,2764,242,3053,237"/>
<area shape="poly" id="edge209_Node000108_Node000063" title=" " alt="" coords="3208,241,3401,258,3516,274,3630,296,3663,306,3688,316,3745,336,3825,354,3888,363,3952,371,4034,384,4149,409,4294,433,4440,457,4475,465,4474,470,4440,463,4294,439,4147,415,4033,389,3952,376,3888,368,3824,359,3743,341,3686,321,3661,311,3629,301,3515,279,3401,263,3208,246"/>
<area shape="poly" id="edge210_Node000108_Node000068" title=" " alt="" coords="3208,240,3282,245,3370,256,3463,272,3554,296,3577,306,3593,316,3608,327,3630,336,3682,350,3728,357,3807,360,3886,363,3932,370,3985,384,4010,397,4034,410,4086,422,4132,428,4213,426,4252,425,4292,428,4337,438,4388,458,4424,479,4455,506,4499,553,4495,557,4452,510,4420,483,4385,462,4336,443,4292,434,4251,431,4213,432,4132,433,4086,428,4032,414,4007,402,3983,389,3931,376,3886,369,3806,366,3727,363,3681,355,3628,341,3606,332,3590,321,3574,311,3552,301,3462,277,3369,261,3282,251,3208,245"/>
<area shape="poly" id="edge217_Node000108_Node000074" title=" " alt="" coords="3150,261,3209,337,3322,466,3318,469,3205,340,3145,264"/>
<area shape="poly" id="edge221_Node000108_Node000084" title=" " alt="" coords="3209,246,3336,266,3478,296,3535,316,3593,336,3645,347,3689,352,3767,356,3844,362,3888,370,3940,384,4017,420,4099,465,4096,470,4014,425,3938,389,3887,375,3843,367,3766,361,3689,358,3644,352,3591,341,3534,321,3477,301,3335,271,3208,252"/>
<area shape="poly" id="edge208_Node000108_Node000087" title=" " alt="" coords="3208,238,3764,256,4080,273,4210,284,4310,296,4342,303,4340,309,4309,301,4210,289,4079,278,3764,261,3208,244"/>
<area shape="poly" id="edge211_Node000108_Node000088" title=" " alt="" coords="3209,238,3982,255,4539,272,5111,296,5325,310,5325,316,5111,301,4539,277,3982,260,3208,243"/>
<area shape="poly" id="edge212_Node000108_Node000090" title=" " alt="" coords="3209,237,3367,240,3563,249,3750,267,3826,280,3884,296,3900,306,3910,317,3920,328,3934,336,4008,355,4102,366,4210,371,4325,372,4550,373,4647,376,4724,384,4807,402,4888,424,5012,465,5011,470,4886,429,4806,407,4724,389,4647,381,4550,378,4325,378,4210,376,4102,371,4007,360,3932,341,3916,332,3906,321,3896,310,3882,301,3825,285,3749,272,3563,255,3367,246,3209,242"/>
<area shape="poly" id="edge213_Node000108_Node000091" title=" " alt="" coords="3209,238,3824,257,4178,274,4325,284,4436,296,4475,303,4474,309,4436,301,4324,290,4177,279,3824,262,3208,244"/>
<area shape="poly" id="edge214_Node000108_Node000092" title=" " alt="" coords="3053,242,2736,246,2313,255,2109,262,1935,272,1810,285,1772,293,1754,301,1748,310,1745,320,1747,343,1756,366,1766,385,1762,388,1751,369,1742,344,1740,319,1743,307,1750,297,1770,288,1809,280,1934,267,2109,257,2313,250,2736,240,3053,237"/>
<area shape="poly" id="edge199_Node000108_Node000056" title=" " alt="" coords="3117,263,3037,388,3023,421,3014,449,3003,476,2979,502,2953,517,2926,524,2876,521,2852,519,2829,522,2808,531,2787,550,2782,561,2781,573,2794,599,2816,623,2839,641,2836,645,2812,627,2789,602,2776,575,2776,560,2783,546,2805,526,2828,516,2852,514,2876,516,2926,518,2951,512,2976,498,2999,473,3009,448,3018,419,3032,385,3113,261"/>
<area shape="poly" id="edge215_Node000108_Node000093" title=" " alt="" coords="3209,241,3566,261,4035,296,4155,309,4155,314,4034,301,3566,267,3208,246"/>
<area shape="poly" id="edge216_Node000108_Node000094" title=" " alt="" coords="3208,238,3353,241,3547,251,3765,268,3984,296,4030,306,4065,317,4099,327,4144,336,4229,341,4370,342,4748,341,4946,343,5123,350,5261,363,5309,372,5340,384,5375,412,5404,445,5429,482,5449,521,5475,593,5488,643,5483,644,5470,595,5444,523,5424,485,5400,448,5371,415,5337,389,5307,377,5260,368,5123,355,4946,349,4748,346,4370,347,4228,346,4144,341,4098,332,4063,322,4029,311,3984,301,3764,274,3546,256,3353,247,3208,243"/>
<area shape="poly" id="edge222_Node000108_Node000095" title=" " alt="" coords="3208,238,3900,255,4304,272,4472,283,4599,296,4638,303,4637,309,4598,301,4471,289,4303,277,3900,260,3208,243"/>
<area shape="poly" id="edge224_Node000108_Node000097" title=" " alt="" coords="3209,237,3527,242,3976,252,4430,269,4619,281,4762,296,4798,303,4797,309,4761,301,4618,287,4429,275,3976,257,3527,247,3209,243"/>
<area shape="poly" id="edge225_Node000108_Node000098" title=" " alt="" coords="3209,238,3377,242,3587,252,3789,269,3872,281,3934,296,3954,306,3967,317,3980,327,3998,336,4057,343,4179,352,4539,369,5215,394,5215,399,4539,374,4179,357,4057,349,3997,341,3977,332,3964,321,3951,310,3932,301,3871,286,3788,274,3586,257,3377,247,3208,243"/>
<area shape="poly" id="edge226_Node000108_Node000100" title=" " alt="" coords="3053,243,2712,249,2249,261,1831,278,1690,289,1646,295,1624,301,1595,330,1562,378,1511,469,1506,466,1557,375,1591,326,1621,296,1645,290,1690,284,1830,273,2249,255,2712,244,3053,238"/>
<area shape="poly" id="edge227_Node000108_Node000101" title=" " alt="" coords="3209,240,3433,258,3569,274,3706,296,3776,315,3846,336,4010,367,4223,400,4602,457,4665,469,4664,474,4601,463,4222,405,4009,372,3845,341,3775,321,3705,301,3569,279,3432,263,3208,246"/>
<area shape="poly" id="edge234_Node000108_Node000103" title=" " alt="" coords="3209,238,3461,244,3790,255,4093,272,4202,283,4266,296,4283,306,4293,317,4303,328,4318,336,4364,349,4417,357,4545,365,4691,362,4847,356,5002,350,5148,349,5275,359,5329,369,5374,384,5422,409,5465,442,5504,478,5539,517,5593,590,5624,642,5619,644,5588,593,5535,520,5500,482,5462,446,5419,414,5372,389,5328,374,5275,364,5148,354,5002,355,4847,361,4691,368,4545,370,4417,363,4363,354,4316,341,4300,332,4289,321,4279,310,4264,301,4201,289,4092,278,3790,260,3461,249,3208,243"/>
<area shape="poly" id="edge200_Node000108_Node000059" title=" " alt="" coords="3208,235,3324,237,3471,245,3633,264,3715,278,3794,296,3820,305,3839,316,3858,326,3883,336,3952,353,4016,363,4076,368,4134,369,4241,362,4342,352,4440,347,4490,350,4540,358,4592,371,4646,391,4702,420,4760,458,4777,472,4788,487,4799,518,4807,551,4814,568,4826,586,4851,612,4877,634,4874,638,4847,616,4822,590,4810,571,4802,553,4793,520,4783,490,4773,476,4757,462,4699,425,4643,396,4590,376,4539,363,4489,355,4440,353,4342,357,4242,367,4134,374,4076,373,4015,368,3951,358,3882,341,3856,331,3837,321,3818,310,3793,301,3714,283,3632,269,3470,251,3324,243,3208,241"/>
<area shape="rect" id="Node000109" href="$exceptions.html" title="Base exceptions." alt="" coords="1232,467,1368,493"/>
<area shape="poly" id="edge190_Node000108_Node000109" title=" " alt="" coords="3053,243,2719,247,2259,256,1827,274,1671,286,1579,301,1536,317,1495,338,1417,386,1355,434,1314,469,1310,465,1351,430,1414,382,1492,333,1534,313,1578,296,1670,281,1827,268,2258,251,2718,241,3053,237"/>
<area shape="rect" id="Node000114" href="$ipc__stream.html" title="IPC stream." alt="" coords="939,387,1077,412"/>
<area shape="poly" id="edge195_Node000108_Node000114" title=" " alt="" coords="3052,243,2610,248,1981,259,1403,277,1207,288,1145,294,1113,301,1082,319,1055,343,1018,388,1013,385,1051,340,1079,315,1111,296,1144,289,1206,283,1403,271,1981,254,2610,243,3052,237"/>
<area shape="rect" id="Node000115" href="$l4iostream.html" title="L4 IO stream." alt="" coords="2101,306,2235,331"/>
<area shape="poly" id="edge197_Node000108_Node000115" title=" " alt="" coords="3053,243,2904,247,2704,257,2477,274,2248,301,2211,309,2210,303,2248,296,2476,269,2703,251,2904,242,3053,238"/>
<area shape="rect" id="Node000116" href="$cxx_2thread.html" title="Thread implementation." alt="" coords="2260,306,2367,331"/>
<area shape="poly" id="edge198_Node000108_Node000116" title=" " alt="" coords="3053,243,2924,248,2756,257,2569,274,2380,301,2350,309,2348,303,2380,296,2568,269,2756,252,2924,242,3053,238"/>
<area shape="rect" id="Node000118" href="$re_2consts.html" title="Constants." alt="" coords="3046,387,3143,412"/>
<area shape="poly" id="edge203_Node000108_Node000118" title=" " alt="" coords="3128,265,3100,387,3095,386,3122,264"/>
<area shape="rect" id="Node000127" href="$bitmap__cap__alloc.html" title="Bitmap capability allocator." alt="" coords="2391,299,2547,339"/>
<area shape="poly" id="edge218_Node000108_Node000127" title=" " alt="" coords="3053,248,2831,267,2560,301,2548,303,2547,298,2560,296,2831,262,3053,242"/>
<area shape="rect" id="Node000128" href="$smart__capability__1x.html" title=" " alt="" coords="2571,306,2794,331"/>
<area shape="poly" id="edge223_Node000108_Node000128" title=" " alt="" coords="3054,255,2748,309,2747,303,3053,250"/>
<area shape="poly" id="edge228_Node000108_Node000129" title=" " alt="" coords="3164,255,3250,303,3247,308,3162,260"/>
<area shape="poly" id="edge230_Node000108_Node000130" title=" " alt="" coords="3208,238,4046,254,4546,272,4755,283,4914,296,4960,303,4960,309,4913,301,4755,288,4546,277,4046,260,3208,243"/>
<area shape="poly" id="edge231_Node000108_Node000131" title=" " alt="" coords="3108,261,3049,310,3005,341,2935,360,2841,375,2731,385,2612,393,2376,400,2192,401,2192,396,2376,395,2612,387,2731,380,2841,369,2934,355,3003,336,3046,306,3105,257"/>
<area shape="rect" id="Node000132" href="$smart__capability.html" title="L4::Capability class." alt="" coords="2819,306,2992,331"/>
<area shape="poly" id="edge235_Node000108_Node000132" title=" " alt="" coords="3086,258,2939,308,2937,303,3084,253"/>
<area shape="poly" id="edge236_Node000108_Node000133" title=" " alt="" coords="3053,243,2880,247,2640,256,2367,274,2090,301,2045,309,2045,303,2089,296,2366,268,2640,251,2879,241,3053,238"/>
<area shape="rect" id="Node000134" href="$sys_2thread.html" title="Common thread related definitions." alt="" coords="1912,387,2019,412"/>
<area shape="poly" id="edge247_Node000108_Node000134" title=" " alt="" coords="3053,243,2767,247,2392,258,2059,275,1949,287,1916,294,1900,301,1894,311,1894,321,1905,344,1926,366,1949,384,1946,388,1923,370,1900,347,1888,322,1889,309,1897,297,1914,289,1948,282,2058,270,2391,252,2766,242,3053,237"/>
<area shape="rect" id="Node000135" href="$task.html" title="Common task related definitions." alt="" coords="1739,467,1831,493"/>
<area shape="poly" id="edge242_Node000108_Node000135" title=" " alt="" coords="3053,242,2715,245,2259,253,2037,260,1849,271,1713,284,1672,292,1652,301,1635,327,1630,353,1637,380,1653,411,1670,431,1692,446,1740,467,1738,472,1689,451,1666,435,1648,413,1632,382,1625,353,1630,325,1649,297,1670,287,1712,279,1848,265,2037,255,2258,248,2715,239,3053,237"/>
<area shape="poly" id="edge192_Node000109_Node000006" title=" " alt="" coords="1299,507,1298,544,1301,590,1314,636,1325,656,1340,674,1383,704,1424,718,1465,719,1506,713,1550,705,1595,701,1644,704,1697,722,1711,732,1720,743,1728,753,1741,762,1780,772,1840,782,2012,798,2235,809,2485,817,2984,826,3331,828,3331,833,2984,831,2485,823,2234,815,2012,803,1839,787,1779,777,1739,766,1724,757,1716,746,1708,735,1695,726,1643,710,1595,706,1550,711,1507,718,1465,724,1423,723,1380,709,1337,678,1321,659,1309,638,1296,591,1292,544,1294,506"/>
<area shape="poly" id="edge191_Node000109_Node000034" title=" " alt="" coords="1238,498,983,558,982,553,1237,493"/>
<area shape="poly" id="edge193_Node000109_Node000046" title=" " alt="" coords="1320,502,1431,641,1427,645,1316,505"/>
<area shape="poly" id="edge196_Node000114_Node000034" title=" " alt="" coords="987,423,971,441,958,461,949,486,942,512,937,555,931,554,937,511,943,485,954,459,967,438,983,420"/>
<area shape="poly" id="edge206_Node000118_Node000046" title=" " alt="" coords="3032,404,2334,423,1950,440,1811,451,1729,463,1706,471,1689,480,1650,502,1607,515,1571,520,1538,528,1502,550,1481,572,1464,598,1445,644,1440,642,1460,596,1476,569,1498,546,1536,523,1570,515,1606,510,1648,498,1687,476,1704,466,1727,457,1810,445,1950,435,2334,418,3032,399"/>
<area shape="poly" id="edge205_Node000118_Node000074" title=" " alt="" coords="3143,414,3297,465,3295,470,3141,419"/>
<area shape="poly" id="edge204_Node000118_Node000075" title=" " alt="" coords="3158,403,3264,420,3324,436,3381,458,3397,468,3407,478,3417,489,3432,497,3607,526,3849,559,3848,564,3606,531,3430,503,3414,493,3403,482,3393,472,3379,462,3322,441,3263,425,3157,408"/>
<area shape="poly" id="edge229_Node000129_Node000074" title=" " alt="" coords="3281,343,3329,466,3324,468,3276,345"/>
<area shape="poly" id="edge232_Node000131_Node000100" title=" " alt="" coords="2030,415,1803,435,1705,444,1582,463,1547,470,1546,465,1581,457,1705,439,1803,430,2029,409"/>
<area shape="poly" id="edge233_Node000131_Node000101" title=" " alt="" coords="2205,399,3468,421,4183,439,4446,448,4602,457,4665,467,4664,472,4601,463,4446,453,4183,444,3468,427,2205,405"/>
<area shape="poly" id="edge237_Node000133_Node000098" title=" " alt="" coords="2056,331,2090,336,2300,348,2658,359,3624,377,5215,395,5215,400,3624,382,2658,364,2300,354,2089,341,2056,336"/>
<area shape="poly" id="edge238_Node000133_Node000131" title=" " alt="" coords="2025,336,2100,384,2098,389,2022,341"/>
<area shape="poly" id="edge239_Node000133_Node000134" title=" " alt="" coords="1987,345,1972,387,1967,386,1982,343"/>
<area shape="poly" id="edge241_Node000134_Node000046" title=" " alt="" coords="1899,414,1797,434,1683,463,1571,505,1460,550,1448,573,1441,598,1440,643,1435,643,1436,598,1443,571,1457,546,1569,500,1682,457,1795,429,1898,409"/>
<area shape="poly" id="edge240_Node000134_Node000089" title=" " alt="" coords="2032,409,2032,409,2160,420,2269,424,2455,421,2544,420,2640,424,2747,436,2874,457,2899,465,2897,470,2873,463,2747,441,2639,430,2544,426,2455,426,2269,429,2160,426,2032,415,2031,415"/>
<area shape="poly" id="edge246_Node000135_Node000018" title=" " alt="" coords="1726,497,1501,551,1205,629,1023,683,957,707,920,726,894,755,881,783,871,815,854,853,827,901,822,898,850,851,866,813,876,781,890,752,917,722,955,702,1021,678,1204,624,1499,545,1725,491"/>
<area shape="poly" id="edge243_Node000135_Node000032" title=" " alt="" coords="1846,484,1998,497,2797,558,2797,564,1997,503,1845,489"/>
<area shape="poly" id="edge244_Node000135_Node000040" title=" " alt="" coords="1845,484,2148,514,2431,545,2540,566,2650,585,2823,605,2958,614,3267,633,3431,647,3431,652,3266,639,2957,620,2822,610,2649,591,2539,571,2430,551,2147,519,1845,490"/>
<area shape="poly" id="edge245_Node000135_Node000046" title=" " alt="" coords="1734,499,1561,550,1527,573,1496,599,1451,645,1447,641,1492,595,1524,569,1559,546,1732,494"/>
<area shape="poly" id="edge259_Node000142_Node000107" title=" " alt="" coords="1080,117,1059,153,1054,151,1076,114"/>
<area shape="poly" id="edge257_Node000142_Node000108" title=" " alt="" coords="1106,115,1130,148,1146,163,1164,175,1195,182,1256,189,1451,201,2024,219,2642,229,3066,234,3066,239,2642,235,2023,224,1450,207,1256,195,1194,188,1162,180,1142,167,1126,151,1102,118"/>
<area shape="rect" id="Node000143" href="$debugger.html" title="The debugger interface specifies common debugging related definitions." alt="" coords="851,152,976,177"/>
<area shape="poly" id="edge258_Node000142_Node000143" title=" " alt="" coords="1052,111,944,154,942,149,1050,106"/>
</map>

View File

@@ -0,0 +1 @@
d36ce338319c95a03d44e47021168b3f

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 164 KiB

View File

@@ -0,0 +1,47 @@
<map id="l4/sys/__typeinfo.h" name="l4/sys/__typeinfo.h">
<area shape="rect" id="Node000001" title="Type information handling." alt="" coords="473,5,617,31"/>
<area shape="rect" id="Node000002" href="$types.html" title=" " alt="" coords="518,152,603,177"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="549,31,561,138,555,139,543,31"/>
<area shape="rect" id="Node000003" href="$ipc__basics_source.html" title=" " alt="" coords="583,79,699,104"/>
<area shape="poly" id="edge2_Node000001_Node000003" title=" " alt="" coords="562,29,615,68,612,72,559,33"/>
<area shape="rect" id="Node000013" href="$capability_8h_source.html" title=" " alt="" coords="337,79,459,104"/>
<area shape="poly" id="edge21_Node000001_Node000013" title=" " alt="" coords="522,33,435,75,433,70,520,28"/>
<area shape="poly" id="edge3_Node000003_Node000002" title=" " alt="" coords="630,106,586,145,582,141,626,102"/>
<area shape="rect" id="Node000004" href="$l4_2sys_2utcb_8h.html" title="UTCB definitions." alt="" coords="497,299,601,324"/>
<area shape="poly" id="edge4_Node000003_Node000004" title=" " alt="" coords="643,104,636,169,626,211,610,252,594,274,576,292,573,288,590,270,605,249,621,210,631,168,638,104"/>
<area shape="rect" id="Node000012" href="$err_8h.html" title="Error codes." alt="" coords="645,299,738,324"/>
<area shape="poly" id="edge19_Node000003_Node000012" title=" " alt="" coords="647,104,662,151,690,285,685,286,657,153,642,105"/>
<area shape="rect" id="Node000005" href="$l4_2sys_2types_8h.html" title="Common L4 ABI Data Types." alt="" coords="353,372,465,397"/>
<area shape="poly" id="edge5_Node000004_Node000005" title=" " alt="" coords="527,326,445,368,442,363,525,322"/>
<area shape="rect" id="Node000006" href="$l4_2sys_2l4int_8h.html" title="Fixed sized integer types, generic version." alt="" coords="164,519,269,544"/>
<area shape="poly" id="edge18_Node000004_Node000006" title=" " alt="" coords="553,324,557,353,556,393,548,435,538,455,525,473,508,485,484,495,421,511,350,522,283,529,283,523,349,517,420,506,482,490,506,480,521,469,534,452,542,434,551,393,551,354,548,324"/>
<area shape="rect" id="Node000007" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="452,519,584,544"/>
<area shape="poly" id="edge17_Node000004_Node000007" title=" " alt="" coords="556,323,567,356,571,377,570,398,554,458,533,507,528,505,549,456,565,397,565,377,562,357,551,325"/>
<area shape="poly" id="edge6_Node000005_Node000006" title=" " alt="" coords="353,396,256,415,214,430,189,447,184,461,185,476,201,507,196,509,180,477,179,460,185,444,212,425,255,410,352,391"/>
<area shape="poly" id="edge7_Node000005_Node000007" title=" " alt="" coords="457,395,495,413,512,427,526,444,532,459,534,476,529,506,524,505,528,476,527,461,521,447,508,431,492,418,454,400"/>
<area shape="rect" id="Node000009" href="$l4_2sys_2consts_8h.html" title="Common constants." alt="" coords="5,445,124,471"/>
<area shape="poly" id="edge9_Node000005_Node000009" title=" " alt="" coords="354,400,134,445,133,440,353,395"/>
<area shape="rect" id="Node000010" href="$____l4__fpage_8h_source.html" title=" " alt="" coords="365,445,511,471"/>
<area shape="poly" id="edge12_Node000005_Node000010" title=" " alt="" coords="416,397,430,432,426,434,411,399"/>
<area shape="rect" id="Node000011" href="$____timeout_8h_source.html" title=" " alt="" coords="199,445,341,471"/>
<area shape="poly" id="edge14_Node000005_Node000011" title=" " alt="" coords="388,400,306,441,304,437,385,395"/>
<area shape="rect" id="Node000008" title=" " alt="" coords="457,592,579,617"/>
<area shape="poly" id="edge8_Node000007_Node000008" title=" " alt="" coords="521,544,521,578,515,578,515,544"/>
<area shape="poly" id="edge11_Node000009_Node000006" title=" " alt="" coords="90,468,181,510,179,515,88,473"/>
<area shape="poly" id="edge10_Node000009_Node000007" title=" " alt="" coords="125,466,439,515,438,520,124,471"/>
<area shape="poly" id="edge13_Node000010_Node000007" title=" " alt="" coords="453,469,497,508,493,512,449,473"/>
<area shape="poly" id="edge15_Node000011_Node000006" title=" " alt="" coords="263,473,236,509,231,506,259,469"/>
<area shape="poly" id="edge16_Node000011_Node000007" title=" " alt="" coords="311,468,465,512,464,517,309,473"/>
<area shape="poly" id="edge20_Node000012_Node000007" title=" " alt="" coords="685,326,571,472,539,510,535,507,567,469,680,323"/>
<area shape="poly" id="edge23_Node000013_Node000005" title=" " alt="" coords="395,105,381,152,377,210,383,267,393,319,403,358,398,360,387,320,377,268,372,210,375,152,390,103"/>
<area shape="poly" id="edge22_Node000013_Node000009" title=" " alt="" coords="343,107,291,123,239,150,217,167,199,187,188,210,183,237,183,313,181,333,175,353,153,388,125,417,97,439,94,435,121,413,149,385,170,351,176,332,178,313,178,236,182,209,195,184,213,163,236,145,289,118,342,101"/>
<area shape="rect" id="Node000014" href="$l4_2sys_2task_8h.html" title="Common task related definitions." alt="" coords="390,152,494,177"/>
<area shape="poly" id="edge24_Node000013_Node000014" title=" " alt="" coords="408,103,430,139,425,142,403,106"/>
<area shape="poly" id="edge26_Node000014_Node000004" title=" " alt="" coords="449,176,466,210,491,249,527,287,523,291,487,252,462,213,445,179"/>
<area shape="poly" id="edge25_Node000014_Node000005" title=" " alt="" coords="443,178,415,359,410,358,438,177"/>
<area shape="rect" id="Node000015" href="$l4_2sys_2ipc_8h.html" title="Common IPC interface." alt="" coords="500,225,595,251"/>
<area shape="poly" id="edge27_Node000014_Node000015" title=" " alt="" coords="460,175,520,215,518,220,457,180"/>
<area shape="poly" id="edge29_Node000015_Node000004" title=" " alt="" coords="550,251,551,285,546,285,545,251"/>
<area shape="poly" id="edge28_Node000015_Node000005" title=" " alt="" coords="536,253,487,301,430,363,426,360,483,297,533,249"/>
<area shape="poly" id="edge30_Node000015_Node000012" title=" " alt="" coords="572,248,657,290,654,295,569,253"/>
</map>

View File

@@ -0,0 +1 @@
7e50e1c430cdec39ceb06f743e5e6032

View File

@@ -0,0 +1,417 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: l4/sys/__typeinfo.h Pages: 1 -->
<svg width="558pt" height="467pt"
viewBox="0.00 0.00 557.50 467.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 463)">
<title>l4/sys/__typeinfo.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Type information handling.">
<polygon fill="#999999" stroke="#666666" points="458.5,-459 350.5,-459 350.5,-440 458.5,-440 458.5,-459"/>
<text text-anchor="middle" x="404.5" y="-447" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__typeinfo.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="types.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="448.5,-349 384.5,-349 384.5,-330 448.5,-330 448.5,-349"/>
<text text-anchor="middle" x="416.5" y="-337" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/types</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M405.48,-439.66C407.43,-422.17 411.8,-382.8 414.41,-359.27"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="417.91,-359.48 415.54,-349.16 410.95,-358.71 417.91,-359.48"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="ipc__basics_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="520,-404 433,-404 433,-385 520,-385 520,-404"/>
<text text-anchor="middle" x="476.5" y="-392" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/ipc_basics</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge2_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M416.07,-439.98C426.92,-432 443.38,-419.88 456.38,-410.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="458.74,-412.92 464.72,-404.17 454.59,-407.28 458.74,-412.92"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:href="capability_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="340.5,-404 248.5,-404 248.5,-385 340.5,-385 340.5,-404"/>
<text text-anchor="middle" x="294.5" y="-392" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/capability.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node13 -->
<g id="edge21_Node000001_Node000013" class="edge">
<title>Node1&#45;&gt;Node13</title>
<g id="a_edge21_Node000001_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M386.83,-439.98C369.21,-431.5 341.92,-418.35 321.57,-408.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="323.02,-405.36 312.49,-404.17 319.98,-411.66 323.02,-405.36"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node2 -->
<g id="edge3_Node000003_Node000002" class="edge">
<title>Node3&#45;&gt;Node2</title>
<g id="a_edge3_Node000003_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M466.86,-384.98C457.99,-377.15 444.63,-365.34 433.89,-355.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="436.13,-353.17 426.32,-349.17 431.49,-358.41 436.13,-353.17"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="l4_2sys_2utcb_8h.html" target="_top" xlink:title="UTCB definitions.">
<polygon fill="white" stroke="#666666" points="446.5,-239 368.5,-239 368.5,-220 446.5,-220 446.5,-239"/>
<text text-anchor="middle" x="407.5" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/utcb.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge4_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge4_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M476.32,-384.9C475.56,-364.56 471.63,-312.4 451.5,-275 445.43,-263.72 435.62,-253.39 426.8,-245.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="429.01,-242.82 419.11,-239.05 424.5,-248.17 429.01,-242.82"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="err_8h.html" target="_top" xlink:title="Error codes.">
<polygon fill="white" stroke="#666666" points="549.5,-239 479.5,-239 479.5,-220 549.5,-220 549.5,-239"/>
<text text-anchor="middle" x="514.5" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/err.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node12 -->
<g id="edge19_Node000003_Node000012" class="edge">
<title>Node3&#45;&gt;Node12</title>
<g id="a_edge19_Node000003_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M479.56,-384.71C482.6,-375.79 487.26,-361.55 490.5,-349 499.51,-314.06 507.24,-272.62 511.35,-249.16"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="514.81,-249.64 513.06,-239.19 507.92,-248.46 514.81,-249.64"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="l4_2sys_2types_8h.html" target="_top" xlink:title="Common L4 ABI Data Types.">
<polygon fill="white" stroke="#666666" points="344.5,-184 260.5,-184 260.5,-165 344.5,-165 344.5,-184"/>
<text text-anchor="middle" x="302.5" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/types.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node5 -->
<g id="edge5_Node000004_Node000005" class="edge">
<title>Node4&#45;&gt;Node5</title>
<g id="a_edge5_Node000004_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M390.63,-219.98C373.89,-211.54 348,-198.47 328.61,-188.68"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="330.18,-185.55 319.68,-184.17 327.03,-191.8 330.18,-185.55"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="l4_2sys_2l4int_8h.html" target="_top" xlink:title="Fixed sized integer types, generic version.">
<polygon fill="white" stroke="#666666" points="198,-74 119,-74 119,-55 198,-55 198,-74"/>
<text text-anchor="middle" x="158.5" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/l4int.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node6 -->
<g id="edge18_Node000004_Node000006" class="edge">
<title>Node4&#45;&gt;Node6</title>
<g id="a_edge18_Node000004_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M409.08,-219.92C412.52,-198.21 418.21,-140.68 388.5,-110 364.09,-84.8 268.13,-73.35 208.14,-68.57"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="208.34,-65.08 198.11,-67.81 207.81,-72.06 208.34,-65.08"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="compiler_8h.html" target="_top" xlink:title="L4 compiler related defines.">
<polygon fill="white" stroke="#666666" points="434,-74 335,-74 335,-55 434,-55 434,-74"/>
<text text-anchor="middle" x="384.5" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/compiler.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node7 -->
<g id="edge17_Node000004_Node000007" class="edge">
<title>Node4&#45;&gt;Node7</title>
<g id="a_edge17_Node000004_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M411.44,-219.94C416.56,-207.81 424.5,-184.87 421.5,-165 417,-135.19 403.14,-102.84 393.72,-83.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="396.75,-81.61 389.15,-74.22 390.49,-84.73 396.75,-81.61"/>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge6_Node000005_Node000006" class="edge">
<title>Node5&#45;&gt;Node6</title>
<g id="a_edge6_Node000005_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M260.17,-168.03C216.11,-161.37 151.48,-148.53 136.5,-129 125.9,-115.18 135.14,-95.88 144.69,-82.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="147.56,-84.21 150.81,-74.13 141.98,-79.98 147.56,-84.21"/>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node7 -->
<g id="edge7_Node000005_Node000007" class="edge">
<title>Node5&#45;&gt;Node7</title>
<g id="a_edge7_Node000005_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M337.55,-164.88C356.15,-158.33 377.4,-147.24 388.5,-129 396.75,-115.45 394.48,-97.12 390.9,-83.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="394.23,-82.56 387.93,-74.05 387.55,-84.63 394.23,-82.56"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="l4_2sys_2consts_8h.html" target="_top" xlink:title="Common constants.">
<polygon fill="white" stroke="#666666" points="89,-129 0,-129 0,-110 89,-110 89,-129"/>
<text text-anchor="middle" x="44.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/consts.h</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node9 -->
<g id="edge9_Node000005_Node000009" class="edge">
<title>Node5&#45;&gt;Node9</title>
<g id="a_edge9_Node000005_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M261.05,-164.98C216.23,-155.78 144.73,-141.09 96.25,-131.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="96.78,-127.67 86.28,-129.08 95.37,-134.52 96.78,-127.67"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="____l4__fpage_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="379.5,-129 269.5,-129 269.5,-110 379.5,-110 379.5,-129"/>
<text text-anchor="middle" x="324.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__l4_fpage.h</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node10 -->
<g id="edge12_Node000005_Node000010" class="edge">
<title>Node5&#45;&gt;Node10</title>
<g id="a_edge12_Node000005_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M306.13,-164.75C309.08,-157.65 313.33,-147.4 317.01,-138.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="320.33,-139.67 320.93,-129.09 313.87,-136.98 320.33,-139.67"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="____timeout_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="251.5,-129 145.5,-129 145.5,-110 251.5,-110 251.5,-129"/>
<text text-anchor="middle" x="198.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__timeout.h</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node11 -->
<g id="edge14_Node000005_Node000011" class="edge">
<title>Node5&#45;&gt;Node11</title>
<g id="a_edge14_Node000005_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M285.79,-164.98C269.29,-156.57 243.8,-143.59 224.62,-133.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="226.01,-130.59 215.51,-129.17 222.83,-136.83 226.01,-130.59"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="430.5,-19 338.5,-19 338.5,0 430.5,0 430.5,-19"/>
<text text-anchor="middle" x="384.5" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/linkage.h</text>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node8 -->
<g id="edge8_Node000007_Node000008" class="edge">
<title>Node7&#45;&gt;Node8</title>
<g id="a_edge8_Node000007_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M384.5,-54.75C384.5,-47.8 384.5,-37.85 384.5,-29.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="388,-29.09 384.5,-19.09 381,-29.09 388,-29.09"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node6 -->
<g id="edge11_Node000009_Node000006" class="edge">
<title>Node9&#45;&gt;Node6</title>
<g id="a_edge11_Node000009_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M62.82,-109.98C81.16,-101.46 109.61,-88.23 130.73,-78.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="132.26,-81.56 139.85,-74.17 129.31,-75.21 132.26,-81.56"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node7 -->
<g id="edge10_Node000009_Node000007" class="edge">
<title>Node9&#45;&gt;Node7</title>
<g id="a_edge10_Node000009_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M89.3,-111.52C149.76,-102.09 257.63,-85.28 324.89,-74.79"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="325.57,-78.23 334.91,-73.23 324.49,-71.31 325.57,-78.23"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node7 -->
<g id="edge13_Node000010_Node000007" class="edge">
<title>Node10&#45;&gt;Node7</title>
<g id="a_edge13_Node000010_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M334.14,-109.98C343.01,-102.15 356.37,-90.34 367.11,-80.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="369.51,-83.41 374.68,-74.17 364.87,-78.17 369.51,-83.41"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node6 -->
<g id="edge15_Node000011_Node000006" class="edge">
<title>Node11&#45;&gt;Node6</title>
<g id="a_edge15_Node000011_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M191.89,-109.75C186.24,-102.26 177.96,-91.28 171.05,-82.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="173.8,-79.96 164.98,-74.09 168.21,-84.18 173.8,-79.96"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node7 -->
<g id="edge16_Node000011_Node000007" class="edge">
<title>Node11&#45;&gt;Node7</title>
<g id="a_edge16_Node000011_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M228.38,-109.98C259.88,-101.01 309.67,-86.82 344.53,-76.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="345.72,-80.19 354.38,-74.08 343.81,-73.46 345.72,-80.19"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node7 -->
<g id="edge20_Node000012_Node000007" class="edge">
<title>Node12&#45;&gt;Node7</title>
<g id="a_edge20_Node000012_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M507.94,-219.77C493.04,-200 455.39,-150.39 422.5,-110 414.8,-100.55 405.97,-90.18 398.76,-81.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="401.39,-79.52 392.19,-74.26 396.1,-84.11 401.39,-79.52"/>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node5 -->
<g id="edge23_Node000013_Node000005" class="edge">
<title>Node13&#45;&gt;Node5</title>
<g id="a_edge23_Node000013_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M290.64,-384.85C286.94,-376.04 281.61,-361.87 279.5,-349 270.26,-292.67 286.97,-225.59 296.51,-193.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="299.89,-194.78 299.54,-184.19 293.21,-192.69 299.89,-194.78"/>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node9 -->
<g id="edge22_Node000013_Node000009" class="edge">
<title>Node13&#45;&gt;Node9</title>
<g id="a_edge22_Node000013_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M252.95,-385C204.65,-372.4 131.5,-343.72 131.5,-285.5 131.5,-285.5 131.5,-285.5 131.5,-228.5 131.5,-187.58 93.15,-153.39 67.38,-135.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="69.1,-131.97 58.87,-129.21 65.15,-137.75 69.1,-131.97"/>
</a>
</g>
</g>
<!-- Node14 -->
<g id="Node000014" class="node">
<title>Node14</title>
<g id="a_Node000014"><a xlink:href="l4_2sys_2task_8h.html" target="_top" xlink:title="Common task related definitions.">
<polygon fill="white" stroke="#666666" points="366.5,-349 288.5,-349 288.5,-330 366.5,-330 366.5,-349"/>
<text text-anchor="middle" x="327.5" y="-337" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/task.h</text>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node14 -->
<g id="edge24_Node000013_Node000014" class="edge">
<title>Node13&#45;&gt;Node14</title>
<g id="a_edge24_Node000013_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M299.95,-384.75C304.51,-377.42 311.17,-366.73 316.79,-357.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="319.84,-359.43 322.15,-349.09 313.9,-355.73 319.84,-359.43"/>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node4 -->
<g id="edge26_Node000014_Node000004" class="edge">
<title>Node14&#45;&gt;Node4</title>
<g id="a_edge26_Node000014_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M331.31,-329.81C337.08,-317.12 348.83,-293.07 362.5,-275 370.41,-264.53 380.74,-254.15 389.5,-246.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="391.9,-248.59 397,-239.31 387.22,-243.39 391.9,-248.59"/>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node5 -->
<g id="edge25_Node000014_Node000005" class="edge">
<title>Node14&#45;&gt;Node5</title>
<g id="a_edge25_Node000014_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M326.16,-329.74C322.24,-304.2 310.77,-229.43 305.37,-194.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="308.83,-193.66 303.85,-184.31 301.91,-194.72 308.83,-193.66"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="l4_2sys_2ipc_8h.html" target="_top" xlink:title="Common IPC interface.">
<polygon fill="white" stroke="#666666" points="442,-294 371,-294 371,-275 442,-275 442,-294"/>
<text text-anchor="middle" x="406.5" y="-282" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/ipc.h</text>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node15 -->
<g id="edge27_Node000014_Node000015" class="edge">
<title>Node14&#45;&gt;Node15</title>
<g id="a_edge27_Node000014_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M340.19,-329.98C352.33,-321.84 370.86,-309.41 385.25,-299.76"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="387.22,-302.65 393.58,-294.17 383.32,-296.84 387.22,-302.65"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node4 -->
<g id="edge29_Node000015_Node000004" class="edge">
<title>Node15&#45;&gt;Node4</title>
<g id="a_edge29_Node000015_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M406.67,-274.75C406.8,-267.8 406.98,-257.85 407.15,-249.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="410.65,-249.15 407.34,-239.09 403.65,-249.02 410.65,-249.15"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node5 -->
<g id="edge28_Node000015_Node000005" class="edge">
<title>Node15&#45;&gt;Node5</title>
<g id="a_edge28_Node000015_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M396.92,-274.85C387.27,-266.04 372.04,-251.88 359.5,-239 344.41,-223.5 327.99,-205.03 316.67,-192.01"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="319.22,-189.61 310.03,-184.33 313.92,-194.18 319.22,-189.61"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node12 -->
<g id="edge30_Node000015_Node000012" class="edge">
<title>Node15&#45;&gt;Node12</title>
<g id="a_edge30_Node000015_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M423.85,-274.98C441.07,-266.54 467.7,-253.47 487.65,-243.68"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="489.4,-246.72 496.83,-239.17 486.31,-240.43 489.4,-246.72"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 19 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,194 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__vcpu-arm.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____vcpu-arm_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__vcpu-arm.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * (c) 2017 Alexander Warg &lt;alexander.warg@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> *</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> */</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="keyword">typedef</span> <span class="keyword">struct </span>l4_arm_vcpu_e_info_t</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span>{</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> version; <span class="comment">// must be 0</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> gic_version;</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _rsvd0[2];</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> features;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> _rsvd1[14];</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> user[8];</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>} l4_arm_vcpu_e_info_t;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span> *l4_vcpu_e_ptr(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keyword">enum</span> L4_vcpu_e_consts</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>{</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> L4_VCPU_E_NUM_LR = 4, </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>};</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> l4_arm_vcpu_e_info_t <span class="keyword">const</span> *</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span>l4_vcpu_e_info(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>l4_vcpu_e_info_user(<span class="keywordtype">void</span> *vcpu) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>l4_vcpu_e_info_user(<span class="keywordtype">void</span> *vcpu) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>{</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">return</span> ((l4_arm_vcpu_e_info_t *)l4_vcpu_e_info(vcpu))-&gt;user;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span>}</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span>l4_vcpu_e_read_32(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>l4_vcpu_e_read_32(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>{ <span class="keywordflow">return</span> *(<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> <span class="keyword">const</span> *)l4_vcpu_e_ptr(vcpu, <span class="keywordtype">id</span>); }</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span>l4_vcpu_e_write_32(<span class="keywordtype">void</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>, <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>l4_vcpu_e_write_32(<span class="keywordtype">void</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>, <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span>{ *((<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *)l4_vcpu_e_ptr(vcpu, + <span class="keywordtype">id</span>)) = val; }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span>l4_vcpu_e_read_64(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span>l4_vcpu_e_read_64(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span>{ <span class="keywordflow">return</span> *(<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> <span class="keyword">const</span> *)l4_vcpu_e_ptr(vcpu, <span class="keywordtype">id</span>); }</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>l4_vcpu_e_write_64(<span class="keywordtype">void</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>, <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span>l4_vcpu_e_write_64(<span class="keywordtype">void</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>, <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span>{ *((<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *)l4_vcpu_e_ptr(vcpu, <span class="keywordtype">id</span>)) = val; }</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span>l4_vcpu_e_read(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span>l4_vcpu_e_read(<span class="keywordtype">void</span> <span class="keyword">const</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span>{ <span class="keywordflow">return</span> *(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <span class="keyword">const</span> *)l4_vcpu_e_ptr(vcpu, <span class="keywordtype">id</span>); }</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span></div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span>l4_vcpu_e_write(<span class="keywordtype">void</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>, <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span>l4_vcpu_e_write(<span class="keywordtype">void</span> *vcpu, <span class="keywordtype">unsigned</span> <span class="keywordtype">id</span>, <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span>{ *((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *)l4_vcpu_e_ptr(vcpu, <span class="keywordtype">id</span>)) = val; }</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9678dc2e6bf3e4d8ec950162576b0fad"><div class="ttname"><a href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div><div class="ttdeci">unsigned char l4_uint8_t</div><div class="ttdoc">Unsigned 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gaf3331c485014bd12a9e4f9d27a55e689"><div class="ttname"><a href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div><div class="ttdeci">unsigned long long l4_uint64_t</div><div class="ttdoc">Unsigned 64bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00031">l4int.h:31</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__vcpu-arm.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,150 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__vm-arm.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____vm-arm_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__vm-arm.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Virtualization interface.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="task_source.html">l4/sys/task</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for __vm-arm.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="____vm-arm_8h__incl.svg" width="959" height="1078"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="____vm-arm_8h__dep__incl.svg" width="280" height="110"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="____vm-arm_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-nested-classes" class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:L4_3A_3AVm" id="r_L4_3A_3AVm"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classL4_1_1Vm.html">L4::Vm</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual machine host address space. <a href="classL4_1_1Vm.html#details">More...</a><br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-namespaces" class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:L4" id="r_L4"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceL4.html">L4</a></td></tr>
<tr class="memdesc:namespaceL4"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> low-level kernel interface. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Virtualization interface. </p>
<p class="definition">Definition in file <a class="el" href="____vm-arm_8h_source.html">__vm-arm.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="____vm-arm_8h.html">__vm-arm.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,7 @@
<map id="l4/sys/__vm&#45;arm.h" name="l4/sys/__vm&#45;arm.h">
<area shape="rect" id="Node000001" title="Virtualization interface." alt="" coords="65,5,207,31"/>
<area shape="rect" id="Node000002" href="$arm_2l4_2sys_2vm_source.html" title=" " alt="" coords="5,79,120,104"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="116,42,76,80,73,77,112,38"/>
<area shape="rect" id="Node000003" href="$arm64_2l4_2sys_2vm_source.html" title=" " alt="" coords="144,79,275,104"/>
<area shape="poly" id="edge2_Node000001_Node000003" title=" " alt="" coords="160,38,199,77,196,80,156,42"/>
</map>

View File

@@ -0,0 +1 @@
79de16d305d2588b077b6dd70353efa5

View File

@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: l4/sys/__vm&#45;arm.h Pages: 1 -->
<svg width="210pt" height="82pt"
viewBox="0.00 0.00 210.00 82.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 78)">
<title>l4/sys/__vm&#45;arm.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Virtualization interface.">
<polygon fill="#999999" stroke="#666666" points="151.5,-74 44.5,-74 44.5,-55 151.5,-55 151.5,-74"/>
<text text-anchor="middle" x="98" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__vm&#45;arm.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="arm_2l4_2sys_2vm_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="86,-19 0,-19 0,0 86,0 86,-19"/>
<text text-anchor="middle" x="43" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">arm/l4/sys/vm</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M81.71,-47.8C71.96,-38.41 59.95,-26.83 51.91,-19.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="79.29,-50.33 88.92,-54.75 84.15,-45.29 79.29,-50.33"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="arm64_2l4_2sys_2vm_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="202,-19 104,-19 104,0 202,0 202,-19"/>
<text text-anchor="middle" x="153" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">arm64/l4/sys/vm</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge2_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M114.29,-47.8C124.04,-38.41 136.05,-26.83 144.09,-19.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="111.85,-45.29 107.08,-54.75 116.71,-50.33 111.85,-45.29"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,90 @@
<map id="l4/sys/__vm&#45;arm.h" name="l4/sys/__vm&#45;arm.h">
<area shape="rect" id="Node000001" title="Virtualization interface." alt="" coords="779,5,922,31"/>
<area shape="rect" id="Node000002" href="$task.html" title="Common task related definitions." alt="" coords="805,79,897,104"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="853,31,853,65,848,65,848,31"/>
<area shape="rect" id="Node000003" href="$l4_2sys_2task_8h.html" title="Common task related definitions." alt="" coords="659,599,763,625"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="860,103,870,125,879,152,879,204,872,251,839,353,799,449,758,531,727,588,722,586,753,528,794,447,834,351,867,250,873,204,873,152,865,127,855,105"/>
<area shape="rect" id="Node000014" href="$capability.html" title="L4::Cap related definitions." alt="" coords="736,152,864,177"/>
<area shape="poly" id="edge24_Node000002_Node000014" title=" " alt="" coords="844,106,818,142,814,139,840,103"/>
<area shape="rect" id="Node000004" href="$l4_2sys_2types_8h.html" title="Common L4 ABI Data Types." alt="" coords="651,827,763,852"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="713,625,710,813,704,813,708,625"/>
<area shape="rect" id="Node000011" href="$l4_2sys_2utcb_8h.html" title="UTCB definitions." alt="" coords="573,753,677,779"/>
<area shape="poly" id="edge15_Node000003_Node000011" title=" " alt="" coords="707,626,641,742,636,740,702,623"/>
<area shape="rect" id="Node000012" href="$l4_2sys_2ipc_8h.html" title="Common IPC interface." alt="" coords="489,680,583,705"/>
<area shape="poly" id="edge19_Node000003_Node000012" title=" " alt="" coords="686,627,575,677,573,672,684,622"/>
<area shape="rect" id="Node000005" href="$l4_2sys_2l4int_8h.html" title="Fixed sized integer types, generic version." alt="" coords="845,973,950,999"/>
<area shape="poly" id="edge4_Node000004_Node000005" title=" " alt="" coords="763,845,860,865,902,880,929,898,935,915,934,932,918,964,913,961,929,931,930,915,925,902,900,885,858,870,762,851"/>
<area shape="rect" id="Node000006" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="357,973,489,999"/>
<area shape="poly" id="edge5_Node000004_Node000006" title=" " alt="" coords="651,850,535,869,483,884,450,902,440,914,433,929,426,960,421,959,428,927,435,912,446,898,481,879,534,864,650,844"/>
<area shape="rect" id="Node000008" href="$l4_2sys_2consts_8h.html" title="Common constants." alt="" coords="631,900,750,925"/>
<area shape="poly" id="edge7_Node000004_Node000008" title=" " alt="" coords="707,853,699,887,694,886,701,852"/>
<area shape="rect" id="Node000009" href="$____l4__fpage_8h_source.html" title=" " alt="" coords="460,900,607,925"/>
<area shape="poly" id="edge10_Node000004_Node000009" title=" " alt="" coords="680,854,575,897,573,892,678,850"/>
<area shape="rect" id="Node000010" href="$____timeout_8h_source.html" title=" " alt="" coords="773,900,915,925"/>
<area shape="poly" id="edge12_Node000004_Node000010" title=" " alt="" coords="730,850,811,891,808,896,728,854"/>
<area shape="rect" id="Node000007" title=" " alt="" coords="361,1047,484,1072"/>
<area shape="poly" id="edge6_Node000006_Node000007" title=" " alt="" coords="425,999,425,1033,420,1033,420,999"/>
<area shape="poly" id="edge9_Node000008_Node000005" title=" " alt="" coords="725,923,852,966,850,971,723,928"/>
<area shape="poly" id="edge8_Node000008_Node000006" title=" " alt="" coords="648,928,480,972,478,967,647,923"/>
<area shape="poly" id="edge11_Node000009_Node000006" title=" " alt="" coords="517,928,454,968,451,963,514,923"/>
<area shape="poly" id="edge13_Node000010_Node000005" title=" " alt="" coords="855,924,883,961,878,964,851,927"/>
<area shape="poly" id="edge14_Node000010_Node000006" title=" " alt="" coords="777,928,503,974,502,969,776,923"/>
<area shape="poly" id="edge16_Node000011_Node000004" title=" " alt="" coords="640,777,685,816,681,820,637,781"/>
<area shape="poly" id="edge18_Node000011_Node000005" title=" " alt="" coords="678,769,744,780,819,803,857,819,892,841,924,867,950,899,955,917,950,935,939,952,925,966,921,963,935,948,946,933,950,917,946,901,920,871,889,845,855,824,817,808,743,785,677,774"/>
<area shape="poly" id="edge17_Node000011_Node000006" title=" " alt="" coords="593,781,553,798,507,824,463,858,444,879,429,901,421,930,421,960,415,960,415,930,424,899,440,875,459,854,504,820,550,794,591,776"/>
<area shape="poly" id="edge20_Node000012_Node000004" title=" " alt="" coords="539,705,545,740,552,760,563,777,598,804,639,821,636,826,595,808,559,780,547,762,540,742,534,706"/>
<area shape="poly" id="edge21_Node000012_Node000011" title=" " alt="" coords="552,703,602,742,598,747,549,707"/>
<area shape="rect" id="Node000013" href="$err_8h.html" title="Error codes." alt="" coords="99,753,192,779"/>
<area shape="poly" id="edge22_Node000012_Node000013" title=" " alt="" coords="489,705,206,756,205,751,488,700"/>
<area shape="poly" id="edge23_Node000013_Node000006" title=" " alt="" coords="149,778,155,808,166,847,184,888,212,923,242,944,275,959,310,970,343,977,342,982,308,975,273,964,239,949,209,927,180,891,161,849,149,809,144,779"/>
<area shape="poly" id="edge46_Node000014_Node000003" title=" " alt="" coords="792,179,775,202,756,233,740,270,733,310,733,459,728,529,719,586,713,585,723,528,728,459,728,310,735,269,751,231,770,199,788,176"/>
<area shape="poly" id="edge26_Node000014_Node000004" title=" " alt="" coords="808,177,832,230,864,316,892,420,901,475,904,530,904,694,900,719,890,742,875,762,856,779,811,806,765,825,763,820,808,801,853,775,871,758,886,739,895,718,899,694,899,530,895,476,887,421,859,317,827,232,803,179"/>
<area shape="poly" id="edge25_Node000014_Node000008" title=" " alt="" coords="813,176,850,218,897,284,919,324,938,366,950,411,955,457,955,768,948,787,931,806,906,824,875,842,806,874,740,898,738,893,803,869,873,837,903,820,928,802,944,784,949,767,949,457,945,412,932,368,914,326,893,287,846,221,809,179"/>
<area shape="rect" id="Node000015" href="$kobject_source.html" title=" " alt="" coords="515,372,626,397"/>
<area shape="poly" id="edge27_Node000014_Node000015" title=" " alt="" coords="782,180,749,201,714,227,643,299,590,363,586,359,639,295,710,223,746,196,779,175"/>
<area shape="rect" id="Node000022" href="$sys_2meta.html" title="Meta interface for getting dynamic type information about objects behind capabilities." alt="" coords="391,225,489,251"/>
<area shape="poly" id="edge47_Node000014_Node000022" title=" " alt="" coords="743,180,503,227,502,222,742,175"/>
<area shape="poly" id="edge35_Node000015_Node000004" title=" " alt="" coords="612,395,682,422,722,442,761,466,797,494,826,528,846,567,853,610,853,694,850,716,842,737,815,773,781,802,746,823,743,818,777,798,812,770,838,735,845,715,848,694,848,611,841,568,822,531,793,498,758,470,719,446,680,427,610,400"/>
<area shape="rect" id="Node000016" href="$kernel__object_8h.html" title="Kernel object system calls." alt="" coords="510,519,631,544"/>
<area shape="poly" id="edge28_Node000015_Node000016" title=" " alt="" coords="573,398,573,505,568,505,568,398"/>
<area shape="rect" id="Node000018" href="$____typeinfo_8h.html" title="Type information handling." alt="" coords="417,445,519,471"/>
<area shape="poly" id="edge36_Node000015_Node000018" title=" " alt="" coords="556,400,498,439,495,435,553,395"/>
<area shape="poly" id="edge29_Node000016_Node000004" title=" " alt="" coords="632,540,718,560,754,574,777,590,791,619,796,650,793,682,785,713,757,772,727,817,722,814,752,770,780,712,788,681,791,650,786,621,773,594,751,578,716,565,631,545"/>
<area shape="poly" id="edge30_Node000016_Node000006" title=" " alt="" coords="510,541,434,559,394,574,357,594,305,631,265,665,251,684,241,706,234,733,232,765,232,840,235,864,245,886,260,905,278,921,322,948,367,967,365,972,320,953,275,925,256,908,240,888,230,866,227,841,227,765,229,732,236,704,246,681,261,661,302,626,355,590,392,569,432,554,509,536"/>
<area shape="poly" id="edge31_Node000016_Node000011" title=" " alt="" coords="576,544,622,739,617,740,571,545"/>
<area shape="poly" id="edge34_Node000016_Node000012" title=" " alt="" coords="571,545,544,667,539,666,566,544"/>
<area shape="rect" id="Node000017" href="$____kernel__object__impl_8h_source.html" title=" " alt="" coords="368,592,533,632"/>
<area shape="poly" id="edge32_Node000016_Node000017" title=" " alt="" coords="554,546,492,587,489,582,552,542"/>
<area shape="poly" id="edge33_Node000017_Node000012" title=" " alt="" coords="473,630,515,668,511,672,470,634"/>
<area shape="rect" id="Node000019" href="$types.html" title=" " alt="" coords="5,599,91,625"/>
<area shape="poly" id="edge37_Node000018_Node000019" title=" " alt="" coords="437,473,317,521,266,546,182,576,105,599,103,594,180,571,264,542,315,516,435,468"/>
<area shape="rect" id="Node000020" href="$ipc__basics_source.html" title=" " alt="" coords="137,519,253,544"/>
<area shape="poly" id="edge38_Node000018_Node000020" title=" " alt="" coords="425,473,253,518,251,513,423,468"/>
<area shape="rect" id="Node000021" href="$capability_8h_source.html" title=" " alt="" coords="328,519,451,544"/>
<area shape="poly" id="edge42_Node000018_Node000021" title=" " alt="" coords="457,473,414,511,410,508,454,469"/>
<area shape="poly" id="edge40_Node000020_Node000011" title=" " alt="" coords="213,542,322,614,399,660,478,703,580,746,578,751,476,708,396,664,319,618,210,546"/>
<area shape="poly" id="edge41_Node000020_Node000013" title=" " alt="" coords="188,546,174,567,163,593,153,632,148,672,147,739,141,739,143,672,148,631,157,591,170,564,184,543"/>
<area shape="poly" id="edge39_Node000020_Node000019" title=" " alt="" coords="174,547,83,595,81,590,172,542"/>
<area shape="poly" id="edge45_Node000021_Node000003" title=" " alt="" coords="437,541,651,594,650,599,435,547"/>
<area shape="poly" id="edge44_Node000021_Node000004" title=" " alt="" coords="382,546,370,563,360,585,354,608,358,631,382,670,413,704,449,733,488,758,570,797,642,821,641,826,568,802,486,763,446,738,410,708,378,673,354,633,349,608,355,583,366,560,378,543"/>
<area shape="poly" id="edge43_Node000021_Node000008" title=" " alt="" coords="379,546,362,567,348,593,342,625,348,651,363,676,385,704,415,737,449,768,522,822,593,863,652,892,649,897,591,868,519,826,445,772,411,741,381,707,358,679,343,653,337,625,343,591,357,564,375,542"/>
<area shape="poly" id="edge48_Node000022_Node000015" title=" " alt="" coords="453,249,553,360,549,363,449,253"/>
<area shape="rect" id="Node000023" href="$ipc__iface.html" title="Interface Definition Language." alt="" coords="355,372,461,397"/>
<area shape="poly" id="edge49_Node000022_Node000023" title=" " alt="" coords="440,252,416,359,411,358,435,251"/>
<area shape="rect" id="Node000025" href="$ipc__string_source.html" title=" " alt="" coords="83,299,195,324"/>
<area shape="poly" id="edge56_Node000022_Node000025" title=" " alt="" coords="392,253,201,298,200,293,391,248"/>
<area shape="poly" id="edge55_Node000023_Node000018" title=" " alt="" coords="420,396,452,433,447,437,416,399"/>
<area shape="poly" id="edge50_Node000023_Node000020" title=" " alt="" coords="406,399,387,435,373,455,355,473,311,500,264,517,262,512,308,495,352,469,369,452,383,432,401,396"/>
<area shape="rect" id="Node000024" href="$ipc__types.html" title=" " alt="" coords="187,445,341,471"/>
<area shape="poly" id="edge51_Node000023_Node000024" title=" " alt="" coords="386,400,301,441,299,437,384,395"/>
<area shape="poly" id="edge53_Node000024_Node000019" title=" " alt="" coords="225,473,176,492,127,521,92,554,65,589,61,586,88,551,124,517,174,488,223,468"/>
<area shape="poly" id="edge54_Node000024_Node000020" title=" " alt="" coords="254,473,217,511,213,507,251,469"/>
<area shape="poly" id="edge52_Node000024_Node000021" title=" " alt="" coords="285,468,358,509,356,514,283,473"/>
<area shape="poly" id="edge57_Node000025_Node000019" title=" " alt="" coords="136,325,119,373,82,492,57,587,52,585,77,491,113,371,131,323"/>
<area shape="poly" id="edge58_Node000025_Node000020" title=" " alt="" coords="136,325,127,358,125,377,127,397,137,428,151,457,180,506,176,509,146,460,132,430,121,398,119,377,121,357,131,324"/>
<area shape="rect" id="Node000026" href="$ipc__array_source.html" title=" " alt="" coords="136,372,219,397"/>
<area shape="poly" id="edge59_Node000025_Node000026" title=" " alt="" coords="147,323,167,359,162,361,143,326"/>
<area shape="poly" id="edge60_Node000026_Node000019" title=" " alt="" coords="172,399,137,451,94,520,61,588,56,585,90,517,132,448,167,396"/>
<area shape="poly" id="edge61_Node000026_Node000020" title=" " alt="" coords="179,398,177,431,179,470,188,505,183,506,173,471,171,431,173,397"/>
<area shape="poly" id="edge62_Node000026_Node000024" title=" " alt="" coords="193,395,241,434,238,439,190,399"/>
</map>

View File

@@ -0,0 +1 @@
f253106c4274050a144d04e30f6ef4b5

View File

@@ -0,0 +1,805 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: l4/sys/__vm&#45;arm.h Pages: 1 -->
<svg width="719pt" height="808pt"
viewBox="0.00 0.00 718.74 808.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 804)">
<title>l4/sys/__vm&#45;arm.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Virtualization interface.">
<polygon fill="#999999" stroke="#666666" points="687.5,-800 580.5,-800 580.5,-781 687.5,-781 687.5,-800"/>
<text text-anchor="middle" x="634" y="-788" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__vm&#45;arm.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="task.html" target="_top" xlink:title="Common task related definitions.">
<polygon fill="white" stroke="#666666" points="668.5,-745 599.5,-745 599.5,-726 668.5,-726 668.5,-745"/>
<text text-anchor="middle" x="634" y="-733" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/task</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M634,-780.75C634,-773.8 634,-763.85 634,-755.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="637.5,-755.09 634,-745.09 630.5,-755.09 637.5,-755.09"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="l4_2sys_2task_8h.html" target="_top" xlink:title="Common task related definitions.">
<polygon fill="white" stroke="#666666" points="568,-354.5 490,-354.5 490,-335.5 568,-335.5 568,-354.5"/>
<text text-anchor="middle" x="529" y="-342.5" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/task.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M638.88,-725.98C643.56,-717.26 650.31,-703.17 653,-690 656.61,-672.37 651.05,-627.99 648,-616 622.51,-515.81 563.25,-405.78 539.31,-363.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="542.29,-361.85 534.27,-354.93 536.22,-365.34 542.29,-361.85"/>
</a>
</g>
</g>
<!-- Node14 -->
<g id="Node000014" class="node">
<title>Node14</title>
<g id="a_Node000014"><a xlink:href="capability.html" target="_top" xlink:title="L4::Cap related definitions.">
<polygon fill="white" stroke="#666666" points="644,-690 548,-690 548,-671 644,-671 644,-690"/>
<text text-anchor="middle" x="596" y="-678" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/capability</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node14 -->
<g id="edge24_Node000002_Node000014" class="edge">
<title>Node2&#45;&gt;Node14</title>
<g id="a_edge24_Node000002_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M627.73,-725.75C622.41,-718.34 614.64,-707.5 608.12,-698.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="610.83,-696.18 602.16,-690.09 605.14,-700.26 610.83,-696.18"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="l4_2sys_2types_8h.html" target="_top" xlink:title="Common L4 ABI Data Types.">
<polygon fill="white" stroke="#666666" points="568,-184 484,-184 484,-165 568,-165 568,-184"/>
<text text-anchor="middle" x="526" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/types.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M528.85,-335.41C528.38,-309.39 526.99,-230.97 526.34,-194.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="529.83,-194.21 526.16,-184.27 522.83,-194.33 529.83,-194.21"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="l4_2sys_2utcb_8h.html" target="_top" xlink:title="UTCB definitions.">
<polygon fill="white" stroke="#666666" points="504,-239 426,-239 426,-220 504,-220 504,-239"/>
<text text-anchor="middle" x="465" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/utcb.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node11 -->
<g id="edge15_Node000003_Node000011" class="edge">
<title>Node3&#45;&gt;Node11</title>
<g id="a_edge15_Node000003_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M524.19,-335.47C513.77,-316.98 488.91,-272.9 474.95,-248.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="477.83,-246.12 469.87,-239.13 471.73,-249.56 477.83,-246.12"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="l4_2sys_2ipc_8h.html" target="_top" xlink:title="Common IPC interface.">
<polygon fill="white" stroke="#666666" points="433.5,-294 362.5,-294 362.5,-275 433.5,-275 433.5,-294"/>
<text text-anchor="middle" x="398" y="-282" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/ipc.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node12 -->
<g id="edge19_Node000003_Node000012" class="edge">
<title>Node3&#45;&gt;Node12</title>
<g id="a_edge19_Node000003_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M509.95,-335.49C488.03,-325.7 451.79,-309.52 426.5,-298.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="427.63,-294.9 417.07,-294.02 424.78,-301.29 427.63,-294.9"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="l4_2sys_2l4int_8h.html" target="_top" xlink:title="Fixed sized integer types, generic version.">
<polygon fill="white" stroke="#666666" points="708.5,-74 629.5,-74 629.5,-55 708.5,-55 708.5,-74"/>
<text text-anchor="middle" x="669" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/l4int.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node5 -->
<g id="edge4_Node000004_Node000005" class="edge">
<title>Node4&#45;&gt;Node5</title>
<g id="a_edge4_Node000004_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M568.08,-167.99C611.87,-161.3 676.12,-148.43 691,-129 701.59,-115.17 692.35,-95.88 682.8,-82.19"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="685.52,-79.98 676.69,-74.12 679.94,-84.21 685.52,-79.98"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="compiler_8h.html" target="_top" xlink:title="L4 compiler related defines.">
<polygon fill="white" stroke="#666666" points="362.5,-74 263.5,-74 263.5,-55 362.5,-55 362.5,-74"/>
<text text-anchor="middle" x="313" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/compiler.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node6 -->
<g id="edge5_Node000004_Node000006" class="edge">
<title>Node4&#45;&gt;Node6</title>
<g id="a_edge5_Node000004_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M483.61,-168.78C433.34,-162.34 353.62,-149.26 332,-129 319.81,-117.58 315.33,-98.69 313.74,-84.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="317.22,-84.02 313,-74.31 310.24,-84.54 317.22,-84.02"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="l4_2sys_2consts_8h.html" target="_top" xlink:title="Common constants.">
<polygon fill="white" stroke="#666666" points="558.5,-129 469.5,-129 469.5,-110 558.5,-110 558.5,-129"/>
<text text-anchor="middle" x="514" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/consts.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node8 -->
<g id="edge7_Node000004_Node000008" class="edge">
<title>Node4&#45;&gt;Node8</title>
<g id="a_edge7_Node000004_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M524.02,-164.75C522.43,-157.72 520.14,-147.62 518.15,-138.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="521.57,-138.07 515.94,-129.09 514.74,-139.62 521.57,-138.07"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="____l4__fpage_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="451,-129 341,-129 341,-110 451,-110 451,-129"/>
<text text-anchor="middle" x="396" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__l4_fpage.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node9 -->
<g id="edge10_Node000004_Node000009" class="edge">
<title>Node4&#45;&gt;Node9</title>
<g id="a_edge10_Node000004_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M505.11,-164.98C483.92,-156.34 450.87,-142.87 426.7,-133.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="427.85,-129.7 417.27,-129.17 425.21,-136.19 427.85,-129.7"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="____timeout_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="682,-129 576,-129 576,-110 682,-110 682,-129"/>
<text text-anchor="middle" x="629" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__timeout.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node10 -->
<g id="edge12_Node000004_Node000010" class="edge">
<title>Node4&#45;&gt;Node10</title>
<g id="a_edge12_Node000004_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M542.55,-164.98C558.89,-156.57 584.13,-143.59 603.13,-133.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="604.86,-136.86 612.15,-129.17 601.66,-130.63 604.86,-136.86"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="359,-19 267,-19 267,0 359,0 359,-19"/>
<text text-anchor="middle" x="313" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/linkage.h</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node7 -->
<g id="edge6_Node000006_Node000007" class="edge">
<title>Node6&#45;&gt;Node7</title>
<g id="a_edge6_Node000006_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M313,-54.75C313,-47.8 313,-37.85 313,-29.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="316.5,-29.09 313,-19.09 309.5,-29.09 316.5,-29.09"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node5 -->
<g id="edge9_Node000008_Node000005" class="edge">
<title>Node8&#45;&gt;Node5</title>
<g id="a_edge9_Node000008_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M538.9,-109.98C564.7,-101.16 605.22,-87.31 634.18,-77.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="635.57,-80.63 643.9,-74.08 633.31,-74.01 635.57,-80.63"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node6 -->
<g id="edge8_Node000008_Node000006" class="edge">
<title>Node8&#45;&gt;Node6</title>
<g id="a_edge8_Node000008_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M481.71,-109.98C447.38,-100.93 392.94,-86.58 355.23,-76.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="356.11,-73.25 345.55,-74.08 354.32,-80.02 356.11,-73.25"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node6 -->
<g id="edge11_Node000009_Node000006" class="edge">
<title>Node9&#45;&gt;Node6</title>
<g id="a_edge11_Node000009_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M382.66,-109.98C369.91,-101.84 350.45,-89.41 335.33,-79.76"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="336.89,-76.6 326.58,-74.17 333.12,-82.5 336.89,-76.6"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node5 -->
<g id="edge13_Node000010_Node000005" class="edge">
<title>Node10&#45;&gt;Node5</title>
<g id="a_edge13_Node000010_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M635.61,-109.75C641.26,-102.26 649.54,-91.28 656.45,-82.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="659.29,-84.18 662.52,-74.09 653.7,-79.96 659.29,-84.18"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node6 -->
<g id="edge14_Node000010_Node000006" class="edge">
<title>Node10&#45;&gt;Node6</title>
<g id="a_edge14_Node000010_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M578.23,-109.98C522.16,-100.58 431.96,-85.45 372.59,-75.49"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="373.04,-72.02 362.6,-73.82 371.89,-78.93 373.04,-72.02"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node4 -->
<g id="edge16_Node000011_Node000004" class="edge">
<title>Node11&#45;&gt;Node4</title>
<g id="a_edge16_Node000011_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M474.8,-219.98C483.82,-212.15 497.41,-200.34 508.32,-190.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="510.77,-193.37 516.02,-184.17 506.18,-188.09 510.77,-193.37"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node5 -->
<g id="edge18_Node000011_Node000005" class="edge">
<title>Node11&#45;&gt;Node5</title>
<g id="a_edge18_Node000011_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M504.38,-225.42C560.54,-218.66 661.83,-197.16 707,-129 717.72,-112.83 702.56,-93.63 688.33,-80.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="690.57,-77.92 680.69,-74.08 686.01,-83.24 690.57,-77.92"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node6 -->
<g id="edge17_Node000011_Node000006" class="edge">
<title>Node11&#45;&gt;Node6</title>
<g id="a_edge17_Node000011_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M439.82,-219.95C404.99,-206.64 343.33,-177.33 316,-129 308.36,-115.49 308.21,-97.66 309.62,-84.34"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="313.09,-84.79 311.05,-74.39 306.17,-83.8 313.09,-84.79"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node4 -->
<g id="edge20_Node000012_Node000004" class="edge">
<title>Node12&#45;&gt;Node4</title>
<g id="a_edge20_Node000012_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M398.29,-274.98C399.18,-261.62 402.77,-235.68 417,-220 431.93,-203.55 453.84,-193.04 474.1,-186.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="475.32,-189.69 483.88,-183.44 473.3,-182.99 475.32,-189.69"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node11 -->
<g id="edge21_Node000012_Node000011" class="edge">
<title>Node12&#45;&gt;Node11</title>
<g id="a_edge21_Node000012_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M408.76,-274.98C418.77,-267.07 433.89,-255.11 445.93,-245.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="448.37,-248.12 454.04,-239.17 444.03,-242.63 448.37,-248.12"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:href="err_8h.html" target="_top" xlink:title="Error codes.">
<polygon fill="white" stroke="#666666" points="140,-239 70,-239 70,-220 140,-220 140,-239"/>
<text text-anchor="middle" x="105" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/err.h</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node13 -->
<g id="edge22_Node000012_Node000013" class="edge">
<title>Node12&#45;&gt;Node13</title>
<g id="a_edge22_Node000012_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M362.37,-277.05C309.13,-267.43 208.87,-249.29 150.44,-238.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="150.85,-235.24 140.39,-236.9 149.6,-242.13 150.85,-235.24"/>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node6 -->
<g id="edge23_Node000013_Node000006" class="edge">
<title>Node13&#45;&gt;Node6</title>
<g id="a_edge23_Node000013_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M105.99,-219.87C108.98,-198.06 119.86,-140.29 154,-110 181.2,-85.86 220.5,-74.72 253.21,-69.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="253.72,-73.08 263.14,-68.22 252.75,-66.15 253.72,-73.08"/>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node3 -->
<g id="edge46_Node000014_Node000003" class="edge">
<title>Node14&#45;&gt;Node3</title>
<g id="a_edge46_Node000014_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M588.55,-670.94C574.17,-653.5 544,-612.08 544,-571.5 544,-571.5 544,-571.5 544,-459.5 544,-425.83 537.43,-387.03 532.99,-364.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="536.41,-363.87 530.96,-354.78 529.55,-365.28 536.41,-363.87"/>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node4 -->
<g id="edge26_Node000014_Node000004" class="edge">
<title>Node14&#45;&gt;Node4</title>
<g id="a_edge26_Node000014_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M600.3,-670.79C616.38,-637.43 672,-514.24 672,-406.5 672,-406.5 672,-406.5 672,-283.5 672,-231.73 611.93,-201.94 568.85,-187.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="569.72,-183.83 559.13,-184.06 567.55,-190.49 569.72,-183.83"/>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node8 -->
<g id="edge25_Node000014_Node000008" class="edge">
<title>Node14&#45;&gt;Node8</title>
<g id="a_edge25_Node000014_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M604.57,-670.81C631.08,-642.98 710,-552.47 710,-461.5 710,-461.5 710,-461.5 710,-228.5 710,-192.49 607.23,-152 550.53,-132.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="551.44,-129.02 540.84,-129.1 549.18,-135.64 551.44,-129.02"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="kobject_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="465.5,-525 382.5,-525 382.5,-506 465.5,-506 465.5,-525"/>
<text text-anchor="middle" x="424" y="-513" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/kobject</text>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node15 -->
<g id="edge27_Node000014_Node000015" class="edge">
<title>Node14&#45;&gt;Node15</title>
<g id="a_edge27_Node000014_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M581.09,-670.92C567.2,-662.59 546.25,-649.17 530,-635 492.74,-602.51 455.73,-557.47 436.86,-533.35"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="439.44,-530.97 430.55,-525.2 433.9,-535.25 439.44,-530.97"/>
</a>
</g>
</g>
<!-- Node22 -->
<g id="Node000022" class="node">
<title>Node22</title>
<g id="a_Node000022"><a xlink:href="sys_2meta.html" target="_top" xlink:title="Meta interface for getting dynamic type information about objects behind capabilities.">
<polygon fill="white" stroke="#666666" points="363,-635 289,-635 289,-616 363,-616 363,-635"/>
<text text-anchor="middle" x="326" y="-623" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/meta</text>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node22 -->
<g id="edge47_Node000014_Node000022" class="edge">
<title>Node14&#45;&gt;Node22</title>
<g id="a_edge47_Node000014_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M552.62,-670.98C503.53,-661.35 423.84,-645.71 373.22,-635.77"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="373.68,-632.29 363.19,-633.8 372.33,-639.16 373.68,-632.29"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node4 -->
<g id="edge35_Node000015_Node000004" class="edge">
<title>Node15&#45;&gt;Node4</title>
<g id="a_edge35_Node000015_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M454.09,-505.88C512.15,-487.21 634,-437.15 634,-346 634,-346 634,-346 634,-283.5 634,-238.37 586.26,-205.51 554.26,-188.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="555.81,-185.41 545.31,-184 552.64,-191.65 555.81,-185.41"/>
</a>
</g>
</g>
<!-- Node16 -->
<g id="Node000016" class="node">
<title>Node16</title>
<g id="a_Node000016"><a xlink:href="kernel__object_8h.html" target="_top" xlink:title="Kernel object system calls.">
<polygon fill="white" stroke="#666666" points="469.5,-415 378.5,-415 378.5,-396 469.5,-396 469.5,-415"/>
<text text-anchor="middle" x="424" y="-403" font-family="Helvetica,sans-Serif" font-size="10.00">kernel_object.h</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node16 -->
<g id="edge28_Node000015_Node000016" class="edge">
<title>Node15&#45;&gt;Node16</title>
<g id="a_edge28_Node000015_Node000016"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M424,-505.66C424,-488.17 424,-448.8 424,-425.27"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="427.5,-425.16 424,-415.16 420.5,-425.16 427.5,-425.16"/>
</a>
</g>
</g>
<!-- Node18 -->
<g id="Node000018" class="node">
<title>Node18</title>
<g id="a_Node000018"><a xlink:href="____typeinfo_8h.html" target="_top" xlink:title="Type information handling.">
<polygon fill="white" stroke="#666666" points="385.5,-470 308.5,-470 308.5,-451 385.5,-451 385.5,-470"/>
<text text-anchor="middle" x="347" y="-458" font-family="Helvetica,sans-Serif" font-size="10.00">__typeinfo.h</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node18 -->
<g id="edge36_Node000015_Node000018" class="edge">
<title>Node15&#45;&gt;Node18</title>
<g id="a_edge36_Node000015_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M411.63,-505.98C399.91,-497.92 382.08,-485.65 368.11,-476.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="369.82,-472.96 359.6,-470.17 365.85,-478.72 369.82,-472.96"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node4 -->
<g id="edge29_Node000016_Node000004" class="edge">
<title>Node16&#45;&gt;Node4</title>
<g id="a_edge29_Node000016_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M469.87,-397.33C510.07,-390.01 564.05,-377.26 577,-360 616.19,-307.79 565.2,-227.06 539.36,-192.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="541.97,-189.99 533.12,-184.18 536.41,-194.24 541.97,-189.99"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node6 -->
<g id="edge30_Node000016_Node000006" class="edge">
<title>Node16&#45;&gt;Node6</title>
<g id="a_edge30_Node000016_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M378.25,-400.01C344.02,-394.83 297.38,-383.71 263,-360 204.24,-319.47 168,-301.88 168,-230.5 168,-230.5 168,-230.5 168,-173.5 168,-121.81 228,-91.93 270.81,-77.19"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="272.05,-80.47 280.46,-74.02 269.87,-73.82 272.05,-80.47"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node11 -->
<g id="edge31_Node000016_Node000011" class="edge">
<title>Node16&#45;&gt;Node11</title>
<g id="a_edge31_Node000016_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M426.09,-395.63C432.48,-368.52 451.85,-286.32 460.61,-249.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="464.08,-249.68 462.96,-239.14 457.26,-248.07 464.08,-249.68"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node12 -->
<g id="edge34_Node000016_Node000012" class="edge">
<title>Node16&#45;&gt;Node12</title>
<g id="a_edge34_Node000016_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M422.13,-395.94C417.95,-376.82 407.78,-330.27 402.07,-304.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="405.48,-303.32 399.92,-294.3 398.64,-304.82 405.48,-303.32"/>
</a>
</g>
</g>
<!-- Node17 -->
<g id="Node000017" class="node">
<title>Node17</title>
<g id="a_Node000017"><a xlink:href="____kernel__object__impl_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="396,-360 272,-360 272,-330 396,-330 396,-360"/>
<text text-anchor="start" x="280" y="-348" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__kernel_object</text>
<text text-anchor="middle" x="334" y="-337" font-family="Helvetica,sans-Serif" font-size="10.00">_impl.h</text>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node17 -->
<g id="edge32_Node000016_Node000017" class="edge">
<title>Node16&#45;&gt;Node17</title>
<g id="a_edge32_Node000016_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M410.72,-395.87C398.51,-387.93 379.96,-375.87 364.15,-365.6"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="366.01,-362.63 355.71,-360.11 362.19,-368.5 366.01,-362.63"/>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node12 -->
<g id="edge33_Node000017_Node000012" class="edge">
<title>Node17&#45;&gt;Node12</title>
<g id="a_edge33_Node000017_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M349.49,-329.84C358.97,-321.17 371.11,-310.08 380.88,-301.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="383.39,-303.6 388.41,-294.27 378.67,-298.43 383.39,-303.6"/>
</a>
</g>
</g>
<!-- Node19 -->
<g id="Node000019" class="node">
<title>Node19</title>
<g id="a_Node000019"><a xlink:href="types.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="64,-354.5 0,-354.5 0,-335.5 64,-335.5 64,-354.5"/>
<text text-anchor="middle" x="32" y="-342.5" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/types</text>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node19 -->
<g id="edge37_Node000018_Node000019" class="edge">
<title>Node18&#45;&gt;Node19</title>
<g id="a_edge37_Node000018_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M323.16,-450.92C299.91,-442.38 263.68,-428.62 233,-415 215.74,-407.34 212.53,-403.02 195,-396 154.78,-379.9 107.27,-365.87 73.95,-356.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="74.66,-353.37 64.09,-354.15 72.84,-360.13 74.66,-353.37"/>
</a>
</g>
</g>
<!-- Node20 -->
<g id="Node000020" class="node">
<title>Node20</title>
<g id="a_Node000020"><a xlink:href="ipc__basics_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="185.5,-415 98.5,-415 98.5,-396 185.5,-396 185.5,-415"/>
<text text-anchor="middle" x="142" y="-403" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/ipc_basics</text>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node20 -->
<g id="edge38_Node000018_Node000020" class="edge">
<title>Node18&#45;&gt;Node20</title>
<g id="a_edge38_Node000018_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M314.06,-450.98C279.05,-441.93 223.53,-427.58 185.07,-417.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="185.75,-414.2 175.19,-415.08 184,-420.97 185.75,-414.2"/>
</a>
</g>
</g>
<!-- Node21 -->
<g id="Node000021" class="node">
<title>Node21</title>
<g id="a_Node000021"><a xlink:href="capability_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="334,-415 242,-415 242,-396 334,-396 334,-415"/>
<text text-anchor="middle" x="288" y="-403" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/capability.h</text>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node21 -->
<g id="edge42_Node000018_Node000021" class="edge">
<title>Node18&#45;&gt;Node21</title>
<g id="a_edge42_Node000018_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M337.52,-450.98C328.8,-443.15 315.66,-431.34 305.1,-421.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="307.43,-419.25 297.65,-415.17 302.75,-424.46 307.43,-419.25"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node11 -->
<g id="edge40_Node000020_Node000011" class="edge">
<title>Node20&#45;&gt;Node11</title>
<g id="a_edge40_Node000020_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M154.47,-395.83C186.53,-373.76 274.87,-314.45 354,-275 378.98,-262.55 408.32,-250.91 430.57,-242.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="432.06,-245.83 440.25,-239.11 429.66,-239.26 432.06,-245.83"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node13 -->
<g id="edge41_Node000020_Node000013" class="edge">
<title>Node20&#45;&gt;Node13</title>
<g id="a_edge41_Node000020_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M135.36,-395.85C129.17,-387.27 120.27,-373.48 116,-360 104.01,-322.13 103.31,-275.11 104.04,-249.43"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="107.54,-249.37 104.44,-239.24 100.55,-249.09 107.54,-249.37"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node19 -->
<g id="edge39_Node000020_Node000019" class="edge">
<title>Node20&#45;&gt;Node19</title>
<g id="a_edge39_Node000020_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M125.77,-395.87C107.73,-386.28 78.38,-370.67 57.32,-359.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="58.77,-356.27 48.3,-354.67 55.48,-362.45 58.77,-356.27"/>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node3 -->
<g id="edge45_Node000021_Node000003" class="edge">
<title>Node21&#45;&gt;Node3</title>
<g id="a_edge45_Node000021_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M323.04,-395.99C365.61,-385.66 437.49,-368.21 484.09,-356.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="485.02,-360.28 493.91,-354.52 483.37,-353.47 485.02,-360.28"/>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node4 -->
<g id="edge44_Node000021_Node000004" class="edge">
<title>Node21&#45;&gt;Node4</title>
<g id="a_edge44_Node000021_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M280.94,-395.96C270.15,-381.82 251.95,-352.84 263,-330 303.67,-245.95 413.07,-204.39 477.24,-186.66"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="478.38,-189.98 487.13,-184.01 476.57,-183.22 478.38,-189.98"/>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node8 -->
<g id="edge43_Node000021_Node000008" class="edge">
<title>Node21&#45;&gt;Node8</title>
<g id="a_edge43_Node000021_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M278.98,-395.96C270.93,-387.66 259.71,-374.25 255,-360 242.52,-322.23 258.19,-306.09 283,-275 338.88,-204.96 435.25,-155.24 483.95,-133.21"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="485.6,-136.31 493.31,-129.05 482.75,-129.91 485.6,-136.31"/>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node15 -->
<g id="edge48_Node000022_Node000015" class="edge">
<title>Node22&#45;&gt;Node15</title>
<g id="a_edge48_Node000022_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M334.02,-615.66C350.47,-597.54 388.24,-555.91 409.24,-532.77"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="412.02,-534.92 416.14,-525.16 406.83,-530.21 412.02,-534.92"/>
</a>
</g>
</g>
<!-- Node23 -->
<g id="Node000023" class="node">
<title>Node23</title>
<g id="a_Node000023"><a xlink:href="ipc__iface.html" target="_top" xlink:title="Interface Definition Language.">
<polygon fill="white" stroke="#666666" points="342,-525 262,-525 262,-506 342,-506 342,-525"/>
<text text-anchor="middle" x="302" y="-513" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/ipc_iface</text>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node23 -->
<g id="edge49_Node000022_Node000023" class="edge">
<title>Node22&#45;&gt;Node23</title>
<g id="a_edge49_Node000022_Node000023"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M324.04,-615.66C320.13,-598.09 311.32,-558.45 306.1,-534.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="309.51,-534.16 303.92,-525.16 302.68,-535.68 309.51,-534.16"/>
</a>
</g>
</g>
<!-- Node25 -->
<g id="Node000025" class="node">
<title>Node25</title>
<g id="a_Node000025"><a xlink:href="ipc__string_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="142,-580 58,-580 58,-561 142,-561 142,-580"/>
<text text-anchor="middle" x="100" y="-568" font-family="Helvetica,sans-Serif" font-size="10.00">cxx/ipc_string</text>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node25 -->
<g id="edge56_Node000022_Node000025" class="edge">
<title>Node22&#45;&gt;Node25</title>
<g id="a_edge56_Node000022_Node000025"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M289.69,-615.98C250.76,-606.86 188.84,-592.33 146.4,-582.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="147.13,-578.96 136.6,-580.08 145.53,-585.77 147.13,-578.96"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node18 -->
<g id="edge55_Node000023_Node000018" class="edge">
<title>Node23&#45;&gt;Node18</title>
<g id="a_edge55_Node000023_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M309.43,-505.75C315.85,-498.18 325.31,-487.05 333.12,-477.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="335.9,-479.98 339.71,-470.09 330.57,-475.45 335.9,-479.98"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node20 -->
<g id="edge50_Node000023_Node000020" class="edge">
<title>Node23&#45;&gt;Node20</title>
<g id="a_edge50_Node000023_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M298.56,-505.85C292.76,-492.32 279.81,-466.14 261,-451 241.39,-435.22 215.62,-424.67 193.07,-417.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="193.89,-414.41 183.31,-415.01 191.95,-421.13 193.89,-414.41"/>
</a>
</g>
</g>
<!-- Node24 -->
<g id="Node000024" class="node">
<title>Node24</title>
<g id="a_Node000024"><a xlink:href="ipc__types.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="251.5,-470 136.5,-470 136.5,-451 251.5,-451 251.5,-470"/>
<text text-anchor="middle" x="194" y="-458" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/cxx/ipc_types</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node24 -->
<g id="edge51_Node000023_Node000024" class="edge">
<title>Node23&#45;&gt;Node24</title>
<g id="a_edge51_Node000023_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M284.65,-505.98C267.43,-497.54 240.8,-484.47 220.85,-474.68"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="222.19,-471.43 211.67,-470.17 219.1,-477.72 222.19,-471.43"/>
</a>
</g>
</g>
<!-- Node24&#45;&gt;Node19 -->
<g id="edge53_Node000024_Node000019" class="edge">
<title>Node24&#45;&gt;Node19</title>
<g id="a_edge53_Node000024_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M164.28,-450.92C142.37,-443.65 112.56,-431.73 90,-415 70.64,-400.64 53.58,-378.58 43.06,-363.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="45.85,-361.16 37.39,-354.77 40.02,-365.03 45.85,-361.16"/>
</a>
</g>
</g>
<!-- Node24&#45;&gt;Node20 -->
<g id="edge54_Node000024_Node000020" class="edge">
<title>Node24&#45;&gt;Node20</title>
<g id="a_edge54_Node000024_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M185.41,-450.75C177.84,-443.03 166.62,-431.6 157.49,-422.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="159.93,-419.78 150.43,-415.09 154.93,-424.68 159.93,-419.78"/>
</a>
</g>
</g>
<!-- Node24&#45;&gt;Node21 -->
<g id="edge52_Node000024_Node000021" class="edge">
<title>Node24&#45;&gt;Node21</title>
<g id="a_edge52_Node000024_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M209.1,-450.98C223.82,-442.69 246.42,-429.94 263.67,-420.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="265.63,-423.13 272.62,-415.17 262.19,-417.03 265.63,-423.13"/>
</a>
</g>
</g>
<!-- Node25&#45;&gt;Node19 -->
<g id="edge57_Node000025_Node000019" class="edge">
<title>Node25&#45;&gt;Node19</title>
<g id="a_edge57_Node000025_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M96.4,-560.71C92.8,-551.79 87.21,-537.54 83,-525 63.58,-467.18 45.07,-397.32 36.69,-364.6"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="40.02,-363.49 34.16,-354.66 33.23,-365.21 40.02,-363.49"/>
</a>
</g>
</g>
<!-- Node25&#45;&gt;Node20 -->
<g id="edge58_Node000025_Node000020" class="edge">
<title>Node25&#45;&gt;Node20</title>
<g id="a_edge58_Node000025_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M96.21,-560.79C91.38,-548.47 84.17,-525.32 89,-506 96.82,-474.67 116.58,-442.39 129.64,-423.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="132.51,-425.4 135.43,-415.21 126.8,-421.36 132.51,-425.4"/>
</a>
</g>
</g>
<!-- Node26 -->
<g id="Node000026" class="node">
<title>Node26</title>
<g id="a_Node000026"><a xlink:href="ipc__array_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="160,-525 98,-525 98,-506 160,-506 160,-525"/>
<text text-anchor="middle" x="129" y="-513" font-family="Helvetica,sans-Serif" font-size="10.00">ipc_array</text>
</a>
</g>
</g>
<!-- Node25&#45;&gt;Node26 -->
<g id="edge59_Node000025_Node000026" class="edge">
<title>Node25&#45;&gt;Node26</title>
<g id="a_edge59_Node000025_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M104.79,-560.75C108.76,-553.49 114.53,-542.95 119.43,-533.98"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="122.57,-535.54 124.3,-525.09 116.43,-532.18 122.57,-535.54"/>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node19 -->
<g id="edge60_Node000026_Node000019" class="edge">
<title>Node26&#45;&gt;Node19</title>
<g id="a_edge60_Node000026_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.97,-505.94C111.16,-489 84.41,-449.8 65,-415 55.62,-398.18 46.27,-378.27 39.94,-364.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="42.98,-362.4 35.73,-354.67 36.58,-365.23 42.98,-362.4"/>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node20 -->
<g id="edge61_Node000026_Node000020" class="edge">
<title>Node26&#45;&gt;Node20</title>
<g id="a_edge61_Node000026_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M127.95,-505.81C126.67,-493.52 125.02,-470.4 128,-451 129.35,-442.19 132.13,-432.74 134.85,-424.82"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="138.23,-425.77 138.4,-415.18 131.66,-423.35 138.23,-425.77"/>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node24 -->
<g id="edge62_Node000026_Node000024" class="edge">
<title>Node26&#45;&gt;Node24</title>
<g id="a_edge62_Node000026_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M139.44,-505.98C149.15,-498.07 163.82,-486.11 175.5,-476.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="177.83,-479.2 183.37,-470.17 173.4,-473.78 177.83,-479.2"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 36 KiB

View File

@@ -0,0 +1,152 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__vm-arm.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____vm-arm_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__vm-arm.h</div></div>
</div><!--header-->
<div class="contents">
<a href="____vm-arm_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">// vi:set ft=cpp: -*- Mode: C++ -*-</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2018 Adam Lackorzynski &lt;adam@l4re.org&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> *</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &lt;<a class="code" href="task.html">l4/sys/task</a>&gt;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceL4.html">L4</a> {</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="foldopen" id="foldopen00017" data-start="{" data-end="};">
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"><a class="line" href="classL4_1_1Vm.html"> 17</a></span><span class="keyword">class </span>Vm : <span class="keyword">public</span> <a class="code hl_class" href="classL4_1_1Kobject__t.html">Kobject_t</a>&lt;Vm, Task, L4_PROTO_VM&gt;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span>{</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="keyword">public</span>:</div>
<div class="foldopen" id="foldopen00030" data-start="{" data-end="}">
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="classL4_1_1Vm.html#ab14cb70e8330d3e1ce5528e96fe0a0da"> 30</a></span> <a class="code hl_struct" href="structl4__msgtag__t.html">l4_msgtag_t</a> <a class="code hl_function" href="classL4_1_1Vm.html#ab14cb70e8330d3e1ce5528e96fe0a0da">vgicc_map</a>(<a class="code hl_union" href="unionl4__fpage__t.html">l4_fpage_t</a> <span class="keyword">const</span> vgicc_fpage,</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb = <a class="code hl_function" href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644">l4_utcb</a>()) noexcept</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> { <span class="keywordflow">return</span> l4_task_vgicc_map_u(<a class="code hl_function" href="classL4_1_1Kobject.html#a4f2117ae76762f4084e6a1adb915863c">cap</a>(), vgicc_fpage, utcb); }</div>
</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="keyword">protected</span>:</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <a class="code hl_class" href="classL4_1_1Vm.html">Vm</a>();</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <a class="code hl_class" href="classL4_1_1Vm.html">Vm</a>(<a class="code hl_class" href="classL4_1_1Vm.html">Vm</a> <span class="keyword">const</span> &amp;);</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">void</span> operator = (<a class="code hl_class" href="classL4_1_1Vm.html">Vm</a> <span class="keyword">const</span> &amp;);</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span>};</div>
</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span>}</div>
<div class="ttc" id="aclassL4_1_1Kobject__t_html"><div class="ttname"><a href="classL4_1_1Kobject__t.html">L4::Kobject_t</a></div><div class="ttdoc">Helper class to create an L4Re interface class that is derived from a single base class.</div><div class="ttdef"><b>Definition</b> <a href="____typeinfo_8h_source.html#l00749">__typeinfo.h:750</a></div></div>
<div class="ttc" id="aclassL4_1_1Kobject_html_a4f2117ae76762f4084e6a1adb915863c"><div class="ttname"><a href="classL4_1_1Kobject.html#a4f2117ae76762f4084e6a1adb915863c">L4::Kobject::cap</a></div><div class="ttdeci">l4_cap_idx_t cap() const noexcept</div><div class="ttdoc">Return capability selector.</div><div class="ttdef"><b>Definition</b> <a href="kobject_source.html#l00069">kobject:69</a></div></div>
<div class="ttc" id="aclassL4_1_1Vm_html"><div class="ttname"><a href="classL4_1_1Vm.html">L4::Vm</a></div><div class="ttdoc">Virtual machine host address space.</div><div class="ttdef"><b>Definition</b> <a href="#l00017">__vm-arm.h:18</a></div></div>
<div class="ttc" id="aclassL4_1_1Vm_html_ab14cb70e8330d3e1ce5528e96fe0a0da"><div class="ttname"><a href="classL4_1_1Vm.html#ab14cb70e8330d3e1ce5528e96fe0a0da">L4::Vm::vgicc_map</a></div><div class="ttdeci">l4_msgtag_t vgicc_map(l4_fpage_t const vgicc_fpage, l4_utcb_t *utcb=l4_utcb()) noexcept</div><div class="ttdoc">Map the GIC virtual CPU interface page to the task in case Fiasco detected a GIC version 2.</div><div class="ttdef"><b>Definition</b> <a href="#l00030">__vm-arm.h:30</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_ga89be8a86d11c1d532b636cc2df1330fb"><div class="ttname"><a href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a></div><div class="ttdeci">struct l4_utcb_t l4_utcb_t</div><div class="ttdoc">Opaque type for the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00056">utcb.h:56</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_gadc099b4a59e1d99638c72c11a8c8b644"><div class="ttname"><a href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644">l4_utcb</a></div><div class="ttdeci">l4_utcb_t * l4_utcb(void) L4_NOTHROW L4_PURE</div><div class="ttdoc">Get the UTCB address.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00346">utcb.h:346</a></div></div>
<div class="ttc" id="anamespaceL4_html"><div class="ttname"><a href="namespaceL4.html">L4</a></div><div class="ttdoc">L4 low-level kernel interface.</div><div class="ttdef"><b>Definition</b> <a href="l4sys-l4f-groups_8dox_source.html#l00050">l4sys-l4f-groups.dox:50</a></div></div>
<div class="ttc" id="astructl4__msgtag__t_html"><div class="ttname"><a href="structl4__msgtag__t.html">l4_msgtag_t</a></div><div class="ttdoc">Message tag data structure.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00153">types.h:154</a></div></div>
<div class="ttc" id="atask_html"><div class="ttname"><a href="task.html">task</a></div><div class="ttdoc">Common task related definitions.</div></div>
<div class="ttc" id="aunionl4__fpage__t_html"><div class="ttname"><a href="unionl4__fpage__t.html">l4_fpage_t</a></div><div class="ttdoc">L4 flexpage type.</div><div class="ttdef"><b>Definition</b> <a href="____l4__fpage_8h_source.html#l00076">__l4_fpage.h:76</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="____vm-arm_8h.html">__vm-arm.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,263 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__vm-svm.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____vm-svm_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__vm-svm.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> *</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> */</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2types_8h.html">l4/sys/types.h</a>&gt;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span></div>
<div class="foldopen" id="foldopen00028" data-start="{" data-end="};">
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="structl4__vm__svm__vmcb__control__area.html"> 28</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__control__area.html">l4_vm_svm_vmcb_control_area</a></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>{</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> intercept_rd_crX;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> intercept_wr_crX;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> intercept_rd_drX;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> intercept_wr_drX;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> intercept_exceptions;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> intercept_instruction0;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> intercept_instruction1;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved0[40];</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> pause_filter_threshold;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> pause_filter_count;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> iopm_base_pa;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> msrpm_base_pa;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> tsc_offset;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> guest_asid_tlb_ctl;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> interrupt_ctl;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> interrupt_shadow;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> exitcode;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> exitinfo1;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> exitinfo2;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> exitintinfo;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> np_enable;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved1[16];</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> eventinj;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> n_cr3;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> lbr_virtualization_enable;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> clean_bits;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> n_rip;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> </div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved2[816];</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="group__l4__vm__svm__api.html#gad7cdc87988c672ce0c7d50aaca3714d2"> 67</a></span>} __attribute__((packed)) <a class="code hl_typedef" href="group__l4__vm__svm__api.html#gad7cdc87988c672ce0c7d50aaca3714d2">l4_vm_svm_vmcb_control_area_t</a>;</div>
</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span></div>
<div class="foldopen" id="foldopen00073" data-start="{" data-end="};">
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="structl4__vm__svm__vmcb__state__save__area__seg.html"> 73</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span>{</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> selector;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> attrib;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> limit;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> base;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="group__l4__vm__svm__api.html#gaca81227de297a77c53713d5e1be5ec3c"> 79</a></span>} __attribute__((packed)) <a class="code hl_typedef" href="group__l4__vm__svm__api.html#gaca81227de297a77c53713d5e1be5ec3c">l4_vm_svm_vmcb_state_save_area_seg_t</a>;</div>
</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span></div>
<div class="foldopen" id="foldopen00085" data-start="{" data-end="};">
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="structl4__vm__svm__vmcb__state__save__area.html"> 85</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area.html">l4_vm_svm_vmcb_state_save_area</a></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span>{</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> es;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> cs;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> ss;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> ds;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> fs;</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> gs;</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> gdtr;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> ldtr;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> idtr;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a> tr;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved0[43];</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> cpl;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> _reserved1;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> efer;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved2[112];</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> cr4;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> cr3;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> cr0;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> dr7;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> dr6;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> rflags;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> rip;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> </div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved3[88];</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> rsp;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved4[24];</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> rax;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> star;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> lstar;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> cstar;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> sfmask;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> kernelgsbase;</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> sysenter_cs;</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> sysenter_esp;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> sysenter_eip;</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> cr2;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved5[32];</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> g_pat;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> dbgctl;</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> br_from;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> br_to;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> lastexcpfrom;</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> last_excpto;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="comment">// this field is _NOT_ part of the official VMCB specification</span></div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="comment">// a (userlevel) VMM needs this for proper FPU state virtualization</span></div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> xcr0;</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> </div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> _reserved6[2400];</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"><a class="line" href="group__l4__vm__svm__api.html#gacd060c35216f2ac01e8eb9a31c5ae6da"> 147</a></span>} __attribute__((packed)) <a class="code hl_typedef" href="group__l4__vm__svm__api.html#gacd060c35216f2ac01e8eb9a31c5ae6da">l4_vm_svm_vmcb_state_save_area_t</a>;</div>
</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> </div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span></div>
<div class="foldopen" id="foldopen00154" data-start="{" data-end="};">
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"><a class="line" href="structl4__vm__svm__vmcb__t.html"> 154</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__svm__vmcb__t.html">l4_vm_svm_vmcb_t</a></div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span>{</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <a class="code hl_typedef" href="group__l4__vm__svm__api.html#gad7cdc87988c672ce0c7d50aaca3714d2">l4_vm_svm_vmcb_control_area_t</a> control_area;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <a class="code hl_typedef" href="group__l4__vm__svm__api.html#gacd060c35216f2ac01e8eb9a31c5ae6da">l4_vm_svm_vmcb_state_save_area_t</a> state_save_area;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"><a class="line" href="group__l4__vm__svm__api.html#ga9ee18fcfbb2c739f8d15e616bb92cb12"> 158</a></span>} <a class="code hl_struct" href="structl4__vm__svm__vmcb__t.html">l4_vm_svm_vmcb_t</a>;</div>
</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9678dc2e6bf3e4d8ec950162576b0fad"><div class="ttname"><a href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div><div class="ttdeci">unsigned char l4_uint8_t</div><div class="ttdoc">Unsigned 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gaf3331c485014bd12a9e4f9d27a55e689"><div class="ttname"><a href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div><div class="ttdeci">unsigned long long l4_uint64_t</div><div class="ttdoc">Unsigned 64bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00031">l4int.h:31</a></div></div>
<div class="ttc" id="agroup__l4__vm__svm__api_html_gaca81227de297a77c53713d5e1be5ec3c"><div class="ttname"><a href="group__l4__vm__svm__api.html#gaca81227de297a77c53713d5e1be5ec3c">l4_vm_svm_vmcb_state_save_area_seg_t</a></div><div class="ttdeci">struct l4_vm_svm_vmcb_state_save_area_seg l4_vm_svm_vmcb_state_save_area_seg_t</div><div class="ttdoc">State save area segment selector struct.</div></div>
<div class="ttc" id="agroup__l4__vm__svm__api_html_gacd060c35216f2ac01e8eb9a31c5ae6da"><div class="ttname"><a href="group__l4__vm__svm__api.html#gacd060c35216f2ac01e8eb9a31c5ae6da">l4_vm_svm_vmcb_state_save_area_t</a></div><div class="ttdeci">struct l4_vm_svm_vmcb_state_save_area l4_vm_svm_vmcb_state_save_area_t</div><div class="ttdoc">State save area structure for SVM VMs.</div></div>
<div class="ttc" id="agroup__l4__vm__svm__api_html_gad7cdc87988c672ce0c7d50aaca3714d2"><div class="ttname"><a href="group__l4__vm__svm__api.html#gad7cdc87988c672ce0c7d50aaca3714d2">l4_vm_svm_vmcb_control_area_t</a></div><div class="ttdeci">struct l4_vm_svm_vmcb_control_area l4_vm_svm_vmcb_control_area_t</div><div class="ttdoc">VMCB structure for SVM VMs.</div></div>
<div class="ttc" id="al4_2sys_2types_8h_html"><div class="ttname"><a href="l4_2sys_2types_8h.html">types.h</a></div><div class="ttdoc">Common L4 ABI Data Types.</div></div>
<div class="ttc" id="astructl4__vm__svm__vmcb__control__area_html"><div class="ttname"><a href="structl4__vm__svm__vmcb__control__area.html">l4_vm_svm_vmcb_control_area</a></div><div class="ttdoc">VMCB structure for SVM VMs.</div><div class="ttdef"><b>Definition</b> <a href="#l00028">__vm-svm.h:29</a></div></div>
<div class="ttc" id="astructl4__vm__svm__vmcb__state__save__area__seg_html"><div class="ttname"><a href="structl4__vm__svm__vmcb__state__save__area__seg.html">l4_vm_svm_vmcb_state_save_area_seg</a></div><div class="ttdoc">State save area segment selector struct.</div><div class="ttdef"><b>Definition</b> <a href="#l00073">__vm-svm.h:74</a></div></div>
<div class="ttc" id="astructl4__vm__svm__vmcb__state__save__area_html"><div class="ttname"><a href="structl4__vm__svm__vmcb__state__save__area.html">l4_vm_svm_vmcb_state_save_area</a></div><div class="ttdoc">State save area structure for SVM VMs.</div><div class="ttdef"><b>Definition</b> <a href="#l00085">__vm-svm.h:86</a></div></div>
<div class="ttc" id="astructl4__vm__svm__vmcb__t_html"><div class="ttname"><a href="structl4__vm__svm__vmcb__t.html">l4_vm_svm_vmcb_t</a></div><div class="ttdoc">Control structure for SVM VMs.</div><div class="ttdef"><b>Definition</b> <a href="#l00154">__vm-svm.h:155</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__vm-svm.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,765 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/__vm-vmx.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('____vm-vmx_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__vm-vmx.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2010-2013 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> *</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> */</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;<a class="code" href="sys_2vcpu_8h.html">l4/sys/vcpu.h</a>&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span></div>
<div class="foldopen" id="foldopen00028" data-start="{" data-end="};">
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga7f887612340fb99adf3ef179d558d71b"> 28</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#ga7f887612340fb99adf3ef179d558d71b">L4_vm_vmx_caps_regs</a></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>{</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71baeb5e889bff07525d90f96b4ea1e95a6b"> 30</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71baeb5e889bff07525d90f96b4ea1e95a6b">L4_VM_VMX_BASIC_REG</a> = 0, </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bada1cdf5ff0a078136094cfbac54c4929"> 31</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bada1cdf5ff0a078136094cfbac54c4929">L4_VM_VMX_TRUE_PINBASED_CTLS_REG</a> = 1, </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba0552ed8e38d99b31ba45eac8d6fc0c8c"> 32</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba0552ed8e38d99b31ba45eac8d6fc0c8c">L4_VM_VMX_TRUE_PROCBASED_CTLS_REG</a> = 2, </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bacaea2c77c13fe074e4f3b3fdb39f54dc"> 33</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bacaea2c77c13fe074e4f3b3fdb39f54dc">L4_VM_VMX_TRUE_EXIT_CTLS_REG</a> = 3, </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba6fdf006dac24ed0f259d93b454343257"> 34</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba6fdf006dac24ed0f259d93b454343257">L4_VM_VMX_TRUE_ENTRY_CTLS_REG</a> = 4, </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba082e9155e7de267701c1d654596117e2"> 35</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba082e9155e7de267701c1d654596117e2">L4_VM_VMX_MISC_REG</a> = 5, </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71baaa028615540bf577bc3c0bf5fde839b8"> 36</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71baaa028615540bf577bc3c0bf5fde839b8">L4_VM_VMX_CR0_FIXED0_REG</a> = 6, </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba9ca46e74427b06911cd3056ddc56eab0"> 37</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba9ca46e74427b06911cd3056ddc56eab0">L4_VM_VMX_CR0_FIXED1_REG</a> = 7, </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba55f1e528efc063abddfc09021465f9d2"> 38</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba55f1e528efc063abddfc09021465f9d2">L4_VM_VMX_CR4_FIXED0_REG</a> = 8, </div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba3163ab09616fe3b1a0732f2381231df1"> 39</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba3163ab09616fe3b1a0732f2381231df1">L4_VM_VMX_CR4_FIXED1_REG</a> = 9, </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bac56a4e672919d7429acdb261dc1f7d56"> 40</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bac56a4e672919d7429acdb261dc1f7d56">L4_VM_VMX_VMCS_ENUM_REG</a> = 10, </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba16eb83d82eb9a3ec7966901322aec71a"> 41</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba16eb83d82eb9a3ec7966901322aec71a">L4_VM_VMX_PROCBASED_CTLS2_REG</a> = 11, </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba171dd49d3e11f483b7a12e4e0a0168f5"> 42</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba171dd49d3e11f483b7a12e4e0a0168f5">L4_VM_VMX_EPT_VPID_CAP_REG</a> = 12, </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba77a0b80d38acd967c76f220f4d1f901b"> 43</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba77a0b80d38acd967c76f220f4d1f901b">L4_VM_VMX_NESTED_REVISION</a> = 13, </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba47cd504bdaf249586ff6da19fb10f7d0"> 44</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba47cd504bdaf249586ff6da19fb10f7d0">L4_VM_VMX_NUM_CAPS_REGS</a> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>};</div>
</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span></div>
<div class="foldopen" id="foldopen00051" data-start="{" data-end="};">
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gac5a7a61aec9e350c19bd87420f37e0ac"> 51</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#gac5a7a61aec9e350c19bd87420f37e0ac">L4_vm_vmx_dfl1_regs</a></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span>{</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acaa72109ccf2588608ad97d601b3f15e35"> 53</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acaa72109ccf2588608ad97d601b3f15e35">L4_VM_VMX_PINBASED_CTLS_DFL1_REG</a> = 0, </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acaf7a9ade10e34f67119a63fbacc3162fb"> 54</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acaf7a9ade10e34f67119a63fbacc3162fb">L4_VM_VMX_PROCBASED_CTLS_DFL1_REG</a> = 1, </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0aca8ac4e7068474b8f52dbf5311a0e0258c"> 55</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0aca8ac4e7068474b8f52dbf5311a0e0258c">L4_VM_VMX_EXIT_CTLS_DFL1_REG</a> = 2, </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0aca688c05396a1a2f019988a58fbabd31c1"> 56</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0aca688c05396a1a2f019988a58fbabd31c1">L4_VM_VMX_ENTRY_CTLS_DFL1_REG</a> = 3, </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acab25250e6c3ab5a176d73925708abbad6"> 57</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acab25250e6c3ab5a176d73925708abbad6">L4_VM_VMX_NUM_DFL1_REGS</a> </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>};</div>
</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span></div>
<div class="foldopen" id="foldopen00069" data-start="{" data-end="};">
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga27f1514d76d058f2f730bb96292f785c"> 69</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#ga27f1514d76d058f2f730bb96292f785c">L4_vm_vmx_sw_fields</a></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span>{</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca1722faecbb122e7743d9d662ccd719a1"> 78</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca1722faecbb122e7743d9d662ccd719a1">L4_VM_VMX_VMCS_CR2</a> = 0x6880,</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cac96198ff7340494d61838524e1fa19e3"> 80</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cac96198ff7340494d61838524e1fa19e3">L4_VM_VMX_VMCS_NAT_ARG0</a> = 0x6882,</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca5fca506a838eb35d467e8e2048d1c3cc"> 82</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca5fca506a838eb35d467e8e2048d1c3cc">L4_VM_VMX_VMCS_NAT_ARG1</a> = 0x6884,</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cac9f38753b92322061c87c5670048652d"> 84</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cac9f38753b92322061c87c5670048652d">L4_VM_VMX_VMCS_NAT_ARG2</a> = 0x6886,</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca126f4b83bdc85be8fd0a9c174052ec20"> 86</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca126f4b83bdc85be8fd0a9c174052ec20">L4_VM_VMX_VMCS_NAT_ARG3</a> = 0x6888,</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca57f0b04a87627b4aa602bf620c3b7d6d"> 88</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca57f0b04a87627b4aa602bf620c3b7d6d">L4_VM_VMX_VMCS_XCR0</a> = 0x2880,</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cae97d93178451a288d72f66f8ab528131"> 90</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cae97d93178451a288d72f66f8ab528131">L4_VM_VMX_VMCS_MSR_SYSCALL_MASK</a> = 0x2882,</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca03bbbc09d95db544e5429033803c1cb8"> 92</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca03bbbc09d95db544e5429033803c1cb8">L4_VM_VMX_VMCS_MSR_LSTAR</a> = 0x2884,</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785caf3b8a516ed42738ef71980a5260c9d95"> 94</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785caf3b8a516ed42738ef71980a5260c9d95">L4_VM_VMX_VMCS_MSR_CSTAR</a> = 0x2886,</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca5e89d3653d174e22f9aa84ad0d2cc6ad"> 96</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca5e89d3653d174e22f9aa84ad0d2cc6ad">L4_VM_VMX_VMCS_MSR_TSC_AUX</a> = 0x2888,</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca157c37450487720714a648b04c7972a7"> 98</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca157c37450487720714a648b04c7972a7">L4_VM_VMX_VMCS_MSR_STAR</a> = 0x288a,</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca793e5454d287deb65d89275c86ea1a0f"> 100</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca793e5454d287deb65d89275c86ea1a0f">L4_VM_VMX_VMCS_MSR_KERNEL_GS_BASE</a> = 0x288c,</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span>};</div>
</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span></div>
<div class="foldopen" id="foldopen00155" data-start="{" data-end="};">
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"><a class="line" href="structl4__vmx__offset__table__t.html"> 155</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vmx__offset__table__t.html">l4_vmx_offset_table_t</a></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span>{</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> offsets[4][4];</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> limits[4][4];</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> index_shifts[4];</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> base_offset;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> size;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> reserved[2];</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga0024c3e213bac7ecb93cb72fbf6de0fc"> 164</a></span>} <a class="code hl_struct" href="structl4__vmx__offset__table__t.html">l4_vmx_offset_table_t</a>;</div>
</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span></div>
<div class="foldopen" id="foldopen00170" data-start="{" data-end="};">
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga9169c2239af134b86c38ca1c539311dd"> 170</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#ga9169c2239af134b86c38ca1c539311dd">L4_vm_vmx_vmcs_sizes</a></div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span>{</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311dda1a10cf9d323c9efcc7b7d08c9ebec851"> 173</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311dda1a10cf9d323c9efcc7b7d08c9ebec851">L4_VM_VMX_VMCS_SIZE_VALUES</a> = 2560,</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311ddaf47978797114b595d5922991d7731e01"> 175</a></span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311ddaf47978797114b595d5922991d7731e01">L4_VM_VMX_VMCS_SIZE_DIRTY_BITMAP</a> = 320,</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span>};</div>
</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span></div>
<div class="foldopen" id="foldopen00205" data-start="{" data-end="};">
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"><a class="line" href="structl4__vm__vmx__vcpu__vmcs__t.html"> 205</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a></div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span>{</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> reserved0;</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> </div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> user_data;</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> cr2_index;</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> reserved1[4];</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> </div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> vmcs;</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> </div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="comment">/*</span></div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span><span class="comment"> * Since the capability type size depends on the platform, we add a 32-bit</span></div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span><span class="comment"> * padding if necessary.</span></div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span><span class="comment"> */</span></div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> </div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span><span class="preprocessor">#if L4_MWORD_BITS == 32</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> padding0;</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span><span class="preprocessor">#elif L4_MWORD_BITS == 64</span></div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> <span class="comment">/* No padding needed. */</span></div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span><span class="preprocessor"> #error Unsupported machine word size.</span></div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> </div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> <a class="code hl_struct" href="structl4__vmx__offset__table__t.html">l4_vmx_offset_table_t</a> offset_table;</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> reserved2[120];</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> </div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> values[<a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311dda1a10cf9d323c9efcc7b7d08c9ebec851">L4_VM_VMX_VMCS_SIZE_VALUES</a>];</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> dirty_bitmap[<a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311ddaf47978797114b595d5922991d7731e01">L4_VM_VMX_VMCS_SIZE_DIRTY_BITMAP</a>];</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga223b3534cb33051ef6cb5866bf97d236"> 233</a></span>} <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a>;</div>
</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span></div>
<div class="foldopen" id="foldopen00239" data-start="{" data-end="};">
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"><a class="line" href="structl4__vm__vmx__vcpu__infos__t.html"> 239</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__vmx__vcpu__infos__t.html">l4_vm_vmx_vcpu_infos_t</a></div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span>{</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"><a class="line" href="structl4__vm__vmx__vcpu__infos__t.html#a168647389b9b0128f543e182f37ca8a7"> 242</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> <a class="code hl_variable" href="structl4__vm__vmx__vcpu__infos__t.html#a168647389b9b0128f543e182f37ca8a7">caps</a>[<a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba47cd504bdaf249586ff6da19fb10f7d0">L4_VM_VMX_NUM_CAPS_REGS</a>];</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span></div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"><a class="line" href="structl4__vm__vmx__vcpu__infos__t.html#a265db33e18f6cfa39143da5e4a525ff6"> 246</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> <a class="code hl_variable" href="structl4__vm__vmx__vcpu__infos__t.html#a265db33e18f6cfa39143da5e4a525ff6">dfl1</a>[<a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acab25250e6c3ab5a176d73925708abbad6">L4_VM_VMX_NUM_DFL1_REGS</a>];</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga8d4a2ac7e7c7fa662ac8d68d0dc9280c"> 247</a></span>} <a class="code hl_struct" href="structl4__vm__vmx__vcpu__infos__t.html">l4_vm_vmx_vcpu_infos_t</a>;</div>
</div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span></div>
<div class="foldopen" id="foldopen00267" data-start="{" data-end="};">
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"><a class="line" href="structl4__vm__vmx__vcpu__state__t.html"> 267</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vm__vmx__vcpu__state__t.html">l4_vm_vmx_vcpu_state_t</a></div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span>{</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> <a class="code hl_struct" href="structl4__vcpu__state__t.html">l4_vcpu_state_t</a> vcpu_state;</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> padding0[<a class="code hl_enumvalue" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5">L4_VCPU_OFFSET_EXT_INFOS</a> - <span class="keyword">sizeof</span>(<a class="code hl_struct" href="structl4__vcpu__state__t.html">l4_vcpu_state_t</a>)];</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> </div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__infos__t.html">l4_vm_vmx_vcpu_infos_t</a> infos;</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> padding1[<a class="code hl_enumvalue" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3">L4_VCPU_OFFSET_EXT_STATE</a> - <a class="code hl_enumvalue" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5">L4_VCPU_OFFSET_EXT_INFOS</a></div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> - <span class="keyword">sizeof</span>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__infos__t.html">l4_vm_vmx_vcpu_infos_t</a>)];</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> </div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> vmcs;</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga4f3d427d0109bba030bce08df6f9a432"> 277</a></span>} <a class="code hl_struct" href="structl4__vm__vmx__vcpu__state__t.html">l4_vm_vmx_vcpu_state_t</a>;</div>
</div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span></div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga91a16ca560298b7238a6570d41ad0ad3">l4_vm_vmx_get_caps</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__state__t.html">l4_vm_vmx_vcpu_state_t</a> <span class="keyword">const</span> *vcpu_state,</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#ga7f887612340fb99adf3ef179d558d71b">L4_vm_vmx_caps_regs</a> caps_reg) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span></div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga70caa0bd4fb86dc52d3e0f424519d37b">l4_vm_vmx_get_caps_default1</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__state__t.html">l4_vm_vmx_vcpu_state_t</a> <span class="keyword">const</span> *vcpu_state,</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#gac5a7a61aec9e350c19bd87420f37e0ac">L4_vm_vmx_dfl1_regs</a> dfl1_reg) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span></div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span><span class="keywordtype">unsigned</span></div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga7a7775078ec1b73ce8b143ec16482824">l4_vm_vmx_field_len</a>(<span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span></div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span><span class="keywordtype">unsigned</span></div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga2903ff82a7b04d2b46d25f4a3470a893">l4_vm_vmx_field_order</a>(<span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span></div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span><span class="keywordtype">void</span> *</div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span>l4_vm_vmx_field_ptr(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span></div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#gad1e2ed2059eb6060d19dd6d327b200d2">l4_vm_vmx_clear</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs,</div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *dest_vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span></div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno"> 372</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno"> 373</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga29d1354bccc139bea4804de3847338b2">l4_vm_vmx_ptr_load</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs,</div>
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"> 374</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *src_vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span></div>
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga473ceb1888da5cd9e6f1d517c75b3198">l4_vm_vmx_get_cr2_index</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> <span class="keyword">const</span> *vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"> 394</span></div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span><a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga22d4747a884070acb14281204646c4ff">l4_vm_vmx_read_nat</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span></div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"> 417</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"> 418</span><a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div>
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga4bd0e8a0bc5b1c2676f7fad347a3314b">l4_vm_vmx_read_16</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"> 420</span></div>
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"> 430</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno"> 431</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"> 432</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#gaab7dd6442461a68b6b4bff6f5658783b">l4_vm_vmx_read_32</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"> 433</span></div>
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"> 444</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga28ad1e122940d6a6721d6e604f10a474">l4_vm_vmx_read_64</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00446" name="l00446"></a><span class="lineno"> 446</span></div>
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"> 456</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga6ddd9fb2841dc44996a7753746f461e4">l4_vm_vmx_read</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"> 459</span></div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"> 469</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno"> 470</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga114952d1fad1746f426f3d4109699371">l4_vm_vmx_write_nat</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"> 472</span></div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"> 481</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"> 482</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga58e1f077fb70c62c1bfce4b912f5a5db">l4_vm_vmx_write_16</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"> 485</span></div>
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"> 494</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"> 495</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00496" name="l00496"></a><span class="lineno"> 496</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#gab2b314376b43356b08b127da2bc7aeed">l4_vm_vmx_write_32</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00497" name="l00497"></a><span class="lineno"> 497</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00498" name="l00498"></a><span class="lineno"> 498</span></div>
<div class="line"><a id="l00507" name="l00507"></a><span class="lineno"> 507</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00508" name="l00508"></a><span class="lineno"> 508</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00509" name="l00509"></a><span class="lineno"> 509</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga56f88515d203d180e65152c5a9a22c57">l4_vm_vmx_write_64</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00510" name="l00510"></a><span class="lineno"> 510</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00511" name="l00511"></a><span class="lineno"> 511</span></div>
<div class="line"><a id="l00520" name="l00520"></a><span class="lineno"> 520</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00521" name="l00521"></a><span class="lineno"> 521</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00522" name="l00522"></a><span class="lineno"> 522</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga20b3c5c42db8ee3f4859565486f05101">l4_vm_vmx_write</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00523" name="l00523"></a><span class="lineno"> 523</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00524" name="l00524"></a><span class="lineno"> 524</span></div>
<div class="line"><a id="l00571" name="l00571"></a><span class="lineno"> 571</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00572" name="l00572"></a><span class="lineno"> 572</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00573" name="l00573"></a><span class="lineno"> 573</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga6f10feba83a036b0e88a56f4784862be">l4_vm_vmx_set_hw_vmcs</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs,</div>
<div class="line"><a id="l00574" name="l00574"></a><span class="lineno"> 574</span> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> vmcs_cap) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno"> 575</span></div>
<div class="line"><a id="l00585" name="l00585"></a><span class="lineno"> 585</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00586" name="l00586"></a><span class="lineno"> 586</span><a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div>
<div class="line"><a id="l00587" name="l00587"></a><span class="lineno"> 587</span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga44c3fca4aadaa1928ba810bccb4eb8aa">l4_vm_vmx_get_hw_vmcs</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a>;</div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"> 588</span> </div>
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno"> 589</span><span class="comment">/* Implementations */</span></div>
<div class="line"><a id="l00590" name="l00590"></a><span class="lineno"> 590</span> </div>
<div class="line"><a id="l00591" name="l00591"></a><span class="lineno"> 591</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00592" name="l00592"></a><span class="lineno"> 592</span><span class="keywordtype">unsigned</span></div>
<div class="foldopen" id="foldopen00593" data-start="{" data-end="}">
<div class="line"><a id="l00593" name="l00593"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga7a7775078ec1b73ce8b143ec16482824"> 593</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga7a7775078ec1b73ce8b143ec16482824">l4_vm_vmx_field_len</a>(<span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00594" name="l00594"></a><span class="lineno"> 594</span>{</div>
<div class="line"><a id="l00595" name="l00595"></a><span class="lineno"> 595</span> <span class="keywordflow">return</span> 1 &lt;&lt; <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga2903ff82a7b04d2b46d25f4a3470a893">l4_vm_vmx_field_order</a>(field);</div>
<div class="line"><a id="l00596" name="l00596"></a><span class="lineno"> 596</span>}</div>
</div>
<div class="line"><a id="l00597" name="l00597"></a><span class="lineno"> 597</span> </div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno"> 598</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno"> 599</span><span class="keywordtype">unsigned</span></div>
<div class="foldopen" id="foldopen00600" data-start="{" data-end="}">
<div class="line"><a id="l00600" name="l00600"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga2903ff82a7b04d2b46d25f4a3470a893"> 600</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga2903ff82a7b04d2b46d25f4a3470a893">l4_vm_vmx_field_order</a>(<span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00601" name="l00601"></a><span class="lineno"> 601</span>{</div>
<div class="line"><a id="l00602" name="l00602"></a><span class="lineno"> 602</span> <span class="keywordtype">unsigned</span> size = (field &gt;&gt; 13) &amp; 0x03U;</div>
<div class="line"><a id="l00603" name="l00603"></a><span class="lineno"> 603</span> </div>
<div class="line"><a id="l00604" name="l00604"></a><span class="lineno"> 604</span> <span class="keywordflow">switch</span> (size)</div>
<div class="line"><a id="l00605" name="l00605"></a><span class="lineno"> 605</span> {</div>
<div class="line"><a id="l00606" name="l00606"></a><span class="lineno"> 606</span> <span class="keywordflow">case</span> 0: <span class="keywordflow">return</span> 1; <span class="comment">/* 16 bits */</span></div>
<div class="line"><a id="l00607" name="l00607"></a><span class="lineno"> 607</span> <span class="keywordflow">case</span> 1: <span class="keywordflow">return</span> 3; <span class="comment">/* 64 bits */</span></div>
<div class="line"><a id="l00608" name="l00608"></a><span class="lineno"> 608</span> <span class="keywordflow">case</span> 2: <span class="keywordflow">return</span> 2; <span class="comment">/* 32 bits */</span></div>
<div class="line"><a id="l00609" name="l00609"></a><span class="lineno"> 609</span> <span class="keywordflow">case</span> 3: <span class="keywordflow">return</span> (<span class="keyword">sizeof</span>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>) == 8) ? 3 : 2; <span class="comment">/* Natural width */</span></div>
<div class="line"><a id="l00610" name="l00610"></a><span class="lineno"> 610</span> }</div>
<div class="line"><a id="l00611" name="l00611"></a><span class="lineno"> 611</span> </div>
<div class="line"><a id="l00612" name="l00612"></a><span class="lineno"> 612</span> __builtin_trap();</div>
<div class="line"><a id="l00613" name="l00613"></a><span class="lineno"> 613</span>}</div>
</div>
<div class="line"><a id="l00614" name="l00614"></a><span class="lineno"> 614</span></div>
<div class="line"><a id="l00620" name="l00620"></a><span class="lineno"> 620</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00621" name="l00621"></a><span class="lineno"> 621</span><span class="keywordtype">unsigned</span></div>
<div class="line"><a id="l00622" name="l00622"></a><span class="lineno"> 622</span>l4_vm_vmx_field_offset(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> <span class="keyword">const</span> *vmcs,</div>
<div class="line"><a id="l00623" name="l00623"></a><span class="lineno"> 623</span> <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00624" name="l00624"></a><span class="lineno"> 624</span>{</div>
<div class="line"><a id="l00625" name="l00625"></a><span class="lineno"> 625</span> <span class="keywordtype">unsigned</span> index = field &amp; 0x3feU;</div>
<div class="line"><a id="l00626" name="l00626"></a><span class="lineno"> 626</span> <span class="keywordtype">unsigned</span> size = (field &gt;&gt; 13) &amp; 0x03U;</div>
<div class="line"><a id="l00627" name="l00627"></a><span class="lineno"> 627</span> <span class="keywordtype">unsigned</span> group = (field &gt;&gt; 10) &amp; 0x03U;</div>
<div class="line"><a id="l00628" name="l00628"></a><span class="lineno"> 628</span> </div>
<div class="line"><a id="l00629" name="l00629"></a><span class="lineno"> 629</span> <span class="keywordtype">unsigned</span> shifted_index = index &lt;&lt; vmcs-&gt;offset_table.index_shifts[size];</div>
<div class="line"><a id="l00630" name="l00630"></a><span class="lineno"> 630</span> </div>
<div class="line"><a id="l00631" name="l00631"></a><span class="lineno"> 631</span> <span class="keywordflow">if</span> (shifted_index &gt;= (<span class="keywordtype">unsigned</span>)vmcs-&gt;offset_table.limits[size][group] * 64)</div>
<div class="line"><a id="l00632" name="l00632"></a><span class="lineno"> 632</span> <span class="keywordflow">return</span> ~0U;</div>
<div class="line"><a id="l00633" name="l00633"></a><span class="lineno"> 633</span> </div>
<div class="line"><a id="l00634" name="l00634"></a><span class="lineno"> 634</span> <span class="keywordflow">return</span> (<span class="keywordtype">unsigned</span>)vmcs-&gt;offset_table.offsets[size][group] * 64</div>
<div class="line"><a id="l00635" name="l00635"></a><span class="lineno"> 635</span> + shifted_index;</div>
<div class="line"><a id="l00636" name="l00636"></a><span class="lineno"> 636</span>}</div>
<div class="line"><a id="l00637" name="l00637"></a><span class="lineno"> 637</span> </div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"> 638</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno"> 639</span><span class="keywordtype">void</span> *</div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno"> 640</span>l4_vm_vmx_field_ptr(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"> 641</span>{</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span> <span class="keywordtype">unsigned</span> offset = l4_vm_vmx_field_offset(vmcs, field);</div>
<div class="line"><a id="l00643" name="l00643"></a><span class="lineno"> 643</span> <span class="keywordflow">if</span> (offset == ~0U)</div>
<div class="line"><a id="l00644" name="l00644"></a><span class="lineno"> 644</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00645" name="l00645"></a><span class="lineno"> 645</span> </div>
<div class="line"><a id="l00646" name="l00646"></a><span class="lineno"> 646</span> <span class="keywordflow">return</span> (<span class="keywordtype">void</span> *)(vmcs-&gt;values + offset);</div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span>}</div>
<div class="line"><a id="l00648" name="l00648"></a><span class="lineno"> 648</span></div>
<div class="line"><a id="l00654" name="l00654"></a><span class="lineno"> 654</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00655" name="l00655"></a><span class="lineno"> 655</span><span class="keywordtype">void</span> *</div>
<div class="line"><a id="l00656" name="l00656"></a><span class="lineno"> 656</span>l4_vm_vmx_field_ptr_offset(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00657" name="l00657"></a><span class="lineno"> 657</span> <span class="keywordtype">unsigned</span> *offset) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"> 658</span>{</div>
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno"> 659</span> *offset = l4_vm_vmx_field_offset(vmcs, field);</div>
<div class="line"><a id="l00660" name="l00660"></a><span class="lineno"> 660</span> <span class="keywordflow">if</span> (*offset == ~0U)</div>
<div class="line"><a id="l00661" name="l00661"></a><span class="lineno"> 661</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00662" name="l00662"></a><span class="lineno"> 662</span> </div>
<div class="line"><a id="l00663" name="l00663"></a><span class="lineno"> 663</span> <span class="keywordflow">return</span> (<span class="keywordtype">void</span> *)(vmcs-&gt;values + *offset);</div>
<div class="line"><a id="l00664" name="l00664"></a><span class="lineno"> 664</span>}</div>
<div class="line"><a id="l00665" name="l00665"></a><span class="lineno"> 665</span></div>
<div class="line"><a id="l00671" name="l00671"></a><span class="lineno"> 671</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00672" name="l00672"></a><span class="lineno"> 672</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00673" name="l00673"></a><span class="lineno"> 673</span>l4_vm_vmx_offset_dirty(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs,</div>
<div class="line"><a id="l00674" name="l00674"></a><span class="lineno"> 674</span> <span class="keywordtype">unsigned</span> offset) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00675" name="l00675"></a><span class="lineno"> 675</span>{</div>
<div class="line"><a id="l00676" name="l00676"></a><span class="lineno"> 676</span> vmcs-&gt;dirty_bitmap[offset / 8] |= 1U &lt;&lt; (offset % 8);</div>
<div class="line"><a id="l00677" name="l00677"></a><span class="lineno"> 677</span>}</div>
<div class="line"><a id="l00678" name="l00678"></a><span class="lineno"> 678</span></div>
<div class="line"><a id="l00683" name="l00683"></a><span class="lineno"> 683</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00684" name="l00684"></a><span class="lineno"> 684</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00685" name="l00685"></a><span class="lineno"> 685</span>l4_vm_vmx_copy_values(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> <span class="keyword">const</span> *vmcs, <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> *_dst,</div>
<div class="line"><a id="l00686" name="l00686"></a><span class="lineno"> 686</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a> <span class="keyword">const</span> *_src) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00687" name="l00687"></a><span class="lineno"> 687</span>{</div>
<div class="line"><a id="l00688" name="l00688"></a><span class="lineno"> 688</span> <span class="keywordtype">unsigned</span> base_offset = vmcs-&gt;offset_table.base_offset * 64;</div>
<div class="line"><a id="l00689" name="l00689"></a><span class="lineno"> 689</span> <span class="keywordtype">unsigned</span> size = vmcs-&gt;offset_table.size * 64;</div>
<div class="line"><a id="l00690" name="l00690"></a><span class="lineno"> 690</span> </div>
<div class="line"><a id="l00691" name="l00691"></a><span class="lineno"> 691</span> <span class="keywordtype">void</span> *dst = _dst + base_offset;</div>
<div class="line"><a id="l00692" name="l00692"></a><span class="lineno"> 692</span> <span class="keywordtype">void</span> <span class="keyword">const</span> *src = _src + base_offset;</div>
<div class="line"><a id="l00693" name="l00693"></a><span class="lineno"> 693</span> __builtin_memcpy(dst, src, size);</div>
<div class="line"><a id="l00694" name="l00694"></a><span class="lineno"> 694</span>}</div>
<div class="line"><a id="l00695" name="l00695"></a><span class="lineno"> 695</span> </div>
<div class="line"><a id="l00696" name="l00696"></a><span class="lineno"> 696</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00697" name="l00697"></a><span class="lineno"> 697</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00698" data-start="{" data-end="}">
<div class="line"><a id="l00698" name="l00698"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gad1e2ed2059eb6060d19dd6d327b200d2"> 698</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#gad1e2ed2059eb6060d19dd6d327b200d2">l4_vm_vmx_clear</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs,</div>
<div class="line"><a id="l00699" name="l00699"></a><span class="lineno"> 699</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *dest_vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00700" name="l00700"></a><span class="lineno"> 700</span>{</div>
<div class="line"><a id="l00701" name="l00701"></a><span class="lineno"> 701</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> **current_vmcs_ptr</div>
<div class="line"><a id="l00702" name="l00702"></a><span class="lineno"> 702</span> = (<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> **)&amp;vmcs-&gt;user_data;</div>
<div class="line"><a id="l00703" name="l00703"></a><span class="lineno"> 703</span> </div>
<div class="line"><a id="l00704" name="l00704"></a><span class="lineno"> 704</span> <span class="keywordflow">if</span> (*current_vmcs_ptr != dest_vmcs)</div>
<div class="line"><a id="l00705" name="l00705"></a><span class="lineno"> 705</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00706" name="l00706"></a><span class="lineno"> 706</span> </div>
<div class="line"><a id="l00707" name="l00707"></a><span class="lineno"> 707</span> <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga6f10feba83a036b0e88a56f4784862be">l4_vm_vmx_set_hw_vmcs</a>(dest_vmcs, <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga44c3fca4aadaa1928ba810bccb4eb8aa">l4_vm_vmx_get_hw_vmcs</a>(vmcs));</div>
<div class="line"><a id="l00708" name="l00708"></a><span class="lineno"> 708</span> l4_vm_vmx_copy_values(vmcs, dest_vmcs-&gt;values, vmcs-&gt;values);</div>
<div class="line"><a id="l00709" name="l00709"></a><span class="lineno"> 709</span> </div>
<div class="line"><a id="l00710" name="l00710"></a><span class="lineno"> 710</span> <span class="comment">/* Due to its size, the dirty bitmap is always compied in its entirety. */</span></div>
<div class="line"><a id="l00711" name="l00711"></a><span class="lineno"> 711</span> __builtin_memcpy(dest_vmcs-&gt;dirty_bitmap, vmcs-&gt;dirty_bitmap,</div>
<div class="line"><a id="l00712" name="l00712"></a><span class="lineno"> 712</span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311ddaf47978797114b595d5922991d7731e01">L4_VM_VMX_VMCS_SIZE_DIRTY_BITMAP</a>);</div>
<div class="line"><a id="l00713" name="l00713"></a><span class="lineno"> 713</span> </div>
<div class="line"><a id="l00714" name="l00714"></a><span class="lineno"> 714</span> *current_vmcs_ptr = 0;</div>
<div class="line"><a id="l00715" name="l00715"></a><span class="lineno"> 715</span>}</div>
</div>
<div class="line"><a id="l00716" name="l00716"></a><span class="lineno"> 716</span> </div>
<div class="line"><a id="l00717" name="l00717"></a><span class="lineno"> 717</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00718" name="l00718"></a><span class="lineno"> 718</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00719" data-start="{" data-end="}">
<div class="line"><a id="l00719" name="l00719"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga29d1354bccc139bea4804de3847338b2"> 719</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga29d1354bccc139bea4804de3847338b2">l4_vm_vmx_ptr_load</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs,</div>
<div class="line"><a id="l00720" name="l00720"></a><span class="lineno"> 720</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *src_vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00721" name="l00721"></a><span class="lineno"> 721</span>{</div>
<div class="line"><a id="l00722" name="l00722"></a><span class="lineno"> 722</span> <a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> **current_vmcs_ptr</div>
<div class="line"><a id="l00723" name="l00723"></a><span class="lineno"> 723</span> = (<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> **)&amp;vmcs-&gt;user_data;</div>
<div class="line"><a id="l00724" name="l00724"></a><span class="lineno"> 724</span> </div>
<div class="line"><a id="l00725" name="l00725"></a><span class="lineno"> 725</span> <span class="keywordflow">if</span> (*current_vmcs_ptr == src_vmcs)</div>
<div class="line"><a id="l00726" name="l00726"></a><span class="lineno"> 726</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00727" name="l00727"></a><span class="lineno"> 727</span> </div>
<div class="line"><a id="l00728" name="l00728"></a><span class="lineno"> 728</span> <span class="keywordflow">if</span> (*current_vmcs_ptr &amp;&amp; *current_vmcs_ptr != src_vmcs)</div>
<div class="line"><a id="l00729" name="l00729"></a><span class="lineno"> 729</span> <a class="code hl_function" href="group__l4__vm__vmx__api.html#gad1e2ed2059eb6060d19dd6d327b200d2">l4_vm_vmx_clear</a>(vmcs, *current_vmcs_ptr);</div>
<div class="line"><a id="l00730" name="l00730"></a><span class="lineno"> 730</span> </div>
<div class="line"><a id="l00731" name="l00731"></a><span class="lineno"> 731</span> *current_vmcs_ptr = src_vmcs;</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno"> 732</span> </div>
<div class="line"><a id="l00733" name="l00733"></a><span class="lineno"> 733</span> <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga6f10feba83a036b0e88a56f4784862be">l4_vm_vmx_set_hw_vmcs</a>(vmcs, <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga44c3fca4aadaa1928ba810bccb4eb8aa">l4_vm_vmx_get_hw_vmcs</a>(src_vmcs));</div>
<div class="line"><a id="l00734" name="l00734"></a><span class="lineno"> 734</span> l4_vm_vmx_copy_values(vmcs, vmcs-&gt;values, src_vmcs-&gt;values);</div>
<div class="line"><a id="l00735" name="l00735"></a><span class="lineno"> 735</span> </div>
<div class="line"><a id="l00736" name="l00736"></a><span class="lineno"> 736</span> <span class="comment">/* Due to its size, the dirty bitmap is always compied in its entirety. */</span></div>
<div class="line"><a id="l00737" name="l00737"></a><span class="lineno"> 737</span> __builtin_memcpy(vmcs-&gt;dirty_bitmap, src_vmcs-&gt;dirty_bitmap,</div>
<div class="line"><a id="l00738" name="l00738"></a><span class="lineno"> 738</span> <a class="code hl_enumvalue" href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311ddaf47978797114b595d5922991d7731e01">L4_VM_VMX_VMCS_SIZE_DIRTY_BITMAP</a>);</div>
<div class="line"><a id="l00739" name="l00739"></a><span class="lineno"> 739</span>}</div>
</div>
<div class="line"><a id="l00740" name="l00740"></a><span class="lineno"> 740</span> </div>
<div class="line"><a id="l00741" name="l00741"></a><span class="lineno"> 741</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00742" name="l00742"></a><span class="lineno"> 742</span><a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div>
<div class="foldopen" id="foldopen00743" data-start="{" data-end="}">
<div class="line"><a id="l00743" name="l00743"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga22d4747a884070acb14281204646c4ff"> 743</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga22d4747a884070acb14281204646c4ff">l4_vm_vmx_read_nat</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00744" name="l00744"></a><span class="lineno"> 744</span>{</div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno"> 745</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *ptr = (<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *)l4_vm_vmx_field_ptr(vmcs, field);</div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"> 746</span> <span class="keywordflow">if</span> (!ptr)</div>
<div class="line"><a id="l00747" name="l00747"></a><span class="lineno"> 747</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00748" name="l00748"></a><span class="lineno"> 748</span> </div>
<div class="line"><a id="l00749" name="l00749"></a><span class="lineno"> 749</span> <span class="keywordflow">return</span> *ptr;</div>
<div class="line"><a id="l00750" name="l00750"></a><span class="lineno"> 750</span>}</div>
</div>
<div class="line"><a id="l00751" name="l00751"></a><span class="lineno"> 751</span> </div>
<div class="line"><a id="l00752" name="l00752"></a><span class="lineno"> 752</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00753" name="l00753"></a><span class="lineno"> 753</span><a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div>
<div class="foldopen" id="foldopen00754" data-start="{" data-end="}">
<div class="line"><a id="l00754" name="l00754"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga4bd0e8a0bc5b1c2676f7fad347a3314b"> 754</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga4bd0e8a0bc5b1c2676f7fad347a3314b">l4_vm_vmx_read_16</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00755" name="l00755"></a><span class="lineno"> 755</span>{</div>
<div class="line"><a id="l00756" name="l00756"></a><span class="lineno"> 756</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *ptr = (<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *)l4_vm_vmx_field_ptr(vmcs, field);</div>
<div class="line"><a id="l00757" name="l00757"></a><span class="lineno"> 757</span> <span class="keywordflow">if</span> (!ptr)</div>
<div class="line"><a id="l00758" name="l00758"></a><span class="lineno"> 758</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00759" name="l00759"></a><span class="lineno"> 759</span> </div>
<div class="line"><a id="l00760" name="l00760"></a><span class="lineno"> 760</span> <span class="keywordflow">return</span> *ptr;</div>
<div class="line"><a id="l00761" name="l00761"></a><span class="lineno"> 761</span>}</div>
</div>
<div class="line"><a id="l00762" name="l00762"></a><span class="lineno"> 762</span> </div>
<div class="line"><a id="l00763" name="l00763"></a><span class="lineno"> 763</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00764" name="l00764"></a><span class="lineno"> 764</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="foldopen" id="foldopen00765" data-start="{" data-end="}">
<div class="line"><a id="l00765" name="l00765"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gaab7dd6442461a68b6b4bff6f5658783b"> 765</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#gaab7dd6442461a68b6b4bff6f5658783b">l4_vm_vmx_read_32</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00766" name="l00766"></a><span class="lineno"> 766</span>{</div>
<div class="line"><a id="l00767" name="l00767"></a><span class="lineno"> 767</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *ptr = (<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *)l4_vm_vmx_field_ptr(vmcs, field);</div>
<div class="line"><a id="l00768" name="l00768"></a><span class="lineno"> 768</span> <span class="keywordflow">if</span> (!ptr)</div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno"> 769</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00770" name="l00770"></a><span class="lineno"> 770</span> </div>
<div class="line"><a id="l00771" name="l00771"></a><span class="lineno"> 771</span> <span class="keywordflow">return</span> *ptr;</div>
<div class="line"><a id="l00772" name="l00772"></a><span class="lineno"> 772</span>}</div>
</div>
<div class="line"><a id="l00773" name="l00773"></a><span class="lineno"> 773</span> </div>
<div class="line"><a id="l00774" name="l00774"></a><span class="lineno"> 774</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00775" name="l00775"></a><span class="lineno"> 775</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="foldopen" id="foldopen00776" data-start="{" data-end="}">
<div class="line"><a id="l00776" name="l00776"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga28ad1e122940d6a6721d6e604f10a474"> 776</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga28ad1e122940d6a6721d6e604f10a474">l4_vm_vmx_read_64</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00777" name="l00777"></a><span class="lineno"> 777</span>{</div>
<div class="line"><a id="l00778" name="l00778"></a><span class="lineno"> 778</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *ptr = (<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *)l4_vm_vmx_field_ptr(vmcs, field);</div>
<div class="line"><a id="l00779" name="l00779"></a><span class="lineno"> 779</span> <span class="keywordflow">if</span> (!ptr)</div>
<div class="line"><a id="l00780" name="l00780"></a><span class="lineno"> 780</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00781" name="l00781"></a><span class="lineno"> 781</span> </div>
<div class="line"><a id="l00782" name="l00782"></a><span class="lineno"> 782</span> <span class="keywordflow">return</span> *ptr;</div>
<div class="line"><a id="l00783" name="l00783"></a><span class="lineno"> 783</span>}</div>
</div>
<div class="line"><a id="l00784" name="l00784"></a><span class="lineno"> 784</span> </div>
<div class="line"><a id="l00785" name="l00785"></a><span class="lineno"> 785</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00786" name="l00786"></a><span class="lineno"> 786</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="foldopen" id="foldopen00787" data-start="{" data-end="}">
<div class="line"><a id="l00787" name="l00787"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga6ddd9fb2841dc44996a7753746f461e4"> 787</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga6ddd9fb2841dc44996a7753746f461e4">l4_vm_vmx_read</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00788" name="l00788"></a><span class="lineno"> 788</span>{</div>
<div class="line"><a id="l00789" name="l00789"></a><span class="lineno"> 789</span> <span class="keywordtype">unsigned</span> size = (field &gt;&gt; 13) &amp; 0x03U;</div>
<div class="line"><a id="l00790" name="l00790"></a><span class="lineno"> 790</span> </div>
<div class="line"><a id="l00791" name="l00791"></a><span class="lineno"> 791</span> <span class="keywordflow">switch</span> (size)</div>
<div class="line"><a id="l00792" name="l00792"></a><span class="lineno"> 792</span> {</div>
<div class="line"><a id="l00793" name="l00793"></a><span class="lineno"> 793</span> <span class="keywordflow">case</span> 0: <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga4bd0e8a0bc5b1c2676f7fad347a3314b">l4_vm_vmx_read_16</a>(vmcs, field);</div>
<div class="line"><a id="l00794" name="l00794"></a><span class="lineno"> 794</span> <span class="keywordflow">case</span> 1: <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga28ad1e122940d6a6721d6e604f10a474">l4_vm_vmx_read_64</a>(vmcs, field);</div>
<div class="line"><a id="l00795" name="l00795"></a><span class="lineno"> 795</span> <span class="keywordflow">case</span> 2: <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__vm__vmx__api.html#gaab7dd6442461a68b6b4bff6f5658783b">l4_vm_vmx_read_32</a>(vmcs, field);</div>
<div class="line"><a id="l00796" name="l00796"></a><span class="lineno"> 796</span> <span class="keywordflow">case</span> 3: <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga22d4747a884070acb14281204646c4ff">l4_vm_vmx_read_nat</a>(vmcs, field);</div>
<div class="line"><a id="l00797" name="l00797"></a><span class="lineno"> 797</span> }</div>
<div class="line"><a id="l00798" name="l00798"></a><span class="lineno"> 798</span> </div>
<div class="line"><a id="l00799" name="l00799"></a><span class="lineno"> 799</span> __builtin_trap();</div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno"> 800</span>}</div>
</div>
<div class="line"><a id="l00801" name="l00801"></a><span class="lineno"> 801</span> </div>
<div class="line"><a id="l00802" name="l00802"></a><span class="lineno"> 802</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00803" name="l00803"></a><span class="lineno"> 803</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00804" data-start="{" data-end="}">
<div class="line"><a id="l00804" name="l00804"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga114952d1fad1746f426f3d4109699371"> 804</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga114952d1fad1746f426f3d4109699371">l4_vm_vmx_write_nat</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00805" name="l00805"></a><span class="lineno"> 805</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00806" name="l00806"></a><span class="lineno"> 806</span>{</div>
<div class="line"><a id="l00807" name="l00807"></a><span class="lineno"> 807</span> <span class="keywordtype">unsigned</span> offset;</div>
<div class="line"><a id="l00808" name="l00808"></a><span class="lineno"> 808</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *ptr</div>
<div class="line"><a id="l00809" name="l00809"></a><span class="lineno"> 809</span> = (<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *)l4_vm_vmx_field_ptr_offset(vmcs, field, &amp;offset);</div>
<div class="line"><a id="l00810" name="l00810"></a><span class="lineno"> 810</span> </div>
<div class="line"><a id="l00811" name="l00811"></a><span class="lineno"> 811</span> <span class="keywordflow">if</span> ((ptr) &amp;&amp; (*ptr != val))</div>
<div class="line"><a id="l00812" name="l00812"></a><span class="lineno"> 812</span> {</div>
<div class="line"><a id="l00813" name="l00813"></a><span class="lineno"> 813</span> *ptr = val;</div>
<div class="line"><a id="l00814" name="l00814"></a><span class="lineno"> 814</span> l4_vm_vmx_offset_dirty(vmcs, offset);</div>
<div class="line"><a id="l00815" name="l00815"></a><span class="lineno"> 815</span> }</div>
<div class="line"><a id="l00816" name="l00816"></a><span class="lineno"> 816</span>}</div>
</div>
<div class="line"><a id="l00817" name="l00817"></a><span class="lineno"> 817</span> </div>
<div class="line"><a id="l00818" name="l00818"></a><span class="lineno"> 818</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00819" name="l00819"></a><span class="lineno"> 819</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00820" data-start="{" data-end="}">
<div class="line"><a id="l00820" name="l00820"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga58e1f077fb70c62c1bfce4b912f5a5db"> 820</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga58e1f077fb70c62c1bfce4b912f5a5db">l4_vm_vmx_write_16</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00821" name="l00821"></a><span class="lineno"> 821</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00822" name="l00822"></a><span class="lineno"> 822</span>{</div>
<div class="line"><a id="l00823" name="l00823"></a><span class="lineno"> 823</span> <span class="keywordtype">unsigned</span> offset;</div>
<div class="line"><a id="l00824" name="l00824"></a><span class="lineno"> 824</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *ptr</div>
<div class="line"><a id="l00825" name="l00825"></a><span class="lineno"> 825</span> = (<a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> *)l4_vm_vmx_field_ptr_offset(vmcs, field, &amp;offset);</div>
<div class="line"><a id="l00826" name="l00826"></a><span class="lineno"> 826</span> </div>
<div class="line"><a id="l00827" name="l00827"></a><span class="lineno"> 827</span> <span class="keywordflow">if</span> ((ptr) &amp;&amp; (*ptr != val))</div>
<div class="line"><a id="l00828" name="l00828"></a><span class="lineno"> 828</span> {</div>
<div class="line"><a id="l00829" name="l00829"></a><span class="lineno"> 829</span> *ptr = val;</div>
<div class="line"><a id="l00830" name="l00830"></a><span class="lineno"> 830</span> l4_vm_vmx_offset_dirty(vmcs, offset);</div>
<div class="line"><a id="l00831" name="l00831"></a><span class="lineno"> 831</span> }</div>
<div class="line"><a id="l00832" name="l00832"></a><span class="lineno"> 832</span>}</div>
</div>
<div class="line"><a id="l00833" name="l00833"></a><span class="lineno"> 833</span> </div>
<div class="line"><a id="l00834" name="l00834"></a><span class="lineno"> 834</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00835" name="l00835"></a><span class="lineno"> 835</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00836" data-start="{" data-end="}">
<div class="line"><a id="l00836" name="l00836"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#gab2b314376b43356b08b127da2bc7aeed"> 836</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#gab2b314376b43356b08b127da2bc7aeed">l4_vm_vmx_write_32</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00837" name="l00837"></a><span class="lineno"> 837</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00838" name="l00838"></a><span class="lineno"> 838</span>{</div>
<div class="line"><a id="l00839" name="l00839"></a><span class="lineno"> 839</span> <span class="keywordtype">unsigned</span> offset;</div>
<div class="line"><a id="l00840" name="l00840"></a><span class="lineno"> 840</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *ptr</div>
<div class="line"><a id="l00841" name="l00841"></a><span class="lineno"> 841</span> = (<a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a> *)l4_vm_vmx_field_ptr_offset(vmcs, field, &amp;offset);</div>
<div class="line"><a id="l00842" name="l00842"></a><span class="lineno"> 842</span> </div>
<div class="line"><a id="l00843" name="l00843"></a><span class="lineno"> 843</span> <span class="keywordflow">if</span> ((ptr) &amp;&amp; (*ptr != val))</div>
<div class="line"><a id="l00844" name="l00844"></a><span class="lineno"> 844</span> {</div>
<div class="line"><a id="l00845" name="l00845"></a><span class="lineno"> 845</span> *ptr = val;</div>
<div class="line"><a id="l00846" name="l00846"></a><span class="lineno"> 846</span> l4_vm_vmx_offset_dirty(vmcs, offset);</div>
<div class="line"><a id="l00847" name="l00847"></a><span class="lineno"> 847</span> }</div>
<div class="line"><a id="l00848" name="l00848"></a><span class="lineno"> 848</span>}</div>
</div>
<div class="line"><a id="l00849" name="l00849"></a><span class="lineno"> 849</span> </div>
<div class="line"><a id="l00850" name="l00850"></a><span class="lineno"> 850</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00851" name="l00851"></a><span class="lineno"> 851</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00852" data-start="{" data-end="}">
<div class="line"><a id="l00852" name="l00852"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga56f88515d203d180e65152c5a9a22c57"> 852</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga56f88515d203d180e65152c5a9a22c57">l4_vm_vmx_write_64</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00853" name="l00853"></a><span class="lineno"> 853</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00854" name="l00854"></a><span class="lineno"> 854</span>{</div>
<div class="line"><a id="l00855" name="l00855"></a><span class="lineno"> 855</span> <span class="keywordtype">unsigned</span> offset;</div>
<div class="line"><a id="l00856" name="l00856"></a><span class="lineno"> 856</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *ptr</div>
<div class="line"><a id="l00857" name="l00857"></a><span class="lineno"> 857</span> = (<a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> *)l4_vm_vmx_field_ptr_offset(vmcs, field, &amp;offset);</div>
<div class="line"><a id="l00858" name="l00858"></a><span class="lineno"> 858</span> </div>
<div class="line"><a id="l00859" name="l00859"></a><span class="lineno"> 859</span> <span class="keywordflow">if</span> ((ptr) &amp;&amp; (*ptr != val))</div>
<div class="line"><a id="l00860" name="l00860"></a><span class="lineno"> 860</span> {</div>
<div class="line"><a id="l00861" name="l00861"></a><span class="lineno"> 861</span> *ptr = val;</div>
<div class="line"><a id="l00862" name="l00862"></a><span class="lineno"> 862</span> l4_vm_vmx_offset_dirty(vmcs, offset);</div>
<div class="line"><a id="l00863" name="l00863"></a><span class="lineno"> 863</span> }</div>
<div class="line"><a id="l00864" name="l00864"></a><span class="lineno"> 864</span>}</div>
</div>
<div class="line"><a id="l00865" name="l00865"></a><span class="lineno"> 865</span> </div>
<div class="line"><a id="l00866" name="l00866"></a><span class="lineno"> 866</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00867" name="l00867"></a><span class="lineno"> 867</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00868" data-start="{" data-end="}">
<div class="line"><a id="l00868" name="l00868"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga20b3c5c42db8ee3f4859565486f05101"> 868</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga20b3c5c42db8ee3f4859565486f05101">l4_vm_vmx_write</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs, <span class="keywordtype">unsigned</span> field,</div>
<div class="line"><a id="l00869" name="l00869"></a><span class="lineno"> 869</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a> val) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00870" name="l00870"></a><span class="lineno"> 870</span>{</div>
<div class="line"><a id="l00871" name="l00871"></a><span class="lineno"> 871</span> <span class="keywordtype">unsigned</span> size = (field &gt;&gt; 13) &amp; 0x03U;</div>
<div class="line"><a id="l00872" name="l00872"></a><span class="lineno"> 872</span> </div>
<div class="line"><a id="l00873" name="l00873"></a><span class="lineno"> 873</span> <span class="keywordflow">switch</span> (size)</div>
<div class="line"><a id="l00874" name="l00874"></a><span class="lineno"> 874</span> {</div>
<div class="line"><a id="l00875" name="l00875"></a><span class="lineno"> 875</span> <span class="keywordflow">case</span> 0: <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga58e1f077fb70c62c1bfce4b912f5a5db">l4_vm_vmx_write_16</a>(vmcs, field, val); <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00876" name="l00876"></a><span class="lineno"> 876</span> <span class="keywordflow">case</span> 1: <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga56f88515d203d180e65152c5a9a22c57">l4_vm_vmx_write_64</a>(vmcs, field, val); <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00877" name="l00877"></a><span class="lineno"> 877</span> <span class="keywordflow">case</span> 2: <a class="code hl_function" href="group__l4__vm__vmx__api.html#gab2b314376b43356b08b127da2bc7aeed">l4_vm_vmx_write_32</a>(vmcs, field, val); <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00878" name="l00878"></a><span class="lineno"> 878</span> <span class="keywordflow">case</span> 3: <a class="code hl_function" href="group__l4__vm__vmx__api.html#ga114952d1fad1746f426f3d4109699371">l4_vm_vmx_write_nat</a>(vmcs, field, val); <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00879" name="l00879"></a><span class="lineno"> 879</span> }</div>
<div class="line"><a id="l00880" name="l00880"></a><span class="lineno"> 880</span>}</div>
</div>
<div class="line"><a id="l00881" name="l00881"></a><span class="lineno"> 881</span> </div>
<div class="line"><a id="l00882" name="l00882"></a><span class="lineno"> 882</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00883" name="l00883"></a><span class="lineno"> 883</span><a class="code hl_typedef" href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div>
<div class="foldopen" id="foldopen00884" data-start="{" data-end="}">
<div class="line"><a id="l00884" name="l00884"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga91a16ca560298b7238a6570d41ad0ad3"> 884</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga91a16ca560298b7238a6570d41ad0ad3">l4_vm_vmx_get_caps</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__state__t.html">l4_vm_vmx_vcpu_state_t</a> <span class="keyword">const</span> *vcpu_state,</div>
<div class="line"><a id="l00885" name="l00885"></a><span class="lineno"> 885</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#ga7f887612340fb99adf3ef179d558d71b">L4_vm_vmx_caps_regs</a> caps_reg) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00886" name="l00886"></a><span class="lineno"> 886</span>{</div>
<div class="line"><a id="l00887" name="l00887"></a><span class="lineno"> 887</span> <span class="keywordflow">return</span> vcpu_state-&gt;infos.caps[caps_reg];</div>
<div class="line"><a id="l00888" name="l00888"></a><span class="lineno"> 888</span>}</div>
</div>
<div class="line"><a id="l00889" name="l00889"></a><span class="lineno"> 889</span> </div>
<div class="line"><a id="l00890" name="l00890"></a><span class="lineno"> 890</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00891" name="l00891"></a><span class="lineno"> 891</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="foldopen" id="foldopen00892" data-start="{" data-end="}">
<div class="line"><a id="l00892" name="l00892"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga70caa0bd4fb86dc52d3e0f424519d37b"> 892</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga70caa0bd4fb86dc52d3e0f424519d37b">l4_vm_vmx_get_caps_default1</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__state__t.html">l4_vm_vmx_vcpu_state_t</a> <span class="keyword">const</span> *vcpu_state,</div>
<div class="line"><a id="l00893" name="l00893"></a><span class="lineno"> 893</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vm__vmx__api.html#gac5a7a61aec9e350c19bd87420f37e0ac">L4_vm_vmx_dfl1_regs</a> dfl1_reg) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00894" name="l00894"></a><span class="lineno"> 894</span>{</div>
<div class="line"><a id="l00895" name="l00895"></a><span class="lineno"> 895</span> <span class="keywordflow">return</span> vcpu_state-&gt;infos.dfl1[dfl1_reg];</div>
<div class="line"><a id="l00896" name="l00896"></a><span class="lineno"> 896</span>}</div>
</div>
<div class="line"><a id="l00897" name="l00897"></a><span class="lineno"> 897</span> </div>
<div class="line"><a id="l00898" name="l00898"></a><span class="lineno"> 898</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00899" name="l00899"></a><span class="lineno"> 899</span><a class="code hl_typedef" href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div>
<div class="foldopen" id="foldopen00900" data-start="{" data-end="}">
<div class="line"><a id="l00900" name="l00900"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga473ceb1888da5cd9e6f1d517c75b3198"> 900</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga473ceb1888da5cd9e6f1d517c75b3198">l4_vm_vmx_get_cr2_index</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> <span class="keyword">const</span> *vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00901" name="l00901"></a><span class="lineno"> 901</span>{</div>
<div class="line"><a id="l00902" name="l00902"></a><span class="lineno"> 902</span> <span class="keywordflow">return</span> vmcs-&gt;cr2_index;</div>
<div class="line"><a id="l00903" name="l00903"></a><span class="lineno"> 903</span>}</div>
</div>
<div class="line"><a id="l00904" name="l00904"></a><span class="lineno"> 904</span> </div>
<div class="line"><a id="l00905" name="l00905"></a><span class="lineno"> 905</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00906" name="l00906"></a><span class="lineno"> 906</span><span class="keywordtype">void</span></div>
<div class="foldopen" id="foldopen00907" data-start="{" data-end="}">
<div class="line"><a id="l00907" name="l00907"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga6f10feba83a036b0e88a56f4784862be"> 907</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga6f10feba83a036b0e88a56f4784862be">l4_vm_vmx_set_hw_vmcs</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs,</div>
<div class="line"><a id="l00908" name="l00908"></a><span class="lineno"> 908</span> <a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> vmcs_cap) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00909" name="l00909"></a><span class="lineno"> 909</span>{</div>
<div class="line"><a id="l00910" name="l00910"></a><span class="lineno"> 910</span> vmcs-&gt;vmcs = vmcs_cap;</div>
<div class="line"><a id="l00911" name="l00911"></a><span class="lineno"> 911</span>}</div>
</div>
<div class="line"><a id="l00912" name="l00912"></a><span class="lineno"> 912</span> </div>
<div class="line"><a id="l00913" name="l00913"></a><span class="lineno"> 913</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div>
<div class="line"><a id="l00914" name="l00914"></a><span class="lineno"> 914</span><a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div>
<div class="foldopen" id="foldopen00915" data-start="{" data-end="}">
<div class="line"><a id="l00915" name="l00915"></a><span class="lineno"><a class="line" href="group__l4__vm__vmx__api.html#ga44c3fca4aadaa1928ba810bccb4eb8aa"> 915</a></span><a class="code hl_function" href="group__l4__vm__vmx__api.html#ga44c3fca4aadaa1928ba810bccb4eb8aa">l4_vm_vmx_get_hw_vmcs</a>(<a class="code hl_struct" href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a> *vmcs) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00916" name="l00916"></a><span class="lineno"> 916</span>{</div>
<div class="line"><a id="l00917" name="l00917"></a><span class="lineno"> 917</span> <span class="keywordflow">return</span> vmcs-&gt;vmcs &amp; <a class="code hl_enumvalue" href="group__l4__cap__api.html#ggafee0421c2fe0e5cfc59f17f16ea10879aba3e1dbcc462d842d56df9fc928e796b">L4_CAP_MASK</a>;</div>
<div class="line"><a id="l00918" name="l00918"></a><span class="lineno"> 918</span>}</div>
</div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9678dc2e6bf3e4d8ec950162576b0fad"><div class="ttname"><a href="group__l4__basic__types.html#ga9678dc2e6bf3e4d8ec950162576b0fad">l4_uint8_t</a></div><div class="ttdeci">unsigned char l4_uint8_t</div><div class="ttdoc">Unsigned 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gac1d09f3e382e711b776931f10e6e1e5a"><div class="ttname"><a href="group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a">l4_uint32_t</a></div><div class="ttdeci">unsigned int l4_uint32_t</div><div class="ttdoc">Unsigned 32bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00029">l4int.h:29</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gaf3331c485014bd12a9e4f9d27a55e689"><div class="ttname"><a href="group__l4__basic__types.html#gaf3331c485014bd12a9e4f9d27a55e689">l4_uint64_t</a></div><div class="ttdeci">unsigned long long l4_uint64_t</div><div class="ttdoc">Unsigned 64bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00031">l4int.h:31</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ga1445e923ce73029130d569d6e69a4dd8"><div class="ttname"><a href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div><div class="ttdeci">unsigned long l4_cap_idx_t</div><div class="ttdoc">Capability selector type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00336">types.h:336</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ggafee0421c2fe0e5cfc59f17f16ea10879aba3e1dbcc462d842d56df9fc928e796b"><div class="ttname"><a href="group__l4__cap__api.html#ggafee0421c2fe0e5cfc59f17f16ea10879aba3e1dbcc462d842d56df9fc928e796b">L4_CAP_MASK</a></div><div class="ttdeci">@ L4_CAP_MASK</div><div class="ttdoc">Mask to get only the relevant bits of an l4_cap_idx_t.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2consts_8h_source.html#l00151">consts.h:151</a></div></div>
<div class="ttc" id="agroup__l4__vcpu__api_html_ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5"><div class="ttname"><a href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5">L4_VCPU_OFFSET_EXT_INFOS</a></div><div class="ttdeci">@ L4_VCPU_OFFSET_EXT_INFOS</div><div class="ttdoc">Offset where extended infos begin.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00038">__vcpu-arch.h:38</a></div></div>
<div class="ttc" id="agroup__l4__vcpu__api_html_ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3"><div class="ttname"><a href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3">L4_VCPU_OFFSET_EXT_STATE</a></div><div class="ttdeci">@ L4_VCPU_OFFSET_EXT_STATE</div><div class="ttdoc">Offset where extended state begins.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00037">__vcpu-arch.h:37</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga114952d1fad1746f426f3d4109699371"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga114952d1fad1746f426f3d4109699371">l4_vm_vmx_write_nat</a></div><div class="ttdeci">void l4_vm_vmx_write_nat(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field, l4_umword_t val) L4_NOTHROW</div><div class="ttdoc">Write to a natural-width software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00804">__vm-vmx.h:804</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga20b3c5c42db8ee3f4859565486f05101"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga20b3c5c42db8ee3f4859565486f05101">l4_vm_vmx_write</a></div><div class="ttdeci">void l4_vm_vmx_write(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field, l4_uint64_t val) L4_NOTHROW</div><div class="ttdoc">Write to an arbitrary software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00868">__vm-vmx.h:868</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga22d4747a884070acb14281204646c4ff"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga22d4747a884070acb14281204646c4ff">l4_vm_vmx_read_nat</a></div><div class="ttdeci">l4_umword_t l4_vm_vmx_read_nat(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field) L4_NOTHROW</div><div class="ttdoc">Read a natural-width software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00743">__vm-vmx.h:743</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga27f1514d76d058f2f730bb96292f785c"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga27f1514d76d058f2f730bb96292f785c">L4_vm_vmx_sw_fields</a></div><div class="ttdeci">L4_vm_vmx_sw_fields</div><div class="ttdoc">Additional (software-defined) VMCS fields.</div><div class="ttdef"><b>Definition</b> <a href="#l00069">__vm-vmx.h:70</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga28ad1e122940d6a6721d6e604f10a474"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga28ad1e122940d6a6721d6e604f10a474">l4_vm_vmx_read_64</a></div><div class="ttdeci">l4_uint64_t l4_vm_vmx_read_64(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field) L4_NOTHROW</div><div class="ttdoc">Read a 64-bit software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00776">__vm-vmx.h:776</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga2903ff82a7b04d2b46d25f4a3470a893"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga2903ff82a7b04d2b46d25f4a3470a893">l4_vm_vmx_field_order</a></div><div class="ttdeci">unsigned l4_vm_vmx_field_order(unsigned field) L4_NOTHROW</div><div class="ttdoc">Return length in power of two (bytes) of a VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00600">__vm-vmx.h:600</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga29d1354bccc139bea4804de3847338b2"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga29d1354bccc139bea4804de3847338b2">l4_vm_vmx_ptr_load</a></div><div class="ttdeci">void l4_vm_vmx_ptr_load(l4_vm_vmx_vcpu_vmcs_t *vmcs, l4_vm_vmx_vcpu_vmcs_t *src_vmcs) L4_NOTHROW</div><div class="ttdoc">Load the content from a different software VMCS to the software VMCS.</div><div class="ttdef"><b>Definition</b> <a href="#l00719">__vm-vmx.h:719</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga44c3fca4aadaa1928ba810bccb4eb8aa"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga44c3fca4aadaa1928ba810bccb4eb8aa">l4_vm_vmx_get_hw_vmcs</a></div><div class="ttdeci">l4_cap_idx_t l4_vm_vmx_get_hw_vmcs(l4_vm_vmx_vcpu_vmcs_t *vmcs) L4_NOTHROW</div><div class="ttdoc">Get the vCPU context (i.e.</div><div class="ttdef"><b>Definition</b> <a href="#l00915">__vm-vmx.h:915</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga473ceb1888da5cd9e6f1d517c75b3198"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga473ceb1888da5cd9e6f1d517c75b3198">l4_vm_vmx_get_cr2_index</a></div><div class="ttdeci">l4_uint32_t l4_vm_vmx_get_cr2_index(l4_vm_vmx_vcpu_vmcs_t const *vmcs) L4_NOTHROW</div><div class="ttdoc">Get the software VMCS field index of the virtual CR2 register.</div><div class="ttdef"><b>Definition</b> <a href="#l00900">__vm-vmx.h:900</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga4bd0e8a0bc5b1c2676f7fad347a3314b"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga4bd0e8a0bc5b1c2676f7fad347a3314b">l4_vm_vmx_read_16</a></div><div class="ttdeci">l4_uint16_t l4_vm_vmx_read_16(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field) L4_NOTHROW</div><div class="ttdoc">Read a 16-bit software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00754">__vm-vmx.h:754</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga56f88515d203d180e65152c5a9a22c57"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga56f88515d203d180e65152c5a9a22c57">l4_vm_vmx_write_64</a></div><div class="ttdeci">void l4_vm_vmx_write_64(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field, l4_uint64_t val) L4_NOTHROW</div><div class="ttdoc">Write to a 64-bit software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00852">__vm-vmx.h:852</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga58e1f077fb70c62c1bfce4b912f5a5db"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga58e1f077fb70c62c1bfce4b912f5a5db">l4_vm_vmx_write_16</a></div><div class="ttdeci">void l4_vm_vmx_write_16(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field, l4_uint16_t val) L4_NOTHROW</div><div class="ttdoc">Write to a 16-bit software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00820">__vm-vmx.h:820</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga6ddd9fb2841dc44996a7753746f461e4"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga6ddd9fb2841dc44996a7753746f461e4">l4_vm_vmx_read</a></div><div class="ttdeci">l4_uint64_t l4_vm_vmx_read(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field) L4_NOTHROW</div><div class="ttdoc">Read any software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00787">__vm-vmx.h:787</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga6f10feba83a036b0e88a56f4784862be"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga6f10feba83a036b0e88a56f4784862be">l4_vm_vmx_set_hw_vmcs</a></div><div class="ttdeci">void l4_vm_vmx_set_hw_vmcs(l4_vm_vmx_vcpu_vmcs_t *vmcs, l4_cap_idx_t vmcs_cap) L4_NOTHROW</div><div class="ttdoc">Associate the software VMCS with a vCPU context, i.e.</div><div class="ttdef"><b>Definition</b> <a href="#l00907">__vm-vmx.h:907</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga70caa0bd4fb86dc52d3e0f424519d37b"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga70caa0bd4fb86dc52d3e0f424519d37b">l4_vm_vmx_get_caps_default1</a></div><div class="ttdeci">l4_uint32_t l4_vm_vmx_get_caps_default1(l4_vm_vmx_vcpu_state_t const *vcpu_state, enum L4_vm_vmx_dfl1_regs dfl1_reg) L4_NOTHROW</div><div class="ttdoc">Get a default to one capability register for VMX.</div><div class="ttdef"><b>Definition</b> <a href="#l00892">__vm-vmx.h:892</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga7a7775078ec1b73ce8b143ec16482824"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga7a7775078ec1b73ce8b143ec16482824">l4_vm_vmx_field_len</a></div><div class="ttdeci">unsigned l4_vm_vmx_field_len(unsigned field) L4_NOTHROW</div><div class="ttdoc">Return length in bytes of a VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00593">__vm-vmx.h:593</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga7f887612340fb99adf3ef179d558d71b"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga7f887612340fb99adf3ef179d558d71b">L4_vm_vmx_caps_regs</a></div><div class="ttdeci">L4_vm_vmx_caps_regs</div><div class="ttdoc">Exported VMX capability registers.</div><div class="ttdef"><b>Definition</b> <a href="#l00028">__vm-vmx.h:29</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga9169c2239af134b86c38ca1c539311dd"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga9169c2239af134b86c38ca1c539311dd">L4_vm_vmx_vmcs_sizes</a></div><div class="ttdeci">L4_vm_vmx_vmcs_sizes</div><div class="ttdoc">Sizes of software VMCS members.</div><div class="ttdef"><b>Definition</b> <a href="#l00170">__vm-vmx.h:171</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ga91a16ca560298b7238a6570d41ad0ad3"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ga91a16ca560298b7238a6570d41ad0ad3">l4_vm_vmx_get_caps</a></div><div class="ttdeci">l4_uint64_t l4_vm_vmx_get_caps(l4_vm_vmx_vcpu_state_t const *vcpu_state, enum L4_vm_vmx_caps_regs caps_reg) L4_NOTHROW</div><div class="ttdoc">Get a capability register for VMX.</div><div class="ttdef"><b>Definition</b> <a href="#l00884">__vm-vmx.h:884</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gaab7dd6442461a68b6b4bff6f5658783b"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gaab7dd6442461a68b6b4bff6f5658783b">l4_vm_vmx_read_32</a></div><div class="ttdeci">l4_uint32_t l4_vm_vmx_read_32(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field) L4_NOTHROW</div><div class="ttdoc">Read a 32-bit software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00765">__vm-vmx.h:765</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gab2b314376b43356b08b127da2bc7aeed"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gab2b314376b43356b08b127da2bc7aeed">l4_vm_vmx_write_32</a></div><div class="ttdeci">void l4_vm_vmx_write_32(l4_vm_vmx_vcpu_vmcs_t *vmcs, unsigned field, l4_uint32_t val) L4_NOTHROW</div><div class="ttdoc">Write to a 32-bit software VMCS field.</div><div class="ttdef"><b>Definition</b> <a href="#l00836">__vm-vmx.h:836</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gac5a7a61aec9e350c19bd87420f37e0ac"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gac5a7a61aec9e350c19bd87420f37e0ac">L4_vm_vmx_dfl1_regs</a></div><div class="ttdeci">L4_vm_vmx_dfl1_regs</div><div class="ttdoc">Exported VMX capability registers (default to 1 bits).</div><div class="ttdef"><b>Definition</b> <a href="#l00051">__vm-vmx.h:52</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gad1e2ed2059eb6060d19dd6d327b200d2"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gad1e2ed2059eb6060d19dd6d327b200d2">l4_vm_vmx_clear</a></div><div class="ttdeci">void l4_vm_vmx_clear(l4_vm_vmx_vcpu_vmcs_t *vmcs, l4_vm_vmx_vcpu_vmcs_t *dest_vmcs) L4_NOTHROW</div><div class="ttdoc">Save the content from the software VMCS to a different software VMCS.</div><div class="ttdef"><b>Definition</b> <a href="#l00698">__vm-vmx.h:698</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca03bbbc09d95db544e5429033803c1cb8"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca03bbbc09d95db544e5429033803c1cb8">L4_VM_VMX_VMCS_MSR_LSTAR</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_MSR_LSTAR</div><div class="ttdoc">VMCS offset of IA32e mode system call target address MSR.</div><div class="ttdef"><b>Definition</b> <a href="#l00092">__vm-vmx.h:92</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca126f4b83bdc85be8fd0a9c174052ec20"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca126f4b83bdc85be8fd0a9c174052ec20">L4_VM_VMX_VMCS_NAT_ARG3</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_NAT_ARG3</div><div class="ttdoc">Custom argument passed from kernel to user space.</div><div class="ttdef"><b>Definition</b> <a href="#l00086">__vm-vmx.h:86</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca157c37450487720714a648b04c7972a7"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca157c37450487720714a648b04c7972a7">L4_VM_VMX_VMCS_MSR_STAR</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_MSR_STAR</div><div class="ttdoc">VMCS offset of system call target address MSR.</div><div class="ttdef"><b>Definition</b> <a href="#l00098">__vm-vmx.h:98</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca1722faecbb122e7743d9d662ccd719a1"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca1722faecbb122e7743d9d662ccd719a1">L4_VM_VMX_VMCS_CR2</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_CR2</div><div class="ttdoc">Software VMCS offset for CR2.</div><div class="ttdef"><b>Definition</b> <a href="#l00078">__vm-vmx.h:78</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca57f0b04a87627b4aa602bf620c3b7d6d"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca57f0b04a87627b4aa602bf620c3b7d6d">L4_VM_VMX_VMCS_XCR0</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_XCR0</div><div class="ttdoc">VMCS offset of extended control register XCR0.</div><div class="ttdef"><b>Definition</b> <a href="#l00088">__vm-vmx.h:88</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca5e89d3653d174e22f9aa84ad0d2cc6ad"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca5e89d3653d174e22f9aa84ad0d2cc6ad">L4_VM_VMX_VMCS_MSR_TSC_AUX</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_MSR_TSC_AUX</div><div class="ttdoc">VMCS offset of auxiliary TSC signature MSR.</div><div class="ttdef"><b>Definition</b> <a href="#l00096">__vm-vmx.h:96</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca5fca506a838eb35d467e8e2048d1c3cc"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca5fca506a838eb35d467e8e2048d1c3cc">L4_VM_VMX_VMCS_NAT_ARG1</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_NAT_ARG1</div><div class="ttdoc">Custom argument passed from kernel to user space.</div><div class="ttdef"><b>Definition</b> <a href="#l00082">__vm-vmx.h:82</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785ca793e5454d287deb65d89275c86ea1a0f"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785ca793e5454d287deb65d89275c86ea1a0f">L4_VM_VMX_VMCS_MSR_KERNEL_GS_BASE</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_MSR_KERNEL_GS_BASE</div><div class="ttdoc">VMCS offset of GS base address swap target MSR.</div><div class="ttdef"><b>Definition</b> <a href="#l00100">__vm-vmx.h:100</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785cac96198ff7340494d61838524e1fa19e3"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cac96198ff7340494d61838524e1fa19e3">L4_VM_VMX_VMCS_NAT_ARG0</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_NAT_ARG0</div><div class="ttdoc">Custom argument passed from kernel to user space.</div><div class="ttdef"><b>Definition</b> <a href="#l00080">__vm-vmx.h:80</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785cac9f38753b92322061c87c5670048652d"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cac9f38753b92322061c87c5670048652d">L4_VM_VMX_VMCS_NAT_ARG2</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_NAT_ARG2</div><div class="ttdoc">Custom argument passed from kernel to user space.</div><div class="ttdef"><b>Definition</b> <a href="#l00084">__vm-vmx.h:84</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785cae97d93178451a288d72f66f8ab528131"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785cae97d93178451a288d72f66f8ab528131">L4_VM_VMX_VMCS_MSR_SYSCALL_MASK</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_MSR_SYSCALL_MASK</div><div class="ttdoc">VMCS offset of system call flag mask MSR.</div><div class="ttdef"><b>Definition</b> <a href="#l00090">__vm-vmx.h:90</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga27f1514d76d058f2f730bb96292f785caf3b8a516ed42738ef71980a5260c9d95"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga27f1514d76d058f2f730bb96292f785caf3b8a516ed42738ef71980a5260c9d95">L4_VM_VMX_VMCS_MSR_CSTAR</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_MSR_CSTAR</div><div class="ttdoc">VMCS offset of IA32 mode system call target address MSR.</div><div class="ttdef"><b>Definition</b> <a href="#l00094">__vm-vmx.h:94</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba0552ed8e38d99b31ba45eac8d6fc0c8c"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba0552ed8e38d99b31ba45eac8d6fc0c8c">L4_VM_VMX_TRUE_PROCBASED_CTLS_REG</a></div><div class="ttdeci">@ L4_VM_VMX_TRUE_PROCBASED_CTLS_REG</div><div class="ttdoc">True processor based control caps.</div><div class="ttdef"><b>Definition</b> <a href="#l00032">__vm-vmx.h:32</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba082e9155e7de267701c1d654596117e2"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba082e9155e7de267701c1d654596117e2">L4_VM_VMX_MISC_REG</a></div><div class="ttdeci">@ L4_VM_VMX_MISC_REG</div><div class="ttdoc">Misc caps.</div><div class="ttdef"><b>Definition</b> <a href="#l00035">__vm-vmx.h:35</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba16eb83d82eb9a3ec7966901322aec71a"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba16eb83d82eb9a3ec7966901322aec71a">L4_VM_VMX_PROCBASED_CTLS2_REG</a></div><div class="ttdeci">@ L4_VM_VMX_PROCBASED_CTLS2_REG</div><div class="ttdoc">Processor based control 2 caps.</div><div class="ttdef"><b>Definition</b> <a href="#l00041">__vm-vmx.h:41</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba171dd49d3e11f483b7a12e4e0a0168f5"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba171dd49d3e11f483b7a12e4e0a0168f5">L4_VM_VMX_EPT_VPID_CAP_REG</a></div><div class="ttdeci">@ L4_VM_VMX_EPT_VPID_CAP_REG</div><div class="ttdoc">EPT and VPID caps.</div><div class="ttdef"><b>Definition</b> <a href="#l00042">__vm-vmx.h:42</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba3163ab09616fe3b1a0732f2381231df1"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba3163ab09616fe3b1a0732f2381231df1">L4_VM_VMX_CR4_FIXED1_REG</a></div><div class="ttdeci">@ L4_VM_VMX_CR4_FIXED1_REG</div><div class="ttdoc">Fixed to 1 bits of CR4.</div><div class="ttdef"><b>Definition</b> <a href="#l00039">__vm-vmx.h:39</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba47cd504bdaf249586ff6da19fb10f7d0"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba47cd504bdaf249586ff6da19fb10f7d0">L4_VM_VMX_NUM_CAPS_REGS</a></div><div class="ttdeci">@ L4_VM_VMX_NUM_CAPS_REGS</div><div class="ttdoc">Total number of VMX capability registers.</div><div class="ttdef"><b>Definition</b> <a href="#l00044">__vm-vmx.h:44</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba55f1e528efc063abddfc09021465f9d2"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba55f1e528efc063abddfc09021465f9d2">L4_VM_VMX_CR4_FIXED0_REG</a></div><div class="ttdeci">@ L4_VM_VMX_CR4_FIXED0_REG</div><div class="ttdoc">Fixed to 0 bits of CR4.</div><div class="ttdef"><b>Definition</b> <a href="#l00038">__vm-vmx.h:38</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba6fdf006dac24ed0f259d93b454343257"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba6fdf006dac24ed0f259d93b454343257">L4_VM_VMX_TRUE_ENTRY_CTLS_REG</a></div><div class="ttdeci">@ L4_VM_VMX_TRUE_ENTRY_CTLS_REG</div><div class="ttdoc">True entry control caps.</div><div class="ttdef"><b>Definition</b> <a href="#l00034">__vm-vmx.h:34</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba77a0b80d38acd967c76f220f4d1f901b"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba77a0b80d38acd967c76f220f4d1f901b">L4_VM_VMX_NESTED_REVISION</a></div><div class="ttdeci">@ L4_VM_VMX_NESTED_REVISION</div><div class="ttdoc">Nested VMCS revision.</div><div class="ttdef"><b>Definition</b> <a href="#l00043">__vm-vmx.h:43</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71ba9ca46e74427b06911cd3056ddc56eab0"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71ba9ca46e74427b06911cd3056ddc56eab0">L4_VM_VMX_CR0_FIXED1_REG</a></div><div class="ttdeci">@ L4_VM_VMX_CR0_FIXED1_REG</div><div class="ttdoc">Fixed to 1 bits of CR0.</div><div class="ttdef"><b>Definition</b> <a href="#l00037">__vm-vmx.h:37</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71baaa028615540bf577bc3c0bf5fde839b8"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71baaa028615540bf577bc3c0bf5fde839b8">L4_VM_VMX_CR0_FIXED0_REG</a></div><div class="ttdeci">@ L4_VM_VMX_CR0_FIXED0_REG</div><div class="ttdoc">Fixed to 0 bits of CR0.</div><div class="ttdef"><b>Definition</b> <a href="#l00036">__vm-vmx.h:36</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71bac56a4e672919d7429acdb261dc1f7d56"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bac56a4e672919d7429acdb261dc1f7d56">L4_VM_VMX_VMCS_ENUM_REG</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_ENUM_REG</div><div class="ttdoc">VMCS enumeration info.</div><div class="ttdef"><b>Definition</b> <a href="#l00040">__vm-vmx.h:40</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71bacaea2c77c13fe074e4f3b3fdb39f54dc"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bacaea2c77c13fe074e4f3b3fdb39f54dc">L4_VM_VMX_TRUE_EXIT_CTLS_REG</a></div><div class="ttdeci">@ L4_VM_VMX_TRUE_EXIT_CTLS_REG</div><div class="ttdoc">True exit control caps.</div><div class="ttdef"><b>Definition</b> <a href="#l00033">__vm-vmx.h:33</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71bada1cdf5ff0a078136094cfbac54c4929"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71bada1cdf5ff0a078136094cfbac54c4929">L4_VM_VMX_TRUE_PINBASED_CTLS_REG</a></div><div class="ttdeci">@ L4_VM_VMX_TRUE_PINBASED_CTLS_REG</div><div class="ttdoc">True pin-based control caps.</div><div class="ttdef"><b>Definition</b> <a href="#l00031">__vm-vmx.h:31</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga7f887612340fb99adf3ef179d558d71baeb5e889bff07525d90f96b4ea1e95a6b"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga7f887612340fb99adf3ef179d558d71baeb5e889bff07525d90f96b4ea1e95a6b">L4_VM_VMX_BASIC_REG</a></div><div class="ttdeci">@ L4_VM_VMX_BASIC_REG</div><div class="ttdoc">Basic VMX capabilities.</div><div class="ttdef"><b>Definition</b> <a href="#l00030">__vm-vmx.h:30</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga9169c2239af134b86c38ca1c539311dda1a10cf9d323c9efcc7b7d08c9ebec851"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311dda1a10cf9d323c9efcc7b7d08c9ebec851">L4_VM_VMX_VMCS_SIZE_VALUES</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_SIZE_VALUES</div><div class="ttdoc">Size of the software VMCS values member.</div><div class="ttdef"><b>Definition</b> <a href="#l00173">__vm-vmx.h:173</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_gga9169c2239af134b86c38ca1c539311ddaf47978797114b595d5922991d7731e01"><div class="ttname"><a href="group__l4__vm__vmx__api.html#gga9169c2239af134b86c38ca1c539311ddaf47978797114b595d5922991d7731e01">L4_VM_VMX_VMCS_SIZE_DIRTY_BITMAP</a></div><div class="ttdeci">@ L4_VM_VMX_VMCS_SIZE_DIRTY_BITMAP</div><div class="ttdoc">Size of the software VMCS dirty bitmap member.</div><div class="ttdef"><b>Definition</b> <a href="#l00175">__vm-vmx.h:175</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ggac5a7a61aec9e350c19bd87420f37e0aca688c05396a1a2f019988a58fbabd31c1"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0aca688c05396a1a2f019988a58fbabd31c1">L4_VM_VMX_ENTRY_CTLS_DFL1_REG</a></div><div class="ttdeci">@ L4_VM_VMX_ENTRY_CTLS_DFL1_REG</div><div class="ttdoc">Default 1 bits in entry controls.</div><div class="ttdef"><b>Definition</b> <a href="#l00056">__vm-vmx.h:56</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ggac5a7a61aec9e350c19bd87420f37e0aca8ac4e7068474b8f52dbf5311a0e0258c"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0aca8ac4e7068474b8f52dbf5311a0e0258c">L4_VM_VMX_EXIT_CTLS_DFL1_REG</a></div><div class="ttdeci">@ L4_VM_VMX_EXIT_CTLS_DFL1_REG</div><div class="ttdoc">Default 1 bits in exit controls.</div><div class="ttdef"><b>Definition</b> <a href="#l00055">__vm-vmx.h:55</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ggac5a7a61aec9e350c19bd87420f37e0acaa72109ccf2588608ad97d601b3f15e35"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acaa72109ccf2588608ad97d601b3f15e35">L4_VM_VMX_PINBASED_CTLS_DFL1_REG</a></div><div class="ttdeci">@ L4_VM_VMX_PINBASED_CTLS_DFL1_REG</div><div class="ttdoc">Default 1 bits in pin-based controls.</div><div class="ttdef"><b>Definition</b> <a href="#l00053">__vm-vmx.h:53</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ggac5a7a61aec9e350c19bd87420f37e0acab25250e6c3ab5a176d73925708abbad6"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acab25250e6c3ab5a176d73925708abbad6">L4_VM_VMX_NUM_DFL1_REGS</a></div><div class="ttdeci">@ L4_VM_VMX_NUM_DFL1_REGS</div><div class="ttdoc">Total number of default on registers.</div><div class="ttdef"><b>Definition</b> <a href="#l00057">__vm-vmx.h:57</a></div></div>
<div class="ttc" id="agroup__l4__vm__vmx__api_html_ggac5a7a61aec9e350c19bd87420f37e0acaf7a9ade10e34f67119a63fbacc3162fb"><div class="ttname"><a href="group__l4__vm__vmx__api.html#ggac5a7a61aec9e350c19bd87420f37e0acaf7a9ade10e34f67119a63fbacc3162fb">L4_VM_VMX_PROCBASED_CTLS_DFL1_REG</a></div><div class="ttdeci">@ L4_VM_VMX_PROCBASED_CTLS_DFL1_REG</div><div class="ttdoc">Default 1 bits in processor-based controls.</div><div class="ttdef"><b>Definition</b> <a href="#l00054">__vm-vmx.h:54</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="astructl4__vcpu__state__t_html"><div class="ttname"><a href="structl4__vcpu__state__t.html">l4_vcpu_state_t</a></div><div class="ttdoc">State of a vCPU.</div><div class="ttdef"><b>Definition</b> <a href="sys_2vcpu_8h_source.html#l00075">vcpu.h:76</a></div></div>
<div class="ttc" id="astructl4__vm__vmx__vcpu__infos__t_html"><div class="ttname"><a href="structl4__vm__vmx__vcpu__infos__t.html">l4_vm_vmx_vcpu_infos_t</a></div><div class="ttdoc">VMX information members.</div><div class="ttdef"><b>Definition</b> <a href="#l00239">__vm-vmx.h:240</a></div></div>
<div class="ttc" id="astructl4__vm__vmx__vcpu__infos__t_html_a168647389b9b0128f543e182f37ca8a7"><div class="ttname"><a href="structl4__vm__vmx__vcpu__infos__t.html#a168647389b9b0128f543e182f37ca8a7">l4_vm_vmx_vcpu_infos_t::caps</a></div><div class="ttdeci">l4_uint64_t caps[L4_VM_VMX_NUM_CAPS_REGS]</div><div class="ttdoc">Exported VMX capability registers. See L4_vm_vmx_caps_regs.</div><div class="ttdef"><b>Definition</b> <a href="#l00242">__vm-vmx.h:242</a></div></div>
<div class="ttc" id="astructl4__vm__vmx__vcpu__infos__t_html_a265db33e18f6cfa39143da5e4a525ff6"><div class="ttname"><a href="structl4__vm__vmx__vcpu__infos__t.html#a265db33e18f6cfa39143da5e4a525ff6">l4_vm_vmx_vcpu_infos_t::dfl1</a></div><div class="ttdeci">l4_uint32_t dfl1[L4_VM_VMX_NUM_DFL1_REGS]</div><div class="ttdoc">Exported VMX capability registers (default to 1 bits).</div><div class="ttdef"><b>Definition</b> <a href="#l00246">__vm-vmx.h:246</a></div></div>
<div class="ttc" id="astructl4__vm__vmx__vcpu__state__t_html"><div class="ttname"><a href="structl4__vm__vmx__vcpu__state__t.html">l4_vm_vmx_vcpu_state_t</a></div><div class="ttdoc">VMX vCPU state.</div><div class="ttdef"><b>Definition</b> <a href="#l00267">__vm-vmx.h:268</a></div></div>
<div class="ttc" id="astructl4__vm__vmx__vcpu__vmcs__t_html"><div class="ttname"><a href="structl4__vm__vmx__vcpu__vmcs__t.html">l4_vm_vmx_vcpu_vmcs_t</a></div><div class="ttdoc">VMX software VMCS.</div><div class="ttdef"><b>Definition</b> <a href="#l00205">__vm-vmx.h:206</a></div></div>
<div class="ttc" id="astructl4__vmx__offset__table__t_html"><div class="ttname"><a href="structl4__vmx__offset__table__t.html">l4_vmx_offset_table_t</a></div><div class="ttdoc">Software VMCS field offset table.</div><div class="ttdef"><b>Definition</b> <a href="#l00155">__vm-vmx.h:156</a></div></div>
<div class="ttc" id="asys_2vcpu_8h_html"><div class="ttname"><a href="sys_2vcpu_8h.html">vcpu.h</a></div><div class="ttdoc">vCPU API</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__vm-vmx.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,137 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/cxx/alloc.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('alloc_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">alloc.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Alloc list.
<a href="#details">More...</a></p>
<p><a href="alloc_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-nested-classes" class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:L4_3A_3AAlloc_5Flist" id="r_L4_3A_3AAlloc_5Flist"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classL4_1_1Alloc__list.html">L4::Alloc_list</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A simple list-based allocator. <a href="classL4_1_1Alloc__list.html#details">More...</a><br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-namespaces" class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:L4" id="r_L4"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceL4.html">L4</a></td></tr>
<tr class="memdesc:namespaceL4"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> low-level kernel interface. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Alloc list. </p>
<p class="definition">Definition in file <a class="el" href="alloc_8h_source.html">alloc.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>cxx</b></li><li class="navelem"><a href="alloc_8h.html">alloc.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,145 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/cxx/alloc.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('alloc_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">alloc.h</div></div>
</div><!--header-->
<div class="contents">
<a href="alloc_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment">/*</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * (c) 2004-2009 Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * Torsten Frenzel &lt;frenzel@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> *</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> */</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceL4.html">L4</a> {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span></div>
<div class="foldopen" id="foldopen00020" data-start="{" data-end="};">
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="classL4_1_1Alloc__list.html"> 20</a></span> <span class="keyword">class </span>Alloc_list</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> Alloc_list() : _free(0) {}</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> Alloc_list(<span class="keywordtype">void</span> *blk, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> size) : _free(0)</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> { free( blk, size); }</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordtype">void</span> free(<span class="keywordtype">void</span> *blk, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> size);</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordtype">void</span> *alloc(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> size);</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">struct </span>Elem</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> {</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> Elem *next;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> size;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> };</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> Elem *_free;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> };</div>
</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>}</div>
<div class="ttc" id="anamespaceL4_html"><div class="ttname"><a href="namespaceL4.html">L4</a></div><div class="ttdoc">L4 low-level kernel interface.</div><div class="ttdef"><b>Definition</b> <a href="l4sys-l4f-groups_8dox_source.html#l00050">l4sys-l4f-groups.dox:50</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>cxx</b></li><li class="navelem"><a href="alloc_8h.html">alloc.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/__kip-arch.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2____kip-arch_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__kip-arch.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * (c) 2013 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="keyword">struct </span>l4_kip_platform_info_arch</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span>{};</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>__kip-arch.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,188 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/__vcpu-arch.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2____vcpu-arch_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__vcpu-arch.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>AMD64-specific vCPU interface.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="l4_2sys_2types_8h_source.html">l4/sys/types.h</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for __vcpu-arch.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2sys_2____vcpu-arch_8h__incl.svg" width="506" height="344"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="amd64_2l4_2sys_2____vcpu-arch_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-nested-classes" class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:l4_5Fvcpu_5Farch_5Fstate_5Ft" id="r_l4_5Fvcpu_5Farch_5Fstate_5Ft"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structl4__vcpu__arch__state__t.html">l4_vcpu_arch_state_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Architecture-specific vCPU state. <a href="structl4__vcpu__arch__state__t.html#details">More...</a><br /></td></tr>
<tr class="memitem:l4_5Fvcpu_5Fregs_5Ft" id="r_l4_5Fvcpu_5Fregs_5Ft"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structl4__vcpu__regs__t.html">l4_vcpu_regs_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">vCPU registers. <a href="structl4__vcpu__regs__t.html#details">More...</a><br /></td></tr>
<tr class="memitem:l4_5Fvcpu_5Fipc_5Fregs_5Ft" id="r_l4_5Fvcpu_5Fipc_5Fregs_5Ft"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structl4__vcpu__ipc__regs__t.html">l4_vcpu_ipc_regs_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">vCPU message registers. <a href="structl4__vcpu__ipc__regs__t.html#details">More...</a><br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-typedef-members" class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:afa6877676ca7b547f705ef36b0ed22cf" id="r_afa6877676ca7b547f705ef36b0ed22cf"><td class="memItemLeft" align="right" valign="top"><a id="afa6877676ca7b547f705ef36b0ed22cf" name="afa6877676ca7b547f705ef36b0ed22cf"></a>
typedef struct l4_vcpu_arch_state_t&#160;</td><td class="memItemRight" valign="bottom"><b>l4_vcpu_arch_state_t</b></td></tr>
<tr class="memdesc:afa6877676ca7b547f705ef36b0ed22cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Architecture-specific vCPU state. <br /></td></tr>
<tr class="memitem:gab6bd3b349dcc885ad4ebee3379966cc0" id="r_gab6bd3b349dcc885ad4ebee3379966cc0"><td class="memItemLeft" align="right" valign="top">
typedef struct l4_vcpu_regs_t&#160;</td><td class="memItemRight" valign="bottom"><b>l4_vcpu_regs_t</b></td></tr>
<tr class="memdesc:gab6bd3b349dcc885ad4ebee3379966cc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">vCPU registers. <br /></td></tr>
<tr class="memitem:ga8655f00476dd34b9030b89ec01da8fd1" id="r_ga8655f00476dd34b9030b89ec01da8fd1"><td class="memItemLeft" align="right" valign="top">
typedef struct l4_vcpu_ipc_regs_t&#160;</td><td class="memItemRight" valign="bottom"><b>l4_vcpu_ipc_regs_t</b></td></tr>
<tr class="memdesc:ga8655f00476dd34b9030b89ec01da8fd1"><td class="mdescLeft">&#160;</td><td class="mdescRight">vCPU message registers. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-enum-members" class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a09ae6f770aa8cd4491ace5de8ae61d4d" id="r_a09ae6f770aa8cd4491ace5de8ae61d4d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="#a09ae6f770aa8cd4491ace5de8ae61d4da18f169cebe4da9364dc6e58a81184fc2">L4_VCPU_STATE_VERSION</a> = 0x26
, <b>L4_VCPU_STATE_SIZE</b> = 0x200
, <b>L4_VCPU_STATE_EXT_SIZE</b> = L4_PAGESIZE
}</td></tr>
<tr class="memitem:gaa9c9426f606dfa123ace57a1081e4e1b" id="r_gaa9c9426f606dfa123ace57a1081e4e1b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__vcpu__api.html#gaa9c9426f606dfa123ace57a1081e4e1b">L4_vcpu_state_offset</a> { <a class="el" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3">L4_VCPU_OFFSET_EXT_STATE</a> = 0x400
, <a class="el" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5">L4_VCPU_OFFSET_EXT_INFOS</a> = 0x200
}</td></tr>
<tr class="memdesc:gaa9c9426f606dfa123ace57a1081e4e1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Offsets for vCPU state layouts. <a href="group__l4__vcpu__api.html#gaa9c9426f606dfa123ace57a1081e4e1b">More...</a><br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>AMD64-specific vCPU interface. </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2sys_2____vcpu-arch_8h_source.html">__vcpu-arch.h</a>.</p>
</div><a name="doc-enum-members" id="doc-enum-members"></a><h2 id="header-doc-enum-members" class="groupheader">Enumeration Type Documentation</h2>
<a id="a09ae6f770aa8cd4491ace5de8ae61d4d" name="a09ae6f770aa8cd4491ace5de8ae61d4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09ae6f770aa8cd4491ace5de8ae61d4d">&#9670;&#160;</a></span>anonymous enum</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">anonymous enum</td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a09ae6f770aa8cd4491ace5de8ae61d4da18f169cebe4da9364dc6e58a81184fc2" name="a09ae6f770aa8cd4491ace5de8ae61d4da18f169cebe4da9364dc6e58a81184fc2"></a>L4_VCPU_STATE_VERSION&#160;</td><td class="fielddoc"><p>Architecture-specific version ID. </p>
<p>This ID must match the version field in the <a class="el" href="structl4__vcpu__state__t.html" title="State of a vCPU.">l4_vcpu_state_t</a> structure after enabling vCPU mode or extended vCPU mode for a thread. </p>
</td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="amd64_2l4_2sys_2____vcpu-arch_8h_source.html#l00016">16</a> of file <a class="el" href="amd64_2l4_2sys_2____vcpu-arch_8h_source.html">__vcpu-arch.h</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2____vcpu-arch_8h.html">__vcpu-arch.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,11 @@
var amd64_2l4_2sys_2____vcpu_arch_8h =
[
[ "l4_vcpu_arch_state_t", "structl4__vcpu__arch__state__t.html", null ],
[ "l4_vcpu_arch_state_t", "amd64_2l4_2sys_2____vcpu-arch_8h.html#afa6877676ca7b547f705ef36b0ed22cf", null ],
[ "l4_vcpu_ipc_regs_t", "group__l4__vcpu__api.html#ga8655f00476dd34b9030b89ec01da8fd1", null ],
[ "l4_vcpu_regs_t", "group__l4__vcpu__api.html#gab6bd3b349dcc885ad4ebee3379966cc0", null ],
[ "L4_vcpu_state_offset", "group__l4__vcpu__api.html#gaa9c9426f606dfa123ace57a1081e4e1b", [
[ "L4_VCPU_OFFSET_EXT_STATE", "group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3", null ],
[ "L4_VCPU_OFFSET_EXT_INFOS", "group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5", null ]
] ]
];

View File

@@ -0,0 +1,22 @@
<map id="amd64/l4/sys/__vcpu&#45;arch.h" name="amd64/l4/sys/__vcpu&#45;arch.h">
<area shape="rect" id="Node000001" title="AMD64&#45;specific vCPU interface." alt="" coords="169,5,328,45"/>
<area shape="rect" id="Node000002" href="$l4_2sys_2types_8h.html" title="Common L4 ABI Data Types." alt="" coords="193,93,305,119"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="251,46,251,79,246,79,246,46"/>
<area shape="rect" id="Node000003" href="$l4_2sys_2l4int_8h.html" title="Fixed sized integer types, generic version." alt="" coords="41,240,147,265"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="193,116,87,135,41,150,24,159,13,168,9,177,8,185,17,202,35,218,57,231,54,236,32,222,13,205,3,186,4,175,9,165,21,154,39,145,86,130,192,111"/>
<area shape="rect" id="Node000004" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="261,240,393,265"/>
<area shape="poly" id="edge3_Node000002_Node000004" title=" " alt="" coords="305,110,414,129,463,145,481,154,493,165,501,179,501,193,494,204,482,214,448,230,407,241,406,236,446,225,479,210,490,201,496,191,496,181,489,168,478,159,461,150,413,135,304,116"/>
<area shape="rect" id="Node000006" href="$l4_2sys_2consts_8h.html" title="Common constants." alt="" coords="189,167,308,192"/>
<area shape="poly" id="edge5_Node000002_Node000006" title=" " alt="" coords="251,119,251,153,246,153,246,119"/>
<area shape="rect" id="Node000007" href="$____l4__fpage_8h_source.html" title=" " alt="" coords="333,167,479,192"/>
<area shape="poly" id="edge8_Node000002_Node000007" title=" " alt="" coords="275,116,369,159,367,163,273,121"/>
<area shape="rect" id="Node000008" href="$____timeout_8h_source.html" title=" " alt="" coords="23,167,165,192"/>
<area shape="poly" id="edge10_Node000002_Node000008" title=" " alt="" coords="225,121,133,163,131,158,223,116"/>
<area shape="rect" id="Node000005" title=" " alt="" coords="266,313,389,339"/>
<area shape="poly" id="edge4_Node000004_Node000005" title=" " alt="" coords="330,266,330,300,325,300,325,266"/>
<area shape="poly" id="edge7_Node000006_Node000003" title=" " alt="" coords="225,194,133,237,131,232,223,190"/>
<area shape="poly" id="edge6_Node000006_Node000004" title=" " alt="" coords="263,190,306,229,303,233,259,194"/>
<area shape="poly" id="edge9_Node000007_Node000004" title=" " alt="" coords="395,194,352,233,348,229,392,190"/>
<area shape="poly" id="edge11_Node000008_Node000003" title=" " alt="" coords="97,192,97,226,91,226,91,192"/>
<area shape="poly" id="edge12_Node000008_Node000004" title=" " alt="" coords="132,189,277,233,276,239,131,195"/>
</map>

View File

@@ -0,0 +1 @@
60c36d015054ee6f6a2edf2e37d7c1e5

View File

@@ -0,0 +1,193 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: amd64/l4/sys/__vcpu&#45;arch.h Pages: 1 -->
<svg width="379pt" height="258pt"
viewBox="0.00 0.00 378.51 258.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 254)">
<title>amd64/l4/sys/__vcpu&#45;arch.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="AMD64&#45;specific vCPU interface.">
<polygon fill="#999999" stroke="#666666" points="241.96,-250 122.96,-250 122.96,-220 241.96,-220 241.96,-250"/>
<text text-anchor="start" x="130.96" y="-238" font-family="Helvetica,sans-Serif" font-size="10.00">amd64/l4/sys/__vcpu</text>
<text text-anchor="middle" x="182.46" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">&#45;arch.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="l4_2sys_2types_8h.html" target="_top" xlink:title="Common L4 ABI Data Types.">
<polygon fill="white" stroke="#666666" points="224.46,-184 140.46,-184 140.46,-165 224.46,-165 224.46,-184"/>
<text text-anchor="middle" x="182.46" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/types.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M182.46,-219.84C182.46,-212.21 182.46,-202.7 182.46,-194.45"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="185.96,-194.27 182.46,-184.27 178.96,-194.27 185.96,-194.27"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="l4_2sys_2l4int_8h.html" target="_top" xlink:title="Fixed sized integer types, generic version.">
<polygon fill="white" stroke="#666666" points="105.96,-74 26.96,-74 26.96,-55 105.96,-55 105.96,-74"/>
<text text-anchor="middle" x="66.46" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/l4int.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M140.08,-168.87C92.87,-162.74 20.98,-150.15 4.46,-129 -10.12,-110.32 15.2,-91.16 37.74,-78.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="39.51,-81.87 46.78,-74.17 36.29,-75.65 39.51,-81.87"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="compiler_8h.html" target="_top" xlink:title="L4 compiler related defines.">
<polygon fill="white" stroke="#666666" points="290.96,-74 191.96,-74 191.96,-55 290.96,-55 290.96,-74"/>
<text text-anchor="middle" x="241.46" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/compiler.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M224.5,-169.17C272.73,-163.24 347.39,-150.75 364.46,-129 386.3,-101.17 342.36,-84.35 301.06,-75.08"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="301.73,-71.64 291.22,-73 300.27,-78.49 301.73,-71.64"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="l4_2sys_2consts_8h.html" target="_top" xlink:title="Common constants.">
<polygon fill="white" stroke="#666666" points="226.96,-129 137.96,-129 137.96,-110 226.96,-110 226.96,-129"/>
<text text-anchor="middle" x="182.46" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/consts.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M182.46,-164.75C182.46,-157.8 182.46,-147.85 182.46,-139.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="185.96,-139.09 182.46,-129.09 178.96,-139.09 185.96,-139.09"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="____l4__fpage_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="355.46,-129 245.46,-129 245.46,-110 355.46,-110 355.46,-129"/>
<text text-anchor="middle" x="300.46" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__l4_fpage.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge8_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge8_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M201.42,-164.98C220.49,-156.42 250.12,-143.11 272.01,-133.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="273.47,-136.46 281.16,-129.17 270.6,-130.07 273.47,-136.46"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="____timeout_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="119.46,-129 13.46,-129 13.46,-110 119.46,-110 119.46,-129"/>
<text text-anchor="middle" x="66.46" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__timeout.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge10_Node000002_Node000008" class="edge">
<title>Node2&#45;&gt;Node8</title>
<g id="a_edge10_Node000002_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M163.82,-164.98C145.16,-156.46 116.21,-143.23 94.72,-133.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="95.99,-130.14 85.44,-129.17 93.08,-136.51 95.99,-130.14"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="287.46,-19 195.46,-19 195.46,0 287.46,0 287.46,-19"/>
<text text-anchor="middle" x="241.46" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/linkage.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node5 -->
<g id="edge4_Node000004_Node000005" class="edge">
<title>Node4&#45;&gt;Node5</title>
<g id="a_edge4_Node000004_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M241.46,-54.75C241.46,-47.8 241.46,-37.85 241.46,-29.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="244.96,-29.09 241.46,-19.09 237.96,-29.09 244.96,-29.09"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node3 -->
<g id="edge7_Node000006_Node000003" class="edge">
<title>Node6&#45;&gt;Node3</title>
<g id="a_edge7_Node000006_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M163.82,-109.98C145.16,-101.46 116.21,-88.23 94.72,-78.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="95.99,-75.14 85.44,-74.17 93.08,-81.51 95.99,-75.14"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge6_Node000006_Node000004" class="edge">
<title>Node6&#45;&gt;Node4</title>
<g id="a_edge6_Node000006_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M191.94,-109.98C200.66,-102.15 213.8,-90.34 224.36,-80.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="226.71,-83.46 231.81,-74.17 222.03,-78.25 226.71,-83.46"/>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node4 -->
<g id="edge9_Node000007_Node000004" class="edge">
<title>Node7&#45;&gt;Node4</title>
<g id="a_edge9_Node000007_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M290.98,-109.98C282.26,-102.15 269.12,-90.34 258.56,-80.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="260.89,-78.25 251.11,-74.17 256.21,-83.46 260.89,-78.25"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node3 -->
<g id="edge11_Node000008_Node000003" class="edge">
<title>Node8&#45;&gt;Node3</title>
<g id="a_edge11_Node000008_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M66.46,-109.75C66.46,-102.8 66.46,-92.85 66.46,-84.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="69.96,-84.09 66.46,-74.09 62.96,-84.09 69.96,-84.09"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node4 -->
<g id="edge12_Node000008_Node000004" class="edge">
<title>Node8&#45;&gt;Node4</title>
<g id="a_edge12_Node000008_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M94.58,-109.98C124.08,-101.05 170.65,-86.94 203.43,-77.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="204.57,-80.33 213.12,-74.08 202.54,-73.63 204.57,-80.33"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

@@ -0,0 +1,225 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/__vcpu-arch.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2____vcpu-arch_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">__vcpu-arch.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2sys_2____vcpu-arch_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * (c) 2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2types_8h.html">l4/sys/types.h</a>&gt;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="keyword">enum</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>{</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2____vcpu-arch_8h.html#a09ae6f770aa8cd4491ace5de8ae61d4da18f169cebe4da9364dc6e58a81184fc2"> 24</a></span> <a class="code hl_enumvalue" href="arm_2l4_2sys_2____vcpu-arch_8h.html#ad72200852a688d155707277af7989c5aa18f169cebe4da9364dc6e58a81184fc2">L4_VCPU_STATE_VERSION</a> = 0x26,</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> L4_VCPU_STATE_SIZE = 0x200,</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> L4_VCPU_STATE_EXT_SIZE = <a class="code hl_define" href="group__l4__memory__api.html#gabecf862d8b8f39ad28af45d7fc949dd5">L4_PAGESIZE</a>,</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>};</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span></div>
<div class="foldopen" id="foldopen00034" data-start="{" data-end="};">
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="group__l4__vcpu__api.html#gaa9c9426f606dfa123ace57a1081e4e1b"> 34</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__vcpu__api.html#gaa9c9426f606dfa123ace57a1081e4e1b">L4_vcpu_state_offset</a></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span>{</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"><a class="line" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3"> 36</a></span> <a class="code hl_enumvalue" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3">L4_VCPU_OFFSET_EXT_STATE</a> = 0x400, </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"><a class="line" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5"> 37</a></span> <a class="code hl_enumvalue" href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5">L4_VCPU_OFFSET_EXT_INFOS</a> = 0x200, </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>};</div>
</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vcpu__arch__state__t.html">l4_vcpu_arch_state_t</a></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span>{</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> host_fs_base;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> host_gs_base;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> host_ds, host_es, host_fs, host_gs;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <span class="keyword">const</span> user_ds32;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <span class="keyword">const</span> user_cs64;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> <span class="keyword">const</span> user_cs32;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2____vcpu-arch_8h.html#afa6877676ca7b547f705ef36b0ed22cf"> 52</a></span>} <a class="code hl_struct" href="structl4__vcpu__arch__state__t.html">l4_vcpu_arch_state_t</a>;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vcpu__regs__t.html">l4_vcpu_regs_t</a></div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span>{</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a73a4389c27703230f0f122be72e4d153"> 61</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a73a4389c27703230f0f122be72e4d153">r15</a>; </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a06a1f96b7dd959b63da2fe05c5f35e68"> 62</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a06a1f96b7dd959b63da2fe05c5f35e68">r14</a>; </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a4fcc07f3cce3d4391373d81d92c217c9"> 63</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a4fcc07f3cce3d4391373d81d92c217c9">r13</a>; </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a656a610f25cf26ed02ba69a2fd3ce848"> 64</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a656a610f25cf26ed02ba69a2fd3ce848">r12</a>; </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a4b09184de6c95454e228ef86a2db2ab8"> 65</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a4b09184de6c95454e228ef86a2db2ab8">r11</a>; </div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a92f4abaa382950ea212b569d61cc76e0"> 66</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a92f4abaa382950ea212b569d61cc76e0">r10</a>; </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a3e11b0e103b12c43f0d63cbb2e62b669"> 67</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a3e11b0e103b12c43f0d63cbb2e62b669">r9</a>; </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a9c58aa2dab500781a16675de53d89339"> 68</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a9c58aa2dab500781a16675de53d89339">r8</a>; </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a64d2d6442a3ba78f42df2f2862420821"> 70</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a64d2d6442a3ba78f42df2f2862420821">di</a>; </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#ad40fc50396e2788b007b3a85cbeaea80"> 71</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#ad40fc50396e2788b007b3a85cbeaea80">si</a>; </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a4fe5cfd1c0f65372ca52287e625f0653"> 72</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a4fe5cfd1c0f65372ca52287e625f0653">bp</a>; </div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a3f6687e67ef2d8eca6a9236a4c6dbcae">pfa</a>; </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a99391c7f92f1a71e0c17a09517c7c3d7"> 74</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a99391c7f92f1a71e0c17a09517c7c3d7">bx</a>; </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#aff89ffe0278c4294e251fb462b5a1da4"> 75</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#aff89ffe0278c4294e251fb462b5a1da4">dx</a>; </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a67b367032b745f2213c60c2f1244f2e9"> 76</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a67b367032b745f2213c60c2f1244f2e9">cx</a>; </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#aba5f038ee2752020250b2907f10f1f56"> 77</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#aba5f038ee2752020250b2907f10f1f56">ax</a>; </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#aa366588ec6a68ddaa5d87d87095bf44e"> 79</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#aa366588ec6a68ddaa5d87d87095bf44e">trapno</a>; </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a1a7a4e5198caf269f1afdcdfbf6475d4">err</a>; </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#afa0ae8c3fa639fae83bfeaa3dfd19e6c">ip</a>; </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a9ab4f8dc60e57e43c233659a4c96d62b"> 83</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a9ab4f8dc60e57e43c233659a4c96d62b">cs</a>; </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#ac9eb8d042f40cf3fd790f03b6c072037">flags</a>; </div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a006a9a913bbf2ca0e775897a5d494034">sp</a>; </div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="structl4__vcpu__regs__t.html#a2f460bd254d78c51e36044f8bdefc2e7"> 86</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__vcpu__regs__t.html#a2f460bd254d78c51e36044f8bdefc2e7">ss</a>;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> fs_base;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> gs_base;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> ds, es, fs, gs;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="group__l4__vcpu__api.html#gab6bd3b349dcc885ad4ebee3379966cc0"> 91</a></span>} <a class="code hl_struct" href="structl4__vcpu__regs__t.html">l4_vcpu_regs_t</a>;</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__vcpu__ipc__regs__t.html">l4_vcpu_ipc_regs_t</a></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span>{</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> _res[1];</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> label;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> _res2[5];</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <a class="code hl_typedef" href="group__l4__msgtag__api.html#gad2c28384485a82490cab17ac929f05e9">l4_msgtag_t</a> tag;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"><a class="line" href="group__l4__vcpu__api.html#ga8655f00476dd34b9030b89ec01da8fd1"> 103</a></span>} <a class="code hl_struct" href="structl4__vcpu__ipc__regs__t.html">l4_vcpu_ipc_regs_t</a>;</div>
<div class="ttc" id="aarm_2l4_2sys_2____vcpu-arch_8h_html_ad72200852a688d155707277af7989c5aa18f169cebe4da9364dc6e58a81184fc2"><div class="ttname"><a href="arm_2l4_2sys_2____vcpu-arch_8h.html#ad72200852a688d155707277af7989c5aa18f169cebe4da9364dc6e58a81184fc2">L4_VCPU_STATE_VERSION</a></div><div class="ttdeci">@ L4_VCPU_STATE_VERSION</div><div class="ttdoc">Architecture-specific version ID.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00025">__vcpu-arch.h:25</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="agroup__l4__memory__api_html_gabecf862d8b8f39ad28af45d7fc949dd5"><div class="ttname"><a href="group__l4__memory__api.html#gabecf862d8b8f39ad28af45d7fc949dd5">L4_PAGESIZE</a></div><div class="ttdeci">#define L4_PAGESIZE</div><div class="ttdoc">Minimal page size (in bytes).</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2consts_8h_source.html#l00391">consts.h:391</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_gad2c28384485a82490cab17ac929f05e9"><div class="ttname"><a href="group__l4__msgtag__api.html#gad2c28384485a82490cab17ac929f05e9">l4_msgtag_t</a></div><div class="ttdeci">struct l4_msgtag_t l4_msgtag_t</div><div class="ttdoc">Message tag data structure.</div></div>
<div class="ttc" id="agroup__l4__vcpu__api_html_gaa9c9426f606dfa123ace57a1081e4e1b"><div class="ttname"><a href="group__l4__vcpu__api.html#gaa9c9426f606dfa123ace57a1081e4e1b">L4_vcpu_state_offset</a></div><div class="ttdeci">L4_vcpu_state_offset</div><div class="ttdoc">Offsets for vCPU state layouts.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00035">__vcpu-arch.h:36</a></div></div>
<div class="ttc" id="agroup__l4__vcpu__api_html_ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5"><div class="ttname"><a href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba51d123b064652c03ed78714ec92615e5">L4_VCPU_OFFSET_EXT_INFOS</a></div><div class="ttdeci">@ L4_VCPU_OFFSET_EXT_INFOS</div><div class="ttdoc">Offset where extended infos begin.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00038">__vcpu-arch.h:38</a></div></div>
<div class="ttc" id="agroup__l4__vcpu__api_html_ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3"><div class="ttname"><a href="group__l4__vcpu__api.html#ggaa9c9426f606dfa123ace57a1081e4e1ba970100e3dd8000f263688f50d6fcbda3">L4_VCPU_OFFSET_EXT_STATE</a></div><div class="ttdeci">@ L4_VCPU_OFFSET_EXT_STATE</div><div class="ttdoc">Offset where extended state begins.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00037">__vcpu-arch.h:37</a></div></div>
<div class="ttc" id="al4_2sys_2types_8h_html"><div class="ttname"><a href="l4_2sys_2types_8h.html">types.h</a></div><div class="ttdoc">Common L4 ABI Data Types.</div></div>
<div class="ttc" id="astructl4__vcpu__arch__state__t_html"><div class="ttname"><a href="structl4__vcpu__arch__state__t.html">l4_vcpu_arch_state_t</a></div><div class="ttdoc">Architecture-specific vCPU state.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00074">__vcpu-arch.h:75</a></div></div>
<div class="ttc" id="astructl4__vcpu__ipc__regs__t_html"><div class="ttname"><a href="structl4__vcpu__ipc__regs__t.html">l4_vcpu_ipc_regs_t</a></div><div class="ttdoc">vCPU message registers.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00083">__vcpu-arch.h:84</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html"><div class="ttname"><a href="structl4__vcpu__regs__t.html">l4_vcpu_regs_t</a></div><div class="ttdoc">vCPU registers.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00055">__vcpu-arch.h:56</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a006a9a913bbf2ca0e775897a5d494034"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a006a9a913bbf2ca0e775897a5d494034">l4_vcpu_regs_t::sp</a></div><div class="ttdeci">l4_umword_t sp</div><div class="ttdoc">stack pointer</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00062">__vcpu-arch.h:62</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a06a1f96b7dd959b63da2fe05c5f35e68"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a06a1f96b7dd959b63da2fe05c5f35e68">l4_vcpu_regs_t::r14</a></div><div class="ttdeci">l4_umword_t r14</div><div class="ttdoc">r14 register</div><div class="ttdef"><b>Definition</b> <a href="#l00062">__vcpu-arch.h:62</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a1a7a4e5198caf269f1afdcdfbf6475d4"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a1a7a4e5198caf269f1afdcdfbf6475d4">l4_vcpu_regs_t::err</a></div><div class="ttdeci">l4_umword_t err</div><div class="ttdoc">error code</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00058">__vcpu-arch.h:58</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a2f460bd254d78c51e36044f8bdefc2e7"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a2f460bd254d78c51e36044f8bdefc2e7">l4_vcpu_regs_t::ss</a></div><div class="ttdeci">l4_umword_t ss</div><div class="ttdoc">ss register</div><div class="ttdef"><b>Definition</b> <a href="#l00086">__vcpu-arch.h:86</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a3e11b0e103b12c43f0d63cbb2e62b669"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a3e11b0e103b12c43f0d63cbb2e62b669">l4_vcpu_regs_t::r9</a></div><div class="ttdeci">l4_umword_t r9</div><div class="ttdoc">r9 register</div><div class="ttdef"><b>Definition</b> <a href="#l00067">__vcpu-arch.h:67</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a3f6687e67ef2d8eca6a9236a4c6dbcae"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a3f6687e67ef2d8eca6a9236a4c6dbcae">l4_vcpu_regs_t::pfa</a></div><div class="ttdeci">l4_umword_t pfa</div><div class="ttdoc">page fault address</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00057">__vcpu-arch.h:57</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a4b09184de6c95454e228ef86a2db2ab8"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a4b09184de6c95454e228ef86a2db2ab8">l4_vcpu_regs_t::r11</a></div><div class="ttdeci">l4_umword_t r11</div><div class="ttdoc">r11 register</div><div class="ttdef"><b>Definition</b> <a href="#l00065">__vcpu-arch.h:65</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a4fcc07f3cce3d4391373d81d92c217c9"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a4fcc07f3cce3d4391373d81d92c217c9">l4_vcpu_regs_t::r13</a></div><div class="ttdeci">l4_umword_t r13</div><div class="ttdoc">r13 register</div><div class="ttdef"><b>Definition</b> <a href="#l00063">__vcpu-arch.h:63</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a4fe5cfd1c0f65372ca52287e625f0653"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a4fe5cfd1c0f65372ca52287e625f0653">l4_vcpu_regs_t::bp</a></div><div class="ttdeci">l4_umword_t bp</div><div class="ttdoc">rbp register</div><div class="ttdef"><b>Definition</b> <a href="#l00072">__vcpu-arch.h:72</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a64d2d6442a3ba78f42df2f2862420821"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a64d2d6442a3ba78f42df2f2862420821">l4_vcpu_regs_t::di</a></div><div class="ttdeci">l4_umword_t di</div><div class="ttdoc">rdi register</div><div class="ttdef"><b>Definition</b> <a href="#l00070">__vcpu-arch.h:70</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a656a610f25cf26ed02ba69a2fd3ce848"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a656a610f25cf26ed02ba69a2fd3ce848">l4_vcpu_regs_t::r12</a></div><div class="ttdeci">l4_umword_t r12</div><div class="ttdoc">r12 register</div><div class="ttdef"><b>Definition</b> <a href="#l00064">__vcpu-arch.h:64</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a67b367032b745f2213c60c2f1244f2e9"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a67b367032b745f2213c60c2f1244f2e9">l4_vcpu_regs_t::cx</a></div><div class="ttdeci">l4_umword_t cx</div><div class="ttdoc">rcx register</div><div class="ttdef"><b>Definition</b> <a href="#l00076">__vcpu-arch.h:76</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a73a4389c27703230f0f122be72e4d153"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a73a4389c27703230f0f122be72e4d153">l4_vcpu_regs_t::r15</a></div><div class="ttdeci">l4_umword_t r15</div><div class="ttdoc">r15 register</div><div class="ttdef"><b>Definition</b> <a href="#l00061">__vcpu-arch.h:61</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a92f4abaa382950ea212b569d61cc76e0"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a92f4abaa382950ea212b569d61cc76e0">l4_vcpu_regs_t::r10</a></div><div class="ttdeci">l4_umword_t r10</div><div class="ttdoc">r10 register</div><div class="ttdef"><b>Definition</b> <a href="#l00066">__vcpu-arch.h:66</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a99391c7f92f1a71e0c17a09517c7c3d7"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a99391c7f92f1a71e0c17a09517c7c3d7">l4_vcpu_regs_t::bx</a></div><div class="ttdeci">l4_umword_t bx</div><div class="ttdoc">rbx register</div><div class="ttdef"><b>Definition</b> <a href="#l00074">__vcpu-arch.h:74</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a9ab4f8dc60e57e43c233659a4c96d62b"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a9ab4f8dc60e57e43c233659a4c96d62b">l4_vcpu_regs_t::cs</a></div><div class="ttdeci">l4_umword_t cs</div><div class="ttdoc">dummy</div><div class="ttdef"><b>Definition</b> <a href="#l00083">__vcpu-arch.h:83</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_a9c58aa2dab500781a16675de53d89339"><div class="ttname"><a href="structl4__vcpu__regs__t.html#a9c58aa2dab500781a16675de53d89339">l4_vcpu_regs_t::r8</a></div><div class="ttdeci">l4_umword_t r8</div><div class="ttdoc">r8 register</div><div class="ttdef"><b>Definition</b> <a href="#l00068">__vcpu-arch.h:68</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_aa366588ec6a68ddaa5d87d87095bf44e"><div class="ttname"><a href="structl4__vcpu__regs__t.html#aa366588ec6a68ddaa5d87d87095bf44e">l4_vcpu_regs_t::trapno</a></div><div class="ttdeci">l4_umword_t trapno</div><div class="ttdoc">trap number</div><div class="ttdef"><b>Definition</b> <a href="#l00079">__vcpu-arch.h:79</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_aba5f038ee2752020250b2907f10f1f56"><div class="ttname"><a href="structl4__vcpu__regs__t.html#aba5f038ee2752020250b2907f10f1f56">l4_vcpu_regs_t::ax</a></div><div class="ttdeci">l4_umword_t ax</div><div class="ttdoc">rax register</div><div class="ttdef"><b>Definition</b> <a href="#l00077">__vcpu-arch.h:77</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_ac9eb8d042f40cf3fd790f03b6c072037"><div class="ttname"><a href="structl4__vcpu__regs__t.html#ac9eb8d042f40cf3fd790f03b6c072037">l4_vcpu_regs_t::flags</a></div><div class="ttdeci">l4_umword_t flags</div><div class="ttdoc">eflags</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00066">__vcpu-arch.h:66</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_ad40fc50396e2788b007b3a85cbeaea80"><div class="ttname"><a href="structl4__vcpu__regs__t.html#ad40fc50396e2788b007b3a85cbeaea80">l4_vcpu_regs_t::si</a></div><div class="ttdeci">l4_umword_t si</div><div class="ttdoc">rsi register</div><div class="ttdef"><b>Definition</b> <a href="#l00071">__vcpu-arch.h:71</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_afa0ae8c3fa639fae83bfeaa3dfd19e6c"><div class="ttname"><a href="structl4__vcpu__regs__t.html#afa0ae8c3fa639fae83bfeaa3dfd19e6c">l4_vcpu_regs_t::ip</a></div><div class="ttdeci">l4_umword_t ip</div><div class="ttdoc">instruction pointer</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2____vcpu-arch_8h_source.html#l00065">__vcpu-arch.h:65</a></div></div>
<div class="ttc" id="astructl4__vcpu__regs__t_html_aff89ffe0278c4294e251fb462b5a1da4"><div class="ttname"><a href="structl4__vcpu__regs__t.html#aff89ffe0278c4294e251fb462b5a1da4">l4_vcpu_regs_t::dx</a></div><div class="ttdeci">l4_umword_t dx</div><div class="ttdoc">rdx register</div><div class="ttdef"><b>Definition</b> <a href="#l00075">__vcpu-arch.h:75</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2____vcpu-arch_8h.html">__vcpu-arch.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,143 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/cache.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2cache_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">cache.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Cache functions.
<a href="#details">More...</a></p>
<p><a href="amd64_2l4_2sys_2cache_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gae5aedc9d4cc667bd0c199bc0d5c4580a" id="r_gae5aedc9d4cc667bd0c199bc0d5c4580a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__cache__api.html#gae5aedc9d4cc667bd0c199bc0d5c4580a">l4_cache_clean_data</a> (unsigned long start, unsigned long end) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gae5aedc9d4cc667bd0c199bc0d5c4580a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache clean a range in D-cache; writes back to PoC. <br /></td></tr>
<tr class="memitem:gab516ac01f6335e6e21e4e804974e0891" id="r_gab516ac01f6335e6e21e4e804974e0891"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__cache__api.html#gab516ac01f6335e6e21e4e804974e0891">l4_cache_flush_data</a> (unsigned long start, unsigned long end) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gab516ac01f6335e6e21e4e804974e0891"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache flush a range; writes back to PoC. <br /></td></tr>
<tr class="memitem:gaf9f4aebefdf0c6db4a4b42a5470f19be" id="r_gaf9f4aebefdf0c6db4a4b42a5470f19be"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__cache__api.html#gaf9f4aebefdf0c6db4a4b42a5470f19be">l4_cache_inv_data</a> (unsigned long start, unsigned long end) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gaf9f4aebefdf0c6db4a4b42a5470f19be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache invalidate a range; might write back to PoC. <br /></td></tr>
<tr class="memitem:gac8838da96084e6be24c5dd5566bb970e" id="r_gac8838da96084e6be24c5dd5566bb970e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__cache__api.html#gac8838da96084e6be24c5dd5566bb970e">l4_cache_coherent</a> (unsigned long start, unsigned long end) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gac8838da96084e6be24c5dd5566bb970e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make memory coherent between I-cache and D-cache; writes back to PoU. <br /></td></tr>
<tr class="memitem:ga1889aec508935bdb4896ef81abeac9eb" id="r_ga1889aec508935bdb4896ef81abeac9eb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__cache__api.html#ga1889aec508935bdb4896ef81abeac9eb">l4_cache_dma_coherent</a> (unsigned long start, unsigned long end) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga1889aec508935bdb4896ef81abeac9eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make memory coherent for use with external memory; writes back to PoC. <br /></td></tr>
<tr class="memitem:ga23b6517d08db422ad9f5dba795f30039" id="r_ga23b6517d08db422ad9f5dba795f30039"><td class="memItemLeft" align="right" valign="top">
int&#160;</td><td class="memItemRight" valign="bottom"><b>l4_cache_dma_coherent_full</b> (void) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga23b6517d08db422ad9f5dba795f30039"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make memory coherent for use with external memory; writes back to PoC. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Cache functions. </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2sys_2cache_8h_source.html">cache.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2cache_8h.html">cache.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,9 @@
var amd64_2l4_2sys_2cache_8h =
[
[ "l4_cache_clean_data", "group__l4__cache__api.html#gae5aedc9d4cc667bd0c199bc0d5c4580a", null ],
[ "l4_cache_coherent", "group__l4__cache__api.html#gac8838da96084e6be24c5dd5566bb970e", null ],
[ "l4_cache_dma_coherent", "group__l4__cache__api.html#ga1889aec508935bdb4896ef81abeac9eb", null ],
[ "l4_cache_dma_coherent_full", "group__l4__cache__api.html#ga23b6517d08db422ad9f5dba795f30039", null ],
[ "l4_cache_flush_data", "group__l4__cache__api.html#gab516ac01f6335e6e21e4e804974e0891", null ],
[ "l4_cache_inv_data", "group__l4__cache__api.html#gaf9f4aebefdf0c6db4a4b42a5470f19be", null ]
];

View File

@@ -0,0 +1,189 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/cache.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2cache_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">cache.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2sys_2cache_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment">/*</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> *</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#ifndef __L4SYS__INCLUDE__ARCH_AMD64__CACHE_H__</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#define __L4SYS__INCLUDE__ARCH_AMD64__CACHE_H__</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include_next &lt;l4/sys/cache.h&gt;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00017" data-start="{" data-end="}">
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"><a class="line" href="group__l4__cache__api.html#gae5aedc9d4cc667bd0c199bc0d5c4580a"> 17</a></span><a class="code hl_function" href="group__l4__cache__api.html#gae5aedc9d4cc667bd0c199bc0d5c4580a">l4_cache_clean_data</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> start,</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> end) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>{</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> (void)start; (void)end;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>}</div>
</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00025" data-start="{" data-end="}">
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="group__l4__cache__api.html#gab516ac01f6335e6e21e4e804974e0891"> 25</a></span><a class="code hl_function" href="group__l4__cache__api.html#gab516ac01f6335e6e21e4e804974e0891">l4_cache_flush_data</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> start,</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> end) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>{</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> (void)start; (void)end;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span>}</div>
</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00033" data-start="{" data-end="}">
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="group__l4__cache__api.html#gaf9f4aebefdf0c6db4a4b42a5470f19be"> 33</a></span><a class="code hl_function" href="group__l4__cache__api.html#gaf9f4aebefdf0c6db4a4b42a5470f19be">l4_cache_inv_data</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> start,</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> end) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span>{</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> (void)start; (void)end;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>}</div>
</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00041" data-start="{" data-end="}">
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="group__l4__cache__api.html#gac8838da96084e6be24c5dd5566bb970e"> 41</a></span><a class="code hl_function" href="group__l4__cache__api.html#gac8838da96084e6be24c5dd5566bb970e">l4_cache_coherent</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> start,</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> end) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span>{</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> (void)start; (void)end;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span>}</div>
</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00049" data-start="{" data-end="}">
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="group__l4__cache__api.html#ga1889aec508935bdb4896ef81abeac9eb"> 49</a></span><a class="code hl_function" href="group__l4__cache__api.html#ga1889aec508935bdb4896ef81abeac9eb">l4_cache_dma_coherent</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> start,</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> end) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span>{</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> (void)start; (void)end;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span>}</div>
</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="foldopen" id="foldopen00057" data-start="{" data-end="}">
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="group__l4__cache__api.html#ga23b6517d08db422ad9f5dba795f30039"> 57</a></span><a class="code hl_function" href="group__l4__cache__api.html#ga23b6517d08db422ad9f5dba795f30039">l4_cache_dma_coherent_full</a>(<span class="keywordtype">void</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>{</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span>}</div>
</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="preprocessor">#endif </span><span class="comment">/* ! __L4SYS__INCLUDE__ARCH_AMD64__CACHE_H__ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="agroup__l4__cache__api_html_ga1889aec508935bdb4896ef81abeac9eb"><div class="ttname"><a href="group__l4__cache__api.html#ga1889aec508935bdb4896ef81abeac9eb">l4_cache_dma_coherent</a></div><div class="ttdeci">int l4_cache_dma_coherent(unsigned long start, unsigned long end) L4_NOTHROW</div><div class="ttdoc">Make memory coherent for use with external memory; writes back to PoC.</div><div class="ttdef"><b>Definition</b> <a href="#l00049">cache.h:49</a></div></div>
<div class="ttc" id="agroup__l4__cache__api_html_ga23b6517d08db422ad9f5dba795f30039"><div class="ttname"><a href="group__l4__cache__api.html#ga23b6517d08db422ad9f5dba795f30039">l4_cache_dma_coherent_full</a></div><div class="ttdeci">int l4_cache_dma_coherent_full(void) L4_NOTHROW</div><div class="ttdoc">Make memory coherent for use with external memory; writes back to PoC.</div><div class="ttdef"><b>Definition</b> <a href="#l00057">cache.h:57</a></div></div>
<div class="ttc" id="agroup__l4__cache__api_html_gab516ac01f6335e6e21e4e804974e0891"><div class="ttname"><a href="group__l4__cache__api.html#gab516ac01f6335e6e21e4e804974e0891">l4_cache_flush_data</a></div><div class="ttdeci">int l4_cache_flush_data(unsigned long start, unsigned long end) L4_NOTHROW</div><div class="ttdoc">Cache flush a range; writes back to PoC.</div><div class="ttdef"><b>Definition</b> <a href="#l00025">cache.h:25</a></div></div>
<div class="ttc" id="agroup__l4__cache__api_html_gac8838da96084e6be24c5dd5566bb970e"><div class="ttname"><a href="group__l4__cache__api.html#gac8838da96084e6be24c5dd5566bb970e">l4_cache_coherent</a></div><div class="ttdeci">int l4_cache_coherent(unsigned long start, unsigned long end) L4_NOTHROW</div><div class="ttdoc">Make memory coherent between I-cache and D-cache; writes back to PoU.</div><div class="ttdef"><b>Definition</b> <a href="#l00041">cache.h:41</a></div></div>
<div class="ttc" id="agroup__l4__cache__api_html_gae5aedc9d4cc667bd0c199bc0d5c4580a"><div class="ttname"><a href="group__l4__cache__api.html#gae5aedc9d4cc667bd0c199bc0d5c4580a">l4_cache_clean_data</a></div><div class="ttdeci">int l4_cache_clean_data(unsigned long start, unsigned long end) L4_NOTHROW</div><div class="ttdoc">Cache clean a range in D-cache; writes back to PoC.</div><div class="ttdef"><b>Definition</b> <a href="#l00017">cache.h:17</a></div></div>
<div class="ttc" id="agroup__l4__cache__api_html_gaf9f4aebefdf0c6db4a4b42a5470f19be"><div class="ttname"><a href="group__l4__cache__api.html#gaf9f4aebefdf0c6db4a4b42a5470f19be">l4_cache_inv_data</a></div><div class="ttdeci">int l4_cache_inv_data(unsigned long start, unsigned long end) L4_NOTHROW</div><div class="ttdoc">Cache invalidate a range; might write back to PoC.</div><div class="ttdef"><b>Definition</b> <a href="#l00033">cache.h:33</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2cache_8h.html">cache.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,134 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/consts.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2consts_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">consts.h File Reference<div class="ingroups"><a class="el" href="group__l4__api.html">Base API</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>Common <a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> constants, AMD64 version.
<a href="#details">More...</a></p>
<p><a href="amd64_2l4_2sys_2consts_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-define-members" class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gad2f7e71d6265b2735f730dc90c54539a" id="r_gad2f7e71d6265b2735f730dc90c54539a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__memory__api.html#gad2f7e71d6265b2735f730dc90c54539a">L4_PAGESHIFT</a>&#160;&#160;&#160;12</td></tr>
<tr class="memdesc:gad2f7e71d6265b2735f730dc90c54539a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of a page, log2-based. <br /></td></tr>
<tr class="memitem:ga6ff8d213542e2b602ce10b8d9c4a7e0f" id="r_ga6ff8d213542e2b602ce10b8d9c4a7e0f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__memory__api.html#ga6ff8d213542e2b602ce10b8d9c4a7e0f">L4_SUPERPAGESHIFT</a>&#160;&#160;&#160;21</td></tr>
<tr class="memdesc:ga6ff8d213542e2b602ce10b8d9c4a7e0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of a large page, log2-based. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Common <a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> constants, AMD64 version. </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2sys_2consts_8h_source.html">consts.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2consts_8h.html">consts.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,5 @@
var amd64_2l4_2sys_2consts_8h =
[
[ "L4_PAGESHIFT", "group__l4__memory__api.html#gad2f7e71d6265b2735f730dc90c54539a", null ],
[ "L4_SUPERPAGESHIFT", "group__l4__memory__api.html#ga6ff8d213542e2b602ce10b8d9c4a7e0f", null ]
];

View File

@@ -0,0 +1,131 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/consts.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2consts_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">consts.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2sys_2consts_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*****************************************************************************/</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment">/*</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * Björn Döbel &lt;doebel@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> * Torsten Frenzel &lt;frenzel@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> *</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="comment"> */</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">/*****************************************************************************/</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#ifndef __L4SYS__INCLUDE__ARCH_AMD64__CONSTS_H__</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#define __L4SYS__INCLUDE__ARCH_AMD64__CONSTS_H__</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="group__l4__memory__api.html#gad2f7e71d6265b2735f730dc90c54539a"> 24</a></span><span class="preprocessor">#define L4_PAGESHIFT 12</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="group__l4__memory__api.html#ga6ff8d213542e2b602ce10b8d9c4a7e0f"> 30</a></span><span class="preprocessor">#define L4_SUPERPAGESHIFT 21</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="preprocessor">#include_next &lt;l4/sys/consts.h&gt;</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="preprocessor">#endif </span><span class="comment">/* ! __L4SYS__INCLUDE__ARCH_AMD64__CONSTS_H__ */</span><span class="preprocessor"></span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2consts_8h.html">consts.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,389 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/ktrace_events.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2ktrace__events_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">ktrace_events.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* Note, automatically generated from Fiasco binary */</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="keyword">enum</span> L4_ktrace_tbuf_entry_fixed</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span>{</div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> l4_ktrace_tbuf_unused = 0,</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> l4_ktrace_tbuf_pf = 1,</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> l4_ktrace_tbuf_ipc = 2,</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> l4_ktrace_tbuf_ipc_res = 3,</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> l4_ktrace_tbuf_ipc_trace = 4,</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> l4_ktrace_tbuf_ke = 5,</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> l4_ktrace_tbuf_ke_reg = 6,</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> l4_ktrace_tbuf_breakpoint = 7,</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> l4_ktrace_tbuf_ke_bin = 8,</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> l4_ktrace_tbuf_dynentries = 9,</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> l4_ktrace_tbuf_max = 128,</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> l4_ktrace_tbuf_hidden = 128,</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span>};</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> L4_ktrace_t__Address;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> L4_ktrace_t__Cap_index;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Context;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Context__Drq;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> L4_ktrace_t__Context__Drq_log__Type;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> L4_ktrace_t__Cpu_number;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Irq_base;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Irq_chip;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Kobject;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> L4_ktrace_t__L4_error;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> L4_ktrace_t__L4_msg_tag;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> L4_ktrace_t__L4_obj_ref;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> L4_ktrace_t__L4_timeout_pair;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> L4_ktrace_t__Mword;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Rcu_item;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Sched_context;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keyword">typedef</span> <span class="keywordtype">long</span> L4_ktrace_t__Smword;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__Space;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> L4_ktrace_t__Unsigned16;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> L4_ktrace_t__Unsigned32;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> L4_ktrace_t__Unsigned64;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> L4_ktrace_t__Unsigned8;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> L4_ktrace_t__cxx__Type_info;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="keyword">typedef</span> <span class="keyword">struct </span>__attribute__((packed))</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>{</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> L4_ktrace_t__Mword _number; <span class="comment">/* 0+8 */</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> L4_ktrace_t__Address _ip; <span class="comment">/* 8+8 */</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> L4_ktrace_t__Unsigned64 _tsc; <span class="comment">/* 16+8 */</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> L4_ktrace_t__Context *_ctx; <span class="comment">/* 24+8 */</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> L4_ktrace_t__Unsigned32 _pmc1; <span class="comment">/* 32+4 */</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> L4_ktrace_t__Unsigned32 _pmc2; <span class="comment">/* 36+4 */</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> L4_ktrace_t__Unsigned32 _kclock; <span class="comment">/* 40+4 */</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> L4_ktrace_t__Unsigned8 _type; <span class="comment">/* 44+1 */</span></div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> L4_ktrace_t__Unsigned8 _cpu; <span class="comment">/* 45+1 */</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keyword">union </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">void</span> *func; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> L4_ktrace_t__Context *thread; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> L4_ktrace_t__Context__Drq *rq; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> L4_ktrace_t__Cpu_number target_cpu; <span class="comment">/* 72+4 */</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> L4_ktrace_t__Context__Drq_log__Type type; <span class="comment">/* 76+4 */</span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">char</span> wait; <span class="comment">/* 80+1 */</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> } drq; <span class="comment">/* 88 */</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> {</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> L4_ktrace_t__Mword state; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> L4_ktrace_t__Mword ip; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> L4_ktrace_t__Mword sp; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> L4_ktrace_t__Mword space; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> L4_ktrace_t__Mword err; <span class="comment">/* 80+8 */</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> type; <span class="comment">/* 88+1 */</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> trap; <span class="comment">/* 89+1 */</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> } vcpu; <span class="comment">/* 96 */</span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> L4_ktrace_t__Smword op; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> L4_ktrace_t__Cap_index buffer; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> L4_ktrace_t__Mword id; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> L4_ktrace_t__Mword ram; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> L4_ktrace_t__Mword newo; <span class="comment">/* 80+8 */</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> } factory; <span class="comment">/* 88 */</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> {</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> L4_ktrace_t__Mword gate_dbg_id; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> L4_ktrace_t__Mword thread_dbg_id; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> L4_ktrace_t__Mword label; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> } gate; <span class="comment">/* 72 */</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> {</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> L4_ktrace_t__Irq_base *obj; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> L4_ktrace_t__Irq_chip *chip; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> L4_ktrace_t__Mword pin; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> } irq; <span class="comment">/* 72 */</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> {</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> L4_ktrace_t__Kobject *obj; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> L4_ktrace_t__Mword id; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> L4_ktrace_t__cxx__Type_info *type; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> L4_ktrace_t__Mword ram; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> } destroy; <span class="comment">/* 80 */</span></div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> {</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> L4_ktrace_t__Cpu_number cpu; <span class="comment">/* 48+4 */</span></div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">char</span> __pad_1[4];</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> L4_ktrace_t__Rcu_item *item; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">void</span> *cb; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> event; <span class="comment">/* 72+1 */</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> } rcu; <span class="comment">/* 80 */</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> {</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> L4_ktrace_t__Mword id; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> L4_ktrace_t__Mword mask; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> L4_ktrace_t__Mword fpage; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keywordtype">char</span> map; <span class="comment">/* 72+1 */</span></div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> } tmap; <span class="comment">/* 80 */</span></div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> {</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> L4_ktrace_t__Address _address; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">int</span> _len; <span class="comment">/* 56+4 */</span></div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">char</span> __pad_1[4];</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> L4_ktrace_t__Mword _value; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <span class="keywordtype">int</span> _mode; <span class="comment">/* 72+4 */</span></div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> } bp; <span class="comment">/* 80 */</span></div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> {</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> L4_ktrace_t__Context *dst; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> L4_ktrace_t__Context *dst_orig; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> L4_ktrace_t__Address kernel_ip; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> L4_ktrace_t__Mword lock_cnt; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> L4_ktrace_t__Space *from_space; <span class="comment">/* 80+8 */</span></div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> L4_ktrace_t__Sched_context *from_sched; <span class="comment">/* 88+8 */</span></div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> L4_ktrace_t__Mword from_prio; <span class="comment">/* 96+8 */</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> } context_switch; <span class="comment">/* 104 */</span></div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> {</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> } empty; <span class="comment">/* 48 */</span></div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> {</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> L4_ktrace_t__L4_msg_tag _tag; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> L4_ktrace_t__Mword _dword[2]; <span class="comment">/* 56+16 */</span></div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> L4_ktrace_t__L4_obj_ref _dst; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> L4_ktrace_t__Mword _dbg_id; <span class="comment">/* 80+8 */</span></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> L4_ktrace_t__Mword _label; <span class="comment">/* 88+8 */</span></div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> L4_ktrace_t__L4_timeout_pair _timeout; <span class="comment">/* 96+4 */</span></div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <span class="keywordtype">char</span> __pad_1[4];</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> L4_ktrace_t__Unsigned64 _to_abs_rcv; <span class="comment">/* 104+8 */</span></div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> } ipc; <span class="comment">/* 112 */</span></div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> {</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> L4_ktrace_t__Unsigned8 _have_snd; <span class="comment">/* 46+1 */</span></div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> L4_ktrace_t__Unsigned8 _is_np; <span class="comment">/* 47+1 */</span></div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> L4_ktrace_t__L4_msg_tag _tag; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> L4_ktrace_t__Mword _dword[2]; <span class="comment">/* 56+16 */</span></div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> L4_ktrace_t__L4_error _result; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> L4_ktrace_t__Mword _from; <span class="comment">/* 80+8 */</span></div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> L4_ktrace_t__L4_obj_ref _dst; <span class="comment">/* 88+8 */</span></div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> L4_ktrace_t__Mword _pair_event; <span class="comment">/* 96+8 */</span></div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> } ipc_res; <span class="comment">/* 104 */</span></div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> {</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> <span class="keyword">union </span>__attribute__((__packed__)) {</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keywordtype">char</span> msg[80]; <span class="comment">/* 0+80 */</span></div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="keyword">struct </span>__attribute__((__packed__)) {</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordtype">char</span> tag[2]; <span class="comment">/* 0+2 */</span></div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">char</span> __pad_1[6];</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="keywordtype">char</span> *ptr; <span class="comment">/* 8+8 */</span></div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> } mptr; <span class="comment">/* 0+16 */</span></div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> } msg; <span class="comment">/* 48+80 */</span></div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> } ke; <span class="comment">/* 128 */</span></div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> {</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keywordtype">char</span> _msg[80]; <span class="comment">/* 46+80 */</span></div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> } ke_bin; <span class="comment">/* 128 */</span></div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> {</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> L4_ktrace_t__Mword v[3]; <span class="comment">/* 48+24 */</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="keyword">union </span>__attribute__((__packed__)) {</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keywordtype">char</span> msg[56]; <span class="comment">/* 0+56 */</span></div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <span class="keyword">struct </span>__attribute__((__packed__)) {</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">char</span> tag[2]; <span class="comment">/* 0+2 */</span></div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="keywordtype">char</span> __pad_1[6];</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <span class="keywordtype">char</span> *ptr; <span class="comment">/* 8+8 */</span></div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> } mptr; <span class="comment">/* 0+16 */</span></div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> } msg; <span class="comment">/* 72+56 */</span></div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> } ke_reg; <span class="comment">/* 128 */</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> {</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> L4_ktrace_t__Address _pfa; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> L4_ktrace_t__Mword _error; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> L4_ktrace_t__Space *_space; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> } pf; <span class="comment">/* 72 */</span></div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> {</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> mode; <span class="comment">/* 46+2 */</span></div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> L4_ktrace_t__Context *owner; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> id; <span class="comment">/* 56+2 */</span></div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> prio; <span class="comment">/* 58+2 */</span></div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> <span class="keywordtype">char</span> __pad_1[4];</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="keywordtype">long</span> left; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> quantum; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> } sched; <span class="comment">/* 80 */</span></div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> {</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> <span class="keywordtype">char</span> _trapno; <span class="comment">/* 46+1 */</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <span class="keywordtype">char</span> __pad_1[1];</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> L4_ktrace_t__Unsigned16 _error; <span class="comment">/* 48+2 */</span></div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">char</span> __pad_2[6];</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> L4_ktrace_t__Mword _rbp; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> L4_ktrace_t__Mword _cr2; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> L4_ktrace_t__Mword _rax; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> L4_ktrace_t__Mword _rflags; <span class="comment">/* 80+8 */</span></div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> L4_ktrace_t__Mword _rsp; <span class="comment">/* 88+8 */</span></div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> L4_ktrace_t__Unsigned16 _cs; <span class="comment">/* 96+2 */</span></div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> L4_ktrace_t__Unsigned16 _ds; <span class="comment">/* 98+2 */</span></div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> } trap; <span class="comment">/* 104 */</span></div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> {</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="keywordtype">char</span> _padding[80]; <span class="comment">/* 46+80 */</span></div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> <span class="keywordtype">char</span> __post_pad[2]; <span class="comment">/* 126+2 */</span></div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> } fullsize; <span class="comment">/* 128 */</span></div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> {</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> L4_ktrace_t__Cap_index cap_idx; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> } ieh; <span class="comment">/* 56 */</span></div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> {</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> L4_ktrace_t__Mword pfa; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> L4_ktrace_t__Cap_index cap_idx; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> L4_ktrace_t__Mword err; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> } ipfh; <span class="comment">/* 72 */</span></div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> {</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> L4_ktrace_t__Mword id; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> L4_ktrace_t__Mword ip; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> L4_ktrace_t__Mword sp; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> L4_ktrace_t__Mword op; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> } exregs; <span class="comment">/* 80 */</span></div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> {</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> L4_ktrace_t__Mword state; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> L4_ktrace_t__Address user_ip; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> L4_ktrace_t__Cpu_number src_cpu; <span class="comment">/* 64+4 */</span></div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> L4_ktrace_t__Cpu_number target_cpu; <span class="comment">/* 68+4 */</span></div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> } migration; <span class="comment">/* 72 */</span></div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> {</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> L4_ktrace_t__Address user_ip; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> } timer; <span class="comment">/* 56 */</span></div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> <span class="keyword">struct </span>__attribute__((__packed__))</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> {</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <span class="keywordtype">char</span> __pre_pad[2];</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> L4_ktrace_t__Mword exitcode; <span class="comment">/* 48+8 */</span></div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> L4_ktrace_t__Mword exitinfo1; <span class="comment">/* 56+8 */</span></div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> L4_ktrace_t__Mword exitinfo2; <span class="comment">/* 64+8 */</span></div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> L4_ktrace_t__Mword rip; <span class="comment">/* 72+8 */</span></div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> } svm; <span class="comment">/* 80 */</span></div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> } m;</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span>} l4_tracebuffer_entry_t;</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>ktrace_events.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,142 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/l4int.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2l4int_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">l4int.h File Reference<div class="ingroups"><a class="el" href="group__l4__api.html">Base API</a> &raquo; <a class="el" href="group__l4__basic__types.html">Integer Types</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>Fixed sized integer types, AMD64 version.
<a href="#details">More...</a></p>
<p><a href="amd64_2l4_2sys_2l4int_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-define-members" class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga994a270c5c1613a5e235e212bc6a5af9" id="r_ga994a270c5c1613a5e235e212bc6a5af9"><td class="memItemLeft" align="right" valign="top">
#define&#160;</td><td class="memItemRight" valign="bottom"><b>L4_MWORD_BITS</b>&#160;&#160;&#160;64</td></tr>
<tr class="memdesc:ga994a270c5c1613a5e235e212bc6a5af9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of machine words in bits. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-typedef-members" class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gaa92c4a3989fe6322e96e3debac938f89" id="r_gaa92c4a3989fe6322e96e3debac938f89"><td class="memItemLeft" align="right" valign="top">
typedef unsigned long&#160;</td><td class="memItemRight" valign="bottom"><b>l4_size_t</b></td></tr>
<tr class="memdesc:gaa92c4a3989fe6322e96e3debac938f89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned size type. <br /></td></tr>
<tr class="memitem:ga045b25a600413fa97ca6ddd5dd698233" id="r_ga045b25a600413fa97ca6ddd5dd698233"><td class="memItemLeft" align="right" valign="top">
typedef signed long&#160;</td><td class="memItemRight" valign="bottom"><b>l4_ssize_t</b></td></tr>
<tr class="memdesc:ga045b25a600413fa97ca6ddd5dd698233"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signed size type. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Fixed sized integer types, AMD64 version. </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2sys_2l4int_8h_source.html">l4int.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2l4int_8h.html">l4int.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,6 @@
var amd64_2l4_2sys_2l4int_8h =
[
[ "L4_MWORD_BITS", "group__l4__basic__types.html#ga994a270c5c1613a5e235e212bc6a5af9", null ],
[ "l4_size_t", "group__l4__basic__types.html#gaa92c4a3989fe6322e96e3debac938f89", null ],
[ "l4_ssize_t", "group__l4__basic__types.html#ga045b25a600413fa97ca6ddd5dd698233", null ]
];

View File

@@ -0,0 +1,130 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/l4int.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2l4int_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">l4int.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2sys_2l4int_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*****************************************************************************/</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment">/*</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> *</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> */</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include_next &lt;l4/sys/l4int.h&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="group__l4__basic__types.html#ga994a270c5c1613a5e235e212bc6a5af9"> 23</a></span><span class="preprocessor">#define L4_MWORD_BITS 64 </span><span class="preprocessor"></span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="group__l4__basic__types.html#gaa92c4a3989fe6322e96e3debac938f89"> 25</a></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga08c1e83a068ded7add134b188cd44967">l4_size_t</a>; </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="group__l4__basic__types.html#ga045b25a600413fa97ca6ddd5dd698233"> 26</a></span><span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">long</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9dc1f61609809eb3dc6b1cda10197ea8">l4_ssize_t</a>; </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> </div>
<div class="ttc" id="agroup__l4__basic__types_html_ga08c1e83a068ded7add134b188cd44967"><div class="ttname"><a href="group__l4__basic__types.html#ga08c1e83a068ded7add134b188cd44967">l4_size_t</a></div><div class="ttdeci">unsigned int l4_size_t</div><div class="ttdoc">Unsigned size type.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2l4int_8h_source.html#l00024">l4int.h:24</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9dc1f61609809eb3dc6b1cda10197ea8"><div class="ttname"><a href="group__l4__basic__types.html#ga9dc1f61609809eb3dc6b1cda10197ea8">l4_ssize_t</a></div><div class="ttdeci">signed int l4_ssize_t</div><div class="ttdoc">Signed size type.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2l4int_8h_source.html#l00025">l4int.h:25</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2l4int_8h.html">l4int.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,133 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/linkage.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2linkage_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">linkage.h File Reference<div class="ingroups"><a class="el" href="group__l4__api.html">Base API</a> &raquo; <a class="el" href="group__l4sys__defines.html">Basic Macros</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>Linkage.
<a href="#details">More...</a></p>
<p><a href="amd64_2l4_2sys_2linkage_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-define-members" class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga2469cd44710705e9f0a5832e060ec48a" id="r_ga2469cd44710705e9f0a5832e060ec48a"><td class="memItemLeft" align="right" valign="top">
#define&#160;</td><td class="memItemRight" valign="bottom"><b>L4_CV</b></td></tr>
<tr class="memdesc:ga2469cd44710705e9f0a5832e060ec48a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Define calling convention. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Linkage. </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2sys_2linkage_8h_source.html">linkage.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2linkage_8h.html">linkage.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var amd64_2l4_2sys_2linkage_8h =
[
[ "L4_CV", "group__l4sys__defines.html#ga2469cd44710705e9f0a5832e060ec48a", null ]
];

View File

@@ -0,0 +1,139 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/linkage.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2linkage_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">linkage.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2sys_2linkage_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * Torsten Frenzel &lt;frenzel@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> *</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> */</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#ifndef __L4__SYS__ARCH_AMD64__LINKAGE_H__</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#define __L4__SYS__ARCH_AMD64__LINKAGE_H__</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#ifdef __ASSEMBLY__</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#ifndef ENTRY</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#define ENTRY(name) \</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor"> .globl name; \</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="preprocessor"> .p2align(2); \</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="preprocessor"> name:</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="preprocessor">#endif </span><span class="comment">/* __ASSEMBLY__ */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="preprocessor">#endif </span><span class="comment">/* ! ENTRY */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="preprocessor">#define L4_FASTCALL(x) x</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="preprocessor">#define l4_fastcall</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"><a class="line" href="group__l4sys__defines.html#ga2469cd44710705e9f0a5832e060ec48a"> 36</a></span><span class="preprocessor">#define L4_CV</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="preprocessor">#endif </span><span class="comment">/* ! __L4__SYS__ARCH_AMD64__LINKAGE_H__ */</span><span class="preprocessor"></span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2linkage_8h.html">linkage.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,410 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/segment.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2segment_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">segment.h File Reference<div class="ingroups"><a class="el" href="group__l4__api.html">Base API</a> &raquo; <a class="el" href="group__api__calls__fiasco.html">Fiasco extensions</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>Segment handling (AMD64).
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="l4_2sys_2ipc_8h_source.html">l4/sys/ipc.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="l4_2sys_2task_8h_source.html">l4/sys/task.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="l4_2sys_2thread_8h_source.html">l4/sys/thread.h</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for segment.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2sys_2segment_8h__incl.svg" width="726" height="550"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="amd64_2l4_2sys_2segment_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-enum-members" class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a2525b884dbf1dabbc1f0b11ad5105949" id="r_a2525b884dbf1dabbc1f0b11ad5105949"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2525b884dbf1dabbc1f0b11ad5105949">L4_task_ldt_x86_consts</a> { <a class="el" href="#a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0">L4_TASK_LDT_X86_ENTRY_SIZE</a> = 8
, <a class="el" href="#a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f">L4_TASK_LDT_X86_MAX_ENTRIES</a>
}</td></tr>
<tr class="memdesc:a2525b884dbf1dabbc1f0b11ad5105949"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contants for LDT handling. <a href="#a2525b884dbf1dabbc1f0b11ad5105949">More...</a><br /></td></tr>
<tr class="memitem:a11cb575da60a64bac2b763d3b3e1421c" id="r_a11cb575da60a64bac2b763d3b3e1421c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a11cb575da60a64bac2b763d3b3e1421c">L4_sys_segment</a> { <a class="el" href="#a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4">L4_AMD64_SEGMENT_FS</a> = 0
, <a class="el" href="#a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896">L4_AMD64_SEGMENT_GS</a> = 1
}</td></tr>
<tr class="memdesc:a11cb575da60a64bac2b763d3b3e1421c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constants for identifying segments. <a href="#a11cb575da60a64bac2b763d3b3e1421c">More...</a><br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga394d6b4591383b0f6c78155e6e5e5180" id="r_ga394d6b4591383b0f6c78155e6e5e5180"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__calls__fiasco.html#ga394d6b4591383b0f6c78155e6e5e5180">fiasco_ldt_set</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task, void *ldt, unsigned int num_desc, unsigned int entry_number_start, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</td></tr>
<tr class="memdesc:ga394d6b4591383b0f6c78155e6e5e5180"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set LDT segments descriptors. <br /></td></tr>
<tr class="memitem:ga889e52253474f768149a012b94fac148" id="r_ga889e52253474f768149a012b94fac148"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__calls__fiasco.html#ga889e52253474f768149a012b94fac148">fiasco_gdt_set</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, void *desc, unsigned int size, unsigned int entry_number_start, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</td></tr>
<tr class="memdesc:ga889e52253474f768149a012b94fac148"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set GDT segment descriptors. <br /></td></tr>
<tr class="memitem:ga62cd4adfb0915e034d528472c73ad270" id="r_ga62cd4adfb0915e034d528472c73ad270"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__calls__fiasco.html#ga62cd4adfb0915e034d528472c73ad270">fiasco_gdt_get_entry_offset</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</td></tr>
<tr class="memdesc:ga62cd4adfb0915e034d528472c73ad270"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the offset of the entry in the GDT. <br /></td></tr>
<tr class="memitem:afd70b6cd1905d37a66f97cc373247c49" id="r_afd70b6cd1905d37a66f97cc373247c49"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afd70b6cd1905d37a66f97cc373247c49">fiasco_amd64_set_fs</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> base, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</td></tr>
<tr class="memdesc:afd70b6cd1905d37a66f97cc373247c49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base address for the FS segment. <br /></td></tr>
<tr class="memitem:ac7363c40842e11b0485d011423012211" id="r_ac7363c40842e11b0485d011423012211"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac7363c40842e11b0485d011423012211">fiasco_amd64_set_segment_base</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, enum <a class="el" href="#a11cb575da60a64bac2b763d3b3e1421c">L4_sys_segment</a> segr, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> base, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</td></tr>
<tr class="memdesc:ac7363c40842e11b0485d011423012211"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base address for a segment. <br /></td></tr>
<tr class="memitem:a8f6d52dba510d665894bcc77c7aab77e" id="r_a8f6d52dba510d665894bcc77c7aab77e"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8f6d52dba510d665894bcc77c7aab77e">fiasco_amd64_segment_info</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, unsigned *user_ds, unsigned *user_cs, unsigned *user32_cs, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</td></tr>
<tr class="memdesc:a8f6d52dba510d665894bcc77c7aab77e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get segment information. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Segment handling (AMD64). </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html">segment.h</a>.</p>
</div><a name="doc-enum-members" id="doc-enum-members"></a><h2 id="header-doc-enum-members" class="groupheader">Enumeration Type Documentation</h2>
<a id="a11cb575da60a64bac2b763d3b3e1421c" name="a11cb575da60a64bac2b763d3b3e1421c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11cb575da60a64bac2b763d3b3e1421c">&#9670;&#160;</a></span>L4_sys_segment</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="#a11cb575da60a64bac2b763d3b3e1421c">L4_sys_segment</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constants for identifying segments. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4" name="a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4"></a>L4_AMD64_SEGMENT_FS&#160;</td><td class="fielddoc"><p>Constant identifying the FS segment. </p>
</td></tr>
<tr><td class="fieldname"><a id="a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896" name="a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896"></a>L4_AMD64_SEGMENT_GS&#160;</td><td class="fielddoc"><p>Constant identifying the GS segment. </p>
</td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html#l00106">106</a> of file <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html">segment.h</a>.</p>
</div>
</div>
<a id="a2525b884dbf1dabbc1f0b11ad5105949" name="a2525b884dbf1dabbc1f0b11ad5105949"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2525b884dbf1dabbc1f0b11ad5105949">&#9670;&#160;</a></span>L4_task_ldt_x86_consts</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="#a2525b884dbf1dabbc1f0b11ad5105949">L4_task_ldt_x86_consts</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Contants for LDT handling. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0" name="a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0"></a>L4_TASK_LDT_X86_ENTRY_SIZE&#160;</td><td class="fielddoc"><p>Size of an LDT entry. </p>
</td></tr>
<tr><td class="fieldname"><a id="a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f" name="a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f"></a>L4_TASK_LDT_X86_MAX_ENTRIES&#160;</td><td class="fielddoc"><p>Maximum number of LDT entries that can be written with one call. </p>
</td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html#l00075">75</a> of file <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html">segment.h</a>.</p>
</div>
</div>
<a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Function Documentation</h2>
<a id="a8f6d52dba510d665894bcc77c7aab77e" name="a8f6d52dba510d665894bcc77c7aab77e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f6d52dba510d665894bcc77c7aab77e">&#9670;&#160;</a></span>fiasco_amd64_segment_info()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">long fiasco_amd64_segment_info </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></td> <td class="paramname"><span class="paramname"><em>thread</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned *</td> <td class="paramname"><span class="paramname"><em>user_ds</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned *</td> <td class="paramname"><span class="paramname"><em>user_cs</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned *</td> <td class="paramname"><span class="paramname"><em>user32_cs</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *</td> <td class="paramname"><span class="paramname"><em>utcb</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get segment information. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">thread</td><td>Thread to get info from. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">user_ds</td><td>DS segment selector. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">user_cs</td><td>64-bit CS segment selector. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">user32_cs</td><td>32-bit CS segment selector. </td></tr>
<tr><td class="paramdir"></td><td class="paramname">utcb</td><td>UTCB to be used for this operation, shall be the UTCB of the calling thread. See <a class="el" href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644" title="Get the UTCB address.">l4_utcb</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>System call error </dd></dl>
<p class="definition">Definition at line <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html#l00175">175</a> of file <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html">segment.h</a>.</p>
<p class="reference">References <a class="el" href="l4_2sys_2ipc_8h_source.html#l00565">l4_ipc_call()</a>, <a class="el" href="____timeout_8h_source.html#l00076">L4_IPC_NEVER</a>, <a class="el" href="l4_2sys_2types_8h_source.html#l00405">l4_msgtag()</a>, <a class="el" href="l4_2sys_2types_8h_source.html#l00054">L4_PROTO_THREAD</a>, <a class="el" href="l4_2sys_2thread_8h_source.html#l00747">L4_THREAD_AMD64_GET_SEGMENT_INFO_OP</a>, and <a class="el" href="l4_2sys_2utcb_8h_source.html#l00069">l4_msg_regs_t::mr</a>.</p>
<div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2sys_2segment_8h_a8f6d52dba510d665894bcc77c7aab77e_cgraph.svg" width="466" height="86"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div>
<a id="afd70b6cd1905d37a66f97cc373247c49" name="afd70b6cd1905d37a66f97cc373247c49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd70b6cd1905d37a66f97cc373247c49">&#9670;&#160;</a></span>fiasco_amd64_set_fs()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">long fiasco_amd64_set_fs </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></td> <td class="paramname"><span class="paramname"><em>thread</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></td> <td class="paramname"><span class="paramname"><em>base</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *</td> <td class="paramname"><span class="paramname"><em>utcb</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the base address for the FS segment. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">thread</td><td>Thread for which the FS base address shall be modified. </td></tr>
<tr><td class="paramname">base</td><td>Base address. </td></tr>
<tr><td class="paramname">utcb</td><td>UTCB to be used for this operation, shall be the UTCB of the calling thread. See <a class="el" href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644" title="Get the UTCB address.">l4_utcb</a>.</td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">L4_EOK</td><td>Success. </td></tr>
<tr><td class="paramname">-L4_EINVAL</td><td>Invalid base address (<code class="param">base</code>). </td></tr>
<tr><td class="paramname">-L4_ENOSYS</td><td>Operation not supported with current kernel configuration.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Calling this function is equivalent to calling <span class="tt">fiasco_amd64_set_segment_base(thread, L4_AMD64_SEGMENT_FS, base, utcb)</span>. </dd></dl>
<p class="definition">Definition at line <a class="el" href="amd64_2l4f_2l4_2sys_2segment_8h_source.html#l00024">24</a> of file <a class="el" href="amd64_2l4f_2l4_2sys_2segment_8h_source.html">segment.h</a>.</p>
<p class="reference">References <a class="el" href="amd64_2l4_2sys_2segment_8h_source.html#l00109">L4_AMD64_SEGMENT_FS</a>, <a class="el" href="l4_2sys_2ipc_8h_source.html#l00565">l4_ipc_call()</a>, <a class="el" href="____timeout_8h_source.html#l00076">L4_IPC_NEVER</a>, <a class="el" href="l4_2sys_2types_8h_source.html#l00405">l4_msgtag()</a>, <a class="el" href="l4_2sys_2types_8h_source.html#l00054">L4_PROTO_THREAD</a>, and <a class="el" href="l4_2sys_2thread_8h_source.html#l00746">L4_THREAD_AMD64_SET_SEGMENT_BASE_OP</a>.</p>
<div id="dynsection-2" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
<div id="dynsection-2-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-2-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2sys_2segment_8h_afd70b6cd1905d37a66f97cc373247c49_cgraph.svg" width="416" height="86"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div>
<a id="ac7363c40842e11b0485d011423012211" name="ac7363c40842e11b0485d011423012211"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7363c40842e11b0485d011423012211">&#9670;&#160;</a></span>fiasco_amd64_set_segment_base()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">long fiasco_amd64_set_segment_base </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></td> <td class="paramname"><span class="paramname"><em>thread</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">enum <a class="el" href="#a11cb575da60a64bac2b763d3b3e1421c">L4_sys_segment</a></td> <td class="paramname"><span class="paramname"><em>segr</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></td> <td class="paramname"><span class="paramname"><em>base</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *</td> <td class="paramname"><span class="paramname"><em>utcb</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the base address for a segment. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">thread</td><td>Thread for which the base address of the selected segment shall be modified. </td></tr>
<tr><td class="paramname">segr</td><td>Segment to modify (one of <a class="el" href="#a11cb575da60a64bac2b763d3b3e1421c" title="Constants for identifying segments.">L4_sys_segment</a>). </td></tr>
<tr><td class="paramname">base</td><td>Base address. </td></tr>
<tr><td class="paramname">utcb</td><td>UTCB to be used for this operation, shall be the UTCB of the calling thread. See <a class="el" href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644" title="Get the UTCB address.">l4_utcb</a>.</td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">L4_EOK</td><td>Success. </td></tr>
<tr><td class="paramname">-L4_EINVAL</td><td>Invalid segment (<code class="param">segr</code>) or base address (<code class="param">base</code>). </td></tr>
<tr><td class="paramname">-L4_ENOSYS</td><td>Operation not supported with current kernel configuration. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="amd64_2l4f_2l4_2sys_2segment_8h_source.html#l00032">32</a> of file <a class="el" href="amd64_2l4f_2l4_2sys_2segment_8h_source.html">segment.h</a>.</p>
<p class="reference">References <a class="el" href="l4_2sys_2ipc_8h_source.html#l00565">l4_ipc_call()</a>, <a class="el" href="____timeout_8h_source.html#l00076">L4_IPC_NEVER</a>, <a class="el" href="l4_2sys_2types_8h_source.html#l00405">l4_msgtag()</a>, <a class="el" href="l4_2sys_2types_8h_source.html#l00054">L4_PROTO_THREAD</a>, and <a class="el" href="l4_2sys_2thread_8h_source.html#l00746">L4_THREAD_AMD64_SET_SEGMENT_BASE_OP</a>.</p>
<div id="dynsection-3" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
<div id="dynsection-3-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-3-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2sys_2segment_8h_ac7363c40842e11b0485d011423012211_cgraph.svg" width="499" height="86"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2segment_8h.html">segment.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,17 @@
var amd64_2l4_2sys_2segment_8h =
[
[ "L4_sys_segment", "amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421c", [
[ "L4_AMD64_SEGMENT_FS", "amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4", null ],
[ "L4_AMD64_SEGMENT_GS", "amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896", null ]
] ],
[ "L4_task_ldt_x86_consts", "amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949", [
[ "L4_TASK_LDT_X86_ENTRY_SIZE", "amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0", null ],
[ "L4_TASK_LDT_X86_MAX_ENTRIES", "amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f", null ]
] ],
[ "fiasco_amd64_segment_info", "amd64_2l4_2sys_2segment_8h.html#a8f6d52dba510d665894bcc77c7aab77e", null ],
[ "fiasco_amd64_set_fs", "amd64_2l4_2sys_2segment_8h.html#afd70b6cd1905d37a66f97cc373247c49", null ],
[ "fiasco_amd64_set_segment_base", "amd64_2l4_2sys_2segment_8h.html#ac7363c40842e11b0485d011423012211", null ],
[ "fiasco_gdt_get_entry_offset", "group__api__calls__fiasco.html#ga62cd4adfb0915e034d528472c73ad270", null ],
[ "fiasco_gdt_set", "group__api__calls__fiasco.html#ga889e52253474f768149a012b94fac148", null ],
[ "fiasco_ldt_set", "group__api__calls__fiasco.html#ga394d6b4591383b0f6c78155e6e5e5180", null ]
];

View File

@@ -0,0 +1,42 @@
<map id="amd64/l4/sys/segment.h" name="amd64/l4/sys/segment.h">
<area shape="rect" id="Node000001" title="Segment handling (AMD64)." alt="" coords="312,5,495,31"/>
<area shape="rect" id="Node000002" href="$l4_2sys_2ipc_8h.html" title="Common IPC interface." alt="" coords="356,152,451,177"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="406,31,406,138,401,138,401,31"/>
<area shape="rect" id="Node000012" href="$l4_2sys_2task_8h.html" title="Common task related definitions." alt="" coords="262,79,366,104"/>
<area shape="poly" id="edge20_Node000001_Node000012" title=" " alt="" coords="391,33,341,72,338,68,387,29"/>
<area shape="rect" id="Node000013" href="$l4_2sys_2thread_8h.html" title="Common thread related definitions." alt="" coords="441,79,560,104"/>
<area shape="poly" id="edge24_Node000001_Node000013" title=" " alt="" coords="421,29,475,68,472,72,417,33"/>
<area shape="rect" id="Node000003" href="$l4_2sys_2types_8h.html" title="Common L4 ABI Data Types." alt="" coords="258,299,370,324"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="388,180,364,200,342,227,328,256,320,286,315,284,323,255,337,224,360,196,385,176"/>
<area shape="rect" id="Node000010" href="$l4_2sys_2utcb_8h.html" title="UTCB definitions." alt="" coords="351,225,455,251"/>
<area shape="poly" id="edge14_Node000002_Node000010" title=" " alt="" coords="406,178,406,212,401,212,401,178"/>
<area shape="rect" id="Node000011" href="$err_8h.html" title="Error codes." alt="" coords="626,299,719,324"/>
<area shape="poly" id="edge18_Node000002_Node000011" title=" " alt="" coords="426,175,641,290,638,295,424,180"/>
<area shape="rect" id="Node000004" href="$l4_2sys_2l4int_8h.html" title="Fixed sized integer types, generic version." alt="" coords="5,445,111,471"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="258,319,196,326,129,336,71,352,50,362,36,374,30,387,31,402,44,432,39,435,25,403,25,386,32,370,47,358,69,347,128,331,195,320,257,314"/>
<area shape="rect" id="Node000005" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="356,445,488,471"/>
<area shape="poly" id="edge4_Node000003_Node000005" title=" " alt="" coords="325,323,407,433,403,436,321,326"/>
<area shape="rect" id="Node000007" href="$l4_2sys_2consts_8h.html" title="Common constants." alt="" coords="47,372,165,397"/>
<area shape="poly" id="edge6_Node000003_Node000007" title=" " alt="" coords="281,327,154,370,152,365,280,321"/>
<area shape="rect" id="Node000008" href="$____l4__fpage_8h_source.html" title=" " alt="" coords="405,372,551,397"/>
<area shape="poly" id="edge9_Node000003_Node000008" title=" " alt="" coords="341,322,440,364,438,369,339,326"/>
<area shape="rect" id="Node000009" href="$____timeout_8h_source.html" title=" " alt="" coords="189,372,330,397"/>
<area shape="poly" id="edge11_Node000003_Node000009" title=" " alt="" coords="307,326,279,363,274,360,303,323"/>
<area shape="rect" id="Node000006" title=" " alt="" coords="361,519,483,544"/>
<area shape="poly" id="edge5_Node000005_Node000006" title=" " alt="" coords="425,471,425,505,419,505,419,471"/>
<area shape="poly" id="edge8_Node000007_Node000004" title=" " alt="" coords="100,399,76,436,71,433,96,396"/>
<area shape="poly" id="edge7_Node000007_Node000005" title=" " alt="" coords="157,395,358,440,357,445,156,400"/>
<area shape="poly" id="edge10_Node000008_Node000005" title=" " alt="" coords="471,399,442,436,437,433,467,396"/>
<area shape="poly" id="edge12_Node000009_Node000004" title=" " alt="" coords="228,400,104,443,103,438,226,395"/>
<area shape="poly" id="edge13_Node000009_Node000005" title=" " alt="" coords="287,395,384,437,382,442,284,400"/>
<area shape="poly" id="edge15_Node000010_Node000003" title=" " alt="" coords="391,253,341,292,338,288,387,249"/>
<area shape="poly" id="edge17_Node000010_Node000004" title=" " alt="" coords="351,242,275,250,184,270,138,287,95,309,56,338,24,373,19,388,21,403,39,433,35,436,16,405,14,387,20,371,53,334,92,305,136,282,182,265,274,244,351,237"/>
<area shape="poly" id="edge16_Node000010_Node000005" title=" " alt="" coords="429,249,463,267,501,294,538,329,566,371,570,384,568,397,554,417,528,433,498,444,496,439,526,428,550,413,563,395,564,385,561,373,534,332,498,298,460,272,427,253"/>
<area shape="poly" id="edge19_Node000011_Node000005" title=" " alt="" coords="669,326,646,362,629,382,609,400,557,427,502,445,500,440,554,422,606,395,625,378,642,359,664,323"/>
<area shape="poly" id="edge23_Node000012_Node000002" title=" " alt="" coords="330,102,380,141,376,145,327,106"/>
<area shape="poly" id="edge21_Node000012_Node000003" title=" " alt="" coords="317,104,317,284,311,284,311,104"/>
<area shape="poly" id="edge22_Node000012_Node000010" title=" " alt="" coords="319,104,328,137,346,176,362,197,380,214,376,218,358,200,341,179,323,139,314,105"/>
<area shape="poly" id="edge27_Node000013_Node000002" title=" " alt="" coords="487,106,432,146,429,141,483,102"/>
<area shape="poly" id="edge25_Node000013_Node000003" title=" " alt="" coords="505,104,506,134,503,173,492,215,482,235,469,252,451,269,429,282,385,300,383,295,427,277,448,265,465,249,478,232,487,213,497,172,500,133,499,104"/>
<area shape="poly" id="edge26_Node000013_Node000010" title=" " alt="" coords="499,105,486,139,464,179,430,218,426,214,460,176,481,137,494,103"/>
</map>

View File

@@ -0,0 +1 @@
b6b996c2341a23bd3c3a25fd7ef9a09d

View File

@@ -0,0 +1,372 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: amd64/l4/sys/segment.h Pages: 1 -->
<svg width="544pt" height="412pt"
viewBox="0.00 0.00 543.50 412.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 408)">
<title>amd64/l4/sys/segment.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Segment handling (AMD64).">
<polygon fill="#999999" stroke="#666666" points="367,-404 230,-404 230,-385 367,-385 367,-404"/>
<text text-anchor="middle" x="298.5" y="-392" font-family="Helvetica,sans-Serif" font-size="10.00">amd64/l4/sys/segment.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="l4_2sys_2ipc_8h.html" target="_top" xlink:title="Common IPC interface.">
<polygon fill="white" stroke="#666666" points="334,-294 263,-294 263,-275 334,-275 334,-294"/>
<text text-anchor="middle" x="298.5" y="-282" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/ipc.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M298.5,-384.66C298.5,-367.17 298.5,-327.8 298.5,-304.27"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="302,-304.16 298.5,-294.16 295,-304.16 302,-304.16"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="l4_2sys_2task_8h.html" target="_top" xlink:title="Common task related definitions.">
<polygon fill="white" stroke="#666666" points="270.5,-349 192.5,-349 192.5,-330 270.5,-330 270.5,-349"/>
<text text-anchor="middle" x="231.5" y="-337" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/task.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node12 -->
<g id="edge20_Node000001_Node000012" class="edge">
<title>Node1&#45;&gt;Node12</title>
<g id="a_edge20_Node000001_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M287.74,-384.98C277.73,-377.07 262.61,-365.11 250.57,-355.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="252.47,-352.63 242.46,-349.17 248.13,-358.12 252.47,-352.63"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:href="l4_2sys_2thread_8h.html" target="_top" xlink:title="Common thread related definitions.">
<polygon fill="white" stroke="#666666" points="416,-349 327,-349 327,-330 416,-330 416,-349"/>
<text text-anchor="middle" x="371.5" y="-337" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/thread.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node13 -->
<g id="edge24_Node000001_Node000013" class="edge">
<title>Node1&#45;&gt;Node13</title>
<g id="a_edge24_Node000001_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M310.23,-384.98C321.23,-377 337.92,-364.88 351.1,-355.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="353.52,-357.88 359.56,-349.17 349.41,-352.21 353.52,-357.88"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="l4_2sys_2types_8h.html" target="_top" xlink:title="Common L4 ABI Data Types.">
<polygon fill="white" stroke="#666666" points="273.5,-184 189.5,-184 189.5,-165 273.5,-165 273.5,-184"/>
<text text-anchor="middle" x="231.5" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/types.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M285.69,-274.69C274.84,-266.6 259.63,-253.66 250.5,-239 241.95,-225.26 237.06,-207.46 234.39,-194.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="237.83,-193.55 232.63,-184.32 230.93,-194.78 237.83,-193.55"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="l4_2sys_2utcb_8h.html" target="_top" xlink:title="UTCB definitions.">
<polygon fill="white" stroke="#666666" points="337.5,-239 259.5,-239 259.5,-220 337.5,-220 337.5,-239"/>
<text text-anchor="middle" x="298.5" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/utcb.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node10 -->
<g id="edge14_Node000002_Node000010" class="edge">
<title>Node2&#45;&gt;Node10</title>
<g id="a_edge14_Node000002_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M298.5,-274.75C298.5,-267.8 298.5,-257.85 298.5,-249.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="302,-249.09 298.5,-239.09 295,-249.09 302,-249.09"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="err_8h.html" target="_top" xlink:title="Error codes.">
<polygon fill="white" stroke="#666666" points="535.5,-184 465.5,-184 465.5,-165 535.5,-165 535.5,-184"/>
<text text-anchor="middle" x="500.5" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/err.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node11 -->
<g id="edge18_Node000002_Node000011" class="edge">
<title>Node2&#45;&gt;Node11</title>
<g id="a_edge18_Node000002_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M314.69,-274.84C349.87,-256.04 433.48,-211.33 475.5,-188.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="477.35,-191.85 484.51,-184.05 474.05,-185.68 477.35,-191.85"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="l4_2sys_2l4int_8h.html" target="_top" xlink:title="Fixed sized integer types, generic version.">
<polygon fill="white" stroke="#666666" points="79,-74 0,-74 0,-55 79,-55 79,-74"/>
<text text-anchor="middle" x="39.5" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/l4int.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M189.31,-170.68C134.18,-166.02 42.21,-154.55 21.5,-129 10.83,-115.83 18.49,-96.69 26.87,-82.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="29.95,-84.56 32.57,-74.29 24.12,-80.68 29.95,-84.56"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="compiler_8h.html" target="_top" xlink:title="L4 compiler related defines.">
<polygon fill="white" stroke="#666666" points="362,-74 263,-74 263,-55 362,-55 362,-74"/>
<text text-anchor="middle" x="312.5" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/compiler.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M238.13,-164.66C251.6,-146.69 282.39,-105.64 299.84,-82.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="302.81,-84.26 306.01,-74.16 297.21,-80.06 302.81,-84.26"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="l4_2sys_2consts_8h.html" target="_top" xlink:title="Common constants.">
<polygon fill="white" stroke="#666666" points="120,-129 31,-129 31,-110 120,-110 120,-129"/>
<text text-anchor="middle" x="75.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/consts.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M206.44,-164.98C180.47,-156.16 139.69,-142.31 110.54,-132.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="111.35,-128.99 100.76,-129.08 109.1,-135.61 111.35,-128.99"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="____l4__fpage_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="409.5,-129 299.5,-129 299.5,-110 409.5,-110 409.5,-129"/>
<text text-anchor="middle" x="354.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__l4_fpage.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node8 -->
<g id="edge9_Node000003_Node000008" class="edge">
<title>Node3&#45;&gt;Node8</title>
<g id="a_edge9_Node000003_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M251.26,-164.98C271.23,-156.38 302.3,-142.99 325.15,-133.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="326.58,-136.34 334.38,-129.17 323.81,-129.91 326.58,-136.34"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="____timeout_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="243.5,-129 137.5,-129 137.5,-110 243.5,-110 243.5,-129"/>
<text text-anchor="middle" x="190.5" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__timeout.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node9 -->
<g id="edge11_Node000003_Node000009" class="edge">
<title>Node3&#45;&gt;Node9</title>
<g id="a_edge11_Node000003_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M224.73,-164.75C218.94,-157.26 210.44,-146.28 203.36,-137.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="206.03,-134.86 197.14,-129.09 200.49,-139.14 206.03,-134.86"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="358.5,-19 266.5,-19 266.5,0 358.5,0 358.5,-19"/>
<text text-anchor="middle" x="312.5" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/linkage.h</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5_Node000005_Node000006" class="edge">
<title>Node5&#45;&gt;Node6</title>
<g id="a_edge5_Node000005_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M312.5,-54.75C312.5,-47.8 312.5,-37.85 312.5,-29.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="316,-29.09 312.5,-19.09 309,-29.09 316,-29.09"/>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node4 -->
<g id="edge8_Node000007_Node000004" class="edge">
<title>Node7&#45;&gt;Node4</title>
<g id="a_edge8_Node000007_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M69.56,-109.75C64.52,-102.34 57.16,-91.5 50.99,-82.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="53.85,-80.39 45.33,-74.09 48.06,-84.33 53.85,-80.39"/>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node5 -->
<g id="edge7_Node000007_Node000005" class="edge">
<title>Node7&#45;&gt;Node5</title>
<g id="a_edge7_Node000007_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M113.58,-109.98C154.49,-100.84 219.61,-86.27 264.12,-76.32"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="265.13,-79.68 274.12,-74.08 263.6,-72.85 265.13,-79.68"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node5 -->
<g id="edge10_Node000008_Node000005" class="edge">
<title>Node8&#45;&gt;Node5</title>
<g id="a_edge10_Node000008_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M347.56,-109.75C341.63,-102.26 332.93,-91.28 325.68,-82.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="328.26,-79.75 319.31,-74.09 322.77,-84.1 328.26,-79.75"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge12_Node000009_Node000004" class="edge">
<title>Node9&#45;&gt;Node4</title>
<g id="a_edge12_Node000009_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M166.24,-109.98C141.18,-101.19 101.87,-87.39 73.67,-77.49"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="74.8,-74.18 64.2,-74.17 72.48,-80.78 74.8,-74.18"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node5 -->
<g id="edge13_Node000009_Node000005" class="edge">
<title>Node9&#45;&gt;Node5</title>
<g id="a_edge13_Node000009_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M210.1,-109.98C229.82,-101.42 260.45,-88.11 283.08,-78.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="284.76,-81.37 292.54,-74.17 281.98,-74.94 284.76,-81.37"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node3 -->
<g id="edge15_Node000010_Node000003" class="edge">
<title>Node10&#45;&gt;Node3</title>
<g id="a_edge15_Node000010_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M287.74,-219.98C277.73,-212.07 262.61,-200.11 250.57,-190.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="252.47,-187.63 242.46,-184.17 248.13,-193.12 252.47,-187.63"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node4 -->
<g id="edge17_Node000010_Node000004" class="edge">
<title>Node10&#45;&gt;Node4</title>
<g id="a_edge17_Node000010_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M259.27,-228.15C195.14,-225.2 69.31,-208.91 12.5,-129 2.15,-114.45 13.01,-95.31 23.89,-81.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="26.53,-84.16 30.47,-74.32 21.26,-79.55 26.53,-84.16"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node5 -->
<g id="edge16_Node000010_Node000005" class="edge">
<title>Node10&#45;&gt;Node5</title>
<g id="a_edge16_Node000010_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M317.07,-219.78C345.17,-205.41 397.44,-173.82 418.5,-129 430.94,-102.52 400.04,-86.23 368.44,-76.79"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="369.24,-73.38 358.66,-74.08 367.37,-80.12 369.24,-73.38"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node5 -->
<g id="edge19_Node000011_Node000005" class="edge">
<title>Node11&#45;&gt;Node5</title>
<g id="a_edge19_Node000011_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M496.03,-164.75C488.61,-151.08 472.48,-124.71 451.5,-110 427.96,-93.48 397.97,-82.87 371.87,-76.16"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="372.63,-72.74 362.09,-73.78 370.97,-79.55 372.63,-72.74"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node2 -->
<g id="edge23_Node000012_Node000002" class="edge">
<title>Node12&#45;&gt;Node2</title>
<g id="a_edge23_Node000012_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M242.26,-329.98C252.27,-322.07 267.39,-310.11 279.43,-300.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="281.87,-303.12 287.54,-294.17 277.53,-297.63 281.87,-303.12"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node3 -->
<g id="edge21_Node000012_Node000003" class="edge">
<title>Node12&#45;&gt;Node3</title>
<g id="a_edge21_Node000012_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M231.5,-329.74C231.5,-304.31 231.5,-230.08 231.5,-194.69"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="235,-194.31 231.5,-184.31 228,-194.31 235,-194.31"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node10 -->
<g id="edge22_Node000012_Node000010" class="edge">
<title>Node12&#45;&gt;Node10</title>
<g id="a_edge22_Node000012_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M233.21,-329.73C235.98,-316.94 242.3,-292.77 253.5,-275 260.41,-264.04 270.5,-253.74 279.37,-245.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="281.73,-248.4 287.06,-239.25 277.18,-243.08 281.73,-248.4"/>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node2 -->
<g id="edge27_Node000013_Node000002" class="edge">
<title>Node13&#45;&gt;Node2</title>
<g id="a_edge27_Node000013_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M359.77,-329.98C348.77,-322 332.08,-309.88 318.9,-300.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="320.59,-297.21 310.44,-294.17 316.48,-302.88 320.59,-297.21"/>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node3 -->
<g id="edge25_Node000013_Node000003" class="edge">
<title>Node13&#45;&gt;Node3</title>
<g id="a_edge25_Node000013_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M372.41,-329.73C374.15,-308.09 375.5,-251.61 346.5,-220 330.12,-202.15 305.75,-191.38 283.65,-184.93"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="284.26,-181.47 273.7,-182.26 282.45,-188.23 284.26,-181.47"/>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node10 -->
<g id="edge26_Node000013_Node000010" class="edge">
<title>Node13&#45;&gt;Node10</title>
<g id="a_edge26_Node000013_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M368.63,-329.78C364.19,-317.05 354.89,-292.95 342.5,-275 335.2,-264.43 325.26,-254.13 316.68,-246.11"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="318.76,-243.28 308.99,-239.18 314.07,-248.48 318.76,-243.28"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -0,0 +1,9 @@
<map id="fiasco_amd64_segment_info" name="fiasco_amd64_segment_info">
<area shape="rect" id="Node000001" title="Get segment information." alt="" coords="5,31,213,56"/>
<area shape="rect" id="Node000002" href="$group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6" title="Object call (usual invocation)." alt="" coords="261,5,352,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="208,28,247,23,248,28,209,33"/>
<area shape="rect" id="Node000004" href="$group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78" title="Create a message tag from the specified values." alt="" coords="261,55,352,80"/>
<area shape="poly" id="edge3_Node000001_Node000004" title=" " alt="" coords="214,53,248,58,247,63,213,59"/>
<area shape="rect" id="Node000003" href="$group__l4__ipc__api.html#ga1caa56d45e0453b3002e7f5cfdb0dec7" title="Generic L4 object invocation." alt="" coords="400,5,460,31"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="352,15,386,15,386,21,352,21"/>
</map>

View File

@@ -0,0 +1 @@
f50af5cc09f22148ecc12c2f04349a22

View File

@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: fiasco_amd64_segment_info Pages: 1 -->
<svg width="349pt" height="64pt"
viewBox="0.00 0.00 349.00 64.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 60)">
<title>fiasco_amd64_segment_info</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Get segment information.">
<polygon fill="#999999" stroke="#666666" points="156,-37 0,-37 0,-18 156,-18 156,-37"/>
<text text-anchor="middle" x="78" y="-25" font-family="Helvetica,sans-Serif" font-size="10.00">fiasco_amd64_segment_info</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6" target="_top" xlink:title="Object call (usual invocation).">
<polygon fill="white" stroke="#666666" points="260,-56 192,-56 192,-37 260,-37 260,-56"/>
<text text-anchor="middle" x="226" y="-44" font-family="Helvetica,sans-Serif" font-size="10.00">l4_ipc_call</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M152.43,-37.06C162.44,-38.36 172.44,-39.66 181.67,-40.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="181.36,-44.35 191.73,-42.17 182.27,-37.41 181.36,-44.35"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78" target="_top" xlink:title="Create a message tag from the specified values.">
<polygon fill="white" stroke="#666666" points="260,-19 192,-19 192,0 260,0 260,-19"/>
<text text-anchor="middle" x="226" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4_msgtag</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M156.28,-17.97C164.93,-16.91 173.51,-15.85 181.51,-14.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="182.17,-18.31 191.67,-13.61 181.31,-11.36 182.17,-18.31"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="group__l4__ipc__api.html#ga1caa56d45e0453b3002e7f5cfdb0dec7" target="_top" xlink:title="Generic L4 object invocation.">
<polygon fill="white" stroke="#666666" points="341,-56 296,-56 296,-37 341,-37 341,-56"/>
<text text-anchor="middle" x="318.5" y="-44" font-family="Helvetica,sans-Serif" font-size="10.00">l4_ipc</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M260.18,-46.5C268.56,-46.5 277.52,-46.5 285.82,-46.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="285.87,-50 295.87,-46.5 285.87,-43 285.87,-50"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -0,0 +1,9 @@
<map id="fiasco_amd64_set_segment_base" name="fiasco_amd64_set_segment_base">
<area shape="rect" id="Node000001" title="Set the base address for a segment." alt="" coords="5,31,247,56"/>
<area shape="rect" id="Node000002" href="$group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6" title="Object call (usual invocation)." alt="" coords="295,5,385,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="233,28,280,22,281,28,234,33"/>
<area shape="rect" id="Node000004" href="$group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78" title="Create a message tag from the specified values." alt="" coords="295,55,385,80"/>
<area shape="poly" id="edge3_Node000001_Node000004" title=" " alt="" coords="239,53,281,58,281,63,239,59"/>
<area shape="rect" id="Node000003" href="$group__l4__ipc__api.html#ga1caa56d45e0453b3002e7f5cfdb0dec7" title="Generic L4 object invocation." alt="" coords="433,5,493,31"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="386,15,420,15,420,21,386,21"/>
</map>

View File

@@ -0,0 +1 @@
7aed92286a5c120151ff08cb6892f88a

View File

@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: fiasco_amd64_set_segment_base Pages: 1 -->
<svg width="374pt" height="64pt"
viewBox="0.00 0.00 374.00 64.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 60)">
<title>fiasco_amd64_set_segment_base</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Set the base address for a segment.">
<polygon fill="#999999" stroke="#666666" points="181,-37 0,-37 0,-18 181,-18 181,-37"/>
<text text-anchor="middle" x="90.5" y="-25" font-family="Helvetica,sans-Serif" font-size="10.00">fiasco_amd64_set_segment_base</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6" target="_top" xlink:title="Object call (usual invocation).">
<polygon fill="white" stroke="#666666" points="285,-56 217,-56 217,-37 285,-37 285,-56"/>
<text text-anchor="middle" x="251" y="-44" font-family="Helvetica,sans-Serif" font-size="10.00">l4_ipc_call</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M171.21,-37.06C183.37,-38.51 195.5,-39.97 206.48,-41.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="206.27,-44.78 216.62,-42.5 207.1,-37.83 206.27,-44.78"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78" target="_top" xlink:title="Create a message tag from the specified values.">
<polygon fill="white" stroke="#666666" points="285,-19 217,-19 217,0 285,0 285,-19"/>
<text text-anchor="middle" x="251" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4_msgtag</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M175.39,-17.97C186.19,-16.75 196.87,-15.53 206.63,-14.43"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="207.28,-17.87 216.82,-13.27 206.49,-10.92 207.28,-17.87"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="group__l4__ipc__api.html#ga1caa56d45e0453b3002e7f5cfdb0dec7" target="_top" xlink:title="Generic L4 object invocation.">
<polygon fill="white" stroke="#666666" points="366,-56 321,-56 321,-37 366,-37 366,-56"/>
<text text-anchor="middle" x="343.5" y="-44" font-family="Helvetica,sans-Serif" font-size="10.00">l4_ipc</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M285.18,-46.5C293.56,-46.5 302.52,-46.5 310.82,-46.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="310.87,-50 320.87,-46.5 310.87,-43 310.87,-50"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@@ -0,0 +1,9 @@
<map id="fiasco_amd64_set_fs" name="fiasco_amd64_set_fs">
<area shape="rect" id="Node000001" title="Set the base address for the FS segment." alt="" coords="5,31,164,56"/>
<area shape="rect" id="Node000002" href="$group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6" title="Object call (usual invocation)." alt="" coords="212,5,303,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="164,29,198,24,199,29,164,34"/>
<area shape="rect" id="Node000004" href="$group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78" title="Create a message tag from the specified values." alt="" coords="212,55,303,80"/>
<area shape="poly" id="edge3_Node000001_Node000004" title=" " alt="" coords="164,52,199,57,198,62,164,57"/>
<area shape="rect" id="Node000003" href="$group__l4__ipc__api.html#ga1caa56d45e0453b3002e7f5cfdb0dec7" title="Generic L4 object invocation." alt="" coords="351,5,411,31"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="303,15,337,15,337,21,303,21"/>
</map>

View File

@@ -0,0 +1 @@
9807901a9d2c092fa0f8a2ffcc2d8e1a

View File

@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: fiasco_amd64_set_fs Pages: 1 -->
<svg width="312pt" height="64pt"
viewBox="0.00 0.00 312.00 64.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 60)">
<title>fiasco_amd64_set_fs</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Set the base address for the FS segment.">
<polygon fill="#999999" stroke="#666666" points="119,-37 0,-37 0,-18 119,-18 119,-37"/>
<text text-anchor="middle" x="59.5" y="-25" font-family="Helvetica,sans-Serif" font-size="10.00">fiasco_amd64_set_fs</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6" target="_top" xlink:title="Object call (usual invocation).">
<polygon fill="white" stroke="#666666" points="223,-56 155,-56 155,-37 223,-37 223,-56"/>
<text text-anchor="middle" x="189" y="-44" font-family="Helvetica,sans-Serif" font-size="10.00">l4_ipc_call</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M119.03,-36.22C127.68,-37.51 136.46,-38.82 144.73,-40.05"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="144.47,-43.55 154.88,-41.56 145.51,-36.63 144.47,-43.55"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78" target="_top" xlink:title="Create a message tag from the specified values.">
<polygon fill="white" stroke="#666666" points="223,-19 155,-19 155,0 223,0 223,-19"/>
<text text-anchor="middle" x="189" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4_msgtag</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M119.03,-19.24C127.68,-18.02 136.46,-16.78 144.73,-15.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="145.47,-19.04 154.88,-14.18 144.49,-12.11 145.47,-19.04"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="group__l4__ipc__api.html#ga1caa56d45e0453b3002e7f5cfdb0dec7" target="_top" xlink:title="Generic L4 object invocation.">
<polygon fill="white" stroke="#666666" points="304,-56 259,-56 259,-37 304,-37 304,-56"/>
<text text-anchor="middle" x="281.5" y="-44" font-family="Helvetica,sans-Serif" font-size="10.00">l4_ipc</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M223.18,-46.5C231.56,-46.5 240.52,-46.5 248.82,-46.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="248.87,-50 258.87,-46.5 248.87,-43 248.87,-50"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -0,0 +1,257 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/segment.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2segment_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">segment.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2sys_2segment_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> *</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> */</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment">/*****************************************************************************/</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#ifndef __L4_SYS__ARCH_X86__SEGMENT_H__</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#define __L4_SYS__ARCH_X86__SEGMENT_H__</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#ifndef L4API_l4f</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#error This header file can only be used with a L4API version!</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2ipc_8h.html">l4/sys/ipc.h</a>&gt;</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">long</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><a class="code hl_function" href="group__api__calls__fiasco.html#ga394d6b4591383b0f6c78155e6e5e5180">fiasco_ldt_set</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task, <span class="keywordtype">void</span> *ldt, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> num_desc,</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> entry_number_start, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb);</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">long</span></div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span><a class="code hl_function" href="group__api__calls__fiasco.html#ga889e52253474f768149a012b94fac148">fiasco_gdt_set</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <span class="keywordtype">void</span> *desc, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> size,</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> entry_number_start, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb);</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><a class="code hl_function" href="group__api__calls__fiasco.html#ga62cd4adfb0915e034d528472c73ad270">fiasco_gdt_get_entry_offset</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb);</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span></div>
<div class="foldopen" id="foldopen00075" data-start="{" data-end="};">
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949"> 75</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949">L4_task_ldt_x86_consts</a></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span>{</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0"> 78</a></span> <a class="code hl_enumvalue" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0">L4_TASK_LDT_X86_ENTRY_SIZE</a> = 8,</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f"> 80</a></span> <a class="code hl_enumvalue" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f">L4_TASK_LDT_X86_MAX_ENTRIES</a></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> = (L4_UTCB_GENERIC_DATA_SIZE - 2)</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> / (<a class="code hl_enumvalue" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0">L4_TASK_LDT_X86_ENTRY_SIZE</a> / (<a class="code hl_define" href="group__l4__basic__types.html#ga994a270c5c1613a5e235e212bc6a5af9">L4_MWORD_BITS</a> / 8)),</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span>};</div>
</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">long</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span><a class="code hl_function" href="amd64_2l4_2sys_2segment_8h.html#afd70b6cd1905d37a66f97cc373247c49">fiasco_amd64_set_fs</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> base, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb);</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span></div>
<div class="foldopen" id="foldopen00106" data-start="{" data-end="};">
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421c"> 106</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421c">L4_sys_segment</a></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span>{</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4"> 109</a></span> <a class="code hl_enumvalue" href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4">L4_AMD64_SEGMENT_FS</a> = 0,</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896"> 111</a></span> <a class="code hl_enumvalue" href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896">L4_AMD64_SEGMENT_GS</a> = 1</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span>};</div>
</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span></div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">long</span></div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span><a class="code hl_function" href="amd64_2l4_2sys_2segment_8h.html#ac7363c40842e11b0485d011423012211">fiasco_amd64_set_segment_base</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <span class="keyword">enum</span> <a class="code hl_enumeration" href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421c">L4_sys_segment</a> segr,</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> base, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb);</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span></div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">long</span></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span><a class="code hl_function" href="amd64_2l4_2sys_2segment_8h.html#a8f6d52dba510d665894bcc77c7aab77e">fiasco_amd64_segment_info</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <span class="keywordtype">unsigned</span> *user_ds,</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keywordtype">unsigned</span> *user_cs, <span class="keywordtype">unsigned</span> *user32_cs,</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb);</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span><span class="comment">/*****************************************************************************</span></div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span><span class="comment"> *** Implementation</span></div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span><span class="comment"> *****************************************************************************/</span></div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> </div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2task_8h.html">l4/sys/task.h</a>&gt;</span></div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2thread_8h.html">l4/sys/thread.h</a>&gt;</span></div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> </div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">long</span></div>
<div class="foldopen" id="foldopen00153" data-start="{" data-end="}">
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="group__api__calls__fiasco.html#ga394d6b4591383b0f6c78155e6e5e5180"> 153</a></span><a class="code hl_function" href="group__api__calls__fiasco.html#ga394d6b4591383b0f6c78155e6e5e5180">fiasco_ldt_set</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task, <span class="keywordtype">void</span> *ldt, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> num_desc,</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> entry_number_start, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span>{</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keywordflow">if</span> (num_desc &gt; <a class="code hl_enumvalue" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f">L4_TASK_LDT_X86_MAX_ENTRIES</a>)</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">return</span> -<a class="code hl_enumvalue" href="group__l4__error__api.html#ggab4c8abc71ffa221a25c1ca5840a354f9a54ddbebc30b661c87177b968a77588b8">L4_EINVAL</a>;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> l4_utcb_mr_u(utcb)-&gt;mr[0] = <a class="code hl_enumvalue" href="group__l4__protocol__ops.html#gga23a759356490c4b1feffc9f36440a82da1dc147565402a8c98f9a19a087f0062a">L4_TASK_LDT_SET_X86_OP</a>;</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> l4_utcb_mr_u(utcb)-&gt;mr[1] = entry_number_start;</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> __builtin_memcpy(&amp;l4_utcb_mr_u(utcb)-&gt;mr[2], ldt,</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> num_desc * <a class="code hl_enumvalue" href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0">L4_TASK_LDT_X86_ENTRY_SIZE</a>);</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">return</span> l4_error_u(<a class="code hl_function" href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a>(task, utcb, <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(<a class="code hl_enumvalue" href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92a5a866db052f859a32768fc3a703fa40d">L4_PROTO_TASK</a>, 2 + num_desc * 2, 0, 0), <a class="code hl_define" href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a>), utcb);</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span>}</div>
</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> </div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">unsigned</span></div>
<div class="foldopen" id="foldopen00166" data-start="{" data-end="}">
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"><a class="line" href="group__api__calls__fiasco.html#ga62cd4adfb0915e034d528472c73ad270"> 166</a></span><a class="code hl_function" href="group__api__calls__fiasco.html#ga62cd4adfb0915e034d528472c73ad270">fiasco_gdt_get_entry_offset</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span>{</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> l4_utcb_mr_u(utcb)-&gt;mr[0] = <a class="code hl_enumvalue" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a6f4fca5857964221abc72aa84f2272a1">L4_THREAD_X86_GDT_OP</a>;</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">if</span> (l4_error_u(<a class="code hl_function" href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a>(thread, utcb, <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(<a class="code hl_enumvalue" href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92a924bae5fb10fe4a7ad46e959a7fa87d3">L4_PROTO_THREAD</a>, 1, 0, 0), <a class="code hl_define" href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a>), utcb))</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">return</span> -1;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">return</span> l4_utcb_mr_u(utcb)-&gt;mr[0];</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span>}</div>
</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">long</span></div>
<div class="foldopen" id="foldopen00175" data-start="{" data-end="}">
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="amd64_2l4_2sys_2segment_8h.html#a8f6d52dba510d665894bcc77c7aab77e"> 175</a></span><a class="code hl_function" href="amd64_2l4_2sys_2segment_8h.html#a8f6d52dba510d665894bcc77c7aab77e">fiasco_amd64_segment_info</a>(<a class="code hl_typedef" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <span class="keywordtype">unsigned</span> *user_ds,</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keywordtype">unsigned</span> *user_cs, <span class="keywordtype">unsigned</span> *user32_cs,</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb)</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span>{</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <a class="code hl_union" href="unionl4__msg__regs__t.html">l4_msg_regs_t</a> *m = l4_utcb_mr_u(utcb);</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="keywordtype">int</span> r;</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> </div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> m-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[0] = <a class="code hl_enumvalue" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a35b462c2cb31a331b0d78e8aa3fa961c">L4_THREAD_AMD64_GET_SEGMENT_INFO_OP</a>;</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> </div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> r = l4_error_u(<a class="code hl_function" href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a>(thread, utcb, <a class="code hl_function" href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a>(<a class="code hl_enumvalue" href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92a924bae5fb10fe4a7ad46e959a7fa87d3">L4_PROTO_THREAD</a>, 1, 0, 0),</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <a class="code hl_define" href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a>), utcb);</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">if</span> (r &lt; 0)</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">return</span> r;</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> *user_ds = m-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[0];</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> *user_cs = m-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[1];</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> *user32_cs = m-&gt;<a class="code hl_variable" href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">mr</a>[2];</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> </div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span>}</div>
</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span><span class="preprocessor">#endif </span><span class="comment">/* ! __L4_SYS__ARCH_X86__SEGMENT_H__ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_a11cb575da60a64bac2b763d3b3e1421c"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421c">L4_sys_segment</a></div><div class="ttdeci">L4_sys_segment</div><div class="ttdoc">Constants for identifying segments.</div><div class="ttdef"><b>Definition</b> <a href="#l00106">segment.h:107</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421caa82186838d1f6df9c3df4422a79bc896">L4_AMD64_SEGMENT_GS</a></div><div class="ttdeci">@ L4_AMD64_SEGMENT_GS</div><div class="ttdoc">Constant identifying the GS segment.</div><div class="ttdef"><b>Definition</b> <a href="#l00111">segment.h:111</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#a11cb575da60a64bac2b763d3b3e1421cad1cd1a4a7ab90e328dc29b74171268d4">L4_AMD64_SEGMENT_FS</a></div><div class="ttdeci">@ L4_AMD64_SEGMENT_FS</div><div class="ttdoc">Constant identifying the FS segment.</div><div class="ttdef"><b>Definition</b> <a href="#l00109">segment.h:109</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_a2525b884dbf1dabbc1f0b11ad5105949"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949">L4_task_ldt_x86_consts</a></div><div class="ttdeci">L4_task_ldt_x86_consts</div><div class="ttdoc">Contants for LDT handling.</div><div class="ttdef"><b>Definition</b> <a href="#l00075">segment.h:76</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949a9b96f3b886294fa16bd6a5d59db0af0f">L4_TASK_LDT_X86_MAX_ENTRIES</a></div><div class="ttdeci">@ L4_TASK_LDT_X86_MAX_ENTRIES</div><div class="ttdoc">Maximum number of LDT entries that can be written with one call.</div><div class="ttdef"><b>Definition</b> <a href="#l00080">segment.h:80</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#a2525b884dbf1dabbc1f0b11ad5105949ad4c2541bab0d031ef72302935adbe6e0">L4_TASK_LDT_X86_ENTRY_SIZE</a></div><div class="ttdeci">@ L4_TASK_LDT_X86_ENTRY_SIZE</div><div class="ttdoc">Size of an LDT entry.</div><div class="ttdef"><b>Definition</b> <a href="#l00078">segment.h:78</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_a8f6d52dba510d665894bcc77c7aab77e"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#a8f6d52dba510d665894bcc77c7aab77e">fiasco_amd64_segment_info</a></div><div class="ttdeci">long fiasco_amd64_segment_info(l4_cap_idx_t thread, unsigned *user_ds, unsigned *user_cs, unsigned *user32_cs, l4_utcb_t *utcb)</div><div class="ttdoc">Get segment information.</div><div class="ttdef"><b>Definition</b> <a href="#l00175">segment.h:175</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_ac7363c40842e11b0485d011423012211"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#ac7363c40842e11b0485d011423012211">fiasco_amd64_set_segment_base</a></div><div class="ttdeci">long fiasco_amd64_set_segment_base(l4_cap_idx_t thread, enum L4_sys_segment segr, l4_umword_t base, l4_utcb_t *utcb)</div><div class="ttdoc">Set the base address for a segment.</div><div class="ttdef"><b>Definition</b> <a href="amd64_2l4f_2l4_2sys_2segment_8h_source.html#l00032">segment.h:32</a></div></div>
<div class="ttc" id="aamd64_2l4_2sys_2segment_8h_html_afd70b6cd1905d37a66f97cc373247c49"><div class="ttname"><a href="amd64_2l4_2sys_2segment_8h.html#afd70b6cd1905d37a66f97cc373247c49">fiasco_amd64_set_fs</a></div><div class="ttdeci">long fiasco_amd64_set_fs(l4_cap_idx_t thread, l4_umword_t base, l4_utcb_t *utcb)</div><div class="ttdoc">Set the base address for the FS segment.</div><div class="ttdef"><b>Definition</b> <a href="amd64_2l4f_2l4_2sys_2segment_8h_source.html#l00024">segment.h:24</a></div></div>
<div class="ttc" id="agroup__api__calls__fiasco_html_ga394d6b4591383b0f6c78155e6e5e5180"><div class="ttname"><a href="group__api__calls__fiasco.html#ga394d6b4591383b0f6c78155e6e5e5180">fiasco_ldt_set</a></div><div class="ttdeci">long fiasco_ldt_set(l4_cap_idx_t task, void *ldt, unsigned int num_desc, unsigned int entry_number_start, l4_utcb_t *utcb)</div><div class="ttdoc">Set LDT segments descriptors.</div><div class="ttdef"><b>Definition</b> <a href="#l00153">segment.h:153</a></div></div>
<div class="ttc" id="agroup__api__calls__fiasco_html_ga62cd4adfb0915e034d528472c73ad270"><div class="ttname"><a href="group__api__calls__fiasco.html#ga62cd4adfb0915e034d528472c73ad270">fiasco_gdt_get_entry_offset</a></div><div class="ttdeci">unsigned fiasco_gdt_get_entry_offset(l4_cap_idx_t thread, l4_utcb_t *utcb)</div><div class="ttdoc">Return the offset of the entry in the GDT.</div><div class="ttdef"><b>Definition</b> <a href="#l00166">segment.h:166</a></div></div>
<div class="ttc" id="agroup__api__calls__fiasco_html_ga889e52253474f768149a012b94fac148"><div class="ttname"><a href="group__api__calls__fiasco.html#ga889e52253474f768149a012b94fac148">fiasco_gdt_set</a></div><div class="ttdeci">long fiasco_gdt_set(l4_cap_idx_t thread, void *desc, unsigned int size, unsigned int entry_number_start, l4_utcb_t *utcb)</div><div class="ttdoc">Set GDT segment descriptors.</div><div class="ttdef"><b>Definition</b> <a href="amd64_2l4f_2l4_2sys_2segment_8h_source.html#l00041">segment.h:41</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga994a270c5c1613a5e235e212bc6a5af9"><div class="ttname"><a href="group__l4__basic__types.html#ga994a270c5c1613a5e235e212bc6a5af9">L4_MWORD_BITS</a></div><div class="ttdeci">#define L4_MWORD_BITS</div><div class="ttdoc">Size of machine words in bits.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2l4int_8h_source.html#l00022">l4int.h:22</a></div></div>
<div class="ttc" id="agroup__l4__cap__api_html_ga1445e923ce73029130d569d6e69a4dd8"><div class="ttname"><a href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a></div><div class="ttdeci">unsigned long l4_cap_idx_t</div><div class="ttdoc">Capability selector type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00336">types.h:336</a></div></div>
<div class="ttc" id="agroup__l4__error__api_html_ggab4c8abc71ffa221a25c1ca5840a354f9a54ddbebc30b661c87177b968a77588b8"><div class="ttname"><a href="group__l4__error__api.html#ggab4c8abc71ffa221a25c1ca5840a354f9a54ddbebc30b661c87177b968a77588b8">L4_EINVAL</a></div><div class="ttdeci">@ L4_EINVAL</div><div class="ttdoc">Invalid argument.</div><div class="ttdef"><b>Definition</b> <a href="err_8h_source.html#l00046">err.h:46</a></div></div>
<div class="ttc" id="agroup__l4__ipc__api_html_gab96d1669dcd54657237ee27b7f6862c6"><div class="ttname"><a href="group__l4__ipc__api.html#gab96d1669dcd54657237ee27b7f6862c6">l4_ipc_call</a></div><div class="ttdeci">l4_msgtag_t l4_ipc_call(l4_cap_idx_t object, l4_utcb_t *utcb, l4_msgtag_t tag, l4_timeout_t timeout) L4_NOTHROW</div><div class="ttdoc">Object call (usual invocation).</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2ipc_8h_source.html#l00565">ipc.h:565</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_ga661d71acad9d096fa990f7c94943bc78"><div class="ttname"><a href="group__l4__msgtag__api.html#ga661d71acad9d096fa990f7c94943bc78">l4_msgtag</a></div><div class="ttdeci">l4_msgtag_t l4_msgtag(long label, unsigned words, unsigned items, unsigned flags) L4_NOTHROW</div><div class="ttdoc">Create a message tag from the specified values.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00405">types.h:405</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_gga9ac8443c5696208bb0539dd659ea1c92a5a866db052f859a32768fc3a703fa40d"><div class="ttname"><a href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92a5a866db052f859a32768fc3a703fa40d">L4_PROTO_TASK</a></div><div class="ttdeci">@ L4_PROTO_TASK</div><div class="ttdoc">Protocol for messages to a task object.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00053">types.h:53</a></div></div>
<div class="ttc" id="agroup__l4__msgtag__api_html_gga9ac8443c5696208bb0539dd659ea1c92a924bae5fb10fe4a7ad46e959a7fa87d3"><div class="ttname"><a href="group__l4__msgtag__api.html#gga9ac8443c5696208bb0539dd659ea1c92a924bae5fb10fe4a7ad46e959a7fa87d3">L4_PROTO_THREAD</a></div><div class="ttdeci">@ L4_PROTO_THREAD</div><div class="ttdoc">Protocol for messages to a thread object.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2types_8h_source.html#l00054">types.h:54</a></div></div>
<div class="ttc" id="agroup__l4__protocol__ops_html_gga23a759356490c4b1feffc9f36440a82da1dc147565402a8c98f9a19a087f0062a"><div class="ttname"><a href="group__l4__protocol__ops.html#gga23a759356490c4b1feffc9f36440a82da1dc147565402a8c98f9a19a087f0062a">L4_TASK_LDT_SET_X86_OP</a></div><div class="ttdeci">@ L4_TASK_LDT_SET_X86_OP</div><div class="ttdoc">x86: LDT set</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2task_8h_source.html#l00347">task.h:347</a></div></div>
<div class="ttc" id="agroup__l4__protocol__ops_html_gga2f876d49c3d78a1c0d62722c0546aa81a35b462c2cb31a331b0d78e8aa3fa961c"><div class="ttname"><a href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a35b462c2cb31a331b0d78e8aa3fa961c">L4_THREAD_AMD64_GET_SEGMENT_INFO_OP</a></div><div class="ttdeci">@ L4_THREAD_AMD64_GET_SEGMENT_INFO_OP</div><div class="ttdoc">Get segment information.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2thread_8h_source.html#l00747">thread.h:747</a></div></div>
<div class="ttc" id="agroup__l4__protocol__ops_html_gga2f876d49c3d78a1c0d62722c0546aa81a6f4fca5857964221abc72aa84f2272a1"><div class="ttname"><a href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a6f4fca5857964221abc72aa84f2272a1">L4_THREAD_X86_GDT_OP</a></div><div class="ttdeci">@ L4_THREAD_X86_GDT_OP</div><div class="ttdoc">Gdt.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2thread_8h_source.html#l00744">thread.h:744</a></div></div>
<div class="ttc" id="agroup__l4__timeout__api_html_gaf01c5e1475efc4f33bc7d1985f7320d3"><div class="ttname"><a href="group__l4__timeout__api.html#gaf01c5e1475efc4f33bc7d1985f7320d3">L4_IPC_NEVER</a></div><div class="ttdeci">#define L4_IPC_NEVER</div><div class="ttdoc">never timeout</div><div class="ttdef"><b>Definition</b> <a href="____timeout_8h_source.html#l00076">__timeout.h:76</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_ga89be8a86d11c1d532b636cc2df1330fb"><div class="ttname"><a href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a></div><div class="ttdeci">struct l4_utcb_t l4_utcb_t</div><div class="ttdoc">Opaque type for the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00056">utcb.h:56</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="al4_2sys_2ipc_8h_html"><div class="ttname"><a href="l4_2sys_2ipc_8h.html">ipc.h</a></div><div class="ttdoc">Common IPC interface.</div></div>
<div class="ttc" id="al4_2sys_2task_8h_html"><div class="ttname"><a href="l4_2sys_2task_8h.html">task.h</a></div><div class="ttdoc">Common task related definitions.</div></div>
<div class="ttc" id="al4_2sys_2thread_8h_html"><div class="ttname"><a href="l4_2sys_2thread_8h.html">thread.h</a></div><div class="ttdoc">Common thread related definitions.</div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html"><div class="ttname"><a href="unionl4__msg__regs__t.html">l4_msg_regs_t</a></div><div class="ttdoc">Encapsulation of the message-register block in the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00067">utcb.h:68</a></div></div>
<div class="ttc" id="aunionl4__msg__regs__t_html_ad7d601b3b3808afaefe4c09d42de8b99"><div class="ttname"><a href="unionl4__msg__regs__t.html#ad7d601b3b3808afaefe4c09d42de8b99">l4_msg_regs_t::mr</a></div><div class="ttdeci">l4_umword_t mr[L4_UTCB_GENERIC_DATA_SIZE]</div><div class="ttdoc">Message registers.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00069">utcb.h:69</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2segment_8h.html">segment.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,167 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/utcb.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2utcb_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">utcb.h File Reference<div class="ingroups"><a class="el" href="group__l4__api.html">Base API</a> &raquo; <a class="el" href="group__l4__ipc__api.html">Object Invocation</a> &raquo; <a class="el" href="group__l4__utcb__api.html">Virtual Registers (UTCBs)</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>UTCB definitions for AMD64.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="l4_2sys_2types_8h_source.html">l4/sys/types.h</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for utcb.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2sys_2utcb_8h__incl.svg" width="506" height="330"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="amd64_2l4_2sys_2utcb_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-nested-classes" class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:l4_5Fexc_5Fregs_5Ft" id="r_l4_5Fexc_5Fregs_5Ft"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structl4__exc__regs__t.html">l4_exc_regs_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">UTCB structure for exceptions. <a href="structl4__exc__regs__t.html#details">More...</a><br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-typedef-members" class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gaab4bad09a76b7810f882af3d563e9a3f" id="r_gaab4bad09a76b7810f882af3d563e9a3f"><td class="memItemLeft" align="right" valign="top">
typedef struct l4_exc_regs_t&#160;</td><td class="memItemRight" valign="bottom"><b>l4_exc_regs_t</b></td></tr>
<tr class="memdesc:gaab4bad09a76b7810f882af3d563e9a3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">UTCB structure for exceptions. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-enum-members" class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga2cdc0b9ac36a408db0232684fa25009e" id="r_ga2cdc0b9ac36a408db0232684fa25009e"><td class="memItemLeft" align="right" valign="top"><a id="ga2cdc0b9ac36a408db0232684fa25009e" name="ga2cdc0b9ac36a408db0232684fa25009e"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__utcb__api__amd64.html#ga2cdc0b9ac36a408db0232684fa25009e">L4_utcb_consts_amd64</a> </td></tr>
<tr class="memdesc:ga2cdc0b9ac36a408db0232684fa25009e"><td class="mdescLeft">&#160;</td><td class="mdescRight">UTCB constants for AMD64. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gab921a807cb317813976ab53f7fca5be5" id="r_gab921a807cb317813976ab53f7fca5be5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__utcb__exc__api.html#gab921a807cb317813976ab53f7fca5be5">l4_utcb_exc_pc</a> (<a class="el" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> const *u) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gab921a807cb317813976ab53f7fca5be5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access function to get the program counter of the exception state. <br /></td></tr>
<tr class="memitem:gaf5c4da380dfe89136d5b509e5a3afde2" id="r_gaf5c4da380dfe89136d5b509e5a3afde2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__utcb__exc__api.html#gaf5c4da380dfe89136d5b509e5a3afde2">l4_utcb_exc_pc_set</a> (<a class="el" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> *u, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> pc) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gaf5c4da380dfe89136d5b509e5a3afde2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the program counter register in the exception state. <br /></td></tr>
<tr class="memitem:gad1b2921ad31b2d59b2e80feb42d6f4f3" id="r_gad1b2921ad31b2d59b2e80feb42d6f4f3"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>l4_utcb_exc_typeval</b> (<a class="el" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> const *u) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gad1b2921ad31b2d59b2e80feb42d6f4f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value out of an exception UTCB that describes the type of exception. <br /></td></tr>
<tr class="memitem:gaa2cfac5dedec0954915dc8e846fda70d" id="r_gaa2cfac5dedec0954915dc8e846fda70d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__utcb__exc__api.html#gaa2cfac5dedec0954915dc8e846fda70d">l4_utcb_exc_is_pf</a> (<a class="el" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> const *u) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gaa2cfac5dedec0954915dc8e846fda70d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether an exception IPC is a page fault. <br /></td></tr>
<tr class="memitem:ga0e11bd9dad8df6d98020621afa8fc292" id="r_ga0e11bd9dad8df6d98020621afa8fc292"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>l4_utcb_exc_pfa</b> (<a class="el" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> const *u) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga0e11bd9dad8df6d98020621afa8fc292"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to get the <a class="el" href="namespaceL4.html" title="L4 low-level kernel interface.">L4</a> style page fault address out of an exception. <br /></td></tr>
<tr class="memitem:ga3d8d1479a472e7f21d5d5092b4f94770" id="r_ga3d8d1479a472e7f21d5d5092b4f94770"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__utcb__exc__api.html#ga3d8d1479a472e7f21d5d5092b4f94770">l4_utcb_exc_is_ex_regs_exception</a> (<a class="el" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> const *u) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga3d8d1479a472e7f21d5d5092b4f94770"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether an exception IPC was triggered via <a class="el" href="group__l4__thread__api.html#ga1ea29499c679caeae810516d16f4347c" title="Exchange basic thread registers.">l4_thread_ex_regs()</a>. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>UTCB definitions for AMD64. </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2sys_2utcb_8h_source.html">utcb.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2utcb_8h.html">utcb.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,11 @@
var amd64_2l4_2sys_2utcb_8h =
[
[ "l4_exc_regs_t", "group__l4__utcb__api__amd64.html#gaab4bad09a76b7810f882af3d563e9a3f", null ],
[ "L4_utcb_consts_amd64", "group__l4__utcb__api__amd64.html#ga2cdc0b9ac36a408db0232684fa25009e", null ],
[ "l4_utcb_exc_is_ex_regs_exception", "group__l4__utcb__exc__api.html#ga3d8d1479a472e7f21d5d5092b4f94770", null ],
[ "l4_utcb_exc_is_pf", "group__l4__utcb__exc__api.html#gaa2cfac5dedec0954915dc8e846fda70d", null ],
[ "l4_utcb_exc_pc", "group__l4__utcb__exc__api.html#gab921a807cb317813976ab53f7fca5be5", null ],
[ "l4_utcb_exc_pc_set", "group__l4__utcb__exc__api.html#gaf5c4da380dfe89136d5b509e5a3afde2", null ],
[ "l4_utcb_exc_pfa", "group__l4__utcb__exc__api.html#ga0e11bd9dad8df6d98020621afa8fc292", null ],
[ "l4_utcb_exc_typeval", "group__l4__utcb__exc__api.html#gad1b2921ad31b2d59b2e80feb42d6f4f3", null ]
];

View File

@@ -0,0 +1,22 @@
<map id="amd64/l4/sys/utcb.h" name="amd64/l4/sys/utcb.h">
<area shape="rect" id="Node000001" title="UTCB definitions for AMD64." alt="" coords="172,5,325,31"/>
<area shape="rect" id="Node000002" href="$l4_2sys_2types_8h.html" title="Common L4 ABI Data Types." alt="" coords="193,79,305,104"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="251,31,251,65,246,65,246,31"/>
<area shape="rect" id="Node000003" href="$l4_2sys_2l4int_8h.html" title="Fixed sized integer types, generic version." alt="" coords="41,225,147,251"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="193,101,87,120,41,135,24,144,13,154,9,162,8,170,17,187,35,203,57,217,54,221,32,207,13,190,3,171,4,161,9,150,21,140,39,130,86,115,192,96"/>
<area shape="rect" id="Node000004" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="261,225,393,251"/>
<area shape="poly" id="edge3_Node000002_Node000004" title=" " alt="" coords="305,96,414,115,463,130,481,139,493,150,501,165,501,178,494,190,482,199,448,215,407,226,406,221,446,210,479,195,490,186,496,176,496,166,489,154,478,144,461,135,413,120,304,101"/>
<area shape="rect" id="Node000006" href="$l4_2sys_2consts_8h.html" title="Common constants." alt="" coords="189,152,308,177"/>
<area shape="poly" id="edge5_Node000002_Node000006" title=" " alt="" coords="251,104,251,138,246,138,246,104"/>
<area shape="rect" id="Node000007" href="$____l4__fpage_8h_source.html" title=" " alt="" coords="333,152,479,177"/>
<area shape="poly" id="edge8_Node000002_Node000007" title=" " alt="" coords="275,102,369,144,367,149,273,106"/>
<area shape="rect" id="Node000008" href="$____timeout_8h_source.html" title=" " alt="" coords="23,152,165,177"/>
<area shape="poly" id="edge10_Node000002_Node000008" title=" " alt="" coords="225,106,133,149,131,144,223,102"/>
<area shape="rect" id="Node000005" title=" " alt="" coords="266,299,389,324"/>
<area shape="poly" id="edge4_Node000004_Node000005" title=" " alt="" coords="330,251,330,285,325,285,325,251"/>
<area shape="poly" id="edge7_Node000006_Node000003" title=" " alt="" coords="225,180,133,222,131,217,223,175"/>
<area shape="poly" id="edge6_Node000006_Node000004" title=" " alt="" coords="263,175,306,214,303,218,259,179"/>
<area shape="poly" id="edge9_Node000007_Node000004" title=" " alt="" coords="395,179,352,218,348,214,392,175"/>
<area shape="poly" id="edge11_Node000008_Node000003" title=" " alt="" coords="97,178,97,212,91,212,91,178"/>
<area shape="poly" id="edge12_Node000008_Node000004" title=" " alt="" coords="132,175,277,219,276,224,131,180"/>
</map>

View File

@@ -0,0 +1 @@
7a3eade02bdd5886d7522d6718e7c48d

View File

@@ -0,0 +1,192 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: amd64/l4/sys/utcb.h Pages: 1 -->
<svg width="379pt" height="247pt"
viewBox="0.00 0.00 378.51 247.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 243)">
<title>amd64/l4/sys/utcb.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="UTCB definitions for AMD64.">
<polygon fill="#999999" stroke="#666666" points="239.96,-239 124.96,-239 124.96,-220 239.96,-220 239.96,-239"/>
<text text-anchor="middle" x="182.46" y="-227" font-family="Helvetica,sans-Serif" font-size="10.00">amd64/l4/sys/utcb.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="l4_2sys_2types_8h.html" target="_top" xlink:title="Common L4 ABI Data Types.">
<polygon fill="white" stroke="#666666" points="224.46,-184 140.46,-184 140.46,-165 224.46,-165 224.46,-184"/>
<text text-anchor="middle" x="182.46" y="-172" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/types.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M182.46,-219.75C182.46,-212.8 182.46,-202.85 182.46,-194.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="185.96,-194.09 182.46,-184.09 178.96,-194.09 185.96,-194.09"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="l4_2sys_2l4int_8h.html" target="_top" xlink:title="Fixed sized integer types, generic version.">
<polygon fill="white" stroke="#666666" points="105.96,-74 26.96,-74 26.96,-55 105.96,-55 105.96,-74"/>
<text text-anchor="middle" x="66.46" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/l4int.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M140.08,-168.87C92.87,-162.74 20.98,-150.15 4.46,-129 -10.12,-110.32 15.2,-91.16 37.74,-78.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="39.51,-81.87 46.78,-74.17 36.29,-75.65 39.51,-81.87"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="compiler_8h.html" target="_top" xlink:title="L4 compiler related defines.">
<polygon fill="white" stroke="#666666" points="290.96,-74 191.96,-74 191.96,-55 290.96,-55 290.96,-74"/>
<text text-anchor="middle" x="241.46" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/compiler.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M224.5,-169.17C272.73,-163.24 347.39,-150.75 364.46,-129 386.3,-101.17 342.36,-84.35 301.06,-75.08"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="301.73,-71.64 291.22,-73 300.27,-78.49 301.73,-71.64"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="l4_2sys_2consts_8h.html" target="_top" xlink:title="Common constants.">
<polygon fill="white" stroke="#666666" points="226.96,-129 137.96,-129 137.96,-110 226.96,-110 226.96,-129"/>
<text text-anchor="middle" x="182.46" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/consts.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M182.46,-164.75C182.46,-157.8 182.46,-147.85 182.46,-139.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="185.96,-139.09 182.46,-129.09 178.96,-139.09 185.96,-139.09"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="____l4__fpage_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="355.46,-129 245.46,-129 245.46,-110 355.46,-110 355.46,-129"/>
<text text-anchor="middle" x="300.46" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__l4_fpage.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge8_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge8_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M201.42,-164.98C220.49,-156.42 250.12,-143.11 272.01,-133.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="273.47,-136.46 281.16,-129.17 270.6,-130.07 273.47,-136.46"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="____timeout_8h_source.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="119.46,-129 13.46,-129 13.46,-110 119.46,-110 119.46,-129"/>
<text text-anchor="middle" x="66.46" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/__timeout.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge10_Node000002_Node000008" class="edge">
<title>Node2&#45;&gt;Node8</title>
<g id="a_edge10_Node000002_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M163.82,-164.98C145.16,-156.46 116.21,-143.23 94.72,-133.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="95.99,-130.14 85.44,-129.17 93.08,-136.51 95.99,-130.14"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="287.46,-19 195.46,-19 195.46,0 287.46,0 287.46,-19"/>
<text text-anchor="middle" x="241.46" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/linkage.h</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node5 -->
<g id="edge4_Node000004_Node000005" class="edge">
<title>Node4&#45;&gt;Node5</title>
<g id="a_edge4_Node000004_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M241.46,-54.75C241.46,-47.8 241.46,-37.85 241.46,-29.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="244.96,-29.09 241.46,-19.09 237.96,-29.09 244.96,-29.09"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node3 -->
<g id="edge7_Node000006_Node000003" class="edge">
<title>Node6&#45;&gt;Node3</title>
<g id="a_edge7_Node000006_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M163.82,-109.98C145.16,-101.46 116.21,-88.23 94.72,-78.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="95.99,-75.14 85.44,-74.17 93.08,-81.51 95.99,-75.14"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge6_Node000006_Node000004" class="edge">
<title>Node6&#45;&gt;Node4</title>
<g id="a_edge6_Node000006_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M191.94,-109.98C200.66,-102.15 213.8,-90.34 224.36,-80.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="226.71,-83.46 231.81,-74.17 222.03,-78.25 226.71,-83.46"/>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node4 -->
<g id="edge9_Node000007_Node000004" class="edge">
<title>Node7&#45;&gt;Node4</title>
<g id="a_edge9_Node000007_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M290.98,-109.98C282.26,-102.15 269.12,-90.34 258.56,-80.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="260.89,-78.25 251.11,-74.17 256.21,-83.46 260.89,-78.25"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node3 -->
<g id="edge11_Node000008_Node000003" class="edge">
<title>Node8&#45;&gt;Node3</title>
<g id="a_edge11_Node000008_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M66.46,-109.75C66.46,-102.8 66.46,-92.85 66.46,-84.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="69.96,-84.09 66.46,-74.09 62.96,-84.09 69.96,-84.09"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node4 -->
<g id="edge12_Node000008_Node000004" class="edge">
<title>Node8&#45;&gt;Node4</title>
<g id="a_edge12_Node000008_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M94.58,-109.98C124.08,-101.05 170.65,-86.94 203.43,-77.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="204.57,-80.33 213.12,-74.08 202.54,-73.63 204.57,-80.33"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

@@ -0,0 +1,268 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/utcb.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2utcb_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">utcb.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2sys_2utcb_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;,</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Alexander Warg &lt;warg@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> *</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> */</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment">/*****************************************************************************/</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#ifndef __L4_SYS__INCLUDE__ARCH_AMD64__UTCB_H__</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#define __L4_SYS__INCLUDE__ARCH_AMD64__UTCB_H__</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;<a class="code" href="l4_2sys_2types_8h.html">l4/sys/types.h</a>&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span></div>
<div class="foldopen" id="foldopen00028" data-start="{" data-end="};">
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="group__l4__utcb__api__amd64.html#ga2cdc0b9ac36a408db0232684fa25009e"> 28</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="group__l4__utcb__api__amd64.html#ga2cdc0b9ac36a408db0232684fa25009e">L4_utcb_consts_amd64</a></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>{</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> L4_UTCB_EXCEPTION_REGS_SIZE = 26,</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> L4_UTCB_GENERIC_DATA_SIZE = 63,</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> L4_UTCB_GENERIC_BUFFERS_SIZE = 58,</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> L4_UTCB_MSG_REGS_OFFSET = 0,</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> L4_UTCB_BUF_REGS_OFFSET = 64 * <span class="keyword">sizeof</span>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>),</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> L4_UTCB_THREAD_REGS_OFFSET = 123 * <span class="keyword">sizeof</span>(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>),</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> L4_UTCB_INHERIT_FPU = 1UL &lt;&lt; 24,</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> L4_UTCB_OFFSET = 1024,</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span>};</div>
</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span>{</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a807704d01b146ba0efdf2599b142e958"> 48</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a807704d01b146ba0efdf2599b142e958">r15</a>; </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a2b2a7c336aa779e1b33af00339d816f8"> 49</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a2b2a7c336aa779e1b33af00339d816f8">r14</a>; </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#afa8b16881175d8480517d9a0ed189fc9"> 50</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#afa8b16881175d8480517d9a0ed189fc9">r13</a>; </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a655865b9b8cb3f494030d9d3495ac254"> 51</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a655865b9b8cb3f494030d9d3495ac254">r12</a>; </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a5a6867b4faef2b0eac4ec845f56b3941"> 52</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a5a6867b4faef2b0eac4ec845f56b3941">r11</a>; </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a7ede949bc39851eec7e380a54734db8e"> 53</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a7ede949bc39851eec7e380a54734db8e">r10</a>; </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a361450c3dac5aa32b6f066cf730a2747"> 54</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a361450c3dac5aa32b6f066cf730a2747">r9</a>; </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a75d81f42e93bf67cb3a1906e7ea4df0c"> 55</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a75d81f42e93bf67cb3a1906e7ea4df0c">r8</a>; </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#ad3a37cb3692d82abca38256aecba22b6"> 56</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#ad3a37cb3692d82abca38256aecba22b6">rdi</a>; </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a8562534a6a2e55bc84501622d92882f9"> 57</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a8562534a6a2e55bc84501622d92882f9">rsi</a>; </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#aa23c9b82b83ee1872c66d76dafb39b2c"> 58</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#aa23c9b82b83ee1872c66d76dafb39b2c">rbp</a>; </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a2be073c1b735271c5c2b92a63c46c102">pfa</a>; </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#aca015d76c19d03732e7c769422709f8c"> 60</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#aca015d76c19d03732e7c769422709f8c">rbx</a>; </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a2bbdf038046984c8abadb7021598d2fb"> 61</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a2bbdf038046984c8abadb7021598d2fb">rdx</a>; </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a358a515c1ee66c40c5bb17615b3eb108"> 62</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a358a515c1ee66c40c5bb17615b3eb108">rcx</a>; </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a09ecddb04af68e1cd74344e341846ff9"> 63</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a09ecddb04af68e1cd74344e341846ff9">rax</a>; </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a03e43f336572220b23ee422854300fa8"> 65</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a03e43f336572220b23ee422854300fa8">trapno</a>; </div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#ac102c96b13a77cf49c2bceb395e3bc49">err</a>; </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a3a0d58ca8a29bc67e3f8aab588a01e80">ip</a>; </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a545c05b292c05236b178d759c6b49496"> 68</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a545c05b292c05236b178d759c6b49496">dummy1</a>;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a416000fd7366f3aea4b67c66a8bf5a54">flags</a>; </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a1672d62a7b46f3297ca7aa87a01efe6e">sp</a>; </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"><a class="line" href="structl4__exc__regs__t.html#a2859c35188a8e2f5fd17e1f1e7c27390"> 71</a></span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_variable" href="structl4__exc__regs__t.html#a2859c35188a8e2f5fd17e1f1e7c27390">ss</a>; </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> fs_base;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> gs_base;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <a class="code hl_typedef" href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a> ds, es, fs, gs;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="group__l4__utcb__api__amd64.html#gaab4bad09a76b7810f882af3d563e9a3f"> 75</a></span>} <a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a>;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span><span class="preprocessor">#include_next &lt;l4/sys/utcb.h&gt;</span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span><span class="comment">/*</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span><span class="comment"> * ==================================================================</span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="comment"> * Implementations.</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="comment"> */</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> </div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *l4_utcb_direct(<span class="keywordtype">void</span>) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span>{</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <a class="code hl_typedef" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *res;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> __asm__ ( <span class="stringliteral">&quot;mov %%gs:0, %0 \n&quot;</span> : <span class="stringliteral">&quot;=r&quot;</span>(res));</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">return</span> res;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span>}</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> </div>
<div class="foldopen" id="foldopen00092" data-start="{" data-end="}">
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="group__l4__utcb__exc__api.html#gab921a807cb317813976ab53f7fca5be5"> 92</a></span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_function" href="group__l4__utcb__exc__api.html#gab921a807cb317813976ab53f7fca5be5">l4_utcb_exc_pc</a>(<a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> <span class="keyword">const</span> *u) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span>{</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">return</span> u-&gt;ip;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span>}</div>
</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
<div class="foldopen" id="foldopen00097" data-start="{" data-end="}">
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"><a class="line" href="group__l4__utcb__exc__api.html#gaf5c4da380dfe89136d5b509e5a3afde2"> 97</a></span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span> <a class="code hl_function" href="group__l4__utcb__exc__api.html#gaf5c4da380dfe89136d5b509e5a3afde2">l4_utcb_exc_pc_set</a>(<a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> *u, <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> pc) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span>{</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> u-&gt;ip = pc;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span>}</div>
</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="foldopen" id="foldopen00102" data-start="{" data-end="}">
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"><a class="line" href="group__l4__utcb__exc__api.html#gad1b2921ad31b2d59b2e80feb42d6f4f3"> 102</a></span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> <a class="code hl_function" href="group__l4__utcb__exc__api.html#gad1b2921ad31b2d59b2e80feb42d6f4f3">l4_utcb_exc_typeval</a>(<a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> <span class="keyword">const</span> *u) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span>{</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">return</span> u-&gt;trapno;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span>}</div>
</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="foldopen" id="foldopen00107" data-start="{" data-end="}">
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"><a class="line" href="group__l4__utcb__exc__api.html#gaa2cfac5dedec0954915dc8e846fda70d"> 107</a></span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span> <a class="code hl_function" href="group__l4__utcb__exc__api.html#gaa2cfac5dedec0954915dc8e846fda70d">l4_utcb_exc_is_pf</a>(<a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> <span class="keyword">const</span> *u) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>{</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">return</span> u-&gt;trapno == 14;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span>}</div>
</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="foldopen" id="foldopen00112" data-start="{" data-end="}">
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"><a class="line" href="group__l4__utcb__exc__api.html#ga0e11bd9dad8df6d98020621afa8fc292"> 112</a></span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <a class="code hl_typedef" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> <a class="code hl_function" href="group__l4__utcb__exc__api.html#ga0e11bd9dad8df6d98020621afa8fc292">l4_utcb_exc_pfa</a>(<a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> <span class="keyword">const</span> *u) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span>{</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">return</span> (u-&gt;pfa &amp; ~7UL) | (u-&gt;err &amp; 2);</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span>}</div>
</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="foldopen" id="foldopen00117" data-start="{" data-end="}">
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"><a class="line" href="group__l4__utcb__exc__api.html#ga3d8d1479a472e7f21d5d5092b4f94770"> 117</a></span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span> <a class="code hl_function" href="group__l4__utcb__exc__api.html#ga3d8d1479a472e7f21d5d5092b4f94770">l4_utcb_exc_is_ex_regs_exception</a>(<a class="code hl_struct" href="structl4__exc__regs__t.html">l4_exc_regs_t</a> <span class="keyword">const</span> *u) <a class="code hl_define" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span>{</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">return</span> <a class="code hl_function" href="group__l4__utcb__exc__api.html#gad1b2921ad31b2d59b2e80feb42d6f4f3">l4_utcb_exc_typeval</a>(u) == 0xff;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span>}</div>
</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span><span class="preprocessor">#endif </span><span class="comment">/* ! __L4_SYS__INCLUDE__ARCH_AMD64__UTCB_H__ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga4087b991c40c0d2fcde9ca331049a4d4"><div class="ttname"><a href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a></div><div class="ttdeci">unsigned long l4_addr_t</div><div class="ttdoc">Address type.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00034">l4int.h:34</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_gae8d67914f723bf843df6f311ad2619a2"><div class="ttname"><a href="group__l4__basic__types.html#gae8d67914f723bf843df6f311ad2619a2">l4_uint16_t</a></div><div class="ttdeci">unsigned short int l4_uint16_t</div><div class="ttdoc">Unsigned 16bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00027">l4int.h:27</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api__amd64_html_ga2cdc0b9ac36a408db0232684fa25009e"><div class="ttname"><a href="group__l4__utcb__api__amd64.html#ga2cdc0b9ac36a408db0232684fa25009e">L4_utcb_consts_amd64</a></div><div class="ttdeci">L4_utcb_consts_amd64</div><div class="ttdoc">UTCB constants for AMD64.</div><div class="ttdef"><b>Definition</b> <a href="#l00028">utcb.h:29</a></div></div>
<div class="ttc" id="agroup__l4__utcb__api_html_ga89be8a86d11c1d532b636cc2df1330fb"><div class="ttname"><a href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a></div><div class="ttdeci">struct l4_utcb_t l4_utcb_t</div><div class="ttdoc">Opaque type for the UTCB.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2utcb_8h_source.html#l00056">utcb.h:56</a></div></div>
<div class="ttc" id="agroup__l4__utcb__exc__api_html_ga0e11bd9dad8df6d98020621afa8fc292"><div class="ttname"><a href="group__l4__utcb__exc__api.html#ga0e11bd9dad8df6d98020621afa8fc292">l4_utcb_exc_pfa</a></div><div class="ttdeci">l4_addr_t l4_utcb_exc_pfa(l4_exc_regs_t const *u) L4_NOTHROW</div><div class="ttdoc">Function to get the L4 style page fault address out of an exception.</div><div class="ttdef"><b>Definition</b> <a href="#l00112">utcb.h:112</a></div></div>
<div class="ttc" id="agroup__l4__utcb__exc__api_html_ga3d8d1479a472e7f21d5d5092b4f94770"><div class="ttname"><a href="group__l4__utcb__exc__api.html#ga3d8d1479a472e7f21d5d5092b4f94770">l4_utcb_exc_is_ex_regs_exception</a></div><div class="ttdeci">int l4_utcb_exc_is_ex_regs_exception(l4_exc_regs_t const *u) L4_NOTHROW</div><div class="ttdoc">Check whether an exception IPC was triggered via l4_thread_ex_regs().</div><div class="ttdef"><b>Definition</b> <a href="#l00117">utcb.h:117</a></div></div>
<div class="ttc" id="agroup__l4__utcb__exc__api_html_gaa2cfac5dedec0954915dc8e846fda70d"><div class="ttname"><a href="group__l4__utcb__exc__api.html#gaa2cfac5dedec0954915dc8e846fda70d">l4_utcb_exc_is_pf</a></div><div class="ttdeci">int l4_utcb_exc_is_pf(l4_exc_regs_t const *u) L4_NOTHROW</div><div class="ttdoc">Check whether an exception IPC is a page fault.</div><div class="ttdef"><b>Definition</b> <a href="#l00107">utcb.h:107</a></div></div>
<div class="ttc" id="agroup__l4__utcb__exc__api_html_gab921a807cb317813976ab53f7fca5be5"><div class="ttname"><a href="group__l4__utcb__exc__api.html#gab921a807cb317813976ab53f7fca5be5">l4_utcb_exc_pc</a></div><div class="ttdeci">l4_umword_t l4_utcb_exc_pc(l4_exc_regs_t const *u) L4_NOTHROW</div><div class="ttdoc">Access function to get the program counter of the exception state.</div><div class="ttdef"><b>Definition</b> <a href="#l00092">utcb.h:92</a></div></div>
<div class="ttc" id="agroup__l4__utcb__exc__api_html_gad1b2921ad31b2d59b2e80feb42d6f4f3"><div class="ttname"><a href="group__l4__utcb__exc__api.html#gad1b2921ad31b2d59b2e80feb42d6f4f3">l4_utcb_exc_typeval</a></div><div class="ttdeci">l4_umword_t l4_utcb_exc_typeval(l4_exc_regs_t const *u) L4_NOTHROW</div><div class="ttdoc">Get the value out of an exception UTCB that describes the type of exception.</div><div class="ttdef"><b>Definition</b> <a href="#l00102">utcb.h:102</a></div></div>
<div class="ttc" id="agroup__l4__utcb__exc__api_html_gaf5c4da380dfe89136d5b509e5a3afde2"><div class="ttname"><a href="group__l4__utcb__exc__api.html#gaf5c4da380dfe89136d5b509e5a3afde2">l4_utcb_exc_pc_set</a></div><div class="ttdeci">void l4_utcb_exc_pc_set(l4_exc_regs_t *u, l4_addr_t pc) L4_NOTHROW</div><div class="ttdoc">Set the program counter register in the exception state.</div><div class="ttdef"><b>Definition</b> <a href="#l00097">utcb.h:97</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga362dfa378e662dd04f710a23fc7ea931"><div class="ttname"><a href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></div><div class="ttdeci">#define L4_NOTHROW</div><div class="ttdoc">Mark a function declaration and definition as never throwing an exception.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00161">compiler.h:161</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="al4_2sys_2types_8h_html"><div class="ttname"><a href="l4_2sys_2types_8h.html">types.h</a></div><div class="ttdoc">Common L4 ABI Data Types.</div></div>
<div class="ttc" id="astructl4__exc__regs__t_html"><div class="ttname"><a href="structl4__exc__regs__t.html">l4_exc_regs_t</a></div><div class="ttdoc">UTCB structure for exceptions.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2utcb_8h_source.html#l00027">utcb.h:28</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a03e43f336572220b23ee422854300fa8"><div class="ttname"><a href="structl4__exc__regs__t.html#a03e43f336572220b23ee422854300fa8">l4_exc_regs_t::trapno</a></div><div class="ttdeci">l4_umword_t trapno</div><div class="ttdoc">trap number</div><div class="ttdef"><b>Definition</b> <a href="#l00065">utcb.h:65</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a09ecddb04af68e1cd74344e341846ff9"><div class="ttname"><a href="structl4__exc__regs__t.html#a09ecddb04af68e1cd74344e341846ff9">l4_exc_regs_t::rax</a></div><div class="ttdeci">l4_umword_t rax</div><div class="ttdoc">rax</div><div class="ttdef"><b>Definition</b> <a href="#l00063">utcb.h:63</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a1672d62a7b46f3297ca7aa87a01efe6e"><div class="ttname"><a href="structl4__exc__regs__t.html#a1672d62a7b46f3297ca7aa87a01efe6e">l4_exc_regs_t::sp</a></div><div class="ttdeci">l4_umword_t sp</div><div class="ttdoc">stack pointer</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2utcb_8h_source.html#l00033">utcb.h:33</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a2859c35188a8e2f5fd17e1f1e7c27390"><div class="ttname"><a href="structl4__exc__regs__t.html#a2859c35188a8e2f5fd17e1f1e7c27390">l4_exc_regs_t::ss</a></div><div class="ttdeci">l4_umword_t ss</div><div class="ttdoc">stack segment register</div><div class="ttdef"><b>Definition</b> <a href="#l00071">utcb.h:71</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a2b2a7c336aa779e1b33af00339d816f8"><div class="ttname"><a href="structl4__exc__regs__t.html#a2b2a7c336aa779e1b33af00339d816f8">l4_exc_regs_t::r14</a></div><div class="ttdeci">l4_umword_t r14</div><div class="ttdoc">r14</div><div class="ttdef"><b>Definition</b> <a href="#l00049">utcb.h:49</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a2bbdf038046984c8abadb7021598d2fb"><div class="ttname"><a href="structl4__exc__regs__t.html#a2bbdf038046984c8abadb7021598d2fb">l4_exc_regs_t::rdx</a></div><div class="ttdeci">l4_umword_t rdx</div><div class="ttdoc">rdx</div><div class="ttdef"><b>Definition</b> <a href="#l00061">utcb.h:61</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a2be073c1b735271c5c2b92a63c46c102"><div class="ttname"><a href="structl4__exc__regs__t.html#a2be073c1b735271c5c2b92a63c46c102">l4_exc_regs_t::pfa</a></div><div class="ttdeci">l4_umword_t pfa</div><div class="ttdoc">page fault address</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2utcb_8h_source.html#l00029">utcb.h:29</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a358a515c1ee66c40c5bb17615b3eb108"><div class="ttname"><a href="structl4__exc__regs__t.html#a358a515c1ee66c40c5bb17615b3eb108">l4_exc_regs_t::rcx</a></div><div class="ttdeci">l4_umword_t rcx</div><div class="ttdoc">rcx</div><div class="ttdef"><b>Definition</b> <a href="#l00062">utcb.h:62</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a361450c3dac5aa32b6f066cf730a2747"><div class="ttname"><a href="structl4__exc__regs__t.html#a361450c3dac5aa32b6f066cf730a2747">l4_exc_regs_t::r9</a></div><div class="ttdeci">l4_umword_t r9</div><div class="ttdoc">r9</div><div class="ttdef"><b>Definition</b> <a href="#l00054">utcb.h:54</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a3a0d58ca8a29bc67e3f8aab588a01e80"><div class="ttname"><a href="structl4__exc__regs__t.html#a3a0d58ca8a29bc67e3f8aab588a01e80">l4_exc_regs_t::ip</a></div><div class="ttdeci">l4_umword_t ip</div><div class="ttdoc">instruction pointer</div><div class="ttdef"><b>Definition</b> <a href="arm64_2l4_2sys_2utcb_8h_source.html#l00036">utcb.h:36</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a416000fd7366f3aea4b67c66a8bf5a54"><div class="ttname"><a href="structl4__exc__regs__t.html#a416000fd7366f3aea4b67c66a8bf5a54">l4_exc_regs_t::flags</a></div><div class="ttdeci">l4_umword_t flags</div><div class="ttdoc">rflags</div><div class="ttdef"><b>Definition</b> <a href="arm64_2l4_2sys_2utcb_8h_source.html#l00037">utcb.h:37</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a545c05b292c05236b178d759c6b49496"><div class="ttname"><a href="structl4__exc__regs__t.html#a545c05b292c05236b178d759c6b49496">l4_exc_regs_t::dummy1</a></div><div class="ttdeci">l4_umword_t dummy1</div><div class="ttdoc">dummy</div><div class="ttdef"><b>Definition</b> <a href="#l00068">utcb.h:68</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a5a6867b4faef2b0eac4ec845f56b3941"><div class="ttname"><a href="structl4__exc__regs__t.html#a5a6867b4faef2b0eac4ec845f56b3941">l4_exc_regs_t::r11</a></div><div class="ttdeci">l4_umword_t r11</div><div class="ttdoc">r11</div><div class="ttdef"><b>Definition</b> <a href="#l00052">utcb.h:52</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a655865b9b8cb3f494030d9d3495ac254"><div class="ttname"><a href="structl4__exc__regs__t.html#a655865b9b8cb3f494030d9d3495ac254">l4_exc_regs_t::r12</a></div><div class="ttdeci">l4_umword_t r12</div><div class="ttdoc">r12</div><div class="ttdef"><b>Definition</b> <a href="#l00051">utcb.h:51</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a75d81f42e93bf67cb3a1906e7ea4df0c"><div class="ttname"><a href="structl4__exc__regs__t.html#a75d81f42e93bf67cb3a1906e7ea4df0c">l4_exc_regs_t::r8</a></div><div class="ttdeci">l4_umword_t r8</div><div class="ttdoc">r8</div><div class="ttdef"><b>Definition</b> <a href="#l00055">utcb.h:55</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a7ede949bc39851eec7e380a54734db8e"><div class="ttname"><a href="structl4__exc__regs__t.html#a7ede949bc39851eec7e380a54734db8e">l4_exc_regs_t::r10</a></div><div class="ttdeci">l4_umword_t r10</div><div class="ttdoc">r10</div><div class="ttdef"><b>Definition</b> <a href="#l00053">utcb.h:53</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a807704d01b146ba0efdf2599b142e958"><div class="ttname"><a href="structl4__exc__regs__t.html#a807704d01b146ba0efdf2599b142e958">l4_exc_regs_t::r15</a></div><div class="ttdeci">l4_umword_t r15</div><div class="ttdoc">r15</div><div class="ttdef"><b>Definition</b> <a href="#l00048">utcb.h:48</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_a8562534a6a2e55bc84501622d92882f9"><div class="ttname"><a href="structl4__exc__regs__t.html#a8562534a6a2e55bc84501622d92882f9">l4_exc_regs_t::rsi</a></div><div class="ttdeci">l4_umword_t rsi</div><div class="ttdoc">rsi</div><div class="ttdef"><b>Definition</b> <a href="#l00057">utcb.h:57</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_aa23c9b82b83ee1872c66d76dafb39b2c"><div class="ttname"><a href="structl4__exc__regs__t.html#aa23c9b82b83ee1872c66d76dafb39b2c">l4_exc_regs_t::rbp</a></div><div class="ttdeci">l4_umword_t rbp</div><div class="ttdoc">rbp</div><div class="ttdef"><b>Definition</b> <a href="#l00058">utcb.h:58</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_ac102c96b13a77cf49c2bceb395e3bc49"><div class="ttname"><a href="structl4__exc__regs__t.html#ac102c96b13a77cf49c2bceb395e3bc49">l4_exc_regs_t::err</a></div><div class="ttdeci">l4_umword_t err</div><div class="ttdoc">error code</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2utcb_8h_source.html#l00030">utcb.h:30</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_aca015d76c19d03732e7c769422709f8c"><div class="ttname"><a href="structl4__exc__regs__t.html#aca015d76c19d03732e7c769422709f8c">l4_exc_regs_t::rbx</a></div><div class="ttdeci">l4_umword_t rbx</div><div class="ttdoc">rbx</div><div class="ttdef"><b>Definition</b> <a href="#l00060">utcb.h:60</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_ad3a37cb3692d82abca38256aecba22b6"><div class="ttname"><a href="structl4__exc__regs__t.html#ad3a37cb3692d82abca38256aecba22b6">l4_exc_regs_t::rdi</a></div><div class="ttdeci">l4_umword_t rdi</div><div class="ttdoc">rdi</div><div class="ttdef"><b>Definition</b> <a href="#l00056">utcb.h:56</a></div></div>
<div class="ttc" id="astructl4__exc__regs__t_html_afa8b16881175d8480517d9a0ed189fc9"><div class="ttname"><a href="structl4__exc__regs__t.html#afa8b16881175d8480517d9a0ed189fc9">l4_exc_regs_t::r13</a></div><div class="ttdeci">l4_umword_t r13</div><div class="ttdoc">r13</div><div class="ttdef"><b>Definition</b> <a href="#l00050">utcb.h:50</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="amd64_2l4_2sys_2utcb_8h.html">utcb.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,121 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/sys/vm.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2sys_2vm_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">vm.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/*</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * (c) 2008-2009 Adam Lackorzynski &lt;adam@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * economic rights: Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> *</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> */</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &lt;l4/sys/__vm-svm.h&gt;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &lt;l4/sys/__vm-vmx.h&gt;</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><b>vm.h</b></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,133 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/util/bitops_arch.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2util_2bitops__arch_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">bitops_arch.h File Reference<div class="ingroups"><a class="el" href="group__l4util__api.html">Utility Functions</a> &raquo; <a class="el" href="group__l4util__bitops.html">Bit Manipulation</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>amd64 bit manipulation functions
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="compiler_8h_source.html">l4/sys/compiler.h</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for bitops_arch.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2util_2bitops__arch_8h__incl.svg" width="163" height="198"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="amd64_2l4_2util_2bitops__arch_8h_source.html">Go to the source code of this file.</a></p>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>amd64 bit manipulation functions </p>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2util_2bitops__arch_8h_source.html">bitops_arch.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>util</b></li><li class="navelem"><a href="amd64_2l4_2util_2bitops__arch_8h.html">bitops_arch.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,7 @@
<map id="amd64/l4/util/bitops_arch.h" name="amd64/l4/util/bitops_arch.h">
<area shape="rect" id="Node000001" title="amd64 bit manipulation functions" alt="" coords="5,5,157,45"/>
<area shape="rect" id="Node000002" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="15,93,147,119"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="84,46,84,79,79,79,79,46"/>
<area shape="rect" id="Node000003" title=" " alt="" coords="20,167,143,192"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="84,119,84,153,79,153,79,119"/>
</map>

View File

@@ -0,0 +1 @@
dbf669f31607996c5e32d265207703c6

View File

@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: amd64/l4/util/bitops_arch.h Pages: 1 -->
<svg width="122pt" height="148pt"
viewBox="0.00 0.00 122.00 148.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 144)">
<title>amd64/l4/util/bitops_arch.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="amd64 bit manipulation functions">
<polygon fill="#999999" stroke="#666666" points="114,-140 0,-140 0,-110 114,-110 114,-140"/>
<text text-anchor="start" x="8" y="-128" font-family="Helvetica,sans-Serif" font-size="10.00">amd64/l4/util/bitops</text>
<text text-anchor="middle" x="57" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">_arch.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="compiler_8h.html" target="_top" xlink:title="L4 compiler related defines.">
<polygon fill="white" stroke="#666666" points="106.5,-74 7.5,-74 7.5,-55 106.5,-55 106.5,-74"/>
<text text-anchor="middle" x="57" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/compiler.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M57,-109.84C57,-102.21 57,-92.7 57,-84.45"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="60.5,-84.27 57,-74.27 53.5,-84.27 60.5,-84.27"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="103,-19 11,-19 11,0 103,0 103,-19"/>
<text text-anchor="middle" x="57" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">l4/sys/linkage.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M57,-54.75C57,-47.8 57,-37.85 57,-29.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="60.5,-29.09 57,-19.09 53.5,-29.09 60.5,-29.09"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,391 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/util/bitops_arch.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2util_2bitops__arch_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">bitops_arch.h</div></div>
</div><!--header-->
<div class="contents">
<a href="amd64_2l4_2util_2bitops__arch_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright (C) 2000-2009 Technische Universität Dresden (Germany)</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Copyright (C) 2016, 2022, 2024 Kernkonzept GmbH. All rights reserved.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * Author(s): Lars Reuther &lt;reuther@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Torsten Frenzel &lt;frenzel@os.inf.tu-dresden.de&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Frank Mehnert &lt;frank.mehnert@kernkonzept.com&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * License: see LICENSE.spdx (in this directory or the directories above)</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> */</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &lt;<a class="code" href="compiler_8h.html">l4/sys/compiler.h</a>&gt;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment">/*</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> * Note: The following Assembler statement may produce wrong code:</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"> * asm volatile (&quot;btsl %1, %2&quot; : &quot;=@ccc&quot;(r) : &quot;Jr&quot;(63), &quot;m&quot;(m) : &quot;memory&quot;);</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment"> *</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"> * The compiler might chose the first variant because the bit number is smaller</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment"> * than 64. However, &#39;bts&#39; is encoded as 32-bit variant (&#39;btsl&#39;) and thus only</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> * supports immediate bit values up to 31. Some assemblers support immediate</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment"> * offsets &gt; 31 by adapting the memory address accordingly but GAS does not.</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"> * With GAS, the instruction will encode an immediate value of 63 but the CPU</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment"> * will set bit 31 instead of bit 63!</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment"> *</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="comment"> * Therefore, if we would use &#39;btsl&#39; instead of &#39;btsq&#39;, the correct constraint</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="comment"> * for the bit number parameter would be &quot;Ir&quot; instead of &quot;Jr&quot;.</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment"> */</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><a class="code hl_define" href="group__l4sys__defines.html#ga5f022ce5422df9cc6ed415e2bfc90f59">L4_BEGIN_DECLS</a></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment">/* set bit */</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_SET_BIT</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span>l4util_set_bit(<span class="keywordtype">int</span> b, <span class="keyword">volatile</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> * dest)</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span>{</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> __asm__ __volatile__</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> (</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="stringliteral">&quot;lock; btsq %1,%0 \n\t&quot;</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> :</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> :</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="stringliteral">&quot;m&quot;</span> (*dest), <span class="comment">/* 0 mem, destination operand */</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="stringliteral">&quot;Jr&quot;</span> ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)b) <span class="comment">/* 1, bit number */</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> :</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="stringliteral">&quot;memory&quot;</span>, <span class="stringliteral">&quot;cc&quot;</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> );</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span>}</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="comment">/* clear bit */</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_CLEAR_BIT</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>l4util_clear_bit(<span class="keywordtype">int</span> b, <span class="keyword">volatile</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> * dest)</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>{</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> __asm__ __volatile__</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> (</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="stringliteral">&quot;lock; btrq %1,%0 \n\t&quot;</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> :</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> :</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="stringliteral">&quot;m&quot;</span> (*dest), <span class="comment">/* 0 mem, destination operand */</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="stringliteral">&quot;Jr&quot;</span> ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)b) <span class="comment">/* 1, bit number */</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> :</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="stringliteral">&quot;memory&quot;</span>, <span class="stringliteral">&quot;cc&quot;</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> );</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span>}</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span><span class="comment">/* change bit */</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_COMPLEMENT_BIT</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span>l4util_complement_bit(<span class="keywordtype">int</span> b, <span class="keyword">volatile</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> * dest)</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span>{</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> __asm__ __volatile__</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> (</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="stringliteral">&quot;lock; btcq %1,%0 \n\t&quot;</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> :</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> :</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="stringliteral">&quot;m&quot;</span> (*dest), <span class="comment">/* 0 mem, destination operand */</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="stringliteral">&quot;Jr&quot;</span> ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)b) <span class="comment">/* 1, bit number */</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> :</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="stringliteral">&quot;memory&quot;</span>, <span class="stringliteral">&quot;cc&quot;</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> );</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>}</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span><span class="comment">/* test bit */</span></div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_TEST_BIT</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span>l4util_test_bit(<span class="keywordtype">int</span> b, <span class="keyword">const</span> <span class="keyword">volatile</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> * dest)</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span>{</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9eb1a1943b4c64f3248fe938b540119b">l4_int8_t</a> bit;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> </div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> __asm__ __volatile__</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> (</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="stringliteral">&quot;btq %2,%1 \n\t&quot;</span></div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> :</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="stringliteral">&quot;=@ccc&quot;</span> (bit) <span class="comment">/* 0, old bit value */</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> :</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="stringliteral">&quot;m&quot;</span> (*dest), <span class="comment">/* 1 mem, destination operand */</span></div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="stringliteral">&quot;Jr&quot;</span> ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)b) <span class="comment">/* 2, bit number */</span></div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> :</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="stringliteral">&quot;memory&quot;</span></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> );</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">return</span> bit;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span>}</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span><span class="comment">/* bit test and set */</span></div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_BIT_TEST_AND_SET</span></div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span>l4util_bts(<span class="keywordtype">int</span> b, <span class="keyword">volatile</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> * dest)</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span>{</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9eb1a1943b4c64f3248fe938b540119b">l4_int8_t</a> bit;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> __asm__ __volatile__</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> (</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="stringliteral">&quot;lock; btsq %2,%1 \n\t&quot;</span></div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> :</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="stringliteral">&quot;=@ccc&quot;</span> (bit) <span class="comment">/* 0, old bit value */</span></div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> :</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="stringliteral">&quot;m&quot;</span> (*dest), <span class="comment">/* 1 mem, destination operand */</span></div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="stringliteral">&quot;Jr&quot;</span> ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)b) <span class="comment">/* 2, bit number */</span></div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> :</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="stringliteral">&quot;memory&quot;</span></div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> );</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> </div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">return</span> bit;</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span>}</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span><span class="comment">/* bit test and reset */</span></div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_BIT_TEST_AND_RESET</span></div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span>l4util_btr(<span class="keywordtype">int</span> b, <span class="keyword">volatile</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> * dest)</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span>{</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9eb1a1943b4c64f3248fe938b540119b">l4_int8_t</a> bit;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> </div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> __asm__ __volatile__</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> (</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="stringliteral">&quot;lock; btrq %2,%1 \n\t&quot;</span></div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> :</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="stringliteral">&quot;=@ccc&quot;</span> (bit) <span class="comment">/* 0, old bit value */</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> :</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <span class="stringliteral">&quot;m&quot;</span> (*dest), <span class="comment">/* 1 mem, destination operand */</span></div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="stringliteral">&quot;Jr&quot;</span> ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)b) <span class="comment">/* 2, bit number */</span></div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> :</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="stringliteral">&quot;memory&quot;</span></div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> );</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> </div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">return</span> bit;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span>}</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span><span class="comment">/* bit test and complement */</span></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_BIT_TEST_AND_COMPLEMENT</span></div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span>l4util_btc(<span class="keywordtype">int</span> b, <span class="keyword">volatile</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> * dest)</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span>{</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga9eb1a1943b4c64f3248fe938b540119b">l4_int8_t</a> bit;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> </div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> __asm__ __volatile__</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> (</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> <span class="stringliteral">&quot;lock; btcq %2,%1 \n\t&quot;</span></div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> :</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="stringliteral">&quot;=@ccc&quot;</span> (bit) <span class="comment">/* 0, old bit value */</span></div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> :</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <span class="stringliteral">&quot;m&quot;</span> (*dest), <span class="comment">/* 1 mem, destination operand */</span></div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <span class="stringliteral">&quot;Jr&quot;</span> ((<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a>)b) <span class="comment">/* 2, bit number */</span></div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> :</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <span class="stringliteral">&quot;memory&quot;</span></div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> );</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">return</span> bit;</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span>}</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> </div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span><span class="comment">/* bit scan reverse */</span></div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_BIT_SCAN_REVERSE</span></div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span>l4util_bsr(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> word)</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span>{</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> tmp;</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> </div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">if</span> (<a class="code hl_define" href="group__l4sys__defines.html#ga3df4200910f2664b97397c23693beeb0">L4_UNLIKELY</a>(word == 0))</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">return</span> -1;</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> __asm__ __volatile__</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> (</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="stringliteral">&quot;bsrq %1,%0 \n\t&quot;</span></div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> :</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="stringliteral">&quot;=r&quot;</span> (tmp) <span class="comment">/* 0, index of most significant set bit */</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> :</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="stringliteral">&quot;r&quot;</span> (word) <span class="comment">/* 1, argument */</span></div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> );</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">return</span> tmp;</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span>}</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> </div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span><span class="comment">/* bit scan forward */</span></div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_BIT_SCAN_FORWARD</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span>l4util_bsf(<a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> word)</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span>{</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> tmp;</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> </div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">if</span> (<a class="code hl_define" href="group__l4sys__defines.html#ga3df4200910f2664b97397c23693beeb0">L4_UNLIKELY</a>(word == 0))</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">return</span> -1;</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> </div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> __asm__ __volatile__</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> (</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <span class="stringliteral">&quot;bsfq %1,%0 \n\t&quot;</span></div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> :</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <span class="stringliteral">&quot;=r&quot;</span> (tmp) <span class="comment">/* 0, index of least significant set bit */</span></div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> :</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="stringliteral">&quot;r&quot;</span> (word) <span class="comment">/* 1, argument */</span></div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> );</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> </div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">return</span> tmp;</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span>}</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> </div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_FIND_FIRST_SET_BIT</span></div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span>l4util_find_first_set_bit(<span class="keyword">const</span> <span class="keywordtype">void</span> * dest, <a class="code hl_typedef" href="group__l4__basic__types.html#ga08c1e83a068ded7add134b188cd44967">l4_size_t</a> size)</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span>{</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga51d9492e7700d70ed35838154ca9b279">l4_mword_t</a> dummy0, dummy1, res;</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> </div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> __asm__ __volatile__</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> (</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> <span class="stringliteral">&quot;repe; scasq \n\t&quot;</span></div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> <span class="stringliteral">&quot;jz 1f \n\t&quot;</span></div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> <span class="stringliteral">&quot;lea -8(%%rdi),%%rdi \n\t&quot;</span></div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> <span class="stringliteral">&quot;bsf (%%rdi),%%rax \n&quot;</span></div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> <span class="stringliteral">&quot;1: \n\t&quot;</span></div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="stringliteral">&quot;sub %%rbx,%%rdi \n\t&quot;</span></div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> <span class="stringliteral">&quot;shl $3,%%rdi \n\t&quot;</span></div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> <span class="stringliteral">&quot;add %%rdi,%%rax \n\t&quot;</span></div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> :</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> <span class="stringliteral">&quot;=a&quot;</span> (res), <span class="stringliteral">&quot;=c&quot;</span> (dummy0), <span class="stringliteral">&quot;=D&quot;</span> (dummy1)</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> :</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <span class="stringliteral">&quot;a&quot;</span> (0), <span class="stringliteral">&quot;b&quot;</span> (dest), <span class="stringliteral">&quot;c&quot;</span> ((size + 63) &gt;&gt; 6), <span class="stringliteral">&quot;D&quot;</span> (dest)</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> :</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="stringliteral">&quot;cc&quot;</span>, <span class="stringliteral">&quot;memory&quot;</span>);</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> </div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">return</span> res;</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span>}</div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> </div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span><span class="preprocessor">#define __L4UTIL_BITOPS_HAVE_ARCH_FIND_FIRST_ZERO_BIT</span></div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span><a class="code hl_define" href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a> <span class="keywordtype">int</span></div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span>l4util_find_first_zero_bit(<span class="keyword">const</span> <span class="keywordtype">void</span> * dest, <a class="code hl_typedef" href="group__l4__basic__types.html#ga08c1e83a068ded7add134b188cd44967">l4_size_t</a> size)</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span>{</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> <a class="code hl_typedef" href="group__l4__basic__types.html#ga51d9492e7700d70ed35838154ca9b279">l4_mword_t</a> dummy0, dummy1, dummy2, res;</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> </div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">if</span> (!size)</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> </div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> __asm__ __volatile__</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> (</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="stringliteral">&quot;repe; scasq \n\t&quot;</span></div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <span class="stringliteral">&quot;je 1f \n\t&quot;</span></div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> <span class="stringliteral">&quot;xor -8(%%rdi),%%rax \n\t&quot;</span></div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> <span class="stringliteral">&quot;sub $8,%%rdi \n\t&quot;</span></div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> <span class="stringliteral">&quot;bsf %%rax,%%rdx \n&quot;</span></div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> <span class="stringliteral">&quot;1: \n\t&quot;</span></div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <span class="stringliteral">&quot;sub %%rsi,%%rdi \n\t&quot;</span></div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> <span class="stringliteral">&quot;shl $3,%%rdi \n\t&quot;</span></div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <span class="stringliteral">&quot;add %%rdi,%%rdx \n\t&quot;</span></div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> :</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> <span class="stringliteral">&quot;=a&quot;</span> (dummy0), <span class="stringliteral">&quot;=c&quot;</span> (dummy1), <span class="stringliteral">&quot;=d&quot;</span> (res), <span class="stringliteral">&quot;=D&quot;</span> (dummy2)</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> :</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> <span class="stringliteral">&quot;a&quot;</span> (~0UL), <span class="stringliteral">&quot;c&quot;</span> ((size + 63) &gt;&gt; 6), <span class="stringliteral">&quot;d&quot;</span> (0), <span class="stringliteral">&quot;D&quot;</span> (dest), <span class="stringliteral">&quot;S&quot;</span> (dest)</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> :</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <span class="stringliteral">&quot;cc&quot;</span>, <span class="stringliteral">&quot;memory&quot;</span>);</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> </div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">return</span> res;</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span>}</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> </div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span><a class="code hl_define" href="group__l4sys__defines.html#ga7b3d88f2118cbb7b8057a860dbdd0381">L4_END_DECLS</a></div>
<div class="ttc" id="acompiler_8h_html"><div class="ttname"><a href="compiler_8h.html">compiler.h</a></div><div class="ttdoc">L4 compiler related defines.</div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga08c1e83a068ded7add134b188cd44967"><div class="ttname"><a href="group__l4__basic__types.html#ga08c1e83a068ded7add134b188cd44967">l4_size_t</a></div><div class="ttdeci">unsigned int l4_size_t</div><div class="ttdoc">Unsigned size type.</div><div class="ttdef"><b>Definition</b> <a href="arm_2l4_2sys_2l4int_8h_source.html#l00024">l4int.h:24</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga1c2c4b333f75b1d05b59855910f2b9cb"><div class="ttname"><a href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a></div><div class="ttdeci">unsigned long l4_umword_t</div><div class="ttdoc">Unsigned machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00040">l4int.h:40</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga51d9492e7700d70ed35838154ca9b279"><div class="ttname"><a href="group__l4__basic__types.html#ga51d9492e7700d70ed35838154ca9b279">l4_mword_t</a></div><div class="ttdeci">signed long l4_mword_t</div><div class="ttdoc">Signed machine word.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00037">l4int.h:37</a></div></div>
<div class="ttc" id="agroup__l4__basic__types_html_ga9eb1a1943b4c64f3248fe938b540119b"><div class="ttname"><a href="group__l4__basic__types.html#ga9eb1a1943b4c64f3248fe938b540119b">l4_int8_t</a></div><div class="ttdeci">signed char l4_int8_t</div><div class="ttdoc">Signed 8bit value.</div><div class="ttdef"><b>Definition</b> <a href="l4_2sys_2l4int_8h_source.html#l00024">l4int.h:24</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga3df4200910f2664b97397c23693beeb0"><div class="ttname"><a href="group__l4sys__defines.html#ga3df4200910f2664b97397c23693beeb0">L4_UNLIKELY</a></div><div class="ttdeci">#define L4_UNLIKELY(x)</div><div class="ttdoc">Expression is unlikely to execute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00284">compiler.h:284</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga427377e23e3680dc178035d391b2ca45"><div class="ttname"><a href="group__l4sys__defines.html#ga427377e23e3680dc178035d391b2ca45">L4_INLINE</a></div><div class="ttdeci">#define L4_INLINE</div><div class="ttdoc">L4 Inline function attribute.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00051">compiler.h:51</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga5f022ce5422df9cc6ed415e2bfc90f59"><div class="ttname"><a href="group__l4sys__defines.html#ga5f022ce5422df9cc6ed415e2bfc90f59">L4_BEGIN_DECLS</a></div><div class="ttdeci">#define L4_BEGIN_DECLS</div><div class="ttdoc">Start section with C types and functions.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00165">compiler.h:165</a></div></div>
<div class="ttc" id="agroup__l4sys__defines_html_ga7b3d88f2118cbb7b8057a860dbdd0381"><div class="ttname"><a href="group__l4sys__defines.html#ga7b3d88f2118cbb7b8057a860dbdd0381">L4_END_DECLS</a></div><div class="ttdeci">#define L4_END_DECLS</div><div class="ttdoc">End section with C types and functions.</div><div class="ttdef"><b>Definition</b> <a href="compiler_8h_source.html#l00166">compiler.h:166</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>util</b></li><li class="navelem"><a href="amd64_2l4_2util_2bitops__arch_8h.html">bitops_arch.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,147 @@
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: amd64/l4/util/cpu.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('amd64_2l4_2util_2cpu_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">cpu.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>CPU related functions.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="compiler_8h_source.html">l4/sys/compiler.h</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for cpu.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="amd64_2l4_2util_2cpu_8h__incl.svg" width="158" height="183"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="amd64_2l4_2util_2cpu_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gae95607a69173331386af6f334be961ce" id="r_gae95607a69173331386af6f334be961ce"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__cpu.html#gae95607a69173331386af6f334be961ce">l4util_cpu_has_cpuid</a> (void)</td></tr>
<tr class="memdesc:gae95607a69173331386af6f334be961ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether the CPU supports the "cpuid" instruction. <br /></td></tr>
<tr class="memitem:ga8c07254a927cdb66b4639c7b977eeead" id="r_ga8c07254a927cdb66b4639c7b977eeead"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__cpu.html#ga8c07254a927cdb66b4639c7b977eeead">l4util_cpu_capabilities</a> (void)</td></tr>
<tr class="memdesc:ga8c07254a927cdb66b4639c7b977eeead"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the CPU capabilities if the "cpuid" instruction is available. <br /></td></tr>
<tr class="memitem:ga7b371adca6d25b6c78978446e7c5d9d7" id="r_ga7b371adca6d25b6c78978446e7c5d9d7"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4util__cpu.html#ga7b371adca6d25b6c78978446e7c5d9d7">l4util_cpu_capabilities_nocheck</a> (void)</td></tr>
<tr class="memdesc:ga7b371adca6d25b6c78978446e7c5d9d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the CPU capabilities. <br /></td></tr>
<tr class="memitem:ga210ddb09b799c674102ae776eaa9e003" id="r_ga210ddb09b799c674102ae776eaa9e003"><td class="memItemLeft" align="right" valign="top">
void&#160;</td><td class="memItemRight" valign="bottom"><b>l4util_cpu_cpuid</b> (unsigned long mode, unsigned long *eax, unsigned long *ebx, unsigned long *ecx, unsigned long *edx)</td></tr>
<tr class="memdesc:ga210ddb09b799c674102ae776eaa9e003"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generic CPUID access function. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>CPU related functions. </p>
<dl class="section author"><dt>Author</dt><dd>Frank Mehnert <a href="#" onclick="location.href='mai'+'lto:'+'fm3'+'@o'+'s.i'+'nf'+'.tu'+'-d'+'res'+'de'+'n.d'+'e'; return false;">fm3@o<span class="obfuscator">.nosp@m.</span>s.in<span class="obfuscator">.nosp@m.</span>f.tu-<span class="obfuscator">.nosp@m.</span>dres<span class="obfuscator">.nosp@m.</span>den.d<span class="obfuscator">.nosp@m.</span>e</a> </dd></dl>
<p class="definition">Definition in file <a class="el" href="amd64_2l4_2util_2cpu_8h_source.html">cpu.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>amd64</b></li><li class="navelem"><b>l4</b></li><li class="navelem"><b>util</b></li><li class="navelem"><a href="amd64_2l4_2util_2cpu_8h.html">cpu.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,7 @@
var amd64_2l4_2util_2cpu_8h =
[
[ "l4util_cpu_capabilities", "group__l4util__cpu.html#ga8c07254a927cdb66b4639c7b977eeead", null ],
[ "l4util_cpu_capabilities_nocheck", "group__l4util__cpu.html#ga7b371adca6d25b6c78978446e7c5d9d7", null ],
[ "l4util_cpu_cpuid", "group__l4util__cpu.html#ga210ddb09b799c674102ae776eaa9e003", null ],
[ "l4util_cpu_has_cpuid", "group__l4util__cpu.html#gae95607a69173331386af6f334be961ce", null ]
];

View File

@@ -0,0 +1,7 @@
<map id="amd64/l4/util/cpu.h" name="amd64/l4/util/cpu.h">
<area shape="rect" id="Node000001" title="CPU related functions." alt="" coords="5,5,152,31"/>
<area shape="rect" id="Node000002" href="$compiler_8h.html" title="L4 compiler related defines." alt="" coords="13,79,145,104"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="81,31,81,65,76,65,76,31"/>
<area shape="rect" id="Node000003" title=" " alt="" coords="17,152,140,177"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="81,104,81,138,76,138,76,104"/>
</map>

View File

@@ -0,0 +1 @@
6c40b032ffa7d862553c9f631d4c97ff

Some files were not shown because too many files have changed in this diff Show More