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

Assembler context. More...

#include <fcml_assembler.hpp>

Public Member Functions

 AssemblerContext ()
 
 AssemblerContext (EntryPoint::OperatingMode operatingMode, fcml_ip ip=0)
 Creates an entry point instance for given operating mode and optional instruction pointer. More...
 
const AssemblerConfgetConfig () const
 Gets constant assembler configuration associated with the context. More...
 
AssemblerConfgetConfig ()
 Gets assembler configuration associated with the context. More...
 
void setConfig (const AssemblerConf &config)
 Copies given configuration to the instance associated with the context. More...
 
const EntryPointgetEntryPoint () const
 Gets reference to the constant entry point instance associated with the context. More...
 
EntryPointgetEntryPoint ()
 Gets reference to the entry point instance associated with the context. More...
 
void setEntryPoint (const EntryPoint &entryPoint)
 Copies given entry point to the instance associated with the context. More...
 
void setIP (fcml_ip ip)
 Sets instruction pointer directly into the entry point. More...
 
void incrementIP (fcml_ip ip)
 Increments entry point by given number of bytes. More...
 
void setOperatingMode (EntryPoint::OperatingMode operatingMode)
 Sets processor operating mode directly into 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...
 

Detailed Description

Assembler context.

It is a counterpart to the fcml_st_assembler_context structure.

Since
1.1.0

Constructor & Destructor Documentation

◆ AssemblerContext() [1/2]

fcml::AssemblerContext::AssemblerContext ( )
inline
Since
1.1.0

◆ AssemblerContext() [2/2]

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

Creates an entry point instance for given operating mode and optional instruction pointer.

Parameters
operatingModeThe processor operating mode.
ipThe instruction pointer.
Since
1.1.0

Member Function Documentation

◆ getConfig() [1/2]

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

Gets constant assembler configuration associated with the context.

Returns
Assembler configuration.
Since
1.1.0

◆ getConfig() [2/2]

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

Gets assembler configuration associated with the context.

Returns
Assembler configuration.
Since
1.1.0

◆ getEntryPoint() [1/2]

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

Gets reference to the constant entry point instance associated with the context.

Returns
Reference to the constant entry point.
Since
1.1.0

◆ getEntryPoint() [2/2]

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

Gets reference to the entry point instance associated with the context.

Returns
Reference to the entry point.
Since
1.1.0

◆ incrementIP()

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

Increments entry point by given number of bytes.

Parameters
ipNumber of bytes the instruction pointer has to be incremented by.
Since
1.1.0

◆ setAddressSizeAttribute()

void fcml::AssemblerContext::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::AssemblerContext::setConfig ( const AssemblerConf config)
inline

Copies given configuration to the instance associated with the context.

Deep copy is performed, so passed object not need to be maintained as long as the context is used.

Parameters
configConfiguration that is copied to the context.
Since
1.1.0

◆ setEntryPoint()

void fcml::AssemblerContext::setEntryPoint ( const EntryPoint entryPoint)
inline

Copies given entry point to the instance associated with the context.

Deep copy is performed, so passed object not need to be maintained as long as the context is used.

Parameters
entryPointThe entry point.
Since
1.1.0

◆ setIP()

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

Sets instruction pointer directly into the entry point.

Parameters
ipThe new IP.
Since
1.1.0

◆ setOperandSizeAttribute()

void fcml::AssemblerContext::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::AssemblerContext::setOperatingMode ( EntryPoint::OperatingMode  operatingMode)
inline

Sets processor operating mode directly into the entry point.

Parameters
operatingModeProcessor operating mode to be set.
Since
1.1.0

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