3 * configure.ac (AC_ARG_ENABLE(cycle-accurate)): Call AS_HELP_STRING.
4 (AC_ARG_ENABLE(cycle-stats)): Likewise.
5 * configure: Regenerate.
9 * configure: Regenerate.
13 * configure: Regenerate.
18 * reg.c (put_reg): Fix check for valid register number.
22 * configure: Regenerate.
26 * config.in, configure: Regenerate.
30 * aclocal.m4, config.in, configure: Regenerate.
34 * gdb-if.c (open): Rename to...
35 (rx_sim_is_open): This. Replace all uses of "open" by uses of
36 "rx_sim_is_open" throughout.
40 * configure: Regenerate.
44 * configure: Regenerate.
45 * config.in: Regenerate.
49 * gdb-if.c (sim_do_command): Add const to cmd. Move args
50 to top and add const. Call strdup on cmd and free at end.
54 * gdb-if.c (sim_load): Add const to prog.
58 * gdb-if.c (rx_signal_to_host): Rename to
59 `rx_signal_to_gdb_signal'. Make static. Update all callers
60 to use new name. Use signal names from include/gdb/signals.h.
64 * configure: Regenerate.
68 * rx.c (SHIFT_OP): A shift by zero still sets the condition
73 * aclocal.m4, configure: Regenerate.
77 * rx.c (decode_opcode): Handle RXO_satr.
81 * config.in, configure: Regenerate.
87 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
91 * aclocal.m4, config.in, configure: Regenerate.
95 * configure.ac (CYCLE_ACCURATE): Add template with AC_DEFINE call.
96 (CYCLE_STATS): Likewise.
100 * load.h (rx_load): Add `callback' parameter to function prototype.
101 (gdb/callback.h): Include.
102 * load.c (load.h): Include.
103 (xprintf, find_section_name_by_offset): New functions.
104 (rx_load): Add `callback' parameter. Add code for printing
105 section loaded using GDB's printf facilities.
106 * gdb-if.c (sim_load, sim_create_inferior): Update calls to
108 * main.c (main): Likewise.
109 * syscalls.c, syscalls.h (get_callbacks): New function.
113 * aclocal.m4: New file.
114 * configure: Regenerate.
118 * configure.ac: Change include to common/acinclude.m4.
122 * configure.ac: Change AC_PREREQ to 2.64. Delete AC_CONFIG_HEADER
123 call. Replace common.m4 include with SIM_AC_COMMON.
124 * configure: Regenerate.
128 * configure.ac: Rename from configure.in.
132 * configure.in: Add "dnl" before copyright notice.
136 * gdb-if.c (sim_complete_command): New stub function.
140 * gdb-if.c (sim_store_register): Update return value to
145 * rx.c (decode_opcode): For "MVFC PC,", use the address of the
146 opcode, not the address following the opcode.
147 (decode_opcode): RXO_branchrel is relative to the opcode's PC, not
148 the address following the opcode.
152 * rx.c (lsb_count): New.
155 (decode_opcode): Fix cycle count math for div, divu, suntil, and
160 * mem.c (rx_mem_ptr): When invalidating the decode cache, account
161 for the fact that the instruction decoder never uses swapped
166 * rx.c (decode_opcode: RXO_int): Only break out of the emulation
167 loop if rx_syscall() does not return a RX_STEPPED result.
171 * rx.c (decode_opcode): Add cycle information for RXO_smovu.
175 * fpu.c, gdb-if.c, load.c, misc.c, syscalls.c (config.h): Include.
177 * rx.c (decode_opcode): Declare `tx' as unsigned.
179 * cpu.h (reset_decoder): Declare.
180 * load.c (rx_load): Call `reset_decoder'.
181 * rx.c (reset_decoder): New function.
185 * rx.c (decode_cache_base): New.
186 (id_names): Remove ediv and edivu.
187 (optype_names): Add TwoReg.
188 (maybe_get_mem_page): New.
189 (rx_get_byte): Call it.
190 (get_op): Add TwoReg support.
192 (PD, PS, PS2, GD, GS, GS2, DSZ, SSZ, S2SZ, US1, US2, OM): "opcode"
194 (DO_RETURN): New. We use longjmp to return an exception result.
195 (decode_opcode): Make opcode a pointer to the decode cache. Save
196 decoded opcode information and re-use. Call DO_RETURN instead of
197 return throughout. Remove ediv and edivu.
198 * mem.c (ptdc): New. Adds decode cache.
199 (rx_mem_ptr): Support it.
200 (rx_mem_decode_cache): New.
201 * mem.h (enum mem_ptr_action): add MPA_DECODE_CACHE.
202 (rx_mem_decode_cache): Declare.
203 * gdb-if.c (sim_resume): Add decode_opcode's setjmp logic here...
204 * main.c (main): ...and here. Use a fast loop if neither trace
205 nor disassemble is given.
206 * cpu.h (RX_MAKE_STEPPED, RX_MAKE_HIT_BREAK, RX_MAKE_EXITED,
207 RX_MAKE_STOPPED, RX_EXITED, RX_STOPPED): Adjust so that 0 is not a
208 valid code for anything.
213 * config.h (CYCLE_ACCURATE, CYCLE_STATS): New.
214 * configure.in (--enable-cycle-accurate, --enable-cycle-stats):
215 New. Default to enabled.
216 * configure: Regenerate.
218 * cpu.h (regs_type): Add cycle tracking info.
219 (reset_pipeline_stats): Declare.
220 (halt_pipeline_stats): Declare.
221 (pipeline_stats): Declare.
222 * main.c (done): Call pipeline_stats().
223 * mem.h (rx_mem_ptr): Moved to here ...
224 * mem.c (mem_ptr): ... from here. Rename throughout.
225 (mem_put_byte): Move LEDs to Port A. Add Port B to control cycle
226 statistics. Move UART to SCI4.
227 (mem_put_hi): Add TPU 1-2. TPU 1 and 2 count CPU cycles.
228 * reg.c (init_regs): Set Rt reg to -1 (no reg).
229 * rx.c: Add cycle counting and statistics throughout.
230 (rx_get_byte): Optimize for speed.
231 (decode_opcode): Likewise.
232 (reset_pipeline_stats): New.
233 (halt_pipeline_stats): New.
234 (pipeline_stats): New.
235 * trace.c (sim_disasm_one): Print cycle count.
239 * gdb-if.c (sim_store_register): Add case for sim_rx_acc_regnum.
243 * gdb-if.c (trace.h): Include.
244 (reg_size, sim_fetch_register): Add cases for sim_rx_acc_regnum.
248 * reg.c (set_oszc): Use unsigned int for the mask.
249 (set_szc, set_osz, set_sz): Likewise.
253 * gdb-if.c (sim_do_command): Add a "sim verbose noisy" command.
257 * gdb-if.c (sim_write): Add const to buf arg.
261 * configure.in: Check if the host has getopt.h.
262 * configure: Regenerate.
263 * config.in: Regenerate.
264 * main.c: Include config.h.
265 Use HAVE_STDLIB_H, HAVE_UNISTD_H, HAVE_GETOPT_H.
266 Include getopt.h in case HAVE_GETOPT_H is defined.
270 * rx/rx.c (decode_opcode): btst bit address mask fix.
274 * rx/rx.c (decode_opcode): fix SWHILE logic.