Line 72... |
Line 72... |
char *args;
|
char *args;
|
|
|
/* Opcode and operand encoding. */
|
/* Opcode and operand encoding. */
|
char *encoding;
|
char *encoding;
|
|
|
#if defined(HAS_EXECUTION) && !SIMPLE_EXECUTION
|
#ifdef HAS_EXECUTION
|
|
# if !SIMPLE_EXECUTION
|
char *function_name;
|
char *function_name;
|
#else /* defined HAS_EXECUTION && !SIMPLE_EXECUTION */
|
# else /* !SIMPLE_EXECUTION */
|
void (*exec)();
|
void (*exec)(struct iqueue_entry *);
|
#endif /* defined HAS_EXECUTION && !SIMPLE_EXECUTION */
|
# endif
|
|
#else /* HAS_EXECUTION */
|
|
void (*exec)(void);
|
|
#endif
|
|
|
unsigned int flags;
|
unsigned int flags;
|
};
|
};
|
|
|
/* This operand is the last in the list */
|
/* This operand is the last in the list */
|
Line 105... |
Line 109... |
extern struct insn_op_struct {
|
extern struct insn_op_struct {
|
unsigned long type;
|
unsigned long type;
|
unsigned long data;
|
unsigned long data;
|
} **op_start;
|
} **op_start;
|
|
|
#ifdef HAS_EXECUTION
|
/* Leaf flag used in automata building */
|
extern void l_invalid PARAMS((void));
|
#define LEAF_FLAG (0x80000000)
|
extern void l_sfne PARAMS((void));
|
|
extern void l_bf PARAMS((void));
|
struct temp_insn_struct
|
extern void l_add PARAMS((void));
|
{
|
extern void l_addc PARAMS((void));
|
unsigned long insn;
|
extern void l_sw PARAMS((void));
|
unsigned long insn_mask;
|
extern void l_sb PARAMS((void));
|
int in_pass;
|
extern void l_sh PARAMS((void));
|
};
|
extern void l_lwz PARAMS((void));
|
|
extern void l_lbs PARAMS((void));
|
extern unsigned long *automata;
|
extern void l_lbz PARAMS((void));
|
extern struct temp_insn_struct *ti;
|
extern void l_lhs PARAMS((void));
|
|
extern void l_lhz PARAMS((void));
|
#if defined(HAS_EXECUTION) && SIMPLE_EXECUTION
|
extern void l_movhi PARAMS((void));
|
extern void l_invalid PARAMS((struct iqueue_entry *));
|
extern void l_and PARAMS((void));
|
extern void l_sfne PARAMS((struct iqueue_entry *));
|
extern void l_or PARAMS((void));
|
extern void l_bf PARAMS((struct iqueue_entry *));
|
extern void l_xor PARAMS((void));
|
extern void l_add PARAMS((struct iqueue_entry *));
|
extern void l_sub PARAMS((void));
|
extern void l_addc PARAMS((struct iqueue_entry *));
|
extern void l_mul PARAMS((void));
|
extern void l_sw PARAMS((struct iqueue_entry *));
|
extern void l_div PARAMS((void));
|
extern void l_sb PARAMS((struct iqueue_entry *));
|
extern void l_divu PARAMS((void));
|
extern void l_sh PARAMS((struct iqueue_entry *));
|
extern void l_sll PARAMS((void));
|
extern void l_lwz PARAMS((struct iqueue_entry *));
|
extern void l_sra PARAMS((void));
|
extern void l_lbs PARAMS((struct iqueue_entry *));
|
extern void l_srl PARAMS((void));
|
extern void l_lbz PARAMS((struct iqueue_entry *));
|
extern void l_j PARAMS((void));
|
extern void l_lhs PARAMS((struct iqueue_entry *));
|
extern void l_jal PARAMS((void));
|
extern void l_lhz PARAMS((struct iqueue_entry *));
|
extern void l_jalr PARAMS((void));
|
extern void l_movhi PARAMS((struct iqueue_entry *));
|
extern void l_jr PARAMS((void));
|
extern void l_and PARAMS((struct iqueue_entry *));
|
extern void l_rfe PARAMS((void));
|
extern void l_or PARAMS((struct iqueue_entry *));
|
extern void l_nop PARAMS((void));
|
extern void l_xor PARAMS((struct iqueue_entry *));
|
extern void l_bnf PARAMS((void));
|
extern void l_sub PARAMS((struct iqueue_entry *));
|
extern void l_sfeq PARAMS((void));
|
extern void l_mul PARAMS((struct iqueue_entry *));
|
extern void l_sfgts PARAMS((void));
|
extern void l_div PARAMS((struct iqueue_entry *));
|
extern void l_sfges PARAMS((void));
|
extern void l_divu PARAMS((struct iqueue_entry *));
|
extern void l_sflts PARAMS((void));
|
extern void l_sll PARAMS((struct iqueue_entry *));
|
extern void l_sfles PARAMS((void));
|
extern void l_sra PARAMS((struct iqueue_entry *));
|
extern void l_sfgtu PARAMS((void));
|
extern void l_srl PARAMS((struct iqueue_entry *));
|
extern void l_sfgeu PARAMS((void));
|
extern void l_j PARAMS((struct iqueue_entry *));
|
extern void l_sfltu PARAMS((void));
|
extern void l_jal PARAMS((struct iqueue_entry *));
|
extern void l_sfleu PARAMS((void));
|
extern void l_jalr PARAMS((struct iqueue_entry *));
|
extern void l_extbs PARAMS((void));
|
extern void l_jr PARAMS((struct iqueue_entry *));
|
extern void l_extbz PARAMS((void));
|
extern void l_rfe PARAMS((struct iqueue_entry *));
|
extern void l_exths PARAMS((void));
|
extern void l_nop PARAMS((struct iqueue_entry *));
|
extern void l_exthz PARAMS((void));
|
extern void l_bnf PARAMS((struct iqueue_entry *));
|
extern void l_extws PARAMS((void));
|
extern void l_sfeq PARAMS((struct iqueue_entry *));
|
extern void l_extwz PARAMS((void));
|
extern void l_sfgts PARAMS((struct iqueue_entry *));
|
extern void l_mtspr PARAMS((void));
|
extern void l_sfges PARAMS((struct iqueue_entry *));
|
extern void l_mfspr PARAMS((void));
|
extern void l_sflts PARAMS((struct iqueue_entry *));
|
extern void l_sys PARAMS((void));
|
extern void l_sfles PARAMS((struct iqueue_entry *));
|
extern void l_trap PARAMS((void)); /* CZ 21/06/01 */
|
extern void l_sfgtu PARAMS((struct iqueue_entry *));
|
extern void l_macrc PARAMS((void));
|
extern void l_sfgeu PARAMS()(struct iqueue_entry *);
|
extern void l_mac PARAMS((void));
|
extern void l_sfltu PARAMS((struct iqueue_entry *));
|
extern void l_msb PARAMS((void));
|
extern void l_sfleu PARAMS((struct iqueue_entry *));
|
extern void l_invalid PARAMS((void));
|
extern void l_extbs PARAMS((struct iqueue_entry *));
|
extern void l_cmov PARAMS ((void));
|
extern void l_extbz PARAMS((struct iqueue_entry *));
|
extern void l_ff1 PARAMS ((void));
|
extern void l_exths PARAMS((struct iqueue_entry *));
|
extern void l_cust1 PARAMS ((void));
|
extern void l_exthz PARAMS((struct iqueue_entry *));
|
extern void l_cust2 PARAMS ((void));
|
extern void l_extws PARAMS((struct iqueue_entry *));
|
extern void l_cust3 PARAMS ((void));
|
extern void l_extwz PARAMS((struct iqueue_entry *));
|
extern void l_cust4 PARAMS ((void));
|
extern void l_mtspr PARAMS((struct iqueue_entry *));
|
extern void lf_add_s PARAMS ((void));
|
extern void l_mfspr PARAMS((struct iqueue_entry *));
|
extern void lf_div_s PARAMS ((void));
|
extern void l_sys PARAMS((struct iqueue_entry *));
|
extern void lf_ftoi_s PARAMS ((void));
|
extern void l_trap PARAMS((struct iqueue_entry *)); /* CZ 21/06/01 */
|
extern void lf_itof_s PARAMS ((void));
|
extern void l_macrc PARAMS((struct iqueue_entry *));
|
extern void lf_madd_s PARAMS ((void));
|
extern void l_mac PARAMS((struct iqueue_entry *));
|
extern void lf_mul_s PARAMS ((void));
|
extern void l_msb PARAMS((struct iqueue_entry *));
|
extern void lf_rem_s PARAMS ((void));
|
extern void l_invalid PARAMS((struct iqueue_entry *));
|
extern void lf_sfeq_s PARAMS ((void));
|
extern void l_cmov PARAMS ((struct iqueue_entry *));
|
extern void lf_sfge_s PARAMS ((void));
|
extern void l_ff1 PARAMS ((struct iqueue_entry *));
|
extern void lf_sfgt_s PARAMS ((void));
|
extern void l_cust1 PARAMS ((struct iqueue_entry *));
|
extern void lf_sfle_s PARAMS ((void));
|
extern void l_cust2 PARAMS ((struct iqueue_entry *));
|
extern void lf_sflt_s PARAMS ((void));
|
extern void l_cust3 PARAMS ((struct iqueue_entry *));
|
extern void lf_sfne_s PARAMS ((void));
|
extern void l_cust4 PARAMS ((struct iqueue_entry *));
|
extern void lf_sub_s PARAMS((void));
|
extern void lf_add_s PARAMS ((struct iqueue_entry *));
|
#endif
|
extern void lf_div_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_ftoi_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_itof_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_madd_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_mul_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_rem_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_sfeq_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_sfge_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_sfgt_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_sfle_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_sflt_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_sfne_s PARAMS ((struct iqueue_entry *));
|
|
extern void lf_sub_s PARAMS((struct iqueue_entry *));
|
|
extern void l_none PARAMS((struct iqueue_entry *));
|
|
#else
|
extern void l_none PARAMS((void));
|
extern void l_none PARAMS((void));
|
|
#endif
|
|
|
extern CONST struct or32_letter or32_letters[];
|
extern CONST struct or32_letter or32_letters[];
|
|
|
extern CONST struct or32_opcode or32_opcodes[];
|
extern CONST struct or32_opcode or32_opcodes[];
|
|
|