TEMU  3.0
The Terma Emulator
temu_BTIface Struct Reference

#include </builds/termade/temu/temu/include/temu-c/EmulatorManager/BinaryTranslation.h>

Data Fields

int(* translate )(void *Obj, uint64_t PA, unsigned NumInstrs)
 Translate specific instruction range. More...
 
int(* translateBlock )(void *Obj, uint64_t PA)
 Translate block (ending in branch + delay slot or end of page) More...
 
int(* chainBlocks )(void *Obj, uint64_t SourceBlockPA, uint64_t TargetBlockPA, int Arm)
 Manually chain blocks. 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...
 
const char *(* disassemble )(void *Obj, uint64_t Addr)
 Disassemble translated block in host assembler. More...
 

Detailed Description

Binary translation interface.

Field Documentation

◆ chainBlocks

int(* temu_BTIface::chainBlocks) (void *Obj, uint64_t SourceBlockPA, uint64_t TargetBlockPA, int Arm)

Manually chain blocks.

◆ clearBlock

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

Remove a specific block and unlink incoming/outgoing chains.

◆ clearBlocksOnPage

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

Remove all translated blocks on a specific physical page.

◆ clearStatistics

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

Reset statistics.

◆ disableStatistics

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

Disable collection of statistic in translated code.

◆ disassemble

const char*(* temu_BTIface::disassemble) (void *Obj, uint64_t Addr)

Disassemble translated block in host assembler.

◆ enableStatistics

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

Enable collection of statistic in translated code.

◆ getStatistics

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

Get statistic.

◆ translate

int(* temu_BTIface::translate) (void *Obj, uint64_t PA, unsigned NumInstrs)

Translate specific instruction range.

◆ translateBlock

int(* temu_BTIface::translateBlock) (void *Obj, uint64_t PA)

Translate block (ending in branch + delay slot or end of page)


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