QP/C++
6.9.3
qk_port.hpp
Go to the documentation of this file.
1
38
#ifndef QK_PORT_HPP
39
#define QK_PORT_HPP
40
41
//lint -save -e1960 MISRA-C++:2008 Rule 7-3-1, Global declaration
42
43
//****************************************************************************
45
#define QK_ON_CONTEXT_SW 1
46
47
//****************************************************************************
48
// QK interrupt entry and exit
49
56
#define QK_ISR_ENTRY() do { \
57
++QK_attr_.intNest; \
58
} while (false)
59
60
67
#define QK_ISR_EXIT() do { \
68
--QK_attr_.intNest; \
69
if (QK_attr_.intNest == 0U) { \
70
if (QK_sched_() != 0U) { \
71
QK_activate_(); \
72
} \
73
} \
74
else { \
75
Q_ERROR(); \
76
} \
77
} while (false)
78
79
extern
"C"
{
80
81
void
FPU_save
(
void
*ctx);
// defined in assembly
82
void
FPU_restore
(
void
*ctx);
// defined in assembly
83
extern
void
*
impure_ptr
;
84
85
}
// extern "C"
86
87
//lint -restore
88
89
#include "
qk.hpp
"
// QK platform-independent public interface
90
91
#endif
// QK_PORT_HPP
qk.hpp
QK/C++ platform-independent public interface.
impure_ptr
void * impure_ptr
FPU_save
void FPU_save(void *ctx)
FPU_restore
void FPU_restore(void *ctx)
ports
lint-plus
qk
qk_port.hpp
© 2005-2021 Quantum Leaps
|
Using Online Help
|
Generated with Doxygen
|
QP/C++ 6.9.3
© Quantum Leaps 2020
|
Using Online Help
|
Generated with Doxygen
|
QP/C++ 6.9.3