fcml  1.2.2
Public Member Functions | List of all members
fcml::MultiPassAssemblerContext Class Reference

Assembler context. More...

#include <fcml_lag_assembler.hpp>

Public Member Functions

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

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]

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

Gets constant reference to assembler configuration.

Returns
Assembler configuration.
Since
1.1.0

◆ getConfig() [2/2]

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

Gets reference to the assembler configuration.

Returns
Assembler configuration.
Since
1.1.0

◆ getEntryPoint() [1/2]

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

Gets constant reference to the entry point.

Returns
Entry point.
Since
1.1.0

◆ getEntryPoint() [2/2]

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

Gets reference to the entry point.

Returns
Entry point.
Since
1.1.0

◆ getSymbolTable() [1/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

◆ getSymbolTable() [2/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

◆ 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: