📄 instrmnt.h
字号:
#define CYG_INSTRUMENT_EVENT_SMP_RESCHED_RECV 9
// MLQ scheduler events
#define CYG_INSTRUMENT_EVENT_MLQ_SCHEDULE 1
#define CYG_INSTRUMENT_EVENT_MLQ_RESCHEDULE 2
#define CYG_INSTRUMENT_EVENT_MLQ_ADD 3
#define CYG_INSTRUMENT_EVENT_MLQ_REM 4
#define CYG_INSTRUMENT_EVENT_MLQ_TIMESLICE 5
#define CYG_INSTRUMENT_EVENT_MLQ_YIELD 6
#define CYG_INSTRUMENT_EVENT_MLQ_ENQUEUE 7
#define CYG_INSTRUMENT_EVENT_MLQ_DEQUEUE 8
#define CYG_INSTRUMENT_EVENT_MLQ_REMOVE 9
// User events
#define CYG_INSTRUMENT_EVENT_USER_1 1
#define CYG_INSTRUMENT_EVENT_USER_2 2
#define CYG_INSTRUMENT_EVENT_USER_3 3
#define CYG_INSTRUMENT_EVENT_USER_4 4
#define CYG_INSTRUMENT_EVENT_USER_5 5
#define CYG_INSTRUMENT_EVENT_USER_6 6
#define CYG_INSTRUMENT_EVENT_USER_7 7
#define CYG_INSTRUMENT_EVENT_USER_8 8
#define CYG_INSTRUMENT_EVENT_USER_9 9
#define CYG_INSTRUMENT_EVENT_USER_10 10
#define CYG_INSTRUMENT_EVENT_USER_11 11
#define CYG_INSTRUMENT_EVENT_USER_12 12
#define CYG_INSTRUMENT_EVENT_USER_13 13
#define CYG_INSTRUMENT_EVENT_USER_14 14
#define CYG_INSTRUMENT_EVENT_USER_15 15
#define CYG_INSTRUMENT_EVENT_USER_16 16
#define CYG_INSTRUMENT_EVENT_USER_17 17
#define CYG_INSTRUMENT_EVENT_USER_18 18
#define CYG_INSTRUMENT_EVENT_USER_19 19
// -------------------------------------------------------------------------
// Handy-dandy macro to make event codes.
// Note that this relies on the definitions above
// having a well defined form.
#define CYGINST_EVENT(_class_,_event_) \
((CYG_INSTRUMENT_CLASS_##_class_)|(CYG_INSTRUMENT_EVENT_##_class_##_##_event_))
// -------------------------------------------------------------------------
// Scheduler instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_SCHED
#define CYG_INSTRUMENT_SCHED(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(SCHED,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_SCHED(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Thread instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_THREAD
#define CYG_INSTRUMENT_THREAD(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(THREAD,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_THREAD(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Interrupt instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_INTR
#define CYG_INSTRUMENT_INTR(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(INTR,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_INTR(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Mutex instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_MUTEX
#define CYG_INSTRUMENT_MUTEX(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(MUTEX,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_MUTEX(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Condition variable instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_CONDVAR
#define CYG_INSTRUMENT_CONDVAR(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(CONDVAR,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_CONDVAR(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Binary semaphore instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_BINSEM
#define CYG_INSTRUMENT_BINSEM(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(BINSEM,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_BINSEM(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Counting semaphore instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_CNTSEM
#define CYG_INSTRUMENT_CNTSEM(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(CNTSEM,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_CNTSEM(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Clock instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_CLOCK
#define CYG_INSTRUMENT_CLOCK(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(CLOCK,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_CLOCK(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Alarm instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_ALARM
#define CYG_INSTRUMENT_ALARM(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(ALARM,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_ALARM(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// Mboxt instrumentation macros
#ifdef CYGDBG_KERNEL_INSTRUMENT_MBOXT
#define CYG_INSTRUMENT_MBOXT(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(MBOXT,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_MBOXT(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// SMP instrumentation
#ifdef CYGDBG_KERNEL_INSTRUMENT_SMP
#define CYG_INSTRUMENT_SMP(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(SMP,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_SMP(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// MLQ instrumentation
#ifdef CYGDBG_KERNEL_INSTRUMENT_MLQ
#define CYG_INSTRUMENT_MLQ(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT(CYGINST_EVENT(MLQ,_event_),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_MLQ(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
// User instrumentation
#ifdef CYGDBG_KERNEL_INSTRUMENT_USER
#define CYG_INSTRUMENT_USER(_event_,_arg1_,_arg2_) \
CYG_INSTRUMENT((CYG_INSTRUMENT_CLASS_USER|(_event_)),_arg1_,_arg2_)
#else
#define CYG_INSTRUMENT_USER(_event_,_arg1_,_arg2_)
#endif
// -------------------------------------------------------------------------
#endif // ifndef CYGONCE_KERNEL_INSTRMNT_HXX
// EOF instrmnt.h
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -