* load.c (rx_load): Call `reset_decoder'.
* rx.c (reset_decoder): New function.
* rx.c (decode_opcode): Declare `rx' as unsigned.
+ * cpu.h (reset_decoder): Declare.
+ * load.c (rx_load): Call `reset_decoder'.
+ * rx.c (reset_decoder): New function.
+
2010-07-29 DJ Delorie <dj@redhat.com>
* rx.c (decode_cache_base): New.
extern unsigned int heapbottom;
extern int decode_opcode (void);
+extern void reset_decoder (void);
extern void reset_pipeline_stats (void);
extern void halt_pipeline_stats (void);
extern void pipeline_stats (void);
heaptop = heapbottom = 0;
}
+ reset_decoder ();
+
if (verbose > 1)
fprintf (stderr, "[start pc=%08x %s]\n",
(unsigned int) regs.r_pc,
static RX_Opcode_Decoded **decode_cache_base;
static SI get_byte_page;
+void
+reset_decoder (void)
+{
+ get_byte_base = 0;
+ decode_cache_base = 0;
+ get_byte_page = 0;
+}
+
static inline void
maybe_get_mem_page (SI tpc)
{