28 #ifndef FCML_CHOOSER_H_ 29 #define FCML_CHOOSER_H_ void(* fcml_fnp_chooser_extract)(fcml_ptr instruction, fcml_st_instruction_code *instruction_code)
Gets instruction code from current abstract instruction pointer.
Definition: fcml_choosers.h:52
fcml_ptr LIB_EXPORT LIB_CALL fcml_fn_asm_default_instruction_chooser(fcml_st_chooser_context *chooser_context)
Default instruction chooser which chooses the shortest instruction available.
fcml_ptr(LIB_CALL * fcml_fnp_asm_instruction_chooser)(fcml_st_chooser_context *chooser_context)
Instruction chooser function pointer declaration.
Definition: fcml_choosers.h:68
Definitions of common structures used by FCML components.
Handles Win32 DLL symbols importing/exporting.
fcml_ptr instruction
First instruction in the chain.
Definition: fcml_choosers.h:58
fcml_fnp_chooser_extract extract
Extracts instruction code from abstract instruction pointer.
Definition: fcml_choosers.h:62
fcml_fnp_chooser_next next
Gets next instruction code from iterator.
Definition: fcml_choosers.h:60
struct fcml_st_chooser_context fcml_st_chooser_context
Instruction chooser context used to communicate with environment.
fcml_ptr(* fcml_fnp_chooser_next)(fcml_ptr instruction)
Returns next instructions from the iterator.
Definition: fcml_choosers.h:44
Instruction chooser context used to communicate with environment.
Definition: fcml_choosers.h:56
An encoded instruction.
Definition: fcml_common.h:810
fcml_ptr LIB_EXPORT LIB_CALL fcml_fn_asm_no_instruction_chooser(fcml_st_chooser_context *chooser_context)
NULL chooser which do not chose anything.