ReXGlue SDK
Loading...
Searching...
No Matches
rex::ppc::KernelHooks Struct Reference

#include <rex/ppc/kernel_hook.h>

Public Attributes

BoundThread(*) get_bound_thread ()
PPCFunc *(*) resolve_function (u32 guest_address)
void(*) check_hook_context (const PPCContext &ctx, const char *name)
void(*) check_bound_detour_local_writes (const char *name, const PPCContext &at_entry, const PPCContext &at_exit, std::atomic_flag &warned)
void(*) check_bound_detour_arguments (const char *name, PPCFunc *host, u8 declared_gpr, u16 declared_fpr)

Detailed Description

The kernel calls the PPC runtime makes. A null member acts as if no kernel runs.

Member Data Documentation

◆ check_bound_detour_arguments

void(*) rex::ppc::KernelHooks::check_bound_detour_arguments(const char *name, PPCFunc *host, u8 declared_gpr, u16 declared_fpr)

Checks the argument registers a detour declares against the usage of the bound runtime.

◆ check_bound_detour_local_writes

void(*) rex::ppc::KernelHooks::check_bound_detour_local_writes(const char *name, const PPCContext &at_entry, const PPCContext &at_exit, std::atomic_flag &warned)

Checks the registers a detour wrote against the codegen flags of the bound runtime.

◆ check_hook_context

void(*) rex::ppc::KernelHooks::check_hook_context(const PPCContext &ctx, const char *name)

Checks in Debug builds that a hook runs on the register file of its thread.

◆ get_bound_thread

BoundThread(*) rex::ppc::KernelHooks::get_bound_thread()

Returns the register file and memory base of the calling thread.

◆ resolve_function

PPCFunc *(*) rex::ppc::KernelHooks::resolve_function(u32 guest_address)

Returns the function recompiled for a guest address, null when there is none.


The documentation for this struct was generated from the following file: