Top | ![]() |
![]() |
![]() |
![]() |
Functions
void | (*OrcOpcodeEmulateFunc) () |
#define | ORC_STATIC_OPCODE_ACCUMULATOR |
OrcStaticOpcode * | orc_opcode_find_by_name () |
void | orc_opcode_init () |
int | orc_opcode_register_static () |
int | orc_opcode_set_find_by_name () |
OrcOpcodeSet * | orc_opcode_set_get () |
OrcRuleSet * | orc_rule_set_new () |
const char * | orc_target_get_asm_preamble () |
OrcTarget * | orc_target_get_by_name () |
OrcTarget * | orc_target_get_default () |
unsigned int | orc_target_get_default_flags () |
const char * | orc_target_get_name () |
OrcRule * | orc_target_get_rule () |
void | orc_target_register () |
Types and Values
struct | OrcOpcodeExecutor |
struct | OrcOpcodeSet |
struct | OrcRuleSet |
struct | OrcStaticOpcode |
OrcTarget | |
#define | ORC_OPCODE_N_ARGS |
#define | ORC_STATIC_OPCODE_N_DEST |
#define | ORC_STATIC_OPCODE_N_SRC |
Functions
orc_opcode_register_static ()
int orc_opcode_register_static (OrcStaticOpcode *sopcode
,char *prefix
);
orc_opcode_set_find_by_name ()
int orc_opcode_set_find_by_name (OrcOpcodeSet *opcode_set
,const char *name
);
orc_rule_set_new ()
OrcRuleSet * orc_rule_set_new (OrcOpcodeSet *opcode_set
,OrcTarget *target
,unsigned int required_flags
);
orc_target_get_rule ()
OrcRule * orc_target_get_rule (OrcTarget *target
,OrcStaticOpcode *opcode
,unsigned int target_flags
);
Types and Values
struct OrcOpcodeExecutor
struct OrcOpcodeExecutor { };
The OrcOpcodeExecutor structure has no public members
struct OrcStaticOpcode
struct OrcStaticOpcode { char name[16]; unsigned int flags; int dest_size[ORC_STATIC_OPCODE_N_DEST]; int src_size[ORC_STATIC_OPCODE_N_SRC]; OrcOpcodeEmulateNFunc emulateN; };
OrcTarget
typedef struct { const char *name; orc_bool executable; int data_register_offset; unsigned int (*get_default_flags)(void); void (*compiler_init)(OrcCompiler *compiler); void (*compile)(OrcCompiler *compiler); OrcRuleSet rule_sets[ORC_N_RULE_SETS]; int n_rule_sets; const char * (*get_asm_preamble)(void); void (*load_constant)(OrcCompiler *compiler, int reg, int size, int value); const char * (*get_flag_name)(int shift); void (*flush_cache) (OrcCode *code); void (*load_constant_long)(OrcCompiler *compiler, int reg, OrcConstant *constant); void *_unused[5]; } OrcTarget;