mirror of
https://github.com/SpeedBreakerProject/speedbreaker.git
synced 2026-10-18 17:01:29 +02:00
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
13 lines
467 B
C++
13 lines
467 B
C++
// SpeedBreaker runtime. GPL-3.0-or-later (see COPYING).
|
|
//
|
|
// Force-included into the recompiled code: indirect calls (bctrl, bctr to a
|
|
// function pointer) go through a checked lookup that reports a bad target as
|
|
// a guest address instead of jumping to a wild host pointer.
|
|
#pragma once
|
|
#include <cstdint>
|
|
|
|
struct PPCContext;
|
|
void PPCCallIndirect(PPCContext& ctx, uint8_t* base, uint32_t target);
|
|
|
|
#define PPC_CALL_INDIRECT_FUNC(x) PPCCallIndirect(ctx, base, (x))
|