libclues
Linux C++ Tracing Library
Loading...
Searching...
No Matches
types.hxx
1
#pragma once
2
3
#include <variant>
4
5
#include "fwd.hxx"
6
#include <clues/types.hxx>
7
8
9
/********************************************************************************
10
* this file was generated by parse_syscall_tables.py
11
* based on Linux kernel sources 6.18.18-gentoo
12
********************************************************************************/
13
14
namespace
clues
{
15
16
using
AnySystemCallNr = std::variant<SystemCallNrI386, SystemCallNrX64, SystemCallNrX32, SystemCallNrAARCH64>;
17
19
template
<ABI abi>
20
struct
SystemCallNrTraits
{
21
static_assert
(abi ==
ABI
{-1},
"no traits defined for this ABI yet"
);
22
};
23
24
template
<>
25
struct
SystemCallNrTraits
<
ABI
::I386> {
26
using
type =
SystemCallNrI386
;
27
size_t
NUM_SYSCALLS = 459;
28
};
29
30
template
<>
31
struct
SystemCallNrTraits
<
ABI
::X86_64> {
32
using
type =
SystemCallNrX64
;
33
size_t
NUM_SYSCALLS = 383;
34
};
35
36
template
<>
37
struct
SystemCallNrTraits
<
ABI
::
X32
> {
38
using
type = SystemCallNrX32;
39
size_t
NUM_SYSCALLS = 372;
40
};
41
42
template
<>
43
struct
SystemCallNrTraits
<
ABI
::AARCH64> {
44
using
type =
SystemCallNrAARCH64
;
45
size_t
NUM_SYSCALLS = 325;
46
};
47
48
}
// end ns
clues
Definition
AutoAttachedTracee.cxx:12
clues::ABI
ABI
System Call ABI.
Definition
types.hxx:62
clues::ABI::X32
@ X32
X86_64 with 32-bit pointers.
Definition
types.hxx:66
clues::SystemCallNrAARCH64
SystemCallNrAARCH64
Native system call numbers as used by Linux on the aarch64 ABI.
Definition
aarch64.hxx:31
clues::SystemCallNrX64
SystemCallNrX64
Native system call numbers as used by Linux on the x64 ABI.
Definition
x64.hxx:31
clues::SystemCallNrI386
SystemCallNrI386
Native system call numbers as used by Linux on the i386 ABI.
Definition
i386.hxx:32
clues::SystemCallNrTraits
Traits which allow to lookup the correct SystemCallNr type per ABI.
Definition
types.hxx:20
include
sysnrs
types.hxx
Generated by
1.13.2