Replace static variables in the MSP430 simulator with fields in the cpu state structure.

* msp430-sim.c: Move static hardware multiply support variables
	from here...
	* msp430-sim.h (msp430_cpu_state): ... into here ...
	* msp430-sim.c (get_op, put_op): ... and update references to use
	the msp430_cpu_state structure.
This commit is contained in:
Nick Clifton
2014-08-19 11:34:14 +01:00
parent 34abf635b3
commit 180eb0634c
3 changed files with 97 additions and 65 deletions

View File

@@ -21,11 +21,29 @@
#ifndef _MSP430_SIM_H_
#define _MSP430_SIM_H_
typedef enum { UNSIGN_32, SIGN_32, UNSIGN_MAC_32, SIGN_MAC_32 } hwmult_type;
typedef enum { UNSIGN_64, SIGN_64 } hw32mult_type;
struct msp430_cpu_state
{
int regs[16];
int cio_breakpoint;
int cio_buffer;
hwmult_type hwmult_type;
unsigned32 hwmult_op1;
unsigned32 hwmult_op2;
unsigned32 hwmult_result;
signed32 hwmult_signed_result;
unsigned32 hwmult_accumulator;
signed32 hwmult_signed_accumulator;
hw32mult_type hw32mult_type;
unsigned64 hw32mult_op1;
unsigned64 hw32mult_op2;
unsigned64 hw32mult_result;
};
#define HWMULT(SD, FIELD) MSP430_CPU (SD)->state.FIELD
#endif