| Orc Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
void (*OrcOpcodeEmulateFunc) (OrcOpcodeExecutor *ex, void *user); OrcOpcodeExecutor; OrcOpcodeSet; OrcRuleSet; OrcStaticOpcode; OrcTarget; #define ORC_OPCODE_N_ARGS #define ORC_STATIC_OPCODE_ACCUMULATOR #define ORC_STATIC_OPCODE_N_DEST #define ORC_STATIC_OPCODE_N_SRC OrcStaticOpcode * orc_opcode_find_by_name (const char *name); void orc_opcode_init (void); int orc_opcode_register_static (OrcStaticOpcode *sopcode, char *prefix); int orc_opcode_set_find_by_name (OrcOpcodeSet *opcode_set, const char *name); OrcOpcodeSet * orc_opcode_set_get (const char *name); OrcRuleSet * orc_rule_set_new (OrcOpcodeSet *opcode_set, OrcTarget *target, unsigned int required_flags); const char * orc_target_get_asm_preamble (const char *target); OrcTarget * orc_target_get_by_name (const char *target_name); OrcTarget * orc_target_get_default (void); unsigned int orc_target_get_default_flags (OrcTarget *target); const char * orc_target_get_name (OrcTarget *target); OrcRule * orc_target_get_rule (OrcTarget *target, OrcStaticOpcode *opcode, unsigned int target_flags); void orc_target_register (OrcTarget *target);
void (*OrcOpcodeEmulateFunc) (OrcOpcodeExecutor *ex, void *user);
|
|
|
typedef struct {
} OrcOpcodeExecutor;
The OrcOpcodeExecutor structure has no public members
typedef struct {
char name[16];
OrcOpcodeEmulateFunc emulate;
void *emulate_user;
unsigned int flags;
int dest_size[ORC_STATIC_OPCODE_N_DEST];
int src_size[ORC_STATIC_OPCODE_N_SRC];
} OrcStaticOpcode;
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);
void *_unused[8];
} OrcTarget;
OrcStaticOpcode * orc_opcode_find_by_name (const char *name);
|
|
Returns : |
int orc_opcode_register_static (OrcStaticOpcode *sopcode, char *prefix);
|
|
|
|
Returns : |
int orc_opcode_set_find_by_name (OrcOpcodeSet *opcode_set, const char *name);
|
|
|
|
Returns : |
OrcRuleSet * orc_rule_set_new (OrcOpcodeSet *opcode_set, OrcTarget *target, unsigned int required_flags);
|
|
|
|
|
|
Returns : |
const char * orc_target_get_asm_preamble (const char *target);
|
|
Returns : |
OrcTarget * orc_target_get_by_name (const char *target_name);
|
|
Returns : |
unsigned int orc_target_get_default_flags (OrcTarget *target);
|
|
Returns : |
OrcRule * orc_target_get_rule (OrcTarget *target, OrcStaticOpcode *opcode, unsigned int target_flags);
|
|
|
|
|
|
Returns : |