(decode_opcode): RXO_branchrel is relative to the opcode's PC, not
[external/binutils.git] / sim / rx / ChangeLog
1 2010-12-14  DJ Delorie  <dj@redhat.com>
2
3         * rx.c (decode_opcode): For "MVFC PC,", use the address of the
4         opcode, not the address following the opcode.
5         (decode_opcode): RXO_branchrel is relative to the opcode's PC, not
6         the address following the opcode.
7
8 2010-11-11  DJ Delorie  <dj@redhat.com>
9
10         * rx.c (lsb_count): New.
11         (divu_cycles): New.
12         (div_cycles): New.
13         (decode_opcode): Fix cycle count math for div, divu, suntil, and
14         swhile.
15
16 2010-09-29  Kevin Buettner  <kevinb@redhat.com>
17
18         * mem.c (rx_mem_ptr): When invalidating the decode cache, account
19         for the fact that the instruction decoder never uses swapped
20         addresses.
21
22 2010-09-29  Nick Clifton  <nickc@redhat.com>
23
24         * rx.c (decode_opcode: RXO_int): Only break out of the emulation
25         loop if rx_syscall() does not return a RX_STEPPED result.
26
27 2010-09-23  Kevin Buettner  <kevinb@redhat.com>
28
29         * rx.c (decode_opcode): Add cycle information for RXO_smovu.
30
31 2010-09-23  Kevin Buettner  <kevinb@redhat.com>
32
33         * fpu.c, gdb-if.c, load.c, misc.c, syscalls.c (config.h): Include.
34
35         * rx.c (decode_opcode): Declare `tx' as unsigned.
36
37         * cpu.h (reset_decoder): Declare.
38         * load.c (rx_load): Call `reset_decoder'.
39         * rx.c (reset_decoder): New function.
40
41 2010-07-29  DJ Delorie  <dj@redhat.com>
42
43         * rx.c (decode_cache_base): New.
44         (id_names): Remove ediv and edivu.
45         (optype_names): Add TwoReg.
46         (maybe_get_mem_page): New.
47         (rx_get_byte): Call it.
48         (get_op): Add TwoReg support.
49         (put_op): Likewise.
50         (PD, PS, PS2, GD, GS, GS2, DSZ, SSZ, S2SZ, US1, US2, OM): "opcode"
51         is a pointer now.
52         (DO_RETURN): New.  We use longjmp to return an exception result.
53         (decode_opcode): Make opcode a pointer to the decode cache.  Save
54         decoded opcode information and re-use.  Call DO_RETURN instead of
55         return throughout.  Remove ediv and edivu.
56         * mem.c (ptdc): New.  Adds decode cache.
57         (rx_mem_ptr): Support it.
58         (rx_mem_decode_cache): New.
59         * mem.h (enum mem_ptr_action): add MPA_DECODE_CACHE.
60         (rx_mem_decode_cache): Declare.
61         * gdb-if.c (sim_resume): Add decode_opcode's setjmp logic here...
62         * main.c (main): ...and here.  Use a fast loop if neither trace
63         nor disassemble is given.
64         * cpu.h (RX_MAKE_STEPPED, RX_MAKE_HIT_BREAK, RX_MAKE_EXITED,
65         RX_MAKE_STOPPED, RX_EXITED, RX_STOPPED): Adjust so that 0 is not a
66         valid code for anything.
67
68 2010-07-27  DJ Delorie  <dj@redhat.com>
69
70         * README.txt: New.
71         * config.h (CYCLE_ACCURATE, CYCLE_STATS): New.
72         * configure.in (--enable-cycle-accurate, --enable-cycle-stats):
73         New.  Default to enabled.
74         * configure: Regenerate.
75
76         * cpu.h (regs_type): Add cycle tracking info.
77         (reset_pipeline_stats): Declare.
78         (halt_pipeline_stats): Declare.
79         (pipeline_stats): Declare.
80         * main.c (done): Call pipeline_stats().
81         * mem.h (rx_mem_ptr): Moved to here ...
82         * mem.c (mem_ptr): ... from here.  Rename throughout.
83         (mem_put_byte): Move LEDs to Port A.  Add Port B to control cycle
84         statistics.  Move UART to SCI4.
85         (mem_put_hi): Add TPU 1-2.  TPU 1 and 2 count CPU cycles.
86         * reg.c (init_regs): Set Rt reg to -1 (no reg).
87         * rx.c: Add cycle counting and statistics throughout.
88         (rx_get_byte): Optimize for speed.
89         (decode_opcode): Likewise.
90         (reset_pipeline_stats): New.
91         (halt_pipeline_stats): New.
92         (pipeline_stats): New.
93         * trace.c (sim_disasm_one): Print cycle count.
94
95 2010-07-07  Kevin Buettner  <kevinb@redhat.com>
96
97         * gdb-if.c (sim_store_register): Add case for sim_rx_acc_regnum.
98
99 2010-06-24  Kevin Buettner  <kevinb@redhat.com>
100
101         * gdb-if.c (trace.h): Include.
102         (reg_size, sim_fetch_register): Add cases for sim_rx_acc_regnum.
103
104 2010-06-07  Nick Clifton  <nickc@redhat.com>
105
106         * reg.c (set_oszc): Use unsigned int for the mask.
107         (set_szc, set_osz, set_sz): Likewise.
108
109 2010-05-28  Kevin Buettner  <kevinb@redhat.com>
110
111         * gdb-if.c (sim_do_command): Add a "sim verbose noisy" command.
112
113 2010-04-14  Mike Frysinger  <vapier@gentoo.org>
114
115         * gdb-if.c (sim_write): Add const to buf arg.
116
117 2010-01-30  Masaki Muranaka  <monaka@monami-software.com>
118
119         * configure.in: Check if the host has getopt.h.
120         * configure: Regenerate.
121         * config.in: Regenerate.
122         * main.c: Include config.h.
123         Use HAVE_STDLIB_H, HAVE_UNISTD_H, HAVE_GETOPT_H.
124         Include getopt.h in case HAVE_GETOPT_H is defined.
125
126 2009-12-22  Yoshinori Sato  <ysato@users.sourceforge.jp>
127
128         * rx/rx.c (decode_opcode): btst bit address mask fix.
129
130 2009-11-30  DJ Delorie  <dj@redhat.com>
131
132         * rx/rx.c (decode_opcode): fix SWHILE logic.
133
134 2009-10-27  DJ Delorie  <dj@redhat.com>
135             Kevin Buettner <kevinb@redhat.com>
136
137         * load.h: New.
138         * rx.c: New.
139         * syscalls.c: New.
140         * syscalls.h: New.
141         * load.c: New.
142         * configure.in: New.
143         * gdb-if.c: New.
144         * err.c: New.
145         * cpu.h: New.
146         * Makefile.in: New.
147         * fpu.c: New.
148         * mem.c: New.
149         * config.in: New.
150         * err.h: New.
151         * reg.c: New.
152         * mem.h: New.
153         * main.c: New.
154         * misc.h: New.
155         * trace.c: New.
156         * misc.c: New.
157         * syscall.h: New.
158         * trace.h: New.
159         * fpu.h: New.