fcml
1.2.2
|
Assembler runtime configuration. More...
#include <fcml_assembler.h>
Public Attributes | |
fcml_bool | increment_ip |
Set to true in order to force assembler to increment IP address by length of the assembled instruction. More... | |
fcml_bool | enable_error_messages |
True if optional error and warning messages should be collected during processing. More... | |
fcml_bool | choose_sib_encoding |
If there are SIB and "ModR/M only" encodings available, choose the SIB based one. More... | |
fcml_bool | choose_abs_encoding |
If memory address can be encoded as relative or absolute value choose the absolute addressing. More... | |
fcml_bool | force_rex_prefix |
Sometimes REX prefix is useless so it is just omitted in the final machine code. More... | |
fcml_bool | force_three_byte_VEX |
Every 2 byte VEX/XOP prefix can be encoded using three byte form. More... | |
fcml_fnp_asm_optimizer | optimizer |
Optimizer implementation that should be used by assembler. More... | |
fcml_uint16_t | optimizer_flags |
This field is passed to the chosen optimizer. More... | |
fcml_fnp_asm_instruction_chooser | chooser |
instruction chooser implementation that should be used by assembler to choose most appropriate instruction encoding. More... | |
Assembler runtime configuration.
fcml_bool fcml_st_assembler_conf::choose_abs_encoding |
If memory address can be encoded as relative or absolute value choose the absolute addressing.
It works in 64 bit mode only.
fcml_bool fcml_st_assembler_conf::choose_sib_encoding |
If there are SIB and "ModR/M only" encodings available, choose the SIB based one.
fcml_fnp_asm_instruction_chooser fcml_st_assembler_conf::chooser |
instruction chooser implementation that should be used by assembler to choose most appropriate instruction encoding.
Setting this value to NULL cause assembler to use default instruction chooser.
fcml_bool fcml_st_assembler_conf::enable_error_messages |
True if optional error and warning messages should be collected during processing.
fcml_bool fcml_st_assembler_conf::force_rex_prefix |
Sometimes REX prefix is useless so it is just omitted in the final machine code.
By setting this flag to true you can force this prefix to be added anyway.
fcml_bool fcml_st_assembler_conf::force_three_byte_VEX |
Every 2 byte VEX/XOP prefix can be encoded using three byte form.
Setting this flag to true forces it.
fcml_bool fcml_st_assembler_conf::increment_ip |
Set to true in order to force assembler to increment IP address by length of the assembled instruction.
fcml_fnp_asm_optimizer fcml_st_assembler_conf::optimizer |
Optimizer implementation that should be used by assembler.
Setting it to NULL causes assembler to use default one.
fcml_uint16_t fcml_st_assembler_conf::optimizer_flags |
This field is passed to the chosen optimizer.
It can be used to configure its behavior.