libcopp
2.2.0
include
libcopp
fcontext
detail
fcontext_x86_64.hpp
Go to the documentation of this file.
1
// Copyright 2023 owent
2
3
#pragma once
4
5
#include <libcopp/utils/config/libcopp_build_features.h>
6
7
// clang-format off
8
#include <
libcopp/utils/config/stl_include_prefix.h
>
// NOLINT(build/include_order)
9
// clang-format on
10
#include <stdint.h>
11
#include <cstddef>
12
// clang-format off
13
#include <
libcopp/utils/config/stl_include_suffix.h
>
// NOLINT(build/include_order)
14
// clang-format on
15
16
#include "
libcopp/fcontext/detail/config.hpp
"
17
#include "
libcopp/utils/features.h
"
18
19
#ifdef COPP_HAS_ABI_HEADERS
20
# include COPP_ABI_PREFIX
21
#endif
22
LIBCOPP_COPP_NAMESPACE_BEGIN
23
namespace
fcontext
{
24
25
extern
"C"
{
26
27
#define COPP_BOOST_CONTEXT_CALLDECL
28
29
struct
stack_t {
30
void
*
sp
;
31
std::size_t
size
;
32
33
stack_t
() :
sp
(0),
size
(0) {}
34
};
35
36
struct
fp_t {
37
uint32_t
fc_freg
[2];
38
39
fp_t
() :
fc_freg
() {}
40
};
41
42
struct
fcontext_t
{
43
uint64_t
fc_greg
[8];
44
stack_t
fc_stack
;
45
fp_t
fc_fp
;
46
47
fcontext_t
() :
fc_greg
(),
fc_stack
(),
fc_fp
() {}
48
};
49
}
50
}
// namespace fcontext
51
LIBCOPP_COPP_NAMESPACE_END
52
53
#ifdef COPP_HAS_ABI_HEADERS
54
# include COPP_ABI_SUFFIX
55
#endif
config.hpp
features.h
fcontext
Definition:
fcontext_arm.hpp:23
fcontext::fcontext_t
void * fcontext_t
Definition:
fcontext.hpp:27
stl_include_prefix.h
stl_include_suffix.h
fcontext::fcontext_t::fc_stack
stack_t fc_stack
Definition:
fcontext_arm.hpp:44
fcontext::fcontext_t::fcontext_t
fcontext_t()
Definition:
fcontext_x86_64.hpp:47
fcontext::fcontext_t::fc_greg
uint32_t fc_greg[11]
Definition:
fcontext_arm.hpp:43
fcontext::fcontext_t::fc_fp
fp_t fc_fp
Definition:
fcontext_arm.hpp:45
fcontext::fp_t
Definition:
fcontext_arm.hpp:36
fcontext::fp_t::fp_t
fp_t()
Definition:
fcontext_x86_64.hpp:39
fcontext::fp_t::fc_freg
uint32_t fc_freg[16]
Definition:
fcontext_arm.hpp:37
fcontext::stack_t
Definition:
fcontext_arm.hpp:29
fcontext::stack_t::size
std::size_t size
Definition:
fcontext_arm.hpp:31
fcontext::stack_t::sp
void * sp
Definition:
fcontext_arm.hpp:30
fcontext::stack_t::stack_t
stack_t()
Definition:
fcontext_x86_64.hpp:33
Generated by
1.9.1