| Index: sim/v850/simops.h
|
| diff --git a/sim/v850/simops.h b/sim/v850/simops.h
|
| index 750fb700e478890b407b742e3dcf02a92e7c00ba..f18da2f79724343739696bd93be23f4257a3531f 100644
|
| --- a/sim/v850/simops.h
|
| +++ b/sim/v850/simops.h
|
| @@ -75,4 +75,51 @@ int OP_22007E0 (void);
|
| int OP_307F0 (void);
|
| int OP_107F0 (void);
|
| int OP_307E0 (void);
|
| +
|
| +int v850_float_compare(SIM_DESC sd, int cmp, sim_fpu wop1, sim_fpu wop2, int double_op_p);
|
| +
|
| +/* MEMORY ACCESS */
|
| +unsigned32 load_data_mem(SIM_DESC sd, SIM_ADDR addr, int len);
|
| +void store_data_mem(SIM_DESC sd, SIM_ADDR addr, int len, unsigned32 data);
|
| +
|
| +unsigned long Add32 (unsigned long a1, unsigned long a2, int * carry);
|
| +
|
| +/* FPU */
|
| +
|
| +/*
|
| + FPU: update FPSR flags
|
| + invalid, inexact, overflow, underflow
|
| + */
|
| +
|
| +extern void check_invalid_snan (SIM_DESC sd, sim_fpu_status, unsigned int);
|
| +
|
| +#define check_cvt_fi(sd, status, double_op_p) \
|
| + update_fpsr (sd, status, FPSR_XEV | FPSR_XEI, double_op_p)
|
| +
|
| +#define check_cvt_if(sd, status, double_op_p) \
|
| + update_fpsr (sd, status, FPSR_XEI, double_op_p)
|
| +
|
| +#define check_cvt_ff(sd, status, double_op_p) \
|
| + update_fpsr (sd, status, FPSR_XEV | FPSR_XEI | FPSR_XEO | FPSR_XEU, double_op_p)
|
| +
|
| +extern void update_fpsr (SIM_DESC sd, sim_fpu_status, unsigned int, unsigned int);
|
| +
|
| +
|
| +/*
|
| + Exception
|
| + */
|
| +void SignalException (SIM_DESC sd);
|
| +void SignalExceptionFPE (SIM_DESC sd, unsigned int double_op_p);
|
| +
|
| +int mpu_load_mem_test (SIM_DESC sd, unsigned int addr, int len, int base_reg);
|
| +int mpu_store_mem_test (SIM_DESC sd, unsigned int addr, int len, int base_reg);
|
| +
|
| +void v850_sar (SIM_DESC sd, unsigned int op0, unsigned int op1, unsigned int *op2p);
|
| +void v850_shl (SIM_DESC sd, unsigned int op0, unsigned int op1, unsigned int *op2p);
|
| +void v850_shr (SIM_DESC sd, unsigned int op0, unsigned int op1, unsigned int *op2p);
|
| +void v850_satadd (SIM_DESC sd, unsigned int op0, unsigned int op1, unsigned int *op2p);
|
| +void v850_satsub (SIM_DESC sd, unsigned int op0, unsigned int op1, unsigned int *op2p);
|
| +void v850_div (SIM_DESC sd, unsigned int op0, unsigned int op1, unsigned int *op2p, unsigned int *op3p);
|
| +void v850_divu (SIM_DESC sd, unsigned int op0, unsigned int op1, unsigned int *op2p, unsigned int *op3p);
|
| +
|
| #endif
|
|
|