/* Main header for the Hitachi h8/300 architecture. */
-#include "config.h"
#include "bfd.h"
#ifndef SIM_MAIN_H
/* FIXME: memory indirect? */
OP_INDEXB, /* Byte index mode */
OP_INDEXW, /* Word index mode */
- OP_INDEXL /* Long index mode */
+ OP_INDEXL, /* Long index mode */
+ OP_REG_DEC, /* Register direct. affect address decrement. */
+ OP_REG_INC, /* Register direct. affect address increment. */
};
#include "sim-basics.h"
-
-/* Define sim_cia. */
-typedef unsigned32 sim_cia;
-
-typedef struct _sim_cpu SIM_CPU;
-
#include "sim-base.h"
/* Structure used to describe addressing */
char **command_line; /* Pointer to command line arguments. */
unsigned char *memory;
- unsigned char *eightbit;
int mask;
sim_cpu_base base;
};
-/* The sim_state struct. */
-struct sim_state {
- sim_cpu *cpu[MAX_NR_PROCESSORS];
- unsigned int sim_cache_size;
- decoded_inst *sim_cache;
- unsigned short *cache_idx;
+struct h8300_sim_state {
unsigned long memory_size;
- int cache_top;
- int compiles;
#ifdef ADEBUG
int stats[O_LAST];
#endif
- sim_state_base base;
};
+#define H8300_SIM_STATE(sd) ((struct h8300_sim_state *) STATE_ARCH_DATA (sd))
/* The current state of the processor; registers, memory, etc. */