TEMU  4.4
The Terma Emulator
temu_BinaryTranslationControlIface Struct Reference

#include </builds/termade/temu/temu/include/temu-c/Target/Cpu.h>

Data Fields

void(* enableBinaryTranslator )(void *Obj)
 Enable translator for processor. More...
 
void(* disableBinaryTranslator )(void *Obj)
 Disable translator for processor. More...
 
void(* setThreshold )(void *Obj, unsigned Threshold)
 Set threshold (of call target execution) for triggering translation. More...
 
int(* translateInstructions )(void *Obj, uint64_t VA, uint64_t PA, unsigned NumInstructions)
 Translate specific instruction range. More...
 
int(* translateBlock )(void *Obj, uint64_t VA, uint64_t PA)
 
int(* translateFunc )(void *Obj, uint64_t VA, uint64_t PA)
 
int(* chainBlocks )(void *Obj, uint64_t SourceBlockPA, uint64_t TargetBlockPA, int TakenArm)
 Manually chain blocks. More...
 
const char *(* disassembleBlock )(void *Obj, uint64_t PA)
 Disassemble block (using the host assembler) More...
 
int(* clearBlock )(void *Obj, uint64_t PA)
 Remove a specific block and unlink incoming/outgoing chains. More...
 
int(* clearBlocksOnPage )(void *Obj, uint64_t PA)
 Remove all translated blocks on a specific physical page. More...
 
void(* enableStatistics )(void *Obj, temu_BTStatID ID)
 Enable collection of statistic in translated code. More...
 
void(* disableStatistics )(void *Obj, temu_BTStatID ID)
 Disable collection of statistic in translated code. More...
 
uint64_t(* getStatistics )(void *Obj, temu_BTStatID ID)
 Get statistic. More...
 
void(* clearStatistics )(void *Obj, temu_BTStatID ID)
 Reset statistics. More...
 

Field Documentation

◆ chainBlocks

int(* temu_BinaryTranslationControlIface::chainBlocks) (void *Obj, uint64_t SourceBlockPA, uint64_t TargetBlockPA, int TakenArm)

Manually chain blocks.

◆ clearBlock

int(* temu_BinaryTranslationControlIface::clearBlock) (void *Obj, uint64_t PA)

Remove a specific block and unlink incoming/outgoing chains.

◆ clearBlocksOnPage

int(* temu_BinaryTranslationControlIface::clearBlocksOnPage) (void *Obj, uint64_t PA)

Remove all translated blocks on a specific physical page.

◆ clearStatistics

void(* temu_BinaryTranslationControlIface::clearStatistics) (void *Obj, temu_BTStatID ID)

Reset statistics.

◆ disableBinaryTranslator

void(* temu_BinaryTranslationControlIface::disableBinaryTranslator) (void *Obj)

Disable translator for processor.

◆ disableStatistics

void(* temu_BinaryTranslationControlIface::disableStatistics) (void *Obj, temu_BTStatID ID)

Disable collection of statistic in translated code.

◆ disassembleBlock

const char*(* temu_BinaryTranslationControlIface::disassembleBlock) (void *Obj, uint64_t PA)

Disassemble block (using the host assembler)

◆ enableBinaryTranslator

void(* temu_BinaryTranslationControlIface::enableBinaryTranslator) (void *Obj)

Enable translator for processor.

◆ enableStatistics

void(* temu_BinaryTranslationControlIface::enableStatistics) (void *Obj, temu_BTStatID ID)

Enable collection of statistic in translated code.

◆ getStatistics

uint64_t(* temu_BinaryTranslationControlIface::getStatistics) (void *Obj, temu_BTStatID ID)

Get statistic.

◆ setThreshold

void(* temu_BinaryTranslationControlIface::setThreshold) (void *Obj, unsigned Threshold)

Set threshold (of call target execution) for triggering translation.

◆ translateBlock

int(* temu_BinaryTranslationControlIface::translateBlock) (void *Obj, uint64_t VA, uint64_t PA)

Translate block (terminating with a branch, or end of page (special rules for delay slots apply)).

◆ translateFunc

int(* temu_BinaryTranslationControlIface::translateFunc) (void *Obj, uint64_t VA, uint64_t PA)

Translate a complete function (determined to be statically reachable from the PA on this page).

◆ translateInstructions

int(* temu_BinaryTranslationControlIface::translateInstructions) (void *Obj, uint64_t VA, uint64_t PA, unsigned NumInstructions)

Translate specific instruction range.


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