fcml 1.3.0
Loading...
Searching...
No Matches
fcml::MultiPassAssemblerContext Class Reference

Assembler context. More...

#include <fcml_lag_assembler.hpp>

Public Member Functions

 MultiPassAssemblerContext ()
 Default constructor.
 MultiPassAssemblerContext (EntryPoint::OperatingMode operatingMode, fcml_ip ip=0)
 Creates assembler context for given operating mode and instruction pointer.
const AssemblerConf & getConfig () const
 Gets constant reference to assembler configuration.
AssemblerConf & getConfig ()
 Gets reference to the assembler configuration.
void setConfig (const AssemblerConf &config)
 Sets a new assembler configuration.
const EntryPoint & getEntryPoint () const
 Gets constant reference to the entry point.
EntryPoint & getEntryPoint ()
 Gets reference to the entry point.
void setEntryPoint (const EntryPoint &entryPoint)
 Sets a new entry point.
void setIP (fcml_ip ip)
 Sets a new instruction pointer.
void incrementIP (fcml_ip ip)
 Increments the instruction pointer by given number of bytes.
void setOperatingMode (EntryPoint::OperatingMode operatingMode)
 Sets a new processor operating mode for the entry point.
void setAddressSizeAttribute (fcml_usize addressSizeAttribute)
 Sets a new address size attribute for the entry point.
void setOperandSizeAttribute (fcml_usize operandSizeAttribute)
 Sets a new operand size attribute for the entry point.
const SymbolTable * getSymbolTable () const
 Gets a pointer to the constant symbol table stored in the context.
SymbolTable * getSymbolTable ()
 Gets a pointer to the symbol table stored in the context.
void setSymbolTable (SymbolTable *symbolTable)
 Sets a new symbol table for the context.

Detailed Description

Assembler context.

Since
1.1.0

Constructor & Destructor Documentation

◆ MultiPassAssemblerContext() [1/2]

fcml::MultiPassAssemblerContext::MultiPassAssemblerContext ( )
inline

Default constructor.

Since
1.1.0

◆ MultiPassAssemblerContext() [2/2]

fcml::MultiPassAssemblerContext::MultiPassAssemblerContext ( EntryPoint::OperatingMode operatingMode,
fcml_ip ip = 0 )
inline

Creates assembler context for given operating mode and instruction pointer.

Parameters
operatingModeThe operating mode.
ipThe instruction pointer.
Since
1.1.0

Member Function Documentation

◆ getConfig() [1/2]

AssemblerConf & fcml::MultiPassAssemblerContext::getConfig ( )
inline

Gets reference to the assembler configuration.

Returns
Assembler configuration.
Since
1.1.0

◆ getConfig() [2/2]

const AssemblerConf & fcml::MultiPassAssemblerContext::getConfig ( ) const
inline

Gets constant reference to assembler configuration.

Returns
Assembler configuration.
Since
1.1.0

◆ getEntryPoint() [1/2]

EntryPoint & fcml::MultiPassAssemblerContext::getEntryPoint ( )
inline

Gets reference to the entry point.

Returns
Entry point.
Since
1.1.0

◆ getEntryPoint() [2/2]

const EntryPoint & fcml::MultiPassAssemblerContext::getEntryPoint ( ) const
inline

Gets constant reference to the entry point.

Returns
Entry point.
Since
1.1.0

◆ getSymbolTable() [1/2]

SymbolTable * fcml::MultiPassAssemblerContext::getSymbolTable ( )
inline

Gets a pointer to the symbol table stored in the context.

Returns
The pointer to the symbol table.
Since
1.1.0

◆ getSymbolTable() [2/2]

const SymbolTable * fcml::MultiPassAssemblerContext::getSymbolTable ( ) const
inline

Gets a pointer to the constant symbol table stored in the context.

Returns
The pointer to the symbol table.
Since
1.1.0

◆ incrementIP()

void fcml::MultiPassAssemblerContext::incrementIP ( fcml_ip ip)
inline

Increments the instruction pointer by given number of bytes.

Parameters
ipThe number of bytes the instruction pointer should be incremented by.
Since
1.1.0

◆ setAddressSizeAttribute()

void fcml::MultiPassAssemblerContext::setAddressSizeAttribute ( fcml_usize addressSizeAttribute)
inline

Sets a new address size attribute for the entry point.

Parameters
addressSizeAttributeThe address size attribute.
Since
1.1.0

◆ setConfig()

void fcml::MultiPassAssemblerContext::setConfig ( const AssemblerConf & config)
inline

Sets a new assembler configuration.

Returns
Assembler configuration.
Since
1.1.0

◆ setEntryPoint()

void fcml::MultiPassAssemblerContext::setEntryPoint ( const EntryPoint & entryPoint)
inline

Sets a new entry point.

Parameters
entryPointEntry point to be set.
Since
1.1.0

◆ setIP()

void fcml::MultiPassAssemblerContext::setIP ( fcml_ip ip)
inline

Sets a new instruction pointer.

Parameters
ipA new instruction pointer.
Since
1.1.0

◆ setOperandSizeAttribute()

void fcml::MultiPassAssemblerContext::setOperandSizeAttribute ( fcml_usize operandSizeAttribute)
inline

Sets a new operand size attribute for the entry point.

Parameters
operandSizeAttributeThe operand size attribute.
Since
1.1.0

◆ setOperatingMode()

void fcml::MultiPassAssemblerContext::setOperatingMode ( EntryPoint::OperatingMode operatingMode)
inline

Sets a new processor operating mode for the entry point.

Parameters
operatingModeThe new operating mode.
Since
1.1.0

◆ setSymbolTable()

void fcml::MultiPassAssemblerContext::setSymbolTable ( SymbolTable * symbolTable)
inline

Sets a new symbol table for the context.

Parameters
symbolTableThe new symbol table to be set.
Since
1.1.0

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