]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/common/ChangeLog
* Make-common.in (SCHEME,SCHEMEFLAGS): Delete.
[thirdparty/binutils-gdb.git] / sim / common / ChangeLog
1 Wed Jul 1 16:44:12 1998 Doug Evans <devans@seba.cygnus.com>
2
3 * Make-common.in (SCHEME,SCHEMEFLAGS): Delete.
4 (CGENDIR,CGEN): New variables.
5 (CGEN_VERBOSE): Renamed to CGENFLAGS.
6 (cgen-arch,cgen-cpu,cgen-decode): Update.
7 (CGEN_CPU_WRITE): New variable.
8 (CGEN_CPU_SEMSW): -W -> -X.
9 (CGEN_FLAGS_TO_PASS): Delete SCHEME. Add CGEN,CGENFLAGS.
10 * cgen.sh: Delete args scheme,schemeflags. New arg cgen.
11
12 * cgen-sim.h (RECORD_IADDR): Delete.
13 * cgen-types.h (HOSTINT,HOSTUINT,HOSTPTR): New types.
14 * genmloop.sh (engine_resume_{full,fast}): Delete icount.
15
16 Wed Jun 17 12:25:08 1998 Mark Alexander <marka@cygnus.com>
17
18 * gennltvals.def (mn10200): Add entry.
19 * nltvals.def: Regenerate with MN10200 additions.
20
21 Wed Jun 17 13:18:28 1998 Andrew Cagney <cagney@b1.cygnus.com>
22
23 * sim-inline.h (EXTERN_*): Replace with EXTERN_*_P. Correct
24 documentation on how it works.
25
26 * sim-core.h, sim-core.c (sim_core_install, sim_core_attach,
27 sim_core_detach, sim_core_read_buffer, sim_core_write_buffer,
28 sim_core_set_xor, sim_core_xor_read_buffer,
29 sim_core_xor_write_buffer): Update.
30
31 * sim-events.h, sim-events.c (sim_events_install,
32 sim_events_watch_clock, sim_events_schedule_after_signal,
33 sim_events_schedule, sim_events_watch_sim, sim_events_watch_core,
34 sim_events_deschedule): Update.
35
36 * sim-fpu.h, sim-fpu.c (sim_fpu_zero, sim_fpu_one, sim_fpu_two,
37 sim_fpu_max32, sim_fpu_max64): Update.
38
39 Sat Jun 13 07:45:38 1998 Doug Evans <devans@fallis.cygnus.com>
40
41 * cgen-trace.c (trace_insn_fini): Redo cycle handling.
42 * sim-profile.h (PROFILE_DATA): Rename cycle handling members.
43 * sim-profile.c (profile_print_model): Update.
44
45 Fri Jun 12 18:35:07 1998 Doug Evans <devans@seba.cygnus.com>
46
47 * gennltvals.def (m32r): Use common syscall.h now.
48 (mn10300): Add entry.
49 * nltvals.def: Regenerate.
50
51 * sim-engine.c (sim_engine_get_run_state): New function.
52 * sim-engine.h (sim_engine_get_run_state): Declare it.
53
54 Thu Jun 11 00:50:03 1998 Doug Evans <devans@seba.cygnus.com>
55
56 * sim-core.h (SIM_CORE_SIGNAL_FN): New typedef.
57 * sim-core.c (sim_core_signal): Make extern, always define.
58
59 Wed Jun 10 16:02:29 1998 Doug Evans <devans@seba.cygnus.com>
60
61 * Make-common.in (CGEN_FLAGS_TO_PASS): New variable.
62 * cgen-ops.h (ANDIF): New macro.
63 (ANDIF[BQHSD]I): Delete.
64
65 Thu Jun 4 13:53:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
66
67 * hw-events.c (create_hw_event, delete_hw_event): Delete.
68 (hw_event_queue_schedule, hw_event_queue_deschedule,
69 bounce_hw_event): Fix hw-event memory corruptions found by Joyce
70 Janczyn.
71
72 * hw-alloc.h (HW_NZALLOC): Define.
73
74 * Make-common.in (test-hw-events): Add target for testing the
75 hw-event code.
76
77 Mon May 25 21:11:26 1998 Andrew Cagney <cagney@b1.cygnus.com>
78
79 * Make-common.in (SIM_COMMON_HW_OBJS): Add hw-handles.o and
80 hw-instances.o.
81 hw-handles.c, hw-instances.c, hw-handles.h, hw-instances.h: New
82 files.
83 * hw-main.h: Include hw-handles.h, hw-instances.h.
84 * hw-base.h ({create,delete}_hw_{handles,instances}_data): Declare
85 * hw-base.c (hw_create, hw_delete): Call same.
86
87 Mon May 25 18:55:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
88
89 * dv-core.c: Include hw-main.h and sim-main.h.
90 * dv-pal.c: Include hw-main.h and sim-io.h.
91 * dv-glue.c: Include hw-main.h.
92
93 * hw-main.h: New file. Move list of includes to here.
94 * hw-base.h: From here.
95 * Make-common.in (hw_base_headers): Rename to hw_main_headers.
96 (hw-*.o, dv-*.o): Update.
97 * hw-tree.c, hw-base.c, hw-properties.c, hw-ports.c, hw-device.c,
98 hw-events.c, hw-alloc.c, sim-hw.c: Include hw-main.h instead of
99 sim-main.h.
100
101 * hw-base.h (do_hw_attach_regs, do_hw_poll_read_method,
102 do_hw_poll_read): Move declarations from here.
103 * hw-main.h: To here.
104
105 * hw-base.h (struct hw_device_descriptor, hw_finish_callback):
106 Move from here.
107 * hw-main.h (struct hw_descriptor, hw_finish_method): To here,
108 rename.
109 * Make-common.in (hw-config.h): Update
110 * hw-base.c, dv-pal.c, dv-glue.c: Update
111
112 * dv-glue.c, hw-device.h, hw-base.h, hw-ports.c: Rename
113 `*_callback' to `*_method.
114
115 Mon May 25 18:41:18 1998 Andrew Cagney <cagney@b1.cygnus.com>
116
117 * hw-base.h (set_*): Move set method macros from here.
118 * hw-device.h: To here.
119
120 Mon May 25 18:21:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
121
122 * hw-base.h (create_hw_property_data, delete_hw_property_data):
123 Declare.
124
125 * hw-base.c (hw_create, hw_delete): Call
126 * hw-properties.c (create_hw_property_data,
127 delete_hw_property_data): Define.
128
129 Mon May 25 17:40:46 1998 Andrew Cagney <cagney@b1.cygnus.com>
130
131 * hw-device.c, hw-properties.c: Include hw-base.h
132
133 * hw-alloc.h, hw-alloc.c: New files. Move alloc code to here.
134 * hw-device.c: From here.
135 * hw-base.h: Include "hw-events.h".
136
137 * hw-base.h (create_hw_alloc_data, delete_hw_alloc_data): Declare.
138 * hw-base.c (hw_create, hw_delete): Call.
139 * hw-alloc.c (create_hw_alloc_data, delete_hw_alloc_data): Define.
140
141 * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-alloc.o.
142 (hw-alloc.o): New target.
143
144 Mon May 25 17:14:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
145
146 * hw-events.h, hw-events.c: New files. Move event code to here.
147 * sim-hw.c: From here.
148 * hw-base.h: Include "hw-events.h".
149 * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-events.o.
150 (hw-events.o): New target.
151
152 * hw-device.h (struct hw): Add struct hw_event_data events_of_hw.
153 * hw-events.h (struct hw_event): Replace typedef hw_event.
154
155 * hw-base.h (create_hw_event_data, delete_hw_event_data): Declare.
156 * hw-base.c (hw_create, hw_delete): Call.
157 * hw-events.c (create_hw_event_data, delete_hw_event_data): Define.
158
159 * dv-pal.c: Update.
160
161 Mon May 25 16:55:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
162
163 * hw-base.c (panic_hw_port_event, empty_hw_ports): Move from here.
164 * hw-ports.c: To here.
165
166 * hw-base.h, hw-ports.c (create_hw_port_data,
167 delete_hw_port_data): New functions.
168 * hw-base.c (hw_delete, hw_create): Call same.
169
170 * hw-base.h (set_hw_ports, set_hw_port_event): Move set functions
171 from here.
172 * hw-ports.h: To here.
173
174 Mon May 25 16:42:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
175
176 * hw-device.c (hw_ioctl), hw-device.h (hw_ioctl_callback): Drop
177 PROCESSOR and CIA arguments.
178
179 Fri May 22 12:16:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
180
181 * aclocal.m4 (SIM_AC_OPTION_HW): Add enable / disable argument.
182 Move common object files from here.
183 * Make-common.in (SIM_COMMON_HW_OBJS): To here.
184
185 Thu May 21 17:57:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
186
187 * sim-hw.c: Include ctype.h.
188 (do_hw_poll_read): Do not assume EAGAIN.
189
190 Wed May 20 04:37:57 1998 Doug Evans <devans@seba.cygnus.com>
191
192 * cgen-trace.c (first_insn_p): New static local.
193 (trace_insn_init): Set it.
194 (trace_insn_fini): Use TRACE_PREFIX.
195 (trace_insn): Rewrite to use trace_prefix.
196 * sim-trace.c (trace_prefix): Don't print filename arg if NULL.
197 Adjust width accordingly.
198
199 * sim-profile.h (PROFILE_DATA): New member profile_any_p.
200 (PROFILE_ANY_P,PROFILE_INSN_P,PROFILE_MEMORY): New macros.
201 (PROFILE_SCACHE_P,PROFILE_PC_P,PROFILE_CORE_P): New macros.
202 (PROFILE_COUNT_INSN,PROFILE_COUNT_READ,PROFILE_COUNT_WRITE): Simplify.
203 (PROFILE_COUNT_CORE): Simplify.
204 * sim-profile.c (profile_option_handler): Compute profile_any_p.
205
206 Tue May 19 23:55:30 1998 Doug Evans <devans@seba.cygnus.com>
207
208 * cgen-ops.h (ADDCFSI): Fix typo.
209
210 Sat May 16 12:44:52 1998 Doug Evans <devans@seba.cygnus.com>
211
212 * cgen-sim.h (CGEN_CPU): New members idesc_{read,sem}_init_p.
213 * genmloop.sh: Use them rather than static locals.
214
215 * sim-engine.c (sim_engine_set_run_state): New function.
216 * sim-engine.h (sim_engine_set_run_state): Declare.
217 * genmloop.sh (pending_reason,pending_sigrc): New static locals.
218 (@cpu@_engine_stop): New args reason,sigrc. All callers updated.
219 (engine_resume): Reorganize. Allow synchronous exit from main loop.
220
221 Fri May 15 16:06:05 1998 Doug Evans <devans@seba.cygnus.com>
222
223 * cgen-trace.c (trace_insn_init): New arg first_p.
224 All callers updated.
225 (trace_insn_fini): New arg last_p. All callers updated.
226 * cgen-trace.h (trace_insn_init,trace_insn_fini): Update.
227 (TRACE_INSN_INIT,TRACE_INSN_FINI): Update.
228 * genmloop.sh (engine_resume): Update.
229
230 Fri May 15 15:59:00 1998 Joyce Janczyn <janczyn@cygnus.com>
231
232 * Make-common.in (install-common): Run ranlib on installed copy of
233 libsim.a.
234
235 Fri May 15 15:03:00 1998 Joyce Janczyn <janczyn@cygnus.com>
236
237 * Make-common.in (install-common): Rename and install libsim.a.
238
239 Tue May 12 15:23:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
240
241 * sim-io.c (unistd.h): Include.
242
243 Wed May 6 16:04:18 1998 Doug Evans <devans@seba.cygnus.com>
244
245 * Make-common (sim_main_headers): Sort.
246 (cgen-*.o): Add cgen-sim.h dependency.
247
248 * cgen-scache.c (scache_init): Only allocate space if scache element
249 size is non-zero.
250 (scache_flush,scache_print_profile): Check if scache in use first.
251
252 * cgen-sim.h (IDESC): Provide forward declaration.
253 (DECODE): Delete.
254 (CGEN_CPU): Always define scache member. New members idesc,opcode.
255 (cgen_cpu_max_extra_bytes): Declare.
256 * cgen-utils.c (cgen_cpu_max_extra_bytes): New function.
257
258 * cgen.sh: s/@arch@/${arch}/ for cpu files.
259
260 * sim-cpu.h: New file. sim_cpu_base moved here.
261 Move sim_cpu_lookup decl here.
262 * sim-base.h: #include "sim-cpu.h".
263 * sim-cpu.c: New file.
264 * Make-common (sim_main_headers): Add sim-cpu.h.
265 (sim-cpu.o): Add rule for.
266
267 * sim-model.c (set_model): Delete.
268 (sim_model_set,model_set): New functions.
269 (sim_model_install): Renamed from model_install.
270 Don't set default model here.
271 (model_option_handler): Rewrite --model processing.
272 (sim_model_lookup,sim_mach_lookup): New functions.
273 * sim-model.h (MAX_MODELS,MAX_INSNS): Delete.
274 (insn_timing): Delete.
275 (INSN_TIMING): New member `num'.
276 (IMP_PROPERTIES): Always define scache_elm_size member.
277 (MACH): New member init_cpu.
278 (sim_machs): Renamed from machs.
279 (sim_model_install): Renamed from model_install.
280 (sim_model_set,sim_model_lookup,sim_mach_lookup): Declare.
281 * sim-module.c (modules): Update.
282
283 * sim-profile.c (profile_print_insn): Add cpu arg to INSN_NAME macro.
284
285 * sim-io.c: #include <errno.h>.
286
287 Wed May 6 12:39:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
288
289 * dv-pal.c (struct hw_pal_device): Add reader.
290 (hw_pal_finish): Initialize reader.
291 (scan_hw_pal): Use reader.
292
293 * hw-base.h, sim-hw.c (do_hw_poll_read): New function.
294 (HW_IO_EOF, HW_IO_NOT_READY): Define.
295 * dv-pal.c: Use.
296
297 * sim-io.h, sim-io.c (sim_io_poll_read): New function. Copy from
298 ../ppc/main.c sim_io_read_stdin.
299
300 Fri May 1 12:11:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
301
302 * hw-tree.h (hw_tree_print): Paramaterize with print and file
303 arguments.
304 * hw-tree.c: Update.
305
306 * hw-base.h (hw_port_event_callback): Delete CPU/CIA args.
307 * hw-device.h (hw_io_read_buffer, hw_io_write_buffer): Delete
308 CPU/CIA args.
309 * hw-ports.h (hw_port_event): Ditto.
310 * hw-ports.c (hw_port_event): Update.
311 * hw-base.c (panic_hw_io_read_buffer, panic_hw_io_write_buffer):
312 Update.
313 * dv-pal.c (hw_pal_io_read_buffer, hw_pal_io_write_buffer):
314 Update.
315 (hw_pal_io_write_buffer): Call hw_halt not sim_engine_halt.
316 (do_counter_event): Update.
317 * dv-glue.c (hw_glue_io_read_buffer): Update.
318 (hw_glue_port_event): Update.
319
320 * hw-device.h (SIM_DESC): Replace with struct sim_state.
321 * hw-base.h (hw_create): Ditto.
322 * hw-base.c (hw_create): Ditto.
323
324 * hw-device.c (hw_abort, hw_trace, hw_hw_event_queue_schedule,
325 hw_event_queue_deschedule, hw_event_queue_time): Delete, moved
326 from here to.
327 * sim-hw.c: Here.
328 * hw-device.h (hw_system_cpu): Declare.
329 * sim-hw.c (hw_system_cpu): New function.
330
331 * sim-core.c (sim_core_map_attach, sim_core_attach): Call
332 sim_hw_abort not hw_abort.
333 (sim-hw.h): Include.
334 (sim_core_read_buffer, sim_core_write_buffer): Call
335 sim_hw_io_read_buffer and sim_hw_io_write_buffer. Do not pass CPU
336 argument.
337 (sim_core_set_xor): Do not pass CPU when aborting.
338
339 * sim-n-core.h (sim_core_read_aligned_N,
340 sim_core_write_aligned_N): Call sim_hw_abort not hw_abort.
341 (sim_core_read_aligned_N, sim_core_write_aligned_N): Call
342 sim_cpu_hw_io_read_buffer and sim_cpu_hw_io_write_buffer. Does not
343 return length.
344
345 * sim-hw.h: Declare sim_hw_io_{read,write}_buffer. Declare
346 sim_hw_print.
347 * sim-hw.c (sim_hw_io_read_buffer, sim_hw_io_write_buffer,
348 sim_cpu_hw_io_read_buffer, sim_cpu_hw_io_write_buffer): New
349 functions.
350 (sim_hw_print): New function.
351
352 * sim-engine.h (sim_engine_vabort): Declare.
353 * sim-engine.c (sim_engine_vabort): New function.
354
355 Wed Apr 29 23:58:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
356
357 * sim-trace.c (print_data): For floating-point numbers trace raw
358 hex value.
359 (trace_result_fp2): New function.
360 * sim-trace.h (trace_result_fp2): New declaration.
361 (TRACE_FP_RESULT2): New macro.
362
363 Tue Apr 28 18:28:58 1998 Geoffrey Noer <noer@cygnus.com>
364
365 * common/aclocal.m4: call AM_EXEEXT in SIM_AC_COMMON, define
366 AM_CYGWIN32 and AM_EXEEXT.
367 * common/Make-common.in: set EXEEXT, add missing EXEEXTs
368 to run and install-common rules.
369 * common/configure: regenerate
370
371 Sat Apr 25 17:45:01 1998 Andrew Cagney <cagney@b1.cygnus.com>
372
373 * sim-types.h (cell_word): New type.
374 (natural_cell): Delete type.
375
376 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
377
378 * configure: Regenerated to track ../common/aclocal.m4 changes.
379 * config.in: Ditto.
380
381 Sun Apr 26 15:25:07 1998 Tom Tromey <tromey@cygnus.com>
382
383 * acconfig.h (NEED_DECLARATION_PRINTF): Removed.
384
385 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
386
387 * configure: Regenerated to track ../common/aclocal.m4 changes.
388 * config.in: Ditto.
389
390 Fri Apr 24 11:38:08 1998 Tom Tromey <tromey@cygnus.com>
391
392 * acconfig.h: New file.
393 * Make-common.in (top_builddir): New macro.
394 (INTL_LIB): Removed.
395 (INTLLIBS): New macro.
396 (INTLDEPS): Likewise.
397 (LIBDEPS): Use INTLDEPS.
398 (EXTRA_LIBS): Use INTLLIBS.
399 * aclocal.m4 (SIM_AC_COMMON): Call CY_GNU_GETTEXT.
400 (CY_WITH_NLS, CY_GNU_GETTEXT, AM_PATH_PROG_WITH_TEST,
401 AM_LC_MESSAGES): New macros from GNU gettext.
402
403 Fri Apr 24 19:57:59 1998 Andrew Cagney <cagney@b1.cygnus.com>
404
405 * sim-config.h: Discard leading _ from macros.
406 * sim-types.h: Ditto.
407
408 Wed Apr 22 14:14:19 1998 Michael Meissner <meissner@cygnus.com>
409
410 * Make-common.in (CSEARCH): Add -I to intl directories.
411 (INTL_LIB): Point to libintl.a.
412 (LIBDEPS): Add $(INTL_LIB).
413 (EXTRA_LIBS): Ditto.
414
415 Tue Apr 21 12:44:27 1998 Doug Evans <devans@canuck.cygnus.com>
416
417 * cgen-types.h (GETHIDI,MAKEDI): Tweak.
418
419 * cgen-ops.h (ADDCFSI): Fix.
420 (SUBCFSI): Tweak.
421
422 Tue Apr 21 13:18:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
423
424 * sim-types.h (signed_address, unsigned_address): Define.
425
426 Mon Apr 20 21:47:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
427
428 * sim-fpu.c (sim_fpu_2d): Don't return an SNaN, convert it into a
429 QNaN.
430
431 Thu Apr 16 10:30:14 1998 Andrew Cagney <cagney@b1.cygnus.com>
432
433 * sim-fpu.c, sim-fpu.h (sim_fpu_fractionto, sim_fpu_tofraction):
434 New functions, pack / unpack sim_fpu struct using raw values.
435 (sim_fpu_is): Differentiate between negative and positive
436 infinity.
437
438 Tue Apr 14 18:49:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
439
440 * sim-bits.h (EXTEND4): Define.
441 (EXTEND4, EXTEND15, EXTEND11): Ditto.
442
443 Tue Apr 14 16:31:35 1998 John Metzler <jmetzler@cygnus.com>
444
445 * sim-memopt.c (parse_addr): Sunos 4.5 does not hane strtol
446 declared so we need this cast to prevent long long addresses
447 from being misconfigures. Results in access to unmapped memory.
448
449 Tue Apr 14 13:19:14 1998 Doug Evans <devans@canuck.cygnus.com>
450
451 * Make-common.in (RUNTESTFLAGS): Define.
452 (check): Pass RUNTESTFLAGS to recursive make.
453
454 Tue Apr 14 15:09:19 1998 Andrew Cagney <cagney@b1.cygnus.com>
455
456 * sim-info.c (sim_info): Be verbose when either VERBOSE or
457 STATE_VERBOSE_P.
458
459 Sat Apr 4 23:24:17 1998 Andrew Cagney <cagney@b1.cygnus.com>
460
461 * aclocal.m4 (sim-inline): By default, disable sim-inline when
462 cross compiling.
463
464 Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
465
466 * aclocal.m4 (sim-cflags): Add -fomit-frame-pointer to defaults.
467 (sim-inline): Update to match sim-inline.[hc]
468 * configure: Regenerated to track ../common/aclocal.m4 changes.
469
470 * Make-common.in (sim_main_headers): Add sim-inline.h
471
472 * sim-bits.h (sim-bits.c): Include when H_REVEALS_MODULE_P.
473 selected.
474 * sim-endian.h (sim-endian.c): Ditto.
475
476 * sim-events.h (_SIM_EVENTS_H_): Replace with SIM_EVENTS_H.
477 (sim_events_set_trace): Delete unused prototype.
478
479 * sim-core.h (_SIM_CORE_H_): Replace with SIM_CORE_H.
480 * sim-core.c (_SIM_CORE_C_): Ditto for SIM_CORE_C.
481
482 * sim-fpu.h (sim-fpu.c): Include when H_REVEALS_MODULE_P.
483 (sim_fpu_to232i, sim_fpu_to232u, sim_fpu_i232to, sim_fpu_u232to):
484 Comment out, not yet implemented in sim-fpu.c.
485 (sim_fpu_zero, sim_fpu_one, sim_fpu_two, sim_fpu_qnan,
486 sim_fpu_max32, sim_fpu_max64): Mark as EXTERN_SIM_FPU.
487
488 * sim-inline.h: Rewrite description.
489 (H_REVEALS_MODULE_P, C_REVEALS_MODULE_P): Define.
490 (SIM_MAIN_INLINE): Add inline option.
491
492 * sim-inline.c (semantics.c, idecode.c, engine.c, ...): Do not
493 include generated files. Handled by generator directly.
494
495 Sat Apr 4 01:07:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
496
497 * sim-trace.c (set_trace_option_mask): Keep TRACE_ANY_P
498 up-to-date.
499
500 * sim-trace.h (TRACE_ANY_P): Define.
501 (struct _trace_data): Add trace_any_p.
502
503 Mon Mar 30 17:11:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
504
505 * run.c (main): Handle all alternatives of enum sim_stop.
506 (main): Delete unused `asection *s'.
507
508 Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
509
510 * hw-tree.h, hw-tree.c (hw_tree_vparse): New function
511
512 * configure: Regenerated to track ../common/aclocal.m4 changes.
513
514 * sim-hw.c: New file.
515 * sim-hw.h (sim_hw_parse): Declare function.
516 (hw-tree.h): Do not include.
517
518 * sim-base.h (STATE_HW): Define.
519 (struct sim_state_base): Add member struct *hw.
520
521 * sim-module.c (sim-hw.h): Include.
522 (modules): Add sim_hw_install.
523
524 * aclocal.m4 (sim_hw_obj): Add sim-hw.o
525
526 Fri Mar 27 14:55:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
527
528 * sim-base.h (CPU_INDEX): Define.
529
530 * sim-utils.c (sim_state_alloc): Initialize.
531 * sim-module.c (sim_post_argv_init): Ditto.
532
533 Thu Mar 26 10:07:57 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
534
535 * aclocal.m4 (sim_hw_obj): Fix sed expression to generate
536 properly formatted lists.
537
538 Thu Mar 26 10:37:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
539
540 * dv-pal.c (enum hw_pal_address_mask): From Stu Grossman, was
541 0x2f needs to be 0x3f.
542
543 Thu Mar 26 09:10:56 1998 Andrew Cagney <cagney@b1.cygnus.com>
544
545 * hw-tree.c (hw_tree_find_property): Return NULL when device is
546 not found.
547 (hw_tree_find_*_property): Clean up error message when property is
548 not found.
549
550 * dv-pal.c (hw_pal_io_read_buffer): Check the smp property is
551 present before looking for it.
552
553 Wed Mar 25 16:17:38 1998 Ian Carmichael <iancarm@cygnus.com>
554
555 * aclocal.m4 (AC_CHECK_HEADERS): Add check for fpu_control.h.
556 (AC_CHECK_FUNCS): Add check for __setfpucw.
557 * configure: Regenerated.
558
559 Wed Mar 25 09:18:34 1998 Andrew Cagney <cagney@b1.cygnus.com>
560
561 * dv-pal.c (hw_pal_countdown, hw_pal_countdown_value,
562 hw_pal_timer, hw_pal_timer_value): Define.
563 (hw_pal_io_read_buffer, hw_pal_io_write_buffer): Add timer support
564 (do_counter_event, do_counter_read, do_counter_value,
565 do_counter_write): new functions.
566
567 Tue Mar 24 12:24:24 1998 Andrew Cagney <cagney@b1.cygnus.com>
568
569 * hw-tree.c (hw_printf): Send tree dump to stderr, same as other
570 trace output.
571
572 * hw-base.c (hw_create): Stop searching for a device when one is
573 found.
574
575 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
576
577 * configure: Regenerated to track ../common/aclocal.m4 changes.
578
579 Mon Mar 23 10:25:08 1998 Andrew Cagney <cagney@b1.cygnus.com>
580
581 * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Add second argument,
582 appends extra devices.
583 (SIM_AC_OPTION_HARDWARE): Substute sim_hw, a non-duplicate list of
584 the device names.
585
586 * Make-common.in (hw-config.h): New target, create hw-config.h
587 file.
588 (SIM_HW): Definition from @sim_hw@.
589 (hw-base.o): Depend on hw-config.h
590
591 Tue Mar 24 17:41:35 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
592
593 * Make-common.in: Get SHELL from configure.
594 * (stamp-tvals sim-inline.c): Use $(SHELL) when invoking
595 move-if-change. Fixes NT native build problem.
596 * Makefile.in (nltvals.def): Use $(SHELL) when invoking
597 move-if-change. Fixes NT native build problem.
598 * configure: Regenerate with autoconf 2.12.1 to fix shell issues for
599 NT native builds.
600
601 Sun Mar 22 16:54:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
602
603 * hw-device.h, hw-device.c (hw_strdup): New function.
604
605 * hw-base.c (hw_create): Use hw_strdup when saving a copy of the
606 strings name, family and args.
607 (full_name_of_hw): Use hw_strdup when returning the full path.
608
609 * hw-properties.c: Clean up property not found / wrong type error
610 messages.
611
612 * hw-tree.c (hw_tree_parse): Finish a devices initialization
613 before attaching any ports.
614
615 * hw-base.c (hw-config.): Include. Replace hardwired table.
616
617 * dv-glue.c: Copy over ../ppc/hw_glue.c. Update to new framework.
618
619 * Make-common.in: Add rule for dv-glue.o.
620
621 Sun Mar 22 16:45:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
622
623 * hw-base.c (hw_finish): Move setting of trace level to here.
624 (hw_create): From here.
625
626 * hw-base.h, hw-base.c (do_hw_attach_regs): Copy function from
627 ../ppc/device_table.c.
628
629 * dv-pal.c (hw_pal_finish): Attach PAL device to parent bus.
630
631 * hw-tree.c (print_properties): Supress path when printing
632 properties of root node.
633
634 Sun Mar 22 16:21:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
635
636 * hw-device.h (HW_TRACE): Define.
637 (hw_trace): Declare.
638 * hw-device.c (hw_trace): Implement function.
639
640 * hw-base.c (hw_create): Set hw trace level from "trace?"
641 property.
642
643 * dv-core.c (dv_core_attach_address_callback): Add trace.
644
645 * dv-pal.c: Replace DTRACE with HW_TRACE.
646
647 Sun Mar 22 15:23:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
648
649 * hw-device.h (HW_ZALLOC, HW_MALLOC): New macros.
650 (hw_alloc_data): Delcare.
651 (struct hw): Add member alloc_of_hw.
652
653 * hw-device.c (hw_zalloc, hw_malloc, hw_free, hw_free_all): New
654 functions. Assocate memory with a device.
655 (stdlib.h): Include.
656
657 * hw-base.h (set_hw_delete): Define.
658 (hw_delete_callback): Declare.
659 (hw_delete): Declare.
660
661 * hw-base.c (hw_delete): Implement function.
662 (struct hw_base_data): Add member to_delete.
663 (ignore_hw_delete): New function, does nothing.
664 (hw_create): Set the hw_delete method.
665 (hw_create): Allocate the base type using HW_ZALLOC before setting
666 any methods.
667
668 * hw-tree.h, hw-tree.c (hw_tree_delete): New function.
669
670 * hw-properties.c: Replace zalloc/zfree with hw_zalloc/hw_free.
671
672 * hw-ports.c: Replace zalloc/zfree with hw_zalloc/hw_free.
673 (attach_hw_port_edge): Add struct hw argument
674
675 * dv-pal.c (hw_pal_finish): Replace zalloc/zfree with
676 hw_zalloc/hw_free.
677
678 Sun Mar 22 15:09:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
679
680 * hw-device.h (hw_attach_address_callback,
681 hw_detach_address_callback): Attach to a single space not a space
682 mask. Clarify interpretation of SPACE:ADDR parameters.
683
684 * hw-base.c (passthrough_hw_attach_address,
685 passthrough_hw_detach_address): Update.
686 * dv-core.c (dv_core_attach_address_callback): Ditto.
687 * dv-pal.c (hw_pal_attach_address): Ditto.
688
689 Thu Mar 19 00:41:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
690
691 * sim-options.h: Document additional CPU arg to OPTION_HANDLER.
692
693 Wed Mar 18 14:13:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
694
695 * Make-common.in (SIM_HW_OBJS, SIM_HW_SRC, SIM_DV_OBJS): Define.
696 (hw-base_h, hw-device_h, hw-handles_h, hw-instances_h, hw_ports_h,
697 hw-properties_h, hw-tree_h): Define, point at corresponding
698 header.
699 (hw_base_headers): Define list of headers included by hw-base.h
700 (hw-base.o, hw-device.o, hw-instances.o, hw-handles.o, hw-ports.o,
701 hw-properties.o, hw-tree.o): Specify dependencies.
702 (dv-core.o, dv-pal.o): Ditto.
703
704 * sim-hw.h: New file.
705
706 * hw-device.h, hw-device.c, hw-properties.h, hw-properties.c,
707 hw-ports.h, hw-ports.c: New files. Copied from ../ppc/device.[ch].
708
709 * hw-tree.h, hw-tree.c: New files. Copied from ../ppc/tree.[hc].
710
711 * hw-base.h, hw-base.c: new files. Copied from
712 ../ppc/device_table.[hc].
713
714 * dv-core.c, dv-pal.c: New files. Copied from
715 ../ppc/hw_{core,pal}.c
716
717 * sim-basics.h (struct hw): Declare.
718 (enum port_direction, enum object_disposition): Declare.
719
720 Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
721
722 * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Set sim_hw_obj, sim_dv_obj,
723 sim_dv_src in Makefile. Take list of devices as parameter to m4
724 macro..
725
726 * configure: Regenerated to track ../common/aclocal.m4 changes.
727
728 Mon Mar 16 12:37:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
729
730 * sim-trace.h, sim-trace.c (trace_prefix): Pass in sim_cia so that
731 trace_prefix can abort cleanly.
732
733 Sat Mar 14 18:36:12 1998 Doug Evans <devans@seba.cygnus.com>
734
735 * dv-sockser.c, dv-sockser.h: New files.
736 * Make-common.in (dv-sockser.o): Add rule for.
737 * aclocal.m4: Check for fcntl.h.
738 * config.h: Add HAVE_FCNTL_H.
739
740 * sim-break.c (remove_breakpoint): Fix thinko.
741
742 * sim-hload.c (sim_load): Provide default value of SIM_HANDLES_LMA.
743 Use SIM_HANDLES_LMA for lma_p arg to sim_load_file.
744
745 1998-03-13 Fred Fish <fnf@cygnus.com>
746
747 * sim-base.h (struct sim_state_base): Add prog_syms and
748 define macro STATE_PROG_SYMS.
749 * sim-trace.c (trace_prefix): Add variables abfd, symsize,
750 symbol_count, and asymbols. Call bfd_get_symtab_upper_bound
751 and bfd_canonicalize_symtab, to get symbol table on first use
752 and preserve it via STATE_PROG_SYMS for future calls to
753 bfd_find_nearest_line.
754
755 Wed Mar 11 14:02:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
756
757 * sim-core.h, sim-core.c (sim_core_map_to_str): Delete.
758
759 * sim-core.c (sim_core_attach): Handle a generic number of maps -
760 up to nr_maps, not just access_* maps.
761
762 * sim-profile.h (struct PROFILE_DATA): Track nr_maps different
763 maps.
764
765 * sim-profile.c (profile_print_core): Make map unsigned. Iterate
766 over nr_maps not sim_core_nr_maps.
767
768 * sim-events.h, sim-events.c (sim_events_watch_core): Change
769 core_map argument to unsigned.
770 (struct _sim_core): Ditto for struct member core_map.
771
772 * sim-core.h (nr_sim_core_maps, sim_core_*_map): Delete
773
774 * sim-basics.h (access_io, access_*_io): Define.
775 (map_read, map_write, map_exec, map_io): Define.
776
777 * sim-core.c, sim-core.h (sim_core_attach): Replace argument
778 attach with more generic mapmask.
779 (sim_core_{read,write}_*): Change map argument to unsigned.
780
781 * sim-core.c (sim_core_uninstall, sim_core_attach,
782 sim_core_detach): Iterate over nr_maps instead of
783 sim_core_nr_maps.
784
785 * sim-break.c (insert_breakpoint): Write breakpoints to exec_map
786 instead of the write_map.
787 (remove_breakpoint): Ditto.
788
789 * genmloop.sh (engine_resume_full): Replace sim_core_*_map
790 with read_map, write_map, exec_map resp.
791
792 * cgen-mem.h (DECLARE_GETMEM, DECLARE_SETMEM, DECLARE_GETIMEM):
793 Ditto.
794
795 * cgen-utils.c (sim_disassemble_insn): Ditto.
796
797 * sim-hrw.c (sim_write, sim_write): Ditto.
798
799 * sim-utils.h, sim-utils.c (access_to_str, map_to_str,
800 transfer_to_str): New functions.
801
802 Mon Mar 9 12:50:59 1998 Doug Evans <devans@seba.cygnus.com>
803
804 * sim-base.h (sim_state_base): New member environment.
805 (STATE_ENVIRONMENT): New macro.
806 * sim-config.c (current_environment): Delete.
807 (sim_config_default): New function.
808 (sim_config): Set STATE_ENVIRONMENT, not current_environment.
809 * sim-config.h (current_environment,CURRENT_ENVIRONMENT): Delete.
810 (sim_config_default): Add prototype.
811 * sim-module.c (sim_pre_argv_init): Call sim_config_default.
812 * sim-options.c (standard_option_handler, case OPTION_ENVIRONMENT):
813 Set STATE_ENVIRONMENT, not current_environment.
814
815 Mon Mar 9 11:59:03 1998 Jim Wilson <wilson@cygnus.com>
816
817 * sim-fpu.c (NR_GUARDS64): Change NR_PAD32 to NR_PAD64.
818
819 Tue Mar 3 10:53:05 1998 Andrew Cagney <cagney@b1.cygnus.com>
820
821 * sim-types.h (SIGNED32, SIGNED64): Pacify GCC.
822
823 * sim-alu.h (ALU64_BEGIN): Make alu64_r unsigned.
824
825 Mon Mar 2 10:20:06 1998 Doug Evans <devans@seba.cygnus.com>
826
827 * Make-common.in (TAGS): Make smarter.
828 * Makefile.in (TAGS): Ditto.
829
830 Fri Feb 27 19:09:57 1998 Doug Evans <devans@canuck.cygnus.com>
831
832 * sim-module.c (*): Fix typos in assertion tests.
833
834 Sat Feb 28 13:54:10 1998 Andrew Cagney <cagney@b1.cygnus.com>
835
836 * sim-module.c (sim_pre_argv_init): String passed to asprintf
837 can't be constant.
838
839 * sim-options.c (sim_parse_args): Ditto.
840 (sim_args_command): Return OK, instead of nothing, for an empty
841 command.
842
843 Fri Feb 27 13:29:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
844
845 * sim-profile.c (profile_info): Rename from profile_print. Drop
846 misc and misc_cpu callback arguments. Use
847 PROFILE_INFO_CPU_CALLBACK and STATE_PROFILE_INFO_CALLBACK instead.
848 (profile_install): Install profile_info function.
849
850 * sim-profile.h (PROFILE_INFO_CPU_CALLBACK,
851 STATE_PROFILE_INFO_CALLBACK): Define.
852 (struct PROFILE_DATA): Add field info_cpu_callback.
853 (profile_print): Delete function.
854
855 * sim-base.h (STATE_MODULES): Define. Replace individual
856 STATE_*_LIST with single struct module_list.
857
858 * sim-module.h (MODULE_INFO_FN, MODULE_INFO_LIST): Declare.
859 (struct module_list): Declare.
860
861 * sim-module.h, sim-module.c (sim_module_add_info_fn,
862 sim_module_info): New functions.
863 (sim_module_install): Clean up module data structures.
864
865 * sim-info.c (sim_info): New file. New function. Call
866 sim_module_info.
867
868 * Make-common.in (sim-info.o): Define rule.
869 (SIM_NEW_COMMON_OBJS): Add sim-info.o.
870
871
872 Fri Feb 27 18:26:16 1998 Doug Evans <devans@canuck.cygnus.com>
873
874 * sim-base.h (sim_cpu_base): New members name, options.
875 (sim_cpu_lookup): Add prototype.
876 * sim-module.c (sim_pre_argv_init): Provide default names for cpus.
877 * sim-options.h (DECLARE_OPTION_HANDLER): New argument `cpu'.
878 (sim_add_option_table): Update prototype.
879 * sim-options.c (sim_add_option_table): New argument `cpu'.
880 (standard_option_handler,standard_install): Update.
881 (sim_parse_args): Handle cpu specific options.
882 (print_help): New static function.
883 (sim_print_help): Call it. Print cpu specific options.
884 (find_match): New static function.
885 (sim_args_command): Call it. Handle cpu specific options.
886 * sim-utils.c (sim_cpu_lookup): New function.
887 * sim-memopt.c (memory_option_handler): Update.
888 (sim_memopt_install): Update.
889 * sim-model.c (model_option_handler): Update.
890 (model_install): Update.
891 * sim-profile.c (profile_option_handler): Update.
892 (profile_install): Update.
893 * sim-trace.c (trace_option_handler): Update.
894 (trace_install): Update.
895 * sim-watch.c (watchpoint_option_handler): Update.
896 (sim_watchpoint_install): Update.
897 * cgen-scache.c (scache_option_handler): Update.
898 (scache_install): Update.
899
900 Wed Feb 25 11:00:26 1998 Doug Evans <devans@canuck.cygnus.com>
901
902 * Make-common.in (check): Run `make check' in testsuite dir.
903
904 Wed Feb 25 14:40:24 1998 Andrew Cagney <cagney@b1.cygnus.com>
905
906 * sim-trace.c (trace_result0): New function.
907
908 * sim-trace.h (TRACE_FP_*, TRACE_FPU_*): Rename TRACE_FPU_*
909 macro's to TRACE_FP_*. TRACE_FPU_* should be defined and used when
910 tracing sim_fpu variables.
911 (TRACE_ALU_RESULT0): Define.
912 (TRACE_FP_RESULT_WORD): Define.
913 (TRACE_FP_INPUT_WORD1): Define.
914
915 * sim-fpu.c, sim-fpu.h (sim_fpu_max32, sim_fpu_max64, sim_fpu_one,
916 sim_fpu_two): New constants.
917 (sim_fpu_op1, sim_fpu_op2): New types.
918 (struct _sim_fpu): Delete member result. Re-order other members.
919 (sim_fpu_sign, sim_fpu_exp): New functions.
920 (sim_fpu_max, sim_fpu_min): new functions.
921 (EXPMAX32, EXPMAX64, NR_PAD32, NR_PAD64, NR_GUARDS32, NR_GUARDS64,
922 NORMAL_EXPMAX32, NORMAL_EXPMAX64): Define.
923
924 Tue Feb 24 22:45:39 1998 Doug Evans <devans@seba.cygnus.com>
925
926 * sim-profile.c (profile_print): Delete duplicate test of
927 PROFILE_INSN_IDX.
928 (profile_print_pc): Exit early if data collection not set up.
929 (profile_print_core): Simplify by calling sim_core_map_to_str.
930 * sim-core.h (sim_core_map_to_str): Declare.
931 * sim-core.c (sim_core_map_to_str): Make non-static.
932
933 * genmloop.sh (engine_resume): Update insn_count before exiting.
934 (engine_resume_full): Keep accurate core profile data.
935
936 * cgen-utils.c (sim_disassemble_insn): Don't use
937 sim_core_read_aligned_N, it messes up profiling results.
938
939 Mon Feb 23 20:45:57 1998 Mark Alexander <marka@cygnus.com>
940
941 * nltvals.def: Regenerate with MN10300 additions.
942
943 Tue Feb 24 13:18:42 1998 Andrew Cagney <cagney@b1.cygnus.com>
944
945 * sim-trace.h (TRACE_ALU_RESULT2): Define.
946
947 * sim-trace.h, sim-trace.c (trace_result_word2,
948 trace_input_word4, trace_result_word4): New function.
949
950 Mon Feb 23 13:08:35 1998 Doug Evans <devans@canuck.cygnus.com>
951
952 * cgen-sim.h (SEM_NEXT_PC): New arg `len'.
953
954 * sim-xcat.h: Delete.
955 * cgen-mem.h: Delete inclusion of sim-xcat.h.
956 * cgen-sim.h: Ditto.
957 * sim-alu.h: Replace sim-xcat.h with symcat.h.
958 * sim-n-bits.h: Ditto.
959 * sim-n-core.h: Ditto.
960 * sim-n-endian.h: Ditto.
961
962 Mon Feb 23 13:19:58 1998 Michael Meissner <meissner@cygnus.com>
963
964 * syscall.c (cb_syscall): Handle short reads, and EOF.
965
966 Tue Feb 24 00:29:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
967
968 * sim-trace.c (print_data): case trace_fmt_fp missing break. Use
969 sim_fpu to safely print fp_word values.
970 (print_data): Add trace_fmt_bool and trace_fmt_addr.
971 (trace_result_bool1, trace_result_addr1): New functions.
972 (trace_input_bool1, trace_input_addr1): New functions.
973
974 * sim-trace.h (TRACE_FPU_*): Define.
975
976 Mon Feb 23 13:24:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
977
978 * sim-fpu.h (enum sim_fpu_class): Add sim_fpu_class_denorm.
979 (sim_fpu_fpto, sim_fpu_tofp): Define.
980
981 Fri Feb 20 18:08:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
982
983 * sim-fpu.c (sim_fpu_cmp): New function.
984
985 Wed Feb 18 16:29:21 1998 Doug Evans <devans@canuck.cygnus.com>
986
987 * cgen-utils.h (sim_disassemble_insn): Use CGEN_INSN_BITSIZE
988 instead of abuf->length.
989 * sim-trace.c (trace_options): Have -t only trace a few useful things.
990 (set_trace_option_mask): Renamed from set_trace_options.
991 (set_trace_option): New function.
992 (trace_option_handler): Update calls to set_trace_option{,_mask}.
993 * sim-trace.h (TRACE_USEFUL_MASK): New macro.
994
995 Wed Feb 18 12:42:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
996
997 * sim-basics.h: Declare struct _sim_fpu.
998
999 Tue Feb 17 16:27:46 1998 Andrew Cagney <cagney@b1.cygnus.com>
1000
1001 * sim-trace.h (TRACE_ALU_INPUT*, TRACE_ALU_RESULT): Define.
1002 (trace_prefix, trace_input*, trace_result*): Declare.
1003 (trace_one_insn): Change declaration, assume trace_prefix called.
1004 (trace_generic): Like trace_one_insn.
1005 (TRACE_ALU_IDX, TRACE_*_IDX): Change #define's to enum.
1006 (TRACE_alu, TRACE_[a-z]*): Update.
1007
1008 * sim-trace.c (trace_prefix, trace_input*, trace_result*,
1009 trace_insn, save_data, trace_idx_to_str, print_data): New
1010 functions.
1011 (trace_one_insn): Rewrite.
1012 (trace_generic): New function.
1013
1014 Tue Feb 17 17:27:30 1998 Doug Evans <devans@seba.cygnus.com>
1015
1016 * Make-common.in (CGEN_MAIN_SCM): Update.
1017 * aclocal.m4 (USE_MAINTAINER_MODE): New variable.
1018
1019 * cgen-sim.h (SEMANTIC_CACHE_FN): Delete.
1020 (SEMANTIC_FN): Rewrite declaration.
1021 (DECODE): Update type of semantic_fast member.
1022 ({EX,SEM}_FN_NAME): Have only one version.
1023 * cgen.sh: Support building cpu.c.
1024 * sim-base.h (sim_state_base): Delete conditionals surrounding
1025 member scache_size.
1026
1027 Tue Feb 10 18:31:49 1998 Andrew Cagney <cagney@b1.cygnus.com>
1028
1029 * sim-load.c (sim_load_file): Print LMA/VMA according to value
1030 used.
1031
1032 Tue Feb 10 14:56:23 1998 Ian Carmichael <iancarm@cygnus.com>
1033
1034 * sim-core.c: Add missing prototypes for WITH_DEVICES.
1035 Add missing parameters to device_io calls.
1036 * sim-core.h: Add missing parameters to device_io calls.
1037
1038 Mon Feb 9 14:48:37 1998 Doug Evans <devans@canuck.cygnus.com>
1039
1040 * cgen-sim.h (DECODE): Always use switch for `read' for now.
1041 (PAREXEC): Renamed from PARALLEL_EXEC. All uses updated.
1042 (SEMANTIC{,_CACHE}_FN): Fix return type.
1043 * cgen.sh (decode): Add s/@arch@/$arch/.
1044 * genmloop.sh (@cpu@_engine_run): Delete `current_state'.
1045 (engine_resume): Likewise. Make `engine' volatile. Save copy
1046 of cpu pointer in volatile object. Initialize read switch if
1047 -parallel.
1048
1049 Thu Feb 5 13:27:04 1998 Doug Evans <devans@seba.cygnus.com>
1050
1051 * cgen-sim.h (EX_FN_NAME): _exc_ -> _ex_.
1052 (SEM_INSN): New macro.
1053
1054 Tue Feb 3 16:31:56 1998 Andrew Cagney <cagney@b1.cygnus.com>
1055
1056 * sim-run.c (sim_engine_run): Assume IMEM is 32 bit.
1057
1058 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
1059
1060 * configure: Regenerated to track ../common/aclocal.m4 changes.
1061
1062 Sun Feb 1 16:16:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
1063
1064 * sim-types.h (fp_word): New type, define according to
1065 WITH_TARGET_FLOATING_POINT_BITSIZE.
1066
1067 * aclocal.m4 (default_sim_floating_point_bitsize): Add
1068 configuration of size of floating point registers.
1069
1070 Sun Feb 1 14:02:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
1071
1072 * sim-profile.c (profile_print): Only print CPU <N> if other
1073 output is going to appear.
1074
1075 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
1076
1077 * configure: Regenerated to track ../common/aclocal.m4 changes.
1078
1079 Sat Jan 31 18:03:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
1080
1081 * sim-types.h (address_word): Typedef according to
1082 WITH_TARGET_ADDRESS_BITSIZE.
1083 (signed_cell, unsigned_cell, natural_cell): Ditto using
1084 WITH_TARGET_CELL_BITSIZE.
1085
1086 * sim-config.h (WITH_TARGET_ADDRESS_BITSIZE): Define.
1087 (WITH_TARGET_CELL_BITSIZE): Define.
1088 (WITH_HOST_WORD_BITSIZE): Delete.
1089
1090 * sim-config.c (print_sim_config): Update.
1091
1092 * aclocal.m4 (SIM_AC_OPTION_BITSIZE): Add support for
1093 configuration of address and OpenFirmware cell sizes.
1094
1095 Fri Jan 30 09:36:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
1096
1097 * sim-engine.h (sim_engine_run): Add argument nr_cpus.
1098 * sim-run.c (sim_engine_run): Update.
1099
1100 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use SET_CPU_CIA instead of
1101 CPU_CIA.
1102 * sim-run.c (sim_engine_run): Ditto.
1103
1104 * sim-resume.c (sim_resume): Obtain nr_cpus from sim_engine.
1105 (sim_resume): Pass nr_cpus to sim_engine_run.
1106
1107 * sim-engine.h (struct _sim_engine): Add member nr_cpus.
1108
1109 * sim-engine.c (sim_engine_init): Hardwire nr_cpus to
1110 MAX_NR_PROCESSORS.
1111 (sim_engine_nr_cpus) sim-engine.c, sim-engine.h: New function
1112
1113 Thu Jan 29 12:13:01 1998 Doug Evans <devans@canuck.cygnus.com>
1114
1115 * cgen.sh: Portably read parms past $9.
1116
1117 Fri Jan 23 14:20:54 1998 Doug Evans <devans@seba.cygnus.com>
1118
1119 * Make-common.in (stamp-tvals): New rule.
1120 (targ-vals.h,targ-map.c): Depend on it.
1121 (clean): Remove stamp-tvals.
1122
1123 Tue Jan 20 21:35:13 1998 Michael Meissner <meissner@cygnus.com>
1124
1125 * sim-utils.c (sim_state_alloc): #if 0 variable that is only used
1126 in code also #if 0'ed.
1127
1128 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
1129
1130 * configure: Regenerated to track ../common/aclocal.m4 changes.
1131 * aclocal.m4: Recognize --enable-maintainer-mode.
1132
1133 Mon Jan 19 12:45:45 1998 Doug Evans <devans@seba.cygnus.com>
1134
1135 start-sanitize-cygnus
1136 * Make-common.in (cgen-{arch,cpu,decode}): New targets.
1137 * cgen.sh: New file.
1138 end-sanitize-cygnus
1139 * cgen-scache.h: Deleted.
1140 * Make-common.in (cgen-run.o,cgen-scache.o): Delete cgen-scache.h dep.
1141 (CGEN_CPU_SCM): Add sim-model.scm.
1142 * cgen-scache.c: Only compile contents if WITH_SCACHE.
1143 (scache_init): Use runtime computed size of SCACHE.
1144 (scache_flush): Likewise.
1145 * cgen-mem.h (GETIMEMU[QHSD]I): Declare.
1146 ([GS]ETT{QI,UQI,HI,UHI,SI,USI,DI,UDI}): Declare.
1147 * cgen-sim.h: Scache support moved here.
1148 (PC): Redo definition.
1149 (ARGBUF,SCACHE,PARALLEL_EXEC): Provide forward decls.
1150 (DECODE): Add parallel execution support.
1151 Only include semantic label members if using switch.
1152 (SWITCH,CASE,BREAK,DEFAULT,ENDSWITCH): Portable computed goto support.
1153 (CGEN_CPU): Delete members exec_state, halt_sigrc, halt_jmp_buf.
1154 (IADDR,CIA,SEM_ARG,EX_FN_NAME,SEM_FN_NAME,RECORD_IADDR,SEM_ARGBUF,
1155 SEM_NEXT_PC,SEM_BRANCH_VIA_{CACHE,ADDR},SEM_NEW_PC_ADDR): Moved here
1156 from cgen-types.h.
1157 (engine_{stop,run,resume,halt,signal}): Delete decls.
1158 * cgen-types.h (CGEN_{XCAT3,CAT3}): Delete.
1159 (argbuf,scache): Delete forward decls.
1160 (STATE): Delete decl.
1161 * cgen-utils.c: Don't include decode.h, mem-ops.h, sem-ops.h.
1162 Include cgen-mem.h, cgen-ops.h.
1163 (engine_halt,engine_signal): Delete.
1164 ({ex,exc,sem,semc}_illegal): Delete.
1165 (sim_disassemble_insn): Result of extract fn is in bits.
1166 * genmloop.sh: Rewrite.
1167
1168 * cgen-trace.c (trace_insn): Set printed_result_p=0 if not tracing
1169 line numbers.
1170
1171 * sim-base.h (sim_state_base): Delete member `model'.
1172 (sim_cpu_base): Add member `model'.
1173 * sim-model.h (IMP_PROPERTIES): New type.
1174 (MACH): New members imp_props, models.
1175 (models): Delete decl.
1176 * sim-model.c (set_model): Update.
1177 * sim-profile.c (profile_print_model): Update.
1178
1179 * sim-utils.c (sim_state_alloc): Delete setting of cpu backlink here.
1180
1181 Fri Jan 16 12:33:09 1998 Nick Clifton <nickc@cygnus.com>
1182
1183 * cgen-trace.c (trace_insn): Call CGEN_INSN_MNEMONIC() rather than
1184 CGEN_INSN_SYNTAX().
1185
1186 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1187
1188 * configure: Regenerated to track ../common/aclocal.m4 changes.
1189 * config.in: Ditto.
1190
1191 Mon Dec 15 23:16:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
1192
1193 * aclocal.m4 (AR): Check for sigaction.
1194
1195 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
1196
1197 * Make-common.in (sim-core.o): Depend on $(sim_main_headers).
1198
1199 * sim-config.h (WITH_TREE_PROPERTIES): Define as 0.
1200 * sim-config.c (sim_config): Replace WITH_DEVICES with
1201 WITH_TREE_PROPERTIES.
1202
1203 * configure: Regenerated to track ../common/aclocal.m4 changes.
1204
1205 Wed Dec 3 17:56:02 1997 Doug Evans <devans@canuck.cygnus.com>
1206
1207 * Make-common.in (SIM_ENVIRONMENT): New variable.
1208 (CONFIG_CFLAGS): Add it.
1209 * aclocal.m4 (SIM_AC_OPTION_ENVIRONMENT): Handle
1210 --enable-sim-environment option.
1211 * configure: Regenerated.
1212 * sim-config.h (environment support): Rewrite.
1213 * sim-config.c (current_environment): Define as enum, unconditionally.
1214 (current_alignment): Define unconditionally.
1215 (config_environment_to_a): Update.
1216 (config_alignment_to_a): Fix type of argument. Define unconditionally.
1217 (sim_config): Handle environment and alignment determination
1218 unconditionally. Delete sanity checks of current_environment,
1219 unnecessary.
1220 (print_sim_config): Update.
1221 * sim-options.c (STANDARD_OPTIONS enum): Add OPTION_ENVIRONMENT.
1222 (standard_options): Add --environment.
1223 (standard_option_handler): Likewise.
1224
1225 Fri Nov 28 12:21:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
1226
1227 * sim-alu.h: Add notes on carry vs borrow for subtraction.
1228 (ALU{,8,16,32,64}ADD): Redefine ADD macro as add overflowing.
1229 (ALU{,8,16,32,64}ADDC): Define - add carrying.
1230 (ALU{,8,16,32,64}SUB): Redefine SUB macro as subtract overflowing.
1231 (ALU{,8,16,32,64}SUBB): Define - subtract borrowing.
1232 (ALU{,8,16,32,64}SUBC): Define - tract carrying.
1233 (ALU{,8,16,32,64}ADD_CA, ALU{,8,16,32,64}ADDC_C): Replace single
1234 argument ADD_CA macro with two argument ADDC_C - add carrying with
1235 carry in.
1236 (ALU{,8,16,32,64}SUB_CA, ALU{,8,16,32,64}SUBC_X): Replace single
1237 argument SUB_CA macro with two argument SUBC_X - subtract
1238 carrying, extended.
1239 (ALU{,8,16,32,64}SUBB_B): Define - subtract borrowing with
1240 borrow-in.
1241 (ALU{,8,16,32,64}NEGC, ALU{,8,16,32,64}NEGB): Define.
1242
1243 Sun Nov 30 17:40:57 1997 Michael Meissner <meissner@cygnus.com>
1244
1245 * sim-io.c (sim_io_{syscalls,getstring}): Delete. No longer used.
1246 * sim-io.h (sim_io_syscalls): Delete.
1247
1248 Fri Nov 28 20:10:09 1997 Michael Meissner <meissner@cygnus.com>
1249
1250 * syscall.c (cb_syscall): Add missing else, so write to stdout
1251 isn't doubled.
1252
1253 * sim-alu.h (ALU{,8,16,32,64}_SET_CARRY): Provide macros to import
1254 the carry bit from the CPU's psw.
1255
1256 Fri Nov 28 11:15:05 1997 Doug Evans <devans@canuck.cygnus.com>
1257
1258 * gennltvals.sh: Redo syscall support.
1259 * nltvals.def: Regenerated.
1260
1261 Wed Nov 26 16:49:38 1997 Michael Meissner <meissner@cygnus.com>
1262
1263 * syscall.c (cb_syscall): If writing to stdout or stderr, flush
1264 the stream immediately.
1265
1266 Wed Nov 26 12:32:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1267
1268 * sim-io.c (sim_io_getstring): Delete unused len2.
1269 (sim_io_syscalls): Ditto for sys_errno.
1270
1271 Wed Nov 26 11:18:40 1997 Doug Evans <devans@canuck.cygnus.com>
1272
1273 * syscall.c (cb_syscall): Test CB_SYSCALL struct magic number.
1274
1275 * Make-common.in (run.o): Depend on remote-sim.h.
1276 (nrun.o,sim-hload.o,sim-hrw.o): Likewise.
1277 (sim-io.o,sim-reason.o,sim-resume.o): Likewise.
1278
1279 Tue Nov 25 20:12:46 1997 Michael Meissner <meissner@cygnus.com>
1280
1281 * sim-io.c (sim_io_syscalls): Disable lseek.
1282
1283 Tue Nov 25 00:12:38 1997 Doug Evans <devans@seba.cygnus.com>
1284
1285 start-sanitize-d30v
1286 * gennltvals.sh: Generate syscall values for d30v.
1287 end-sanitize-d30v
1288 * gennltvals.sh: Use libgloss/syscall.h for sparc.
1289 * nltvals.def: Regenerate.
1290
1291 * callback.c (os_stat): Make 3rd arg a host struct stat ptr.
1292 (os_fstat): Likewise. Validate fd argument.
1293 (cb_host_to_target_stat): Delete big_p arg. If HS arg is NULL,
1294 just compute target stat struct length.
1295 * syscall.c: #include "libiberty.h", <sys/types.h>, <sys/stat.h>.
1296 (ENOSYS,ENAMETOOLONG): Provide definitions if missing.
1297 (get_string): Return host errno values so they can be properly
1298 translated later.
1299 (cb_syscall): Likewise.
1300 (cb_syscall, cases open,unlink): Use get_path instead of get_string.
1301 (cb_syscall, case read): Use read_stdin for file descriptor 0.
1302 (cb_syscall, case write): Use write_stderr for file descriptor 2.
1303 (cb_syscall): Add cases for lseek, unlink, stat, fstat, time.
1304 (get_path): New function.
1305
1306 Mon Nov 24 18:56:07 1997 Michael Meissner <meissner@cygnus.com>
1307
1308 * sim-io.c (sim_io_syscalls): New function to provide system call
1309 emulation. Provide exit, open, close, read, write, lseek, and
1310 unlink.
1311 (sim_io_getstring): New function to return a string from a
1312 simulated memory location.
1313
1314 * sim-io.h (sim_io_syscalls): Add declaration.
1315
1316 Mon Nov 24 12:09:59 1997 Doug Evans <devans@seba.cygnus.com>
1317
1318 * sim-core.c (sim_core_signal): Fix spelling error in message.
1319
1320 * sim-hrw.c (sim_read): Use read map, not write map.
1321
1322 * Make-common.in (all): Add .gdbinit.
1323 * gdbinit.in: Add dump command.
1324
1325 * sim-model.c (model_options): Use '\0' for `shortopt'.
1326
1327 * sim-trace.c (trace_option_handler): Set state trace file
1328 for --trace-file in addition to cpu's values.
1329 (trace_vprintf): If cpu == NULL, try state's trace file.
1330 (trace_options): Reorganize table, reword some descriptions.
1331
1332 Sun Nov 23 10:57:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1333
1334 * sim-fpu.c (sim_fpu_abs, sim_fpu_neg, sim_fpu_inv), sim-fpu.h:
1335 New functions.
1336
1337 Sat Nov 22 19:16:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
1338
1339 * sim-reason.c (sim_stop_reason): For sim_signalled, return the
1340 signal untranslated, document problem with this.
1341
1342 * nrun.c (main): Check for a prog name of `*step'. If present,
1343 step the simulator instead of allowing it to run free.
1344
1345 * sim-signal.c (SIGQUIT): Define on _MSC_VER hosts.
1346
1347 * Make-common.in (sim_main_headers): Add sim-signal.h.
1348
1349 Fri Nov 21 09:32:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
1350
1351 * sim-signal.c (sim_signal_to_host): Return 0 for SIM_SIGNONE.
1352
1353 Thu Nov 20 20:35:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1354
1355 * sim-signal.h: Start simulator signals at 64 so that host signal
1356 numbers can be detected and reported.
1357
1358 * sim-signal.h (SIM_SIGFPE), sim-signal.h: Add signal.
1359
1360 Wed Nov 19 12:02:41 1997 Doug Evans <devans@seba.cygnus.com>
1361
1362 * callback.c (cb_host_to_target_stat): Fix return values.
1363
1364 * cgen-sim.h (enum_signal_type): Delete.
1365 (engine_signal): Update prototype.
1366 * cgen-utils.c: Don't include <signal.h>.
1367 (sim_signal_to_host): Delete, lives in sim-signal.c now.
1368 (engine_signal): Update.
1369
1370 * sim-utils.c (sim_state_alloc): Call SIM_STATE_ALLOC if defined.
1371 (sim_state_free): Call SIM_STATE_FREE if defined.
1372
1373 * sim-module.c (sim_module_install): Don't leave any modules
1374 installed if one fails to install.
1375
1376 Wed Nov 19 13:25:48 1997 Michael Meissner <meissner@cygnus.com>
1377
1378 * sim-options.c: Don't include ../libiberty/alloca-conf.h any
1379 more, since alloca is not used in this file.
1380
1381 * sim-alu.h (ALU{32,64}_*): Rewrite 32 and 64 bit ALU support to
1382 correctly set the carry and overflow bits for those types.
1383 (ALU{8,16,32,64}_{ADD,SUB}_CA): Take VAL argument to add along
1384 with carry, so carry is correct after doing both adds.
1385 (ALU*): Space out '\' to make it easier to read.
1386
1387 Tue Nov 18 15:53:45 1997 Doug Evans <devans@canuck.cygnus.com>
1388
1389 * sim-core.c (sim_core_signal): Use sim_stopped instead of
1390 sim_signalled.
1391
1392 * sim-signal.c, sim-signal.h: New files.
1393 * Make-common.in (sim-signal.o): Add rule for.
1394 (SIM_NEW_COMMON_OBJS): Add sim-signal.o.
1395 * sim-abort.c: Don't include <signal.h>.
1396 * sim-basics.h: #include "sim-signal.h".
1397 * sim-break.c: Don't include <signal.h>.
1398 (sim_handle_breakpoint): Replace SIGTRAP with SIM_SIGTRAP.
1399 * sim-core.c: Don't include <signal.h>.
1400 (SIGBUS): Delete definition.
1401 (sim_core_signal): Replace SIGSEGV,SIGBUS with SIM_SIGSEGV,SIM_SIGBUS.
1402 * sim-engine.c: Don't include <signal.h>.
1403 (sim_engine_abort): Replace SIGABRT with SIM_SIGABRT.
1404 * sim-reason.c (sim_stop_reason): Call sim_signal_to_host.
1405 * sim-resume.c: Don't include <signal.h>.
1406 (SIGTRAP): Delete definition.
1407 (has_stepped): Replace SIGTRAP with SIM_SIGTRAP.
1408 * sim-stop.c: Don't include <signal.h>.
1409 (control_c_simulation): Replace SIGINT with SIM_SIGINT.
1410 * sim-watch.c: Don't include <signal.h>.
1411 (handle_watchpoint): Replace SIGINT with SIM_SIGINT.
1412
1413 * Make-common.in (SIM_NEW_COMMON_OBJS): New variable.
1414
1415 * sim-base.h (CIA_ADDR): Provide default definition.
1416 * sim-core.c (sim_core_signal): Use CIA_ADDR to fetch value.
1417 * sim-break.c (sim_handle_breakpoint): Likewise.
1418
1419 Mon Nov 17 14:15:31 1997 Doug Evans <devans@seba.cygnus.com>
1420
1421 * Make-common.in (srccom): New variable.
1422
1423 * Make-common.in (DEP, COMMON_DEP_CFLAGS): Define.
1424 (LIB_OBJS): Add syscall.o.
1425 (gentmap): Pass $(NL_TARGET) to $(CC).
1426 (syscall.o): Add rule for.
1427 (sim_main_headers): Add $(SIM_EXTRA_DEPS).
1428 (sim-bits.o): Depend on $(sim-n-bits_h).
1429 (sim-load.o): Depend on callback.h.
1430
1431 * Make-common.in (cgen-*.o): Update dependencies, mem-ops.h renamed to
1432 cgen-mem.h, sem-ops.h renamed to cgen-ops.h.
1433 * cgen-mem.h, cgen-ops.h: New files.
1434
1435 * aclocal.m4 (--enable-sim-scache): Pass -DWITH_SCACHE=0 for "=no".
1436
1437 * Makefile.in (nltvals.def): Depend on gennltvals.sh.
1438 Rewrite build rule.
1439 * callback.c: #include string.h or strings.h.
1440 #include sys/types.h and sys/stat.h.
1441 (cb_init_syscall_map,cb_init_errno_map,cb_init_open_map): Declare.
1442 (os_get_errno,os_open): Update.
1443 (os_stat,os_fstat): New functions.
1444 (os_init): Initialize syscall_map, errno_map, open_map.
1445 (default_callback): Add entries for os_stat, os_fstat, syscall_map,
1446 errno_map, open_map, signal_map, stat_map.
1447 (cb_read_target_syscall_maps): New function.
1448 (cb_target_to_host_syscall): New function.
1449 (cb_host_to_target_errno): Renamed from host_to_target_errno.
1450 (cb_target_to_host_open): Renamed from target_to_host_open.
1451 (store): New function.
1452 (cb_host_to_target_stat): New function.
1453 * syscall.c: New file.
1454 * gentmap.c (sys_tdefs): New global.
1455 (gen_targ_vals_h): Output target syscall numbers.
1456 (gen_targ_map_c): Update. Output target syscall translation map.
1457 * gentvals.sh: New first argument `target'. Preface table with
1458 #ifdef NL_TARGET_$target if non-null target passed.
1459 * gennltvals.sh: New file.
1460 * nltvals.def: Regenerated.
1461
1462 Fri Nov 14 11:33:34 1997 Andrew Cagney <cagney@b1.cygnus.com>
1463
1464 * sim-n-core.h (sim_core_read_unaligned_N): Return static
1465 sim_core_dummy_M.
1466 (sim_core_dummy_M): Declare.
1467
1468 Wed Nov 12 18:16:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
1469
1470 * sim-core.c (sim_core_signal): Print the address of the
1471 instruction.
1472
1473 Thu Nov 13 11:49:41 1997 Doug Evans <devans@seba.cygnus.com>
1474
1475 * sim-base.h (sim_state_base): Move `magic' to end of struct.
1476
1477 * sim-base.h (sim_state_base): Add member trace_data.
1478 (STATE_TRACE_DATA): New macro.
1479 * sim-trace.h (TRACE_DEBUG_IDX,TRACE_debug): New macros.
1480 ({WITH_,}TRACE_DEBUG_P): New macros.
1481 (STATE_TRACE_FLAGS,STRACE_P,STRACE_DEBUG_P): New macros.
1482 (_sim_cpu): Delete forward reference.
1483 (debug_printf): Update.
1484 * sim-trace.c (OPTION_TRACE_DEBUG): Define.
1485 (trace_options): Add --trace-debug.
1486 (set_trace_options): Handle it.
1487 (trace_option_handler): Likewise.
1488 (trace_install): Init state trace_data struct.
1489 (trace_uninstall): Close state trace file.
1490 * sim-events.c (ETRACE): Only print source file and line number if
1491 --trace-debug.
1492 * sim-n-core.h (sim_core_trace_M): Likewise.
1493
1494 * sim-core.c (sim_core_signal): Add missing "\n" in message.
1495
1496 1997-11-13 Felix Lee <flee@cygnus.com>
1497
1498 * sim-n-core.h (sim_core_read_unaligned_N): illegal empty
1499 initializer.
1500 * sim-types.h (unsigned128,signed128): fix typo for MSVC.
1501
1502 Wed Nov 12 12:18:08 1997 Doug Evans <devans@canuck.cygnus.com>
1503
1504 * aclocal.m4 (SIM_AC_OPTION_SCACHE): Fix typo.
1505
1506 * Make-common.in (BUILT_SRC_FROM_COMMON): Remove files no longer
1507 built this way.
1508 (sim-config.o): Remove non-existent $(sim-nconfig_h) dependency.
1509 (clean): Don't delete $(BUILT_SRC_FROM_COMMON) if building in
1510 source tree.
1511
1512 Tue Nov 11 13:28:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
1513
1514 * sim-events.c (sim_events_process): Re-compute the time -
1515 update_time_from_event - as each event is processed. Reverses
1516 previous change.
1517
1518 Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
1519
1520 * callback.c (os_poll_quit): Replace _WIN32 with _MSC_VER.
1521
1522 Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
1523
1524 * sim-events.c (sim_events_process): Delete redundant call to
1525 update_time_from_event.
1526 (sim_events_slip): Always decrement time_from_event.
1527 (sim_events_tick, sim_events_deschedule, update_time_from_event):
1528 Delete assertion that time_from_event >=0 when work in queue, no
1529 longer applicable.
1530
1531 Thu Nov 6 12:06:46 1997 Andrew Cagney <cagney@b1.cygnus.com>
1532
1533 * sim-options.c (STANDARD_OPTIONS): Change OPTION_* to an enum.
1534 (standard_option_handler): Update.
1535
1536 * sim-options.h: Clarify documentation.
1537 (OPTION_LONG_ONLY_P): Delete definition.
1538 (OPTION_VALID_P): Define.
1539
1540 * sim-options.c (sim_print_help): Allow short only options.
1541 (sim_parse_args): Ditto.
1542 (sim_args_command): Skip short only options.
1543 (sim_parse_args): Allocate space for NUM_OPTS not just 256. Make
1544 separate entries for short and long options in the HANDLERS and
1545 ORIG_VAL tables.
1546 (sim_parse_args): Disable argument permutation.
1547
1548 Wed Nov 5 13:40:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
1549
1550 * sim-core.h (DECLARE_SIM_CORE_WRITE_N. DECLARE_SIM_CORE_READ_N):
1551 Add argument M, size of data type.
1552 (sim_core_read_misaligned_3, sim_core_write_misaligned_3):
1553 Declare, ditto for 5, 6 & 7 byte transfers.
1554 (sim_core_write_unaligned_1, sim_core_write_unaligned_1): Define
1555 as aligned variant.
1556
1557 * sim-n-core.h (sim_core_trace_M): Rename from
1558 sim_core_trace_N. Add nr_bytes argument. Replace transfer argument
1559 with transfer type. Print transfer direction. Handle 1 and 2 byte
1560 transfers.
1561 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Trace
1562 unaligned accesses.
1563 (unsigned_M, T2H_M, H2T_M): Rename from unsigned_N, T2H_N, H2T_N.
1564 Update all functions.
1565
1566 * sim-core.c: Generate functions starting with 16 not 1.
1567 (sim_core_read_unaligned_3): Generate. Ditto for 3 byte write and
1568 all 5, 6 & 7 byte transfers.
1569
1570 * sim-n-core.h (sim_core_read_misaligned_N,
1571 sim_core_write_misaligned_N): Implement.
1572
1573 Mon Nov 3 15:03:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
1574
1575 * sim-endian.h (U16_8): Implement
1576
1577 * sim-endian.c (sim_endian_split_16, sim_endian_join_16): New functions
1578
1579 * sim-endian.h (VL8_16, VH8_16): Implement.
1580
1581 * sim-memopt.c (memory_option_handler): Typecast 64bit value to
1582 long in printf.
1583 (memory_option_handler): Only zalloc modulo bytes when non-zero.
1584 (memory_option_handler): Skip comma in alias address list
1585
1586 Fri Oct 31 13:03:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
1587
1588 * sim-memopt.c (do_memopt_add, do_memopt_delete): Add level and
1589 space params.
1590 (parse_size, parse_addr): New functions
1591 (memory_option_handler, memory_options): Parse address & size
1592 using new functions. Pass level, space, modulo to do_memopt_add &
1593 do_memopt_del.
1594
1595 * sim-memopt.h (struct _sim_memopt): Add level & space fields.
1596
1597 * sim-core.h (sim_core_arrach, sim_core_detach): Replace
1598 `attach_type attach' argument with `unsigned level' argument.
1599 Document.
1600
1601 * sim-core.c (new_sim_core_mapping, sim_core_map_attach,
1602 sim_core_attach): Replace argument attach with level. Update
1603 verification of arguments.
1604 (sim_core_map_detach, sim_core_detach): Replace argument attach
1605 with level.
1606
1607 * sim-basics.h (enum _attach_type): Delete.
1608
1609 Thu Oct 30 13:45:00 1997 Doug Evans <devans@seba.cygnus.com>
1610
1611 * sim-core.h (sim_core_write_8): Define.
1612
1613 Tue Oct 28 12:29:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1614
1615 * sim-bits.h: Document ROTn macro.
1616
1617 * sim-endian.h (H2T): Handle 16 byte variables.
1618
1619 * sim-n-core.h (sim_core_read_unaligned_N): Return a dummy when an
1620 error.
1621
1622 * sim-core.c: Do not generate sim_core_*_word.
1623
1624 * sim-n-core.h (sim_core_trace_N): Add line_nr argument.
1625 (sim_core_write_aligned_N, sim_core_read_aligned_N): Update.
1626
1627 * sim-core.h (sim_core_read_unaligned_word,
1628 sim_core_read_aligned_word, sim_core_read_word,
1629 sim_core_write_unaligned_word, sim_core_write_aligned_word,
1630 sim_core_write_word): Change to macros that map onto sim_core_*_N.
1631
1632 Mon Oct 27 11:25:10 1997 Doug Evans <devans@canuck.cygnus.com>
1633
1634 * sim-n-endian.h: Add TAGS entrys for 16 byte versions.
1635
1636 * sim-endian.h: Disable 16 byte support.
1637
1638 Mon Oct 27 12:00:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
1639
1640 * sim-endian.c (_SWAP_16): Define. Generate 126 bit swap code.
1641
1642 * sim-n-core.h (sim_core_trace_N): New function.
1643 (sim_core_read_aligned_N, sim_core_write_aligned_N): Use,
1644 (sim_core_read_unaligned_N): Do not retyrn bogus value wden error.
1645
1646 * sim-endian.h: Add 128 bit variant.
1647
1648 * sim-core.h, sim-core.c: Add 128 bit variant.
1649
1650 * sim-types.h: Add signed128 and unsigned128 types using a struct.
1651
1652 Fri Oct 24 11:33:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
1653
1654 * sim-events.c (sim_events_process): Clear events->work_pending.
1655 (sim_events_tickn, sim_events_tick): Accumulate, instead of
1656 setting, nr_ticks_to_process.
1657 (sim_events_preprocess): Allow nr_ticks_to_process to be non-zero
1658 when the event queue isn't next.
1659
1660 * sim-events.h, sim-events.c (sim_events_slip): New function.
1661
1662 Wed Oct 22 14:18:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1663
1664 * sim-hload.c (sim_load): Pass lma_p==0 and do_load=sim_load.
1665
1666 * sim-utils.h, sim-load.c (sim_load_file): Add lma_p and do_load
1667 arguments.
1668
1669 Tue Oct 21 18:37:57 1997 Doug Evans <devans@canuck.cygnus.com>
1670
1671 * nrun.c (main): Remove useless test of name != NULL.
1672 Exit if bfd_openr fails. Call bfd_check_format after bfd_openr.
1673
1674 Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1675
1676 * sim-fpu.c (EXPMAX): Type is unsigned.
1677 (MIN_INT, MAX_INT): Type is signed64.
1678 (i2fpu): Type of val is signed64.
1679
1680 Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1681
1682 * sim-profile.h (PROFILE_PC_BUCKET_SIZE): Treat a shift of zero as
1683 a bucket size of zero.
1684
1685 * sim-profile.c (OPTION_PROFILE_PC_GRANULARITY,
1686 OPTION_PROFILE_PC): Define.
1687 (profile_option_handler): Add support for --profile-pc and
1688 --profile-pc-granularity options.
1689 (profile_pc_init): When possible, compute nr buckets from bucket
1690 size.
1691
1692 * sim-profile.c (profile_pc_init): Align the profile-pc end
1693 address with the profile-pc bucket size.
1694
1695 * sim-profile.h (PROFILE_PC_NR_BUCKETS): Rename PROFILE_PC_SIZE to
1696 something less ambiguous.
1697 (PROFILE_PC_BUCKET_SIZE): Ditto for PROFILE_PC_SAMPLE_SIZE.
1698
1699 * sim-profile.c (profile_pc_cleanup): New function. Move
1700 profile_pc_uninstall code to here.
1701 (profile_pc_uninstall): Call.
1702 (profile_pc_init): Call.
1703
1704 Mon Oct 20 17:23:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
1705
1706 * sim-profile.c (profile_print_pc): Dump pc profile to dmon.out
1707 file using BSD gprof format.
1708
1709 * sim-bits.h (LSBIT, MSBIT, BIT): Force result to type
1710 unsigned_word.
1711 (LSBIT8, LSBIT16, LSBIT32, LSBIT64, MSBIT8, MSBIT16, MSBIT32,
1712 MSBIT64): Force result to unsignedN.
1713
1714 Thu Oct 16 11:38:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
1715
1716 * sim-alu.h (ALU16_BEGIN, ALU32_BEGIN, ALU64_BEGIN): Drop opening
1717 brace from macro.
1718 (ALU8_BEGIN, ALU8_SET, ALU8_ADD, ALU8_SUB, ALU8_NEGATE): Define.
1719 (ALU16_ADD, ALU16_SUB, ALU16_NEGATE): Simplify arrithmetic.
1720 (ALU32_ADD, ALU32_SUB, ALU32_NEGATE): Simplify arrithmetic.
1721 (ALU64_ADD, ALU64_SUB, ALU64_NEGATE): Simplify arrithmetic.
1722
1723 Wed Oct 15 09:24:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
1724
1725 * sim-core.h (struct _sim_core_mapping): Change free_buffer to
1726 type void*.
1727
1728 * sim-core.c (sim_core_uninstall, new_sim_core_mapping,
1729 sim_core_map_attach, sim_core_map_detach): Change free_buffer to
1730 type void*.
1731 (sim_core_attach): Rename buffer_freed to free_buffer, type
1732 void*. Ensure that allocated buffer is alligned according to
1733 region's address.
1734
1735 Mon Oct 13 11:34:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
1736
1737 * sim-alu.h (ALU64_HAD_OVERFLOW): Define.
1738 (ALU64_SUB): Define.
1739
1740 * Make-common.in (all): Build SIM_EXTRA_ALL first.
1741 (.gdbinit): Remove dependencies, generate once per build.
1742
1743 Tue Oct 14 19:20:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
1744
1745 * sim-n-core.h (sim_core_read_aligned_N,
1746 sim_core_write_aligned_N): Make xaddr param type address_word not
1747 unsigned_word.
1748
1749 Fri Oct 3 09:49:18 1997 Andrew Cagney <cagney@b1.cygnus.com>
1750
1751 * sim-fpu.h, sim-fpu.c: Rewrite. Change sim_fpu object to an
1752 unpacked floating point struct. Pass sim_fpu object by reference.
1753 Add preliminary support for rounding modes.
1754
1755 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1756
1757 * configure: Regenerated to track ../common/aclocal.m4 changes.
1758
1759 Thu Oct 2 19:43:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
1760
1761 * aclocal.m4 (sim-bitsize): Fix typo, WITH_TARGET_WORD_BITSIZE not
1762 WITH_TARGET_BITSIZE.
1763
1764 Thu Sep 25 23:20:20 1997 Felix Lee <flee@yin.cygnus.com>
1765
1766 * sim-profile.c (profile_print_core): label needs empty statement.
1767
1768 Thu Sep 25 11:20:47 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
1769
1770 * sim-break.c (sim_set_breakpoint sim_clear_breakpoint): Use ZALLOC
1771 and zfree instead of xmalloc and free. Prevents warnings.
1772
1773 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
1774
1775 * configure: Regenerated to track ../common/aclocal.m4 changes.
1776
1777 Wed Sep 24 17:23:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
1778
1779 * Make-common.in (SIM_BITSIZE): Assign from configured value.
1780 (CONFIG_CFLAGS): Add SIM_BITSIZE.
1781
1782 * aclocal.m4 (--enable-sim-bitsize): Developer option for
1783 controling the bitsize/msb of the target.
1784
1785 Wed Sep 24 17:41:40 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
1786
1787 * Make-common.in: New files sim-break.c, sim-break.h.
1788 * sim-base.h: Add point to breakpoint list to sim_state_base.
1789 * sim-break.c sim-break.h: New modules that implement intrinsic
1790 breakpoint support.
1791 * sim-module.c: Add breakpoint module.
1792
1793 Tue Sep 23 00:26:39 1997 Felix Lee <flee@yin.cygnus.com>
1794
1795 * sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
1796 an hour.
1797 * sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
1798 if (0) { 1 % 0; }
1799 * sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
1800 (SIGBUS) define for Windows.
1801 * sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
1802 * sim-resume.c: define SIGTRAP for windows.
1803 * sim-xcat.h: use token pasting if ALMOST_STDC.
1804
1805 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1806
1807 * Make-common.in (SIM_SCACHE, SIM_DEFAULT_MODEL): Assign
1808 configured values.
1809 (CONFIG_CFLAGS): Add same.
1810
1811 Mon Sep 22 17:20:27 1997 Felix Lee <flee@cygnus.com>
1812
1813 * sim-types.h (SIGNED64): ##i64 when _MSC_VER, not _WIN32.
1814 (SIGNED32): use ##i32.
1815
1816 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1817
1818 * configure: Regenerated to track ../common/aclocal.m4 changes.
1819
1820 Tue Sep 23 10:07:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
1821
1822 * aclocal.m4 (sim-endian): Simplify logic determining [default]
1823 endian of target.
1824
1825 * Make-common.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
1826 SIM_HOSTENDIAN, SIM_RESERVED_BITS, SIM_ASSERT, SIM_FLOAT,
1827 SIM_HARDWARE, SIM_INLINE, SIM_PACKAGES, SIM_REGPARM, SIM_SMP,
1828 SIM_STDCALL, SIM_XOR_ENDIAN): Assign configured values.
1829 (CONFIG_CFLAGS): Add same.
1830
1831 * aclocal.m4: Perform AC_SUBST on optional options.
1832
1833 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1834
1835 * sim-config.h (WITH_DEFAULT_ALIGNMENT): Don't hardwire any alignment.
1836
1837 * sim-options.c (standard_option_handler): Typo in warning message.
1838
1839 * sim-base.h (STATE_MODEL): Make conditional on SIM_HAVE_MODEL.
1840
1841 * sim-profile.c (profile_print_insn): Check 0 .. MAX_INSN for any
1842 insn count. Make count conditional on there being a valid
1843 INSN_NAME.
1844 (profile_pc_init): Make default PC profile frequency an arbitrary
1845 256.
1846
1847 * sim-base.h: Ditto.
1848
1849 * sim-profile.h (WITH_PROFILE_MODEL_P): Only enable modeling when
1850 SIM_HAVE_MODEL.
1851
1852 * sim-model.h (struct MACH): Depreciate, to be replaced by bfd
1853 archure struct.
1854
1855 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1856
1857 * configure: Regenerated to track ../common/aclocal.m4 changes.
1858
1859 Mon Sep 22 11:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1860
1861 * aclocal.m4 (sim_alignment): Simplify logic for selecting the
1862 configured alignment.
1863
1864 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
1865
1866 * configure: Regenerated to track ../common/aclocal.m4 changes.
1867
1868 Fri Sep 19 17:26:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
1869
1870 * sim-config.c (sim_config): Check for default alignment.
1871
1872 * sim-options.c (standard_option_handler): Add alignment option.
1873
1874 * aclocal.m4 (sim_alignment): Allow configuration of hardwired and
1875 default alignment requirements on memory accesses.
1876
1877 Fri Sep 19 11:51:35 1997 Jeffrey A Law (law@cygnus.com)
1878
1879 * sim-load.c (sim_load_file): Return failure if the executable
1880 had no loadable sections.
1881
1882 Wed Sep 17 13:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1883
1884 * sim-events.c (ETRACE): Use trace_printf not sim_io_printf for
1885 trace output.
1886
1887 * sim-core.c (sim_core_signal): When bad access halt simulator
1888 SIGSEGV / SIGBUS instead of aborting.
1889 (signal.h): Include.
1890
1891 * sim-watch.c (sim_watchpoint_install): Handler for watchpoint
1892 options was missing.
1893
1894 * sim-bits.h (MOVED): Define
1895
1896 Wed Sep 17 10:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1897
1898 * sim-alu.h (ALU32_HAD_OVERFLOW): Pacify GCC, Use MSBIT instead of
1899 BIT.
1900
1901 * sim-bits.h (LSBIT, MSBIT): Check for overflow of shift value.
1902
1903 * sim-bits.c: Add 8 bit versions of bit macros.
1904
1905 * sim-bits.h: Ditto.
1906
1907 Tue Sep 16 16:15:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
1908
1909 * sim-bits.c (LSSEXT, MSSEXT): Replace SEXT.
1910 (LSINSERTED, MSINSERTED): Ditto for INSERTED.
1911
1912 * sim-n-bits.h (MSSEXTn, LSSEXTn): Replace SEXTn.
1913 (LSINSERTDn, MSINSERTEDN): Ditto for INSERTEDn.
1914
1915 * sim-bits.h (SEXT*): Define as MSEXT/LSEXT.
1916 (INSERTED*): Ditto for LSINSERTED/MSINSERTED.
1917
1918 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
1919
1920 * aclocal.m4 (SIM_AC_COMMON): Add optional config.h file argument.
1921 configure.in: Output to cconfig.h instead of config.h.
1922
1923 * configure: Regenerated to track ../common/aclocal.m4 changes.
1924
1925 Mon Sep 15 15:39:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1926
1927 * sim-utils.c (sim_analyze_program): Set STATE_ARCHITECTURE from
1928 BFD if known.
1929
1930 Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
1931
1932 * callback.c (os_write): divert stdout and stderr to their
1933 respective hooks.
1934
1935 Thu Sep 11 10:08:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
1936
1937 * sim-profile.c (profile_print_speed): Call
1938 sim_events_elapsed_time instead of PROFILE_EXEC_TIME for moment.
1939
1940 * sim-events.c (sim_events_elapsed_time): New function return nr
1941 host MS consumed by the simulator.
1942 (sim_watch_valid): Use.
1943
1944 * sim-module.c (modules): Install sim_events very very early.
1945
1946 * sim-profile.c (profile_print): Call profile_print_pc.
1947 (print_bar):
1948 (profile_pc_init): New function, set up processor for PC
1949 profiling.
1950 (profile_print_pc): New function, print a PC profile.
1951 (profile_pc_event): New function, sample PC.
1952
1953 * sim-profile.h (PROFILE_PC_COUNT, PROFILE_PC_START,
1954 PROFILE_PC_END, PROFILE_PC_SHIFT, PROFILE_PC_SAMPLE_SIZE): Add to
1955 profile struct.
1956
1957 * sim-options.c (sim_print_help): Pacify GCC.
1958
1959 * sim-n-core.h (sim_core_read_aligned_N,
1960 sim_core_write_aligned_N): Add un-conditional profile call.
1961 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Add
1962 profile call when aligned read/write isn't used.
1963
1964 * sim-base.h: Include sim-profile, sim-model after sim-core &
1965 sim-events allow sim-core to define useful values.
1966
1967 * sim-profile.c (OPTION_PROFILE_CORE): Define.
1968 (profile_option_handler, profile_options): Add support for
1969 --profile-core option.
1970 (print_bar): Include when core profiling.
1971 (profile_print_core): New function, print core profile.
1972
1973 * sim-config.c (print_sim_config): Print profile status.
1974
1975 * sim-profile.h (PROFILE_NEXT_IDX, PROFILE_core,
1976 WITH_PROFILE_PC_P): Define.
1977 (PROFILE_CORE_COUNT): Count each core-map/size separatly.
1978 (PROFILE_COUNT_CORE): Define.
1979
1980 Thu Sep 11 08:44:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
1981
1982 * sim-watch.c (handle_watchpoint): Pass a char** index into the
1983 interrupt_names array as the data.
1984 (sim-watch.h): Document.
1985
1986 Wed Sep 10 16:15:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1987
1988 * sim-options.c (sim_print_help): When the doc string is to long
1989 word wrap it.
1990
1991 * sim-watch.c (sim_watchpoint_install): Use option.doc_name so
1992 that only the first few the watch options are listed. Generate
1993 meanginful usage messages.
1994
1995 * sim-options.h (struct OPTION): Clarify use of doc_name field
1996
1997 Wed Sep 10 13:23:24 1997 Andrew Cagney <cagney@b1.cygnus.com>
1998
1999 * sim-options.c (OPTION_ARCHITECTURE_INFO): New option.
2000 (standard_option_handler): Handle --architecture-info.
2001
2002 Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
2003
2004 * sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
2005 illegal zero-sized array.
2006 * sim-core.c (sim_core_xor_read_buffer): same.
2007
2008 Tue Sep 9 11:20:35 1997 Doug Evans <dje@canuck.cygnus.com>
2009
2010 * nltvals.def: Regenerate.
2011
2012 Tue Sep 9 02:10:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
2013
2014 * sim-fpu.c (DP_FRACHIGH2): Define LL using SIGNED64.
2015
2016 Mon Sep 8 12:22:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
2017
2018 * sim-bits.c (MASKED): Delete.
2019 (EXTRACTED): Delete.
2020 (LSEXTRACTED, MSEXTRACTED): New functions.
2021
2022 * sim-n-bits.h (MASKEDn): Delete, define as MSMASKED or LSMASKED.
2023 (MSMASKEDn, LSMASKEDn): Add last argument.
2024 (MSMASK*): Ditto.
2025
2026 * sim-bits.h (EXTEND8, EXTEND16): Define.
2027 (EXTRACTED64): Define as 64 bit extract, not 32 bit.
2028
2029 * sim-run.c (sim_engine_run): Use CPU_CIA macro.
2030
2031 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use CPU_CIA to get at
2032 current instruction address.
2033
2034 * sim-inline.h (*_ENGINE): Define.
2035
2036 Fri Sep 5 08:39:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
2037
2038 * sim-core.c (sim_core_attach): Fix checks of modulo/mask.
2039
2040 * sim-watch.c (delete_watchpoint): Delete by ident and type.
2041 (watch_option_handler): Call delete_watchpoint with ident or type.
2042 (sim_watchpoint_install): Create interrupt specific watchpoint
2043 commands on the fly.
2044 (do_watchpoint_create): New function, create a watch point using
2045 type/int-nr info encoded in the option nr.
2046 (do_watchpoint_info): New function. List active watchpoints.
2047
2048 * sim-watch.h: Change data structure to a list.
2049
2050 * sim-memopt.c (memory_option_handler): Require explicit "all"
2051 before deleting all memory regions.
2052
2053 * sim-utils.c (sim_do_commandf): New function, printf version of
2054 sim_do_command.
2055
2056 * sim-basics.h (asprintf, vasprintf): Hack, define for CYGWIN32.
2057
2058 * sim-alu.h (ALU64_ADD): Use explicit MSEXTRACTED64, do not assume
2059 bit endianness.
2060 (SIGNED64, UNSIGNED64): Delete.
2061 (ALU64_ADD): Don't rely on bit endianness.
2062 (ALU64_BEGIN): Define.
2063
2064 * sim-n-bits.h (MSEXTRACTEDn, LSEXTRACTED): New functions.
2065 (EXTRACTEDn): Delete, define as either LSEXTRACTED or MSEXTRACTED.
2066
2067 * sim-types.h (SIGNED64, UNSIGNED64): New macros, attach relevant
2068 suffix - u64, LL - to 64 bit constants.
2069
2070 Thu Sep 4 09:27:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2071
2072 * sim-config.c (sim_config): Add assert for SIM_MAGIC_NUMBER.
2073
2074 * sim-utils.h (NZALLOC): Define - zalloc * N.
2075
2076 * sim-hrw.c (sim_read, sim_write): New file. Provide generic
2077 implementation of read/write functions.
2078
2079 * Make-common.in (sim-hrw.o): New target.
2080
2081 * sim-base.h (STATE_MEMOPT_P): Delete, simulators _always_ add
2082 memory.
2083
2084 * sim-memopt.c (memory_option_handler): Implement memory-size
2085 command. Implement memory-alias command. Let memory-delete delete
2086 all memory regions.
2087 (add_memopt): New function. Add a memory region.
2088 (do_memopt_delete): New function. Delete a memory region.
2089
2090 * sim-utils.c (sim_elapsed_time_get): Never return zero.
2091
2092 * sim-core.c (sim_core_detach): New function.
2093 (sim_core_map_detach): New function. Perform the actual detach.
2094 (sim_core_init): Move initialization code from here.
2095 (sim_core_install): To here.
2096 (sim_core_uninstall): And here.
2097
2098 * sim-module.c: Add memopt module.
2099
2100 * sim-base.h (STATE_MEMOPT, STATE_MEMOPT_P): Add memopt to
2101 simulator base type.
2102
2103 * Make-common.in (sim_main_headers): Add sim-memopt.h
2104 (sim-memopt.o): New target.
2105
2106 * sim-core.c (sim_core_install): Add core_options to the option
2107 table.
2108
2109 * sim-watch.c (watch_options): Make --delete-watch a synonym for
2110 --watch-delete.
2111
2112 * sim-config.h (WITH_MODULO_MEMORY): Define as 0. Update
2113 comments.
2114
2115 * sim-core.h (struct _sim_core_mapping): Change nr_bytes to type
2116 address_word, add mask member.
2117
2118 * sim-core.h, sim-core.c (sim_core_attach): Make nr_bytes of type
2119 address_word, allow for 64bit targets in 32bit host. Add modulo
2120 argument.
2121 (sim_core_map_attach): Ditto.
2122 (new_sim_core_mapping): Ditto.
2123 (sim_core_translate): Mask address when modulo memory.
2124
2125 Wed Sep 3 17:32:54 1997 Doug Evans <dje@seba.cygnus.com>
2126
2127 * sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
2128
2129 * gdbinit.in: New file.
2130 * aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
2131 * Make-common.in (distclean): Delete .gdbinit.
2132 (.gdbinit): Add rule for.
2133 * configure: Regenerated to track ../common/aclocal.m4 changes.
2134
2135 * Make-common.in (cgen-run.o): Add rule for.
2136
2137 Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2138
2139 * sim-resume.c (sim_resume): Suspend/resume the simulator.
2140
2141 * sim-events.c (sim_watch_valid): Compute total elapsed time from
2142 both resumed and previous elapsed time.
2143 (sim_events_init): Set initial_wallclock and current_wallclock to
2144 zero.
2145 (sim_events_install): Install sim_events_suspend and
2146 sim_events_resume.
2147 (sim_events_watch_clock): Allow for suspended simulator when
2148 computing the time of the clock event.
2149
2150 * sim-events.h (struct _sim_event): Add resume_wallclock, rename
2151 initial_wallclock to elapsed_wallclock, set both to zero.
2152 (sim_events_init, sim_events_uninstall): Delete prototypes.
2153
2154 * sim-module.h (MODULE_SUSPEND_FN, MODULE_RESUME_FN): Define types.
2155
2156 * sim-module.c(sim_module_resume, sim_module_suspend): New
2157 functions.
2158
2159 Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2160
2161 * sim-core.c (sim_core_map_attach): Clarify memory overlap error
2162 message.
2163
2164 Tue Sep 2 14:57:06 1997 Doug Evans <dje@canuck.cygnus.com>
2165
2166 * Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
2167 * Make-common.in (TAGS): Likewise.
2168 * sim-n-bits.h: Add TAGS comments for all functions.
2169 * sim-n-core.h: Likewise.
2170 * sim-n-endian.h: Likewise.
2171
2172 Mon Sep 1 10:50:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
2173
2174 * sim-utils.c (sim_state_alloc): Set CPU backlinks, callback and
2175 kind.
2176
2177 * sim-base.h (sim_state_alloc): Add callback and kind arguments.
2178
2179 * sim-base.h (INVALID_INSTRUCTION_ADDRESS): Add default
2180 definition.
2181
2182 Sat Aug 30 09:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2183
2184 * sim-fpu.c (DP_GARDMSB, ...): Make unsigned.
2185 (DP_FRACHIGH, DP_FRACHIGH2, ..): Use MSMASK to avoid LL.
2186
2187 Fri Aug 29 13:37:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
2188
2189 * sim-core.c (sim_core_map_attach): Cast attach enum to int.
2190 (sim_core_xor_read_buffer, sim_core_xor_write_buffer): Make
2191 nr_transfered and nr_this_transfer unsigned.
2192
2193 * sim-events.c (sim_events_tickn): N is signed, as limited to
2194 MAXINT.
2195
2196 * sim-n-endian.h (offset_N): Change size to unsigned.
2197
2198 * callback.c (os_poll_quit): Add prototypes for kbhit and getkey.
2199
2200 Fri Aug 29 10:10:53 1997 Andrew Cagney <cagney@b1.cygnus.com>
2201
2202 * sim-utils.c (sim_copy_argv): Delete, replaced by dupargv.
2203
2204 * sim-options.c (sim_parse_args): Use dupargv.
2205
2206 Thu Aug 28 10:36:34 1997 Doug Evans <dje@canuck.cygnus.com>
2207
2208 * sim-options.c (standard_option_handler): Use xstrdup, not strdup.
2209
2210 Thu Aug 28 12:09:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
2211
2212 * sim-base.h (STATE_ARCHITECTURE, STATE_TARGET): Add to simulator
2213 base type.
2214
2215 * sim-options.c (standard_options): Add --architecture=MACHINE and
2216 --target=TARGET options.
2217 (OPTION_ARCHITECTURE, OPTION_TARGET): Define.
2218 (standard_option_handler): Handle architecture and target options.
2219 (bfd.h): Include.
2220
2221 * sim-utils.c (sim_analyze_program): Pass STATE_TARGET to
2222 bfd_openr.
2223 (sim_analyze_program): Set prog_bfd architecture from
2224 STATE_ARCHITECTURE if known.
2225
2226 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2227
2228 * configure: Regenerated to track ../common/aclocal.m4 changes.
2229 * config.in: Ditto.
2230
2231 Wed Aug 27 18:11:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
2232
2233 * aclocal.m4 (enable-sim-warnings): Remove comment stating
2234 that option does not apply to certain files.
2235
2236 Wed Aug 27 15:13:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
2237
2238 * sim-bits.h (LSBIT8, LSBIT16, LSBIT32, LSBIT64, LSBIT, MSBIT8,
2239 MSBIT16, MSBIT32, MSBIT64, MSBIT): New macros - single bit as
2240 offset from MSB/LSB.
2241
2242 * sim-endian.h (A1_8, A2_8, A4_8, A1_4, A2_4, A1_2): New macro,
2243 access address of sub word quantity of a hosts 16, 32, 64 bit word
2244 type.
2245 (V1_2, V1_4, V2_4, V1_8, V2_8, V4_8): Ditto for values.
2246 (U8_1, U8_2, U8_4, U4_1, U4_2, U2_1): Ditto for set of values.
2247 (V2_H1, V2_L1, V4_H2, V4_L2, V8_L4, V8_H4): Given N byte argument,
2248 return N*2 byte value with argument in Hi/Lo word. Renamed from
2249 V1_H2, V1_L2, V2_H4, V2_L4, V4_H8, V4_L8.
2250
2251 * sim-alu.h (ALU32_HAD_OVERFLOW): Use 64 bit mask not 32bit.
2252 (ALU16_HAD_CARRY, ALU32_HAD_CARRY, ALU16_HAD_OVERFLOW): Use MSBIT
2253 so that bit offset is explicit.
2254
2255 Wed Aug 27 11:55:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
2256
2257 * sim-utils.c (sim_analyze_program): Add prog_name argument.
2258 Update STATE_PROG_BFD when needed with a dup'd copy of the
2259 program.
2260
2261 * sim-config.c (sim_config): Delete ABFD argument, use
2262 STATE_PROG_BFD directly.
2263
2264 Tue Aug 26 12:55:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
2265
2266 * run.c (main): Pass the open ABFD to sim_create_inferior.
2267
2268 * nrun.c (main): Determine prog_bfd. Pass to sim_create_inferior
2269 and sim_load.
2270 (bfd.h): Include.
2271
2272 * sim-hload.c (sim_load): New file. Implement generic sim_load for
2273 hardware only simulator targets.
2274
2275 * Make-common.in (sim-hload.o): Add rule.
2276
2277 Wed Aug 27 09:51:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
2278
2279 * sim-utils.c (sim_copy_argv): Rewrite to match malloc strategy
2280 used by copyargv and freeargv.
2281
2282 * sim-options.c (sim_parse_args): Save a copy of PROG-ARGS in
2283 STATE_PROG_ARGV, not just a pointer.
2284
2285 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2286
2287 * configure: Regenerated to track ../common/aclocal.m4 changes.
2288 * config.in: Ditto.
2289
2290 Mon Aug 25 12:11:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
2291
2292 * aclocal.m4 (sim-endian): Add second argument to
2293 SIM_AC_OPTION_ENDIAN. First is hardwired endian, second is
2294 default endian when not hardwired.
2295
2296 * sim-config.h (WITH_DEFAULT_TARGET_BYTE_ORDER): New macro, if all
2297 else failes value for target byte order.
2298
2299 * sim-config.c (sim_config): Add abfd arguments. Set
2300 STATE_PROG_BFD accordingly. Determine prefered_target_byte_order
2301 from same.
2302 (sim_config): Return SIM_RC, don't abort.
2303 (bfd.h): Include.
2304
2305 * run.c (main): Update call to sim_open - add ABFD argument.
2306 * nrun.c (main): Add NULL ABFD argument.
2307
2308 Thu Aug 14 12:48:57 1997 Doug Evans <dje@canuck.cygnus.com>
2309
2310 * callback.c (os_poll_quit): Make static.
2311 Call sim_cb_eprintf, not p->eprintf.
2312 (sim_cb_printf, sim_cb_eprintf): New functions.
2313 * sim-utils.h (sim_cb_printf, sim_cb_eprintf): Declare.
2314
2315 * sim-basics.h (zalloc,zfree,sim_add_commas,SIM_ELAPSED_TIME,
2316 sim_elapsed_time_get,sim_elapsed_time_since): Move decls to
2317 sim-utils.h. #include sim-utils.h.
2318 * sim-utils.h: Above decls moved here.
2319 (sim_analyze_program,sim_load_file): Use `struct _bfd', not `bfd'.
2320
2321 * sim-watch.c (action_watchpoint): Fix thinkos.
2322
2323 Thu Jul 24 08:48:05 1997 Stu Grossman (grossman@critters.cygnus.com)
2324
2325 * sim-types.h: Fix defs of 64 bit data types for MSVC.
2326
2327 Tue Jul 22 10:35:37 1997 Doug Evans <dje@canuck.cygnus.com>
2328
2329 * sim-n-core.h (sim_core_write_unaligned_N): Add missing break
2330 to FORCED_ALIGNMENT case.
2331
2332 Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
2333
2334 * callback.c (target_to_host_open): Handle hosts with O_BINARY.
2335
2336 Thu Jun 5 08:47:10 1997 Jeffrey A Law (law@cygnus.com)
2337
2338 * Make-common.in (libsim.a): Fix typo.
2339
2340 Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
2341
2342 * nrun.c (main): Verify the structure returned before using it.
2343
2344 Wed Jun 4 11:44:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
2345
2346 * sim-config.h (WITH_ENGINE): Enable the sim-engine module by
2347 default.
2348
2349 * sim-engine.c (sim_engine_install): New function. Install the
2350 engine init functions.
2351 (sim_engine_init): [Re]initialize the simulator engine.
2352
2353 * sim-module.c: Add sim_engine to list of modules that always
2354 install.
2355
2356 Tue Jun 3 04:52:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
2357
2358 * sim-watch.c (schedule_watchpoint): Use sim_unschedule_watchpoint
2359 to remove the old watchpoint, not delete_watchpoint.
2360 (watch_option_handler): Action the correct watchpoint, not just
2361 cycles.
2362
2363 Wed May 28 14:47:41 1997 Andrew Cagney <cagney@b1.cygnus.com>
2364
2365 * sim-n-core.h (sim_core_write_aligned_N): For 8byte reads, output
2366 both low and high word.
2367 (sim_core_write_aligned_N): Ditto.
2368
2369 * sim-trace.c (set_trace_options): Delete code explicitly setting
2370 core->trace.
2371
2372 * sim-options.c (sim_print_help): Call the list commands if not a
2373 standalone simulator.
2374 (sim_print_help): Advise that some options may not be applicable.
2375
2376 * sim-trace.c (set_trace_options): Assume core present.
2377
2378 * sim-events.c (sim_events_schedule_after_signal): Overflow signal
2379 buffer when full not almost full.
2380
2381 Tue May 27 14:32:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
2382
2383 * sim-events.c (sim_events_process): Don't blat the event queue
2384 when processing watchpoints.
2385
2386 * sim-watch.h: Make arg unsigned long - stop sign extension.
2387
2388 * sim-events.c (sim_watch_valid): rewrite so debugable.
2389
2390 * sim-config.h (WITH_XOR_ENDIAN): Default to zero.
2391
2392 * sim-watch.c (schedule_watchpoint): Add is_within option so that
2393 inequality test is possible.
2394 (handle_watchpoint): Re-pass is_within arg.
2395 (watch_option_handler): When `!' prefix to pc-watchpoint arg pass
2396 0 to schedule_watchpoint's is_within arg.
2397 (sim_watchpoint_init): Re-pass is_within arg.
2398
2399 * sim-options.c (sim_print_help): Add is_command argument. Don't
2400 include -- prefix when called from the command line interpreter.
2401
2402 * sim-watch.c (schedule_watchpoint): Pass true is_within argument.
2403
2404 * sim-events.c (sim_events_watch_sim): Add is_within argument,
2405 zero indicates that the test should be reversed.
2406 (sim_events_watch_core): Ditto.
2407 (WATCH_CORE): Compare range against is_within.
2408 (WATCH_SIM): Ditto.
2409
2410 Tue May 27 12:48:03 1997 Andrew Cagney <cagney@b2.cygnus.com>
2411
2412 * sim-events.c (WATCH_CORE): Pass NULL cpu argument to
2413 sim_core_read_buffer. Check nr-bytes transfered.
2414
2415 * sim-core.h (sim_core_common): Define a new struct that contains
2416 the common data. to sd and cpu structures.
2417 * sim-core.c (sim_core_attach): Update.
2418 (sim_core_init): Update. Remember to copy initialized data to each
2419 cpu.
2420 (sim_core_find_mapping): Ditto.
2421
2422 * sim-core.c (sim_core_read_buffer): Add cpu argument.
2423 (sim_core_write_buffer): Ditto.
2424
2425 * sim-n-core.h (sim_core_read_unaligned_N): When mis-aligned
2426 transfer use xor version of read buffer.
2427 (sim_core_write_unaligned_N): Ditto for write.
2428
2429 * sim-core.c (sim_core_xor_read_buffer): New function implement
2430 xor-endian data read breaking transfer up into xor-endian sized
2431 blocks.
2432 (sim_core_xor_write_buffer): Ditto for write.
2433 (reverse_n): Reverse order of arbitrary number of bytes in buffer
2434 - needed for xor-endian transfers.
2435
2436 Fri May 23 14:24:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
2437
2438 * sim-inline.h: Review description.
2439
2440 * sim-core.h, sim-core.c: Reduce number of functions being inlined
2441 to just those involved in data transfers and configuration.
2442
2443 * sim-xcat.h (XSTRING): New macro, map macro definition onto
2444 string.
2445 * sim-n-core.h (sim_core_read_aligned_N): Use.
2446 (sim_core_read_unaligned_N): Ditto.
2447 (sim_core_read_unaligned_N): Ditto..
2448 (sim_core_write_unaligned_N): Ditto.
2449
2450 * sim-core.h: Add xor endian bitmap to main structure. *
2451
2452 sim-n-core.h (sim_core_write_aligned_N): Add suport for xor
2453 endian.
2454 (sim_core_read_aligned_N): Ditto.
2455
2456 * sim-core.c (sim_core_set_xor_endian): New function.
2457 (sim_core_attach): Don't overwrite the per-cpu xor map when
2458 cloning the global core.
2459
2460 Fri May 23 10:53:13 1997 Andrew Cagney <cagney@b1.cygnus.com>
2461
2462 * sim-engine.h: Update below so that it is using an enumerated
2463 type.
2464
2465 Thu May 22 09:12:16 1997 Gavin Koch <gavin@cygnus.com>
2466
2467 * sim-engine.c (sim_engine_restart):
2468 * sim-resume.c (sim_resume): Change longjmp param/setjmp
2469 return value used for simulator restart from 0 to 2.
2470
2471 Wed May 21 08:47:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
2472
2473 * cgen-scache.c (scache_option_handler): Add is_command arg.
2474
2475 * sim-model.c (model_option_handler): Add is_command argument.
2476
2477 * sim-profile.c (profile_option_handler): Add is_command arg.
2478
2479 * sim-events.c (sim_watch_valid): Use ub64, lb64 when 64bit value
2480 involved.
2481
2482 * sim-module.c (sim_module_add_init_fn): Call init fn in the same
2483 order that they are registered.
2484
2485 * sim-options.h (OPTION_HANDLER): Add argument to differentiate
2486 between option and command line processing.
2487
2488 * sim-options.c: Include stdlib.h, ctype.h.
2489
2490 * Make-common.in (sim-watch.o): Add rule.
2491 (sim_main_headers): Assume sim-assert.h included.
2492 (sim-*.o): Simplify make rule.
2493
2494 * sim-module.c: Add sim_watch_install to module list.
2495
2496 Tue May 20 14:15:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
2497
2498 * sim-base.h (STATE_LOADED_P): New predicate. Set once everything
2499 has been loaded.
2500
2501 * sim-trace.c (trace_install): Check magic. Include sim-assert.h.
2502 * sim-events.c (sim_events_install): Ditto.
2503 * sim-core.c (sim_core_install): Ditto.
2504 * sim-model.c (model_install): Ditto.
2505 * sim-options.c (standard_install): Ditto.
2506 * sim-profile.c (profile_install): Ditto.
2507 * sim-reason.c (sim_stop_reason): Ditto.
2508 * sim-run.c (sim_engine_run): Ditto.
2509 * sim-utils.c (sim_analyze_program): Ditto.
2510
2511 * sim-module.c (modules): Make profile_install and trace_install
2512 optional.
2513
2514 * sim-base.h (STATE_MEM_BASE): Define for flat memory systems.
2515
2516 * sim-options.c (standard_option_handler): Set the byte order.
2517
2518 * sim-events.c (sim_events_process): Allow multi tick processing.
2519 (sim_events_tickn): New function - multi cycle tick.
2520
2521 * sim-events.h (sim_events_tickn, sim_events_timewarp): Add
2522 prototypes. Under development.
2523 (sim_events): Replace processing with nr_ticks_to_process.
2524
2525 Tue May 20 09:39:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2526
2527 * nrun.c (main): Pass callbacks to sim_open instead of using
2528 sim_set_callbacks.
2529
2530 * run.c (main): Ditto.
2531
2532 Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2533
2534 * sim-events.c (sim_events_zalloc): Signal save memory allocator -
2535 stop tk interrupting malloc calls.
2536 (sim_events_zalloc): Converse.
2537
2538 * Make-common.in (sim_main_headers): Add sim-events.h.
2539
2540 * sim-events.c (sim_events_schedule_after_signal): Change return
2541 type to void - signal events are strictly internal.
2542 (sim_events_init): Allocate a finite buffer for signal events.
2543 (sim_events_schedule_after_signal): Enter signal events into the
2544 signal buffer.
2545
2546 * sim-engine.c (sim_engine_halt): Check SIM_DESC magic.
2547 (sim_engine_restart): Ditto.
2548 (sim_engine_abort): Ditto.
2549 * sim-stop.c (sim_stop): Ditto.
2550 (control_c_simulation): Ditto.
2551 * sim-resume.c (sim_resume): Ditto.
2552 (has_stepped): Ditto.
2553 * sim-abort.c (sim_engine_abort): Ditto.
2554
2555 * sim-basics.h (transfer_type): New type.
2556
2557 * sim-core.c (sim_core_signal): New function. Print core signal
2558 information.
2559 (sim_core_find_mapping): Add transfer argument.
2560
2561 * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
2562 SIM_CORE_SIGNAL if a recoverable abort.
2563 * sim-core.c (sim_core_find_mapping): Ditto.
2564
2565 Fri May 16 15:13:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2566
2567 * sim-core.c (sim_core_find_mapping): Replace calls to
2568 sim_io_error to more resiliant sim_engine_abort.
2569
2570 * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
2571 (sim_core_write_unaligned_N): Ditto.
2572
2573 Tue May 13 13:50:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
2574
2575 * sim-module.c: Add sim_events_install to list.
2576
2577 * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
2578 from sim_core_*.
2579 (sim_events_init): Now returns SIG_RC.
2580
2581 * sim-run.c: New file. Generic sim_engine_run.
2582 * sim-reason.c: New file. Generic sim_stop_reason.
2583 * sim-stop.c: New file. Generic sim_stop.
2584 * sim-resume.c: New file. Generic sim_resume.
2585
2586 * Make-common.in (sim-engine.o): Add rule.
2587 (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
2588
2589 * sim-engine.h, sim-engine.c: New file. Provide generic
2590 implementation of sim_engine_halt, sim_engine_error. et.al.
2591
2592 * sim-base.h (sim_state_base): Add member halt.
2593 (sim-engine.h): Include.
2594
2595 * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
2596 handlers.
2597 * sim-events.c (sim_events_poll): Update event handler.
2598
2599 Tue May 13 09:57:49 1997 Andrew Cagney <cagney@b2.cygnus.com>
2600
2601 * sim-events.h, sim-events.c (sim_events_watch_clock): New
2602 function.
2603 (sim_events_watch_sim): New function.
2604 (sim_events_watch_core): New function.
2605 (sim_watch_valid): New function.
2606 (sim_events_preprocess): New function.
2607 (sim_events_process): Process the watchpoints as well as the timer
2608 queue.
2609 (sim_events_tick): Check WORK_PENDING instead of the hold queue.
2610 (sim_events_deschedule): Check all the queues when removing an
2611 event.
2612 (sim_events_init): Ditto for cleaning.
2613
2614 Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2615
2616 * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
2617
2618 Mon May 19 11:23:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
2619
2620 * callback.c (os_open): Type of arg flags is int.
2621
2622 Fri May 16 22:26:43 1997 Michael Meissner <meissner@cygnus.com>
2623
2624 * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
2625 just like normal numbers as per IEEE rules.
2626
2627 Wed May 14 21:20:38 1997 Bob Manson <manson@charmed.cygnus.com>
2628
2629 * callback.c (os_close): Mark the descriptor as being
2630 available if the close succeeded.
2631 (os_open): Pass 0644 as the mode of the file being created.
2632
2633 Thu May 15 10:58:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
2634
2635 * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
2636 float.
2637
2638 * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
2639 * sim-lnline.h: Update.
2640
2641 * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
2642 conversion functions.
2643 (sim_fpu_to{32,64}[iu]): New fp2int functions.
2644
2645 * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
2646 compare functions. Replacing.
2647 (sim_fpu_cmp): This. Delete.
2648
2649 Mon May 12 14:49:05 1997 Andrew Cagney <cagney@b1.cygnus.com>
2650
2651 * sim-core.c (sim_core_find_mapping): Call engine_error not
2652 sim_io_error when possible.
2653
2654 Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b2.cygnus.com>
2655
2656 * sim-endian.h (V1_H2): Add macro's to insert a word into a
2657 high/low double word.
2658
2659 * sim-trace.h: Remove definition of attribute - defined in
2660 sim_basics.h.
2661
2662 Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
2663
2664 * sim-options.h (struct OPTION): Add doc_opt as the documenting
2665 name of the option - or family of options.
2666
2667 * sim-options.c (sim_args_command): Match command `a-b c' with
2668 option `--a-b-c' from option table.
2669
2670 Thu May 8 12:40:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
2671
2672 * sim-options.c (sim_print_help): For optional arguments, wrap
2673 them in [].
2674
2675 * sim-trace.c (set_trace_options): New function, handle optional
2676 argument and multiple assignment.
2677 (trace_option_handler): Update.
2678
2679 * sim-trace.c (trace_option_handler): Trace branch and not fpu
2680 when branch tracing selected.
2681
2682 Wed May 7 15:19:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
2683
2684 * sim-trace.c (trace_one_insn): Make a va-args function.
2685
2686 * sim-trace.c (trace_vprintf): New function, va-arg version of
2687 trace_printf.
2688
2689 Tue May 6 16:38:16 1997 Doug Evans <dje@canuck.cygnus.com>
2690
2691 * sim-trace.c (trace_uninstall): Don't close a file twice.
2692 * sim-profile.c (profile_uninstall): Likewise.
2693
2694 Tue May 6 06:14:01 1997 Mike Meissner <meissner@cygnus.com>
2695
2696 * sim-trace.c (toplevel): Include bfd.h.
2697 (trace_options): Note that --trace-linenum also turns on
2698 --trace-insn. Add --trace-{branch,semantics}.
2699 (trace_option_handler): If --trace-linenum, also turn on
2700 --trace-insn. Add --trace-branch support. If --trace-semantics,
2701 turn on ALU, FPU, branch, and memory tracing.
2702 (trace_one_insn): New function to trace an instruction. Support
2703 --trace-linenum.
2704 (OPTION_TRACE_*): Use an enum, rather than lots of defines.
2705
2706 * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
2707 (MAX_TRACE_VALUES): Use 32, not 12 by default.
2708 (TRACE_branch): Add new mask.
2709 (TRACE_*_P): Define all possible trace_p macros.
2710 (trace_one_insn): Declare function.
2711
2712 Mon May 5 14:08:34 1997 Mike Meissner <meissner@cygnus.com>
2713
2714 * sim-trace.h (__attribute__): Define as nothing if not GNU C or
2715 GNU C doesn't support __attributes__.
2716 ({trace,debug}_printf): Add attribute's so -Wformat can check the
2717 format strings.
2718
2719 Mon May 5 11:16:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
2720
2721 * sim-config.h (FORCED_ALIGNMENT): New alignment option -
2722 addresses are masked forcing them to be correctly aligned.
2723 (WITH_ALIGNMENT): Make NONSTRICT_ALIGNMENT the default.
2724 * sim-config.c (config_alignment_to_a): Update.
2725
2726 * sim-core.h (sim_cpu_core): New data type contains cpu specific
2727 core data.
2728 * sim-base.h (CPU_CORE): Add cpu specific core data to cpu base
2729 type.
2730 * sim-core.c (sim_core_attach): Add CPU argument. Ready for
2731 processor specific core maps.
2732 (sim_core_map_attach): Copy the core map data to each of the
2733 processor specific core data structures.
2734 * sim-core.c (sim_core_find_mapping): Update.
2735
2736 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Rename.
2737 (sim_core_write_aligned_N, sim_core_write_aligned_N): New names.
2738 (sim_core_write_unaligned_N, sim_core_write_unaligned_N): New
2739 alternatives that handle unaligned addresses.
2740 (sim_core_{read,write}_{,un}aligned_N): Drop SIM_DESC arg, replace
2741 with just CPU arg.
2742 * cgen-utils.c (sim_disassemble_insn): Update.
2743
2744 Mon May 5 13:19:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
2745
2746 * sim-trace.h (TRACE_FPU_IDX): Add Floating-point specific
2747 tracing.
2748
2749 * sim-fpu.h, sim-fpu.c: New files - prototype for generic target
2750 fpu support.
2751
2752 * sim-inline.h, sim-inline.c: Add support for SIM_FPU.
2753
2754 Fri May 2 17:59:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
2755
2756 * sim-core.c (sim_core_map_to_str): New function ascii equivalent
2757 to map type.
2758
2759 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Use in trace
2760 statement.
2761
2762 Fri May 2 17:28:02 1997 Andrew Cagney <cagney@b2.cygnus.com>
2763
2764 * cgen-trace.c: Prepend additional trace_printf argument.
2765
2766 * cgen-utils.c (sim_disassemble_insn): Add additional core
2767 arguments.
2768
2769 Fri May 2 11:40:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
2770
2771 * nrun.c (main): Catch/report errorenous simulator states.
2772
2773 * sim-module.c: #include "libiberty.h" so that xmalloc is defined.
2774 * sim-trace.c: #include string.h/strings.h so that memset is
2775 defined.
2776 * sim-utils.c: Ditto.
2777 * sim-profile.c: Ditto. And stdlib.h.
2778 (print_bar): Only define when used by instruction or memory profiler.
2779
2780 * sim-options.c (standard_option_handler): Make ul more local.
2781
2782 * sim-load.c (sim_load_file): Make the name constant.
2783 (sim_load_file): Passify gcc.
2784
2785 * sim-utils.h: New file, pre-declare utilites in corresponding .c
2786 file.
2787 * sim-utils.c, sim-load.c: Include sim-utils.h.
2788
2789 * sim-base.h (sim_cpu): Pre define here so available to all.
2790
2791 * sim-core.h (DECLARE_SIM_CORE_WRITE_N, DECLARE_SIM_CORE_READ_N):
2792 Restore the sim_cpu and instruction_address arguments so that full
2793 information is available to the abort function.
2794 * sim-core.c (sim_core_find_mapping, sim_core_write_buffer): Ditto.
2795 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
2796
2797 * sim-trace.h, sim-trace.c (trace_option_handler): Add interim
2798 tracing support for sim-events and sim-core.
2799 (trace_option_handler): Convert #if to if where possible so always
2800 compiled/checked by C compiler.
2801 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
2802
2803 * sim-base.h: Adjust comment documenting how to define the cpu
2804 structure.
2805 (sim_state_base): Add sim_core and sim_events to simulator base
2806 object.
2807
2808 * sim-trace.h, sim-trace.c (trace_printf): Add SIM_DESC argument.
2809 * sim-core.c (sim_core_init, sim_core_attach,
2810 sim_core_find_mapping): Update.
2811 * sim-events.c (ETRACE, sim_events_init, sim_events_time,
2812 update_time_from_event, insert_sim_event,
2813 sim_events_schedule_after_signal, sim_events_deschedule,
2814 sim_events_tick): Ditto.
2815
2816 * sim-basics.h (sim-module.h, sim-trace.h, sim-profile.h,
2817 sim-model.h): Move #includes from here.
2818 * sim-base.h: To here.
2819 (sim-core.h, sim-events.h, sim-io.h): Include also
2820
2821 Wed Apr 30 15:37:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2822
2823 * callback.c (default_callback): Missing initialisers.
2824
2825 Thu May 1 10:40:47 1997 Doug Evans <dje@canuck.cygnus.com>
2826
2827 * sim-utils.c (sim_add_commas): New function.
2828 * sim-basics.h (sim_add_commas): Add prototype.
2829 * cgen-scache.c (scache_print_profile): Print commas in numbers.
2830 * sim-profile.c (COMMAS): New macro.
2831 (print_*): Use it to print commas in numbers.
2832
2833 * configure: Regenerated.
2834
2835 * cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
2836 (cgen_state): New member run_fast_p.
2837 (cgen_init): Add prototype.
2838 (sim_disassemble_insn): New arg `cpu'.
2839 * cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
2840 * cgen-utils.c (cgen_init): New function.
2841 (sim_disassemble_insn): New arg `cpu'. Rewrite fetching of insn.
2842 * genmloop.sh: Call engine_halt if loop exits.
2843
2844 * Makefile.in (sim-options_h): Define.
2845 (sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
2846 (sim-model.o): Add new rule.
2847 (cgen-{scache,trace,utils}.o): Add new rules.
2848 * aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
2849 * cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
2850 Indent output by 2 spaces.
2851 * cgen-scache.h (scache_print_profile): Update.
2852 * cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
2853 Use trace_printf, not fprintf.
2854 (trace_extract): Use trace_printf, not cgen_trace_printf.
2855 * genmloop.sh (!FAST case): Increment `insn_count'.
2856 * sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
2857 (sim_cpu_base): Rename member `sd' to `state' to be consistent with
2858 access macro's name.
2859 * sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
2860 Change return type to SIM_RC.
2861 (sim_core_{install,uninstall}): New functions.
2862 * sim-core.h (sim_core_{install,uninstall}): Declare.
2863 (sim_core_init): Use EXTERN_SIM_CORE to define it.
2864 Change return type to SIM_RC.
2865 * sim-model.h (models,machs,model_install): Declare.
2866 * sim-module.c (modules): Add scache_install, model_install.
2867 (sim_post_argv_init): Set cpu->state backlinks.
2868 * sim-options.c (standard_options): Delete --simcache-size,--max-insns.
2869 (standard_option_handler): Likewise.
2870 * sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
2871 sim-profile.h.
2872 (*): Assume ANSI C.
2873 (profile_options): Delete --profile-simcache.
2874 (profile_option_handler): Likewise.
2875 (profile_print_insn): Change `sd' arg to `cpu'. Indent output 2
2876 spaces.
2877 (profile_print_{memory,model}): Likewise.
2878 (profile_print_simcache): Delete.
2879 (profile_print_speed): New function.
2880 (profile_print): Rewrite.
2881 * sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
2882 (WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
2883 (PROFILE_DATA): Delete members simcache_{hits,misses}.
2884 (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
2885 (PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
2886 (profile_print): Update prototype.
2887
2888 Wed Apr 30 11:34:14 1997 Doug Evans <dje@canuck.cygnus.com>
2889
2890 * cgen-scache.[ch], cgen-sim.h: New files.
2891 * cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
2892 * sim-model.c: New file.
2893
2894 * Make-common.in (clean targets): Undo patch of Apr. 22.
2895
2896 Fri Apr 25 15:28:32 1997 Mike Meissner <meissner@cygnus.com>
2897
2898 * sim-n-bits.h (signed): If we have a standard compiler, undef
2899 signed, so that signedN is defined correctly.
2900
2901 Thu Apr 24 00:00:07 1997 Doug Evans <dje@canuck.cygnus.com>
2902
2903 * sim-module.h, sim-model.h, sim-profile.h: New files.
2904 * sim-module.c, sim-profile.c: New files.
2905 * Make-common.in (SIM_PROFILE): Define
2906 (CONFIG_CFLAGS): Add $(SIM_PROFILE).
2907 (sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
2908 (sim_module.o,sim-profile.o): Add rules for.
2909 * aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
2910 (--enable-sim-profile): Add.
2911 * configure: Regenerated.
2912 * sim-base.h (sim_state_base): New members init_list, uninstall_list,
2913 model. Move trace and profile support to sim-{trace,profile}.h.
2914 New members trace_data, profile_data.
2915 * sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
2916 * sim-config.h: Provide default definition of WITH_PROFILE.
2917 (WITH_TRACE): Change default to -1.
2918 (MAX_NR_PROCESSORS): Always define.
2919 * sim-options.c: Move trace and profile support to
2920 sim-{trace,profile}.h.
2921 (sim_pre_argv_init): Moved to sim-model.c.
2922 (standard_install): New function.
2923 * sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
2924 (standard_install): Declare.
2925 * sim-trace.c: Tracing option handling moved here from sim-options.c.
2926 (trace_install, trace_uninstall): New functions.
2927 (trace_printf): Update reference to TRACE_FILE.
2928 * sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
2929 (TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
2930 (WITH_TRACE_FOO_P): Define.
2931 (trace_install): Declare.
2932 (TRACE_DATA): New struct.
2933
2934 Wed Apr 23 17:23:15 1997 Doug Evans <dje@canuck.cygnus.com>
2935
2936 * run.c: Undo last exec_bfd patch.
2937 (main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
2938
2939 Wed Apr 23 17:54:27 1997 Mike Meissner <meissner@cygnus.com>
2940
2941 * run.c (exec_bfd): Add back in.
2942 (main): Set exec_bfd.
2943
2944 Tue Apr 22 14:43:46 1997 Doug Evans <dje@canuck.cygnus.com>
2945
2946 * sim-load.c (sim_load_file): #include <stdio.h> for NULL.
2947
2948 Wed Apr 23 02:55:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2949
2950 * sim-events.c (insert_sim_event): Call sim_io_error instead of
2951 less well defined engine_error.
2952 * sim-core.c: Ditto.
2953
2954 Tue Apr 22 08:48:16 1997 Stu Grossman (grossman@critters.cygnus.com)
2955
2956 * Make-common.in: Change clean targets to use :: so that other
2957 Makefiles can have their own clean targets.
2958 * sim-load.c (xprintf eprintf): Use ANSI_PROTOTYPES instead of
2959 __STDC__ to control use of stdarg vs. varargs syntax. Some
2960 systems can't use __STDC__, but require stdarg.
2961
2962 Fri Apr 18 11:14:43 1997 Doug Evans <dje@canuck.cygnus.com>
2963
2964 * sim-options.c (standard_options): Add --endian.
2965 (standard_option_handler): Likewise.
2966
2967 * nrun.c: #include <signal.h>.
2968 (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
2969 handler that calls sim_stop ().
2970
2971 Fri Apr 18 13:11:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
2972
2973 * run.c (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
2974 handler that calls sim_stop (). Simulators may still be
2975 establishing their own handler.
2976
2977 * sim-events.c (sim_events_poll): Rename from
2978 sim_events_at_large_int. Poll IO.
2979
2980 * sim-io.c (sim_io_poll_quit): New function - pass on a polling
2981 request.
2982
2983 * callback.c (os_poll_quit): New function poll for quit signal
2984 where needed.
2985 (default_callback): Include magic number.
2986
2987 Thu Apr 17 02:25:11 1997 Doug Evans <dje@canuck.cygnus.com>
2988
2989 * aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
2990 Check for functions getrusage, time.
2991 * sim-basics.h (SIM_ELAPSED_TIME): New typedef.
2992 (sim_elapsed_time_get, sim_elapsed_time_since): Add prototypes.
2993 * sim-utils.c: #include time.h, sys/time.h, sys/resource.h if able.
2994 (sim_elapsed_time_get, sim_elapsed_time_since): New functions.
2995
2996 * sim-utils.c (sim_copy_argv, sim_analyze_program): New functions.
2997
2998 * sim-options.c, sim-options.h: New files.
2999 * sim-config.h (WITH_DEBUG): Provide default value of zero.
3000 * Make-common.in (nrun.o): Add rules for.
3001 * nrun.c: New file.
3002
3003 * run.c (main): Check return value of sim_open.
3004
3005 * Make-common.in (sim-options.o, sim-load.o, sim-trace.o): Add rules.
3006 (sim_main_headers): Add sim-trace.h.
3007 * run.c (exec_bfd, target_byte_order): Delete.
3008 (main): Pass -E <endian> to sim_open. Delete code to load sections,
3009 call sim_load instead. Check return code of sim_create_inferior.
3010 * sim-base.h (CURRENT_STATE): Define.
3011 (sim_state_base): Make typedef. New members options, prog_argv,
3012 prog_bfd, text_{section,start,end}, start_addr, simcache_size,
3013 mem_size, memory [+ corresponding access macros].
3014 (sim_cpu_base): New typedef.
3015 * sim-trace.h: New file.
3016 * sim-trace.c: New file.
3017 * sim-basics.h: #include it.
3018 * sim-load.c: New file.
3019
3020 Tue Apr 15 15:10:13 1997 Ian Lance Taylor <ian@cygnus.com>
3021
3022 * Make-common.in (INSTALL): Set to @INSTALL@.
3023 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
3024 (install-common): Depend upon installdirs. Use
3025 $(program_transform_name) directly, rather than using
3026 $(INSTALL_XFORM).
3027 (installdirs): New target.
3028 * Makefile.in (INSTALL): Set to @INSTALL@.
3029 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
3030 (install-man): Depend upon installdirs. Use
3031 $(program_transform_name) directly, rather than using
3032 $(INSTALL_XFORM).
3033 (installdirs): New target.
3034
3035 Tue Apr 15 15:08:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
3036
3037 * sim-assert.h (SIM_ASSERT, ASSERT): Allow these macros to
3038 be overriden.
3039
3040 Wed Apr 9 16:06:44 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3041
3042 * sim-basics.h: Only bring in config.h and tconfig.h if
3043 HAVE_CONFIG_H.
3044
3045 Mon Apr 7 11:39:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3046
3047 * sim-config.h (WITH_TARGET_WORD_MSB): New Macro. Define the bit
3048 numbering convention of the target.
3049 * sim-config.c (print_sim_config): Print WITH_TARGET_WORD_BITSIZE
3050 and WITH_TARGET_WORD_MSB.
3051 (sim_config): When possible, check for consistency with bitsize
3052 and msb.
3053
3054 * sim-bits.h: Allow MSB to be other than zero.
3055 * sim-bits.c: Ditto.
3056 * sim-n-bits.h: Ditto.
3057
3058 * sim-bits.h (MSMASK*): New macros - converce to LSMASK*.
3059 * sim-n-bits.h (MSMASKEDn): Ditto.
3060
3061 Mon Apr 14 16:29:21 1997 Ian Lance Taylor <ian@cygnus.com>
3062
3063 * Makefile.in (INSTALL): Change install.sh to install-sh.
3064
3065 Mon Apr 7 10:46:38 1997 Doug Evans <dje@canuck.cygnus.com>
3066
3067 * sim-base.h (sim_state_base): Move `magic' to end of struct.
3068
3069 Mon Apr 7 15:53:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3070
3071 * run.c (main): Check that a program to run was specified.
3072
3073 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3074
3075 * aclocal.m4 (AC_TYPE_SIGNAL): Add check.
3076
3077 * configure: Regenerated to track ../common/aclocal.m4 changes.
3078 * config.in: Ditto.
3079
3080 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
3081
3082 * sim-endian.h: Move host {LITTLE,BIG}_ENDIAN support from here,
3083 * sim-config.h: To here.
3084
3085 * Make-common.in (SIM_EXTRA_DEPS): New config var.
3086 (sim_main_headers): Define.
3087 (sim-*.o): Depend on $(SIM_EXTRA_DEPS).
3088 start-sanitize-d30v
3089 (BUILT_SRC_FROM_COMMON): Move here from ../d30v/Makefile.in.
3090 end-sanitize-d30v
3091 (clean): Use it.
3092 (sim-utils.o): Add rule for.
3093 * sim-utils.o: New file.
3094 * sim-basics.h: #include sim-base.h.
3095 (zalloc): Make argument unsigned long.
3096 * sim-base.h: New file.
3097 * sim-inline.h (SIM_IO support): Delete.
3098 * sim-io.h: Delete inline support.
3099 * sim-io.c: Likewise. sim-state.h renamed to sim-main.h.
3100 * sim-config.c: sim-state.h renamed to sim-main.h.
3101 * sim-core.c: Likewise.
3102 * sim-events.c: Likewise.
3103
3104 * run.c (main): Pass SIM_OPEN_STANDALONE to sim_open.
3105
3106 * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
3107 (sim-debug): Allow arguments. Define WITH_DEBUG in addition to
3108 -DDEBUG.
3109 * configure: Regenerated to track ../common/aclocal.m4 changes.
3110
3111 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3112
3113 * configure: Regenerated to track ../common/aclocal.m4 changes.
3114
3115 Wed Apr 2 11:08:11 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3116
3117 * sim-config.h (WITH_ALIGNMENT, WITH_FLOATING_POINT,
3118 WITH_XOR_ENDIAN, WITH_SMP, WITH_RESERVED_BITS): Assume that these
3119 are defined by the configure.
3120
3121 * aclocal.m4 (sim-stdio): Add option stdio from ../ppc configure.
3122
3123 * aclocal.m4 (floating-point, xor-endian, alignment, smp,
3124 reserved-bits): Always define.
3125
3126 * sim-config.h, sim-config.c (sim_config): New function - and new
3127 file - co-ordinate the setting/checking of the common simulator
3128 configuration options.
3129
3130 * Make-common.in (sim-config.o): Add rule.
3131
3132 Fri Mar 28 15:32:00 1997 Mike Meissner <meissner@cygnus.com>
3133
3134 * callback.c (os_{,e}vprintf_filtered): Change stdarg type to
3135 va_list from void *, since va_list might not be a pointer type.
3136
3137 Mon Mar 24 15:27:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3138
3139 * sim-n-endian.h (offset_N): Correct assertion - word and sub word
3140 in wrong order.
3141 (offset_N): Correct computation of LE offset.
3142
3143 * sim-io.c (sim_io_error): Include a new line when reporting
3144 errors.
3145
3146 * sim-assert.h (SIM_FILTER_PATH): Out by one when locating last
3147 `/'.
3148
3149 Thu Mar 20 22:31:06 1997 Jeffrey A Law (law@cygnus.com)
3150
3151 * run.c: Include alloca-conf.h.
3152
3153 * callback.c (os_evprintf_filtered): Fix typo.
3154
3155 Fri Mar 21 13:36:20 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3156
3157 * run.c (string.h, strings.h, stdlib.h): Include.
3158
3159 * sim-events.c (sim_events_tick): Recent cleanup failed to return
3160 0 when nothing pending.
3161
3162 * run.c (sim_size, sim_trace): Plicate GCC - these two functions
3163 will soon be going away.
3164 (getopt): Plicate GCC.
3165
3166 * sim-endian.c (sim-io.h): Plicate GCC.
3167 * sim-bits.c (sim-io.h): Ditto.
3168 * sim-n-bits.h (ROTn): Ditto.
3169
3170 * sim-io.c (sim_io_error): Correct check for NULL.
3171
3172 * sim-assert.h (SIM_FILTER_PATH): Separate out the code filtering
3173 the __FILE__.
3174 * sim-events.c: Use SIM_FILTER_PATH to filter out the filename
3175 path.
3176
3177 Wed Mar 19 01:12:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3178
3179 * aclocal.m4 (SIM_AC_OPTION_*: Move so that they are outside of
3180 SIM_AC_COMMON - SIM_AC_COMMON was gobling arguments.
3181
3182 Tue Mar 18 20:48:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3183
3184 * sim-alu.h: Include sim-xcat.h.
3185
3186 Tue Mar 18 13:58:18 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3187
3188 * Make-common.in (sim-bits.c, sim-core.c, sim-endian.c,
3189 sim-events.c, sim-inline.c, sim-io.c): Define rules for building
3190 these.
3191
3192 * sim-events.c (sim_events_at_large_int): New function. Just
3193 schedules an event every large-int ticks.
3194 (sim_events_init): Call.
3195 (sim_events_tick, sim_events_process): Move async handing to
3196 sim_events_process. Move timer decrement so that it occures after
3197 events have been processed.
3198
3199 * sim-basics.h (struct _engine): Remove declaration.
3200
3201 * sim-events.h, sim-events.c: Rename type to sim_events. Prefix
3202 everything with same. Rename global struct to SIM_DESC.
3203 * sim-core.h, sim-core.c, sim-n-core.c: Ditto for sim_core.
3204 * sim-io.h, sim-io.c: Ditto.
3205
3206 * sim-assert.h: New file. Optional assertion checking macros.
3207 * sim-io.c (sim_io_error): Make just this function tolerant to
3208 null pointers.
3209
3210 * sim-xcat.h: New file. Define concatenate macros.
3211 * sim-basics.h (XCONCAT*): Move to sim-xcat.h.
3212 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Explicitly include
3213 concat macros.
3214
3215
3216 Tue Mar 18 12:44:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3217
3218 * sim-bits.h (LSMASK): New macro. Create mask of LS bits.
3219
3220 Mon Mar 17 18:10:05 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3221
3222 * sim-inline.h: Add definitions for sim-types.
3223 (ALL_BY_MODULE): New macro, encapsulate full inlining by the
3224 module.
3225
3226 Mon Mar 17 15:38:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3227
3228 * sim-events.h: Remove defunct reference to callback struct.
3229
3230 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3231
3232 * configure: Re-generate.
3233
3234 Mon Mar 17 15:04:47 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3235
3236 * Make-common.in (CSEARCH): Do not include the gdb directory in
3237 the search path.
3238
3239 Mon Mar 17 13:16:26 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3240
3241 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
3242 SIM_WARNING): Drop, requiring the simulator specific Makefile.in
3243 to explicitly incorporate these.
3244
3245 * aclocal.m4 (--enable-sim-alignment); New option. Strongly
3246 specify the alignment restrictions of the target architecture -
3247 without this option all alignment restrictions are accomodated.
3248 (--enable-sim-assert): New option. Conditionally compile in
3249 assertion statements.
3250 (--enable-sim-float): New option. Strongly specify the target's
3251 floating point support.
3252 (--enable-sim-hardware): New option. Specify the hardware devices
3253 included in the simulation.
3254 (--enable-sim-packages): New option. Specify the hardware
3255 packages included in the simulation.
3256 (--enable-sim-regparm): New option. Specify that parameters be
3257 passed in registers instead of on the stack.
3258 (--enable-sim-reserved-bits): New option. Specify that reserved
3259 bits within an instruction are are correctly set.
3260 (--enable-sim-smp): New option. Specify the level of SMP support
3261 to be included in the simulator.
3262 (--enable-sim-stdcall): New option. Specify an alternative
3263 function call convention.
3264 (--enable-sim-xor-endian): New option. Configure xor-endian
3265 support used by some targets to implement bi-endian support.
3266
3267 Fri Mar 14 19:51:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3268
3269 * aclocal.m4 (--enable-sim-hostendian): New option. Allow the
3270 host endianness to be overridden.
3271 (--enable-sim-endian): Allow the target platform's byte order
3272 to be overridden.
3273 (--enable-sim-inline): Control the inlining of common components.
3274 (--enable-sim-bswap): For compatibility, also define WITH_BSWAP.
3275 (--enable-sim-warnings): Enable additional GCC compiler checks.
3276 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
3277 SIM_WARNINGS): Add.
3278
3279 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Rename from
3280 sim-*-n.h so that the names are uniq on dos machines
3281 * sim-core.c, sim-bits.c, sim-endian.c: Update.
3282
3283 Thu Mar 13 12:32:42 1997 Doug Evans <dje@canuck.cygnus.com>
3284
3285 * run.c: #include "libiberty.h".
3286 (main): New locals sd,no_args,sim_argv.
3287 Run buildargv on -a option. Pass argv to sim_open, argv[0]
3288 is program name. Update call to sim_set_callbacks.
3289 Record result of sim_open, pass to other sim_foo routines.
3290
3291 Thu Mar 13 10:24:05 1997 Michael Meissner <meissner@cygnus.com>
3292
3293 * callback.c (os_printf_filtered): Do not call exit(1) or print a
3294 final newline.
3295
3296 Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3297
3298 * callback.c: Add os_flush_stdout and vprintf_filtered callbacks.
3299 Route stdout through buffered IO.
3300
3301 * callback.c: Add os_flush_stderr, os_write_stderr,
3302 os_evprintf_filtered functions to route error output through
3303 stderr.
3304
3305 * sim-io.h, sim-io.c (sim_io_flush_stderr, sim_io_flush_stdout):
3306 Correct return type - should be void.
3307
3308 Fri Mar 7 20:14:37 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3309
3310 * sim-basics.h: Clean up. Many macro's moved to sim-inline.h.
3311
3312 * sim-config.h: Ditto. For some options - eg WITH_DEVICES - do
3313 not provide a default value as undefined indicates disable code.
3314
3315 Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3316
3317 * sim-core.h, sim-core-n.h, sim-core.c: Borrow code from ppc
3318 directory.
3319 * sim-events.h, sim-events.c: Ditto.
3320 * sim-io.h, sim-io.c: Ditto.
3321
3322 Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3323
3324 * sim-alu.h (ALU_SUB_CA, ALU*_SUB_CA): New alu operation.
3325
3326 * sim-bits.h, sim-bits-n.h, sim-bits.c (LSMASKED*): New macro's
3327 extract the tail or least signifiant bits from an integer of the
3328 specified size.
3329
3330 * sim-bits.h, sim-bits.c: Clean up conditionally compiled #if
3331 WITH_TARGET_BITSIZE so that the compilation will fail when an
3332 unsupported bitsize value is defined.
3333
3334 (INSERTED*): Convert to functions.
3335 (EXTRACTED*): Ditto.
3336
3337 (SIGN_EXTEND, SEXT): Change to more terse name.
3338
3339 Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3340
3341 * sim-inline.h: Allow explicit control over which .c files will be
3342 included by their header.
3343
3344 * sim-inline.h: Allow explicit control over which .c files use the
3345 alternative - REGPARM - parameter passing mechanism.
3346
3347 * sim-inline.h, sim-inline.c: Don't attempt to include any of
3348 icache.c, idecode.c, semantics.c or support.c. Those names are
3349 not generally applicable.
3350
3351 Thu Feb 27 10:17:23 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3352
3353 * sim-bits.c, sim-bits-n.h (new): Split sim-bits.c into two parts
3354 in a fashion similar to sim-endian-n.
3355
3356 * sim-endian.h: (H_word, L_word, AL_*, VL_*): Extend to include
3357 both value and address macro's.
3358
3359 Tue Feb 25 18:51:57 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3360
3361 * sim-alu.h (ALU16_BEGIN, ALU16_SET, ...): Fill in.
3362
3363 * sim-endian.h (L_word, H_word): Replace MS2W_4, LS2W_4 with more
3364 generic L_word, H_word macro's.
3365
3366 Thu Feb 20 18:36:55 1997 Andrew Cagney <cagney@critters.cygnus.com>
3367
3368 * sim-basics.h: Borrow code from ppc directory.
3369 * sim-bits.c: Ditto.
3370 * sim-bits.h: Ditto.
3371 * sim-config.h: Ditto.
3372 * sim-endian-n.h: Ditto.
3373 * sim-endian.c: Ditto.
3374 * sim-endian.h: Ditto.
3375 * sim-inline.c: Ditto.
3376 * sim-inline.h: Ditto.
3377 * sim-types.h: Ditto.
3378
3379 Wed Feb 19 12:40:50 1997 Andrew Cagney <cagney@critters.cygnus.com>
3380
3381 * sim-alu.h (ALU_SET16, ALU_SET32, ALU_SET64, etc): Make available
3382 all the ALU size alternatives and then auto-configure a default.
3383
3384 * sim-alu.h: Copy ppc/idecode_expression.h.
3385
3386 Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com>
3387
3388 * bits.h, bits.c (SIGN_EXTEND32, SIGN_EXTEND64): New functions,
3389 sign extend a bit within a value.
3390
3391 * sim-endian.h, sim-endian-n.h (offset_N): New functions - return
3392 a pointer into the middle of a host word.
3393 * sim-endian.h (MS2W_4, LS2W_4): Use this function.
3394
3395 Tue Feb 11 13:46:49 1997 Michael Meissner <meissner@tiktok.cygnus.com>
3396
3397 * callback.c: If HAVE_CONFIG_H is defined, include config.h from
3398 autoconf. If HAVE_UNISTD_H is defined, include unistd.h to get
3399 appropriate definitions of read, write, etc. Add prototype for
3400 system.
3401
3402 Tue Feb 4 13:24:44 1997 Doug Evans <dje@canuck.cygnus.com>
3403
3404 * Makefile.in (libcommon.a): Delete.
3405 (callback.o,targ-map.o): Delete, moved to Make-common.in.
3406 (gentmap,targ-vals.h,targ-map.c): Likewise.
3407 (run-autoconf): Delete.
3408 * aclocal.m4 (SIM_AC_OUTPUT): Redo creation of Makefile.
3409 (common makefile fragment): Moved back into ...
3410 * Make-common.in: Resurrect.
3411 * configure.in (AC_LINK_FILES): Delete, unnecessary now.
3412 * configure: Regenerated.
3413
3414 Fri Jan 31 07:16:49 1997 Doug Evans <dje@canuck.cygnus.com>
3415
3416 * aclocal.m4 (SIM_AC_COMMON): Move COMMON_MAKEFILE_FRAG from here.
3417 (SIM_AC_OUTPUT): To here.
3418
3419 Fri Jan 24 10:37:17 1997 Stu Grossman (grossman@critters.cygnus.com)
3420
3421 * aclocal.m4 (COMMON_MAKEFILE_FRAG): Quote a couple of $'s in
3422 comments and single quotes. Fixes a problem found on hpux.
3423
3424 Thu Jan 23 13:35:03 1997 Stu Grossman (grossman@critters.cygnus.com)
3425
3426 * aclocal.m4: Remove Make-common.in from dependencies.
3427 * (distclean): Remove targ-vals.def.
3428
3429 * aclocal.m4 (SIM_AC_COMMON): Move contents of Make-common.in
3430 into here. Makes insertion into makefiles easier. Also, change
3431 the way that callback.o, gentmap, targ-vals.h, targ-map.c,
3432 targ-map.o, and run are built. They are now built in the
3433 individual simulator directories, taking sources from ../common as
3434 necessary. This replaces the merging of libcommon.a into
3435 linsim.a, which was problematic for the WinGDB build process.
3436 * run.c: Include config.h from . instead of ../common.
3437 * Make-common.in: Remove. It's no longer necessary.
3438
3439 Mon Dec 16 15:02:33 1996 Ian Lance Taylor <ian@cygnus.com>
3440
3441 * Make-common.in (ALL_CLAGS): Put CFLAGS at the end.
3442 (.c.o): Put $(ALL_CFLAGS) before the file being compiled.
3443
3444 Wed Dec 11 11:30:58 1996 Jim Wilson <wilson@cygnus.com>
3445
3446 * run.c (main): Set target_byte_order before call to sim_open.
3447
3448 Sun Dec 8 18:22:06 1996 Doug Evans <dje@canuck.cygnus.com>
3449
3450 * callback.c: #include <stdlib.h>
3451 (os_error): New function.
3452 (default_callback): Add os_error.
3453
3454 Mon Nov 25 19:44:35 1996 Doug Evans <dje@canuck.cygnus.com>
3455
3456 * Make-common.in (Makefile): Set CONFIG_HEADERS="".
3457 * aclocal.m4: Mark the fact that --enable-sim-bswap isn't host
3458 specific.
3459 (SIM_AC_OUTPUT): Don't build Makefile if CONFIG_FILES="".
3460
3461 Wed Nov 20 01:11:04 1996 Doug Evans <dje@canuck.cygnus.com>
3462
3463 * run.c: #include ../common/config.h, tconfig.h.
3464 (myname): New static global.
3465 (main): Recognize new options -a, -c. Also recognize -h if h8/300.
3466 Only process -c ifdef SIM_HAVE_SIMCACHE.
3467 Only process -p/-s ifdef SIM_HAVE_PROFILE.
3468 Parse program name from argv[0] and use in error messages.
3469 Pass sim_args to sim_open. Pass prog_args to sim_create_inferior.
3470 Add support for incomplete h8/300 termination indicators.
3471 (usage): Make more verbose.
3472 * aclocal.m4,config.in,tconfig.in,configure.in,configure: New files.
3473 * Makefile.in,Make-common.in,callback.c: New files.
3474 * nltvals.def,gentmap.c,gentvals.sh: New files.
3475
3476 Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
3477
3478 * run.c: Include stdarg.h if __STDC__.
3479
3480 Tue Oct 15 11:16:31 1996 Jeffrey A Law (law@cygnus.com)
3481
3482 * run.c (main): Don't print out anything if the signal
3483 number is zero (ie no signal).
3484
3485 Tue Oct 15 11:20:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3486
3487 * run.c (main): Print out if the program raised a signal.
3488
3489 Wed Sep 18 09:52:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3490
3491 * run.c (exec_bfd): Rename from sim_bfd, to use the gdb name.
3492 (main): Ditto.
3493
3494 Tue Sep 17 11:04:50 1996 James G. Smith <jsmith@cygnus.co.uk>
3495
3496 * run.c (main): Explicitly cast malloc() parameter.
3497
3498 Thu Sep 12 11:27:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3499
3500 * run.c (sim_bfd): New global to hold the bfd pointer for the
3501 executable.
3502 (main): Initialize sim_bfd.
3503
3504 Fri Dec 15 16:27:49 1995 Ian Lance Taylor <ian@cygnus.com>
3505
3506 * run.c (main): Use new bfd_big_endian macro.
3507
3508 Wed Nov 8 15:49:49 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
3509
3510 * run.c (main): Removed SH specific comments, so source is
3511 generic. Also updated to only load relevant sections. Moved
3512 sim_open() to after callback attach (to match GDB).
3513
3514 * run.1: Removed SH specific comments.
3515
3516 Sat Oct 21 12:31:01 1995 Jim Wilson <wilson@chestnut.cygnus.com>
3517
3518 * run.c (main): Always return sigrc at end.
3519
3520 Tue Oct 10 12:03:13 1995 J.T. Conklin <jtc@rtl.cygnus.com>
3521
3522 * run.c (main): Print error diagnostic and exit if bfd_openr() or
3523 bfd_check_format() fails.
3524
3525 Thu Sep 28 15:40:36 1995 steve chamberlain <sac@slash.cygnus.com>
3526
3527 * run.c, run.1: From sh directory.
3528
3529