#include "Sim/Foundation/Hook/Hook.h"
HookUtil.hのインクルード依存関係図
このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。
ネームスペース | |
namespace | Onikiri |
マクロ定義 | |
#define | HOOK_SECTION(hookPoint) |
#define | HOOK_SECTION_OP(hookPoint, op) |
#define | HOOK_SECTION_OP_PARAM(hookPoint, op, param) |
#define | HOOK_SECTION_PARAM(hookPoint, param) |
関数 | |
template<typename ClassType, typename HookPointType, typename Parameter> | |
INLINE void | Onikiri::HookEntry (ClassType *obj, void(ClassType::*MethodPtr)(OpIterator op, Parameter param), HookPointType *hookPoint, OpIterator op, Parameter param) |
template<typename ClassType, typename HookPointType> | |
INLINE void | Onikiri::HookEntry (ClassType *obj, void(ClassType::*MethodPtr)(OpIterator op), HookPointType *hookPoint, OpIterator op) |
template<typename ClassType, typename HookPointType, typename HookParamType> | |
INLINE void | Onikiri::HookEntry (ClassType *obj, void(ClassType::*MethodPtr)(HookParamType *param), HookPointType *hookPoint, HookParamType *hookParam) |
template<typename ClassType, typename HookPointType> | |
INLINE void | Onikiri::HookEntry (ClassType *obj, void(ClassType::*MethodPtr)(), HookPointType *hookPoint) |
template<typename ClassType, typename HookPointType, typename Parameter> | |
NOINLINE void | Onikiri::HookEntryBody (ClassType *obj, void(ClassType::*MethodPtr)(OpIterator op, Parameter param), HookPointType *hookPoint, OpIterator op, Parameter param) |
template<typename ClassType, typename HookPointType> | |
NOINLINE void | Onikiri::HookEntryBody (ClassType *obj, void(ClassType::*MethodPtr)(OpIterator op), HookPointType *hookPoint, OpIterator op) |
template<typename ClassType, typename HookPointType, typename HookParamType> | |
NOINLINE void | Onikiri::HookEntryBody (ClassType *obj, void(ClassType::*MethodPtr)(HookParamType *param), HookPointType *hookPoint, HookParamType *hookParam) |
template<typename ClassType, typename HookPointType> | |
NOINLINE void | Onikiri::HookEntryBody (ClassType *obj, void(ClassType::*MethodPtr)(), HookPointType *hookPoint) |
template<typename Caller, typename HookPoint, typename Parameter> | |
INLINE bool | Onikiri::HookSectionAfter (Caller *caller, HookPoint *hookPoint, OpIterator op, Parameter *param) |
template<typename Caller, typename HookPoint, typename Parameter> | |
INLINE bool | Onikiri::HookSectionAfter (Caller *caller, HookPoint *hookPoint, Parameter *param) |
template<typename Caller, typename HookPoint> | |
INLINE bool | Onikiri::HookSectionAfter (Caller *caller, HookPoint *hookPoint, OpIterator op) |
template<typename Caller, typename HookPoint> | |
INLINE bool | Onikiri::HookSectionAfter (Caller *caller, HookPoint *hookPoint) |
template<typename Caller, typename HookPoint, typename Parameter> | |
INLINE bool | Onikiri::HookSectionBefore (Caller *caller, HookPoint *hookPoint, OpIterator op, Parameter *param) |
template<typename Caller, typename HookPoint, typename Parameter> | |
INLINE bool | Onikiri::HookSectionBefore (Caller *caller, HookPoint *hookPoint, Parameter *param) |
template<typename Caller, typename HookPoint> | |
INLINE bool | Onikiri::HookSectionBefore (Caller *caller, HookPoint *hookPoint, OpIterator op) |
template<typename Caller, typename HookPoint> | |
INLINE bool | Onikiri::HookSectionBefore (Caller *caller, HookPoint *hookPoint) |
#define HOOK_SECTION | ( | hookPoint | ) |
値:
for( \ bool onikiri_exitSection = HookSectionBefore( this, &hookPoint ); \ !onikiri_exitSection; \ onikiri_exitSection = HookSectionAfter( this, &hookPoint ) \ )
HookUtil.h の 318 行で定義されています。
#define HOOK_SECTION_OP | ( | hookPoint, | |||
op | ) |
値:
for( \ bool onikiri_exitSection = HookSectionBefore( this, &hookPoint, op ); \ !onikiri_exitSection; \ onikiri_exitSection = HookSectionAfter( this, &hookPoint, op ) \ )
HookUtil.h の 360 行で定義されています。
参照元 Onikiri::Retirer::Commit()・Onikiri::Renamer::Evaluate()・Onikiri::InorderList::Flush()・Onikiri::BPred::RecoveryFromBPredMiss()・Onikiri::Renamer::Rename()・Onikiri::Retirer::Retire()・Onikiri::Renamer::Steer()・Onikiri::OpExecuteEvent::Update().
#define HOOK_SECTION_OP_PARAM | ( | hookPoint, | |||
op, | |||||
param | ) |
値:
for( \ bool onikiri_exitSection = HookSectionBefore( this, &hookPoint, op, ¶m ); \ !onikiri_exitSection; \ onikiri_exitSection = HookSectionAfter( this, &hookPoint, op, ¶m ) \ )
HookUtil.h の 441 行で定義されています。
参照元 Onikiri::Retirer::CanCommitOp()・Onikiri::Dispatcher::Evaluate()・Onikiri::MemOrderManager::ReadMemImage()・Onikiri::Scheduler::Reschedule()・Onikiri::OpFinishEvent::Update()・Onikiri::Dispatcher::Update()・Onikiri::MemOrderManager::WriteMemImage().
#define HOOK_SECTION_PARAM | ( | hookPoint, | |||
param | ) |
値:
for( \ bool onikiri_exitSection = HookSectionBefore( this, &hookPoint, ¶m ); \ !onikiri_exitSection; \ onikiri_exitSection = HookSectionAfter( this, &hookPoint, ¶m ) \ )
HookUtil.h の 401 行で定義されています。
参照元 Onikiri::Fetcher::CanFetch()・Onikiri::Fetcher::Fetch()・Onikiri::Retirer::GetCommitableThread()・Onikiri::Fetcher::GetFetchThread()・Onikiri::Core::IsRequiredCheckpointAfter()・Onikiri::Core::IsRequiredCheckpointBefore().