2003-06-23 Michael Snyder <msnyder@redhat.com>
[platform/upstream/binutils.git] / sim / common / ChangeLog
1 2003-06-23  Michael Snyder  <msnyder@redhat.com>
2
3         * sim-reg.c: Fix cut-and-paste bug in comment.
4
5 2003-06-22  Andrew Cagney  <cagney@redhat.com>
6
7         From matthew green <mrg@redhat.com>:
8         * sim-fpu.h: Update copyright.
9         (sim_fpu_fraction, sim_fpu_guard): New prototypes.
10         * sim-fpu.c: Update copyright.
11         (sim_fpu_fraction, sim_fpu_guard): New inline functions.
12
13 2003-06-17  Frank Ch. Eigler  <fche@redhat.com>
14
15         From Doug Evans <dje@sebabeach.org>:
16         * cgen-trace.h (sim_disasm_read_memory): Update args to be compatible
17         with disassemble_info:read_memory_func.
18         * cgen-trace.c (sim_disasm_read_memory): Ditto.
19
20 2003-06-04  Michael Snyder  <msnyder@redhat.com>
21
22         * common/run.c (main): Remove SIM_H8300 ifdef.
23         (usage): Ditto.
24         * common/sim-options.c (STANDARD_OPTIONS): Add SIM_H8300SX.
25         (standard_options): Add '-x' for h8/300sx.
26         (standard_option_handler): Add case for SIM_H8300SX.
27
28 2003-04-13  Michael Snyder  <msnyder@redhat.com>
29
30         * Make-common.in (sim-events.o, sim-config.o): Depend on sim-main.h.
31
32 2003-03-01  Andrew Cagney  <cagney@redhat.com>
33
34         * sim-engine.c (sim_engine_halt): If jmpbuf is invalid, abort.
35         (sim_engine_vabort): Ditto.
36
37 2003-02-27  Andrew Cagney  <cagney@redhat.com>
38
39         * sim-utils.h (sim_analyze_program, sim_load_file): Rename _bfd to bfd.
40         * sim-hload.c (sim_load), sim-base.h (sim_state_base): Ditto.
41         * nrun.c (main): Ditto.
42
43 2003-02-26  Andrew Cagney  <cagney@redhat.com>
44
45         * sim-engine.h (sim_engine_abort): Add noreturn attribute.
46         (sim_engine_vabort): Ditto.
47         (sim_engine_halt, sim_engine_restart): Ditto.
48
49 2003-02-20  Andrew Cagney  <ac131313@redhat.com>
50
51         * Make-common.in (SIM_NEW_COMMON_OBJS): Remove sim-break.o
52         (sim-break_h): Delete macro.
53         (sim-break.o): Delete rule.
54         * sim-break.c: Delete file.
55         * sim-break.h: Delete file.
56         * sim-base.h [SIM_HAVE_BREAKPOINTS]: Don't include "sim-break.h".
57         (STATE_BREAKPOINTS): Delete macro.
58         (sim_state_base): Delete field breakpoints.
59         * sim-module.c (modules) [SIM_HAVE_BREAKPOINTS]: Don't add
60         sim_break_install to array.
61
62 2003-01-08  Kazu Hirata  <kazu@cs.umass.edu>
63
64         * run.c (usage): Fix typos.
65
66 2002-11-27  Richard Sandiford  <rsandifo@redhat.com>
67
68         * sim-fpu.c (sim_fpu_inv): Use sim_fpu_div.
69
70 2002-11-22  Andrew Cagney  <ac131313@redhat.com>
71
72         * dv-core.c: Update copyright.  sim/common contributed to the FSF.
73         * dv-glue.c, dv-pal.c, hw-base.c, hw-base.h, hw-device.c: Ditto.
74         * hw-device.h, hw-handles.c, hw-handles.h: Ditto.
75         * hw-instances.c, hw-instances.h, hw-properties.c: Ditto.
76         * hw-properties.h, hw-tree.c, hw-tree.h, sim-alu.h: Ditto.
77         * sim-basics.h, sim-bits.c, sim-bits.h, sim-config.c: Ditto.
78         * sim-config.h, sim-core.c, sim-core.h, sim-endian.c: Ditto.
79         * sim-endian.h, sim-events.c, sim-events.h, sim-inline.c: Ditto.
80         * sim-inline.h, sim-io.c, sim-io.h, sim-n-bits.h: Ditto.
81         * sim-n-core.h, sim-n-endian.h, sim-types.h: Ditto.
82
83 2002-11-13  Andrew Cagney  <cagney@redhat.com>
84
85         * run.c (main): Remove SIM_HAVE_ENVIRONMENT from #endif.
86
87 2002-11-06  Richard Sandiford  <rsandifo@redhat.com>
88
89         * Make-common.in (SIM_EXTRA_DISTCLEAN): New macro.
90         (distclean): Depend on it.
91
92 2002-10-14  Alan Modra  <amodra@bigpond.net.au>
93
94         * cgen-trace.h: Test __BFD_H_SEEN__ rather than BFD_VERSION.
95
96 2002-08-29  Dave Brolley  <brolley@redhat.com>
97
98         * Make-common.in (CGEN_READ_SCM): Remove ../../cgen/stamp-cgen.
99
100 2002-07-17  Andrew Cagney  <cagney@redhat.com>
101
102         * run-sim.h: Add #ifdef RUN_SIM_H wrapper.
103         (sim_set_callbacks, sim_size, sim_trace)
104         (sim_set_trace, sim_set_profile_size, sim_kill): Declare.  Moved
105         to here from "gdb/remote-sim.h".
106
107 2002-07-16  Andrew Cagney  <ac131313@redhat.com>
108
109         * sim-resume.c (sim_resume): Add local variable sig_to_deliver to
110         avoid possible longjmp problems with automatic variable siggnal.
111
112 2002-07-14  Andrew Cagney  <ac131313@redhat.com>
113
114         From 2002-07-11 Momchil Velikov <velco@fadata.bg>:
115         * Make-common.in (installdirs): Make $(libdir) too, needed when
116         installing libsim.a.
117
118 2002-07-13  Andrew Cagney  <ac131313@redhat.com>
119
120         * gennltvals.sh (dir): Mark d30v as obsolete.
121         * nltvals.def: Remove d30v.
122
123 2002-06-17  Andrew Cagney  <cagney@redhat.com>
124
125         * hw-events.c (hw_event_queue_schedule): Initialize `dummy'.
126
127         * sim-memopt.c: Include <unistd.h>.
128         (do_memopt_add): Fix printf format.
129         * sim-events.c (sim_events_schedule): Initialize ``dummy''.
130
131 2002-06-16  Andrew Cagney  <ac131313@redhat.com>
132
133         * aclocal.m4 (SIM_AC_OPTION_WARNINGS): Update to match GDB's
134         --enable-gdb-build-warnings.
135         * configure: Regenerated to track ../common/aclocal.m4 changes.
136
137 2002-06-09  Aldy Hernandez  <aldyh@redhat.com>
138
139         * sim-fpu.c (unpack_fpu): Initialize exponent for
140         sim_fpu_class_zero.
141         (i2fpu): Same.
142         (sim_fpu_sqrt): Same.
143
144 2002-06-08  Andrew Cagney  <cagney@redhat.com>
145
146         * gentmap.c (gen_targ_map_c): Generate "gdb/callback.h".
147         * sim-basics.h: Include "gdb/callback.h" and "gdb/remote-sim.h".
148         * run.c: Ditto.
149         * sim-load.c: Ditto.
150         * callback.c: Ditto.
151         * syscall.c: Ditto.
152         * Make-common.in (callback_h): Define.
153         (remote_sim_h): Define.
154         (run.o): Update.
155         (callback.o): Update.
156         (syscall.o): Update.
157         (sim-load.o): 
158         (nrun.o): Update.
159         (sim-hload.o): Update.
160         (sim-io.o): Update.
161         (sim-reason.o): Update.
162         (sim-reg.o): Update.
163         (sim-resume.o): Update.
164
165 2002-05-30  Kazu Hirata  <kazu@cs.umass.edu>
166
167         * run.c: Fix formatting.
168
169 2002-05-20  Nick Clifton  <nickc@cambridge.redhat.com>
170
171         * run-sim.h: New header.  Provide prototypes for functions used
172         between run() and libsim.a which are not used by GDB.
173         * run.c: Include run-sim.h.
174         (main): If SIM_TARGET_SWITCHES is defined call
175         sim_target_parse_command_line.
176         (usage): If SIM_TARGET_SWITCHES is defined call
177         sim_target_display_usage.
178
179 2002-05-17  Andrey Volkov  <avolkov@transas.com>
180
181         * run.c: Made h8300s as new target, not h8300h alias.
182         Added new option -S (h8300s target)
183         * sim-options.c: Ditto.
184         
185 2002-05-01  Chris Demetriou  <cgd@broadcom.com>
186
187         * callback.c: Use 'deprecated' rather than 'depreciated.'
188
189 2002-02-24  Andrew Cagney  <ac131313@redhat.com>
190
191         From wiz at danbala:
192         * sim-fpu.h: Fix grammar and typos.
193         Fix PR gdb/287.
194
195 2002-02-10  Chris Demetriou  <cgd@broadcom.com>
196
197         * callback.c: Fix some spelling errors.
198         * hw-device.h: Likewise.
199         * hw-tree.c: Likewise.
200         * sim-abort.c: Likewise.
201         * sim-alu.h: Likewise.
202         * sim-core.h: Likewise.
203         * sim-events.c: Likewise.
204         * sim-events.h: Likewise.
205         * sim-fpu.h: Likewise.
206         * sim-profile.h: Likewise.
207         * sim-utils.c: Likewise.
208
209 2002-01-31  Hans-Peter Nilsson  <hp@axis.com>
210
211         * cgen-ops.h (ADDCQI, ADDCFQI, ADDOFQI, SUBCQI, SUBCFQI, SUBOFQI):
212         New functions.
213
214 2002-01-20  Ben Elliston  <bje@redhat.com>
215
216         * sim-fpu.h (SIM_FPU_IS_QNAN): Replace "Quite" with "Quiet" in
217         the comment for this enumerator.
218
219 2002-01-14  Ben Elliston  <bje@redhat.com>
220
221         * sim-fpu.h: Fix comment about sim_fpu_* constants.
222
223 2001-12-20  Kazu Hirata  <kazu@hxi.com>
224
225         * run.c (usage): Fix a typo.
226
227 2001-07-05  Ben Elliston  <bje@redhat.com>
228
229         * Make-common.in (srccgen): Remove.
230         (CGEN_CPU_DIR): Define.
231         (CGEN_READ_SCM): Redefine without $(srccgen).
232         (CGEN_ARCH_SCM): Ditto.
233         (CGEN_CPU_SCM): Ditto.
234         (CGEN_DECODE_SCM): Ditto.
235         (CGEN_DESC_SCM): Ditto.
236
237 2001-04-25  Frank Ch. Eigler  <fche@redhat.com>
238
239         * sim-load.c (sim_load_file): Put it back: external now.
240         * sim-utils.c (sim_analyze_program): Ditto.  Nyuk nyuk nyuk.
241
242 2001-04-21  Andrew Cagney  <ac131313@redhat.com>
243
244         * sim-load.c (sim_load_file): Delete call bfd_cache_close.  BFD
245         internal interface.
246         * sim-utils.c (sim_analyze_program): Ditto.
247
248 2001-04-19  Frank Ch. Eigler  <fche@redhat.com>
249
250         * sim-utils.c (sim_analyze_program): Call bfd_cache_close after
251         we're finished with its immediate use.
252         * sim-load.c (sim_load_file): Ditto.
253
254 2001-03-16  Frank Ch. Eigler  <fche@redhat.com>
255
256         Add support for mmap-based memory regions.
257         * sim-memopt.c (mmap_next_fd): New global.
258         (sim_memory_init): Reinitialize it.
259         (OPTION_MEMORY_MAPFILE, memory_option_handler): Support new
260         "--memory-mapfile FILE" option.  Check for some errors.
261         (do_memopt_add): Conditionally do mmap instead of malloc for
262         backing store of simulated memory.  Check for more errors.
263         (do_simopt_delete, sim_memory_uninstall): Corresponding cleanup.
264         * sim-memopt.h (munmap_length): New member of _sim_memopt.
265         * configure.in: Look for mmap/fstat related functions and headers.
266         * config.in, configure: Regenerated.
267
268 2001-03-15  Frank Ch. Eigler  <fche@redhat.com>
269
270         * sim-core.c (sim_core_map_attach): Correct overlap-related
271         error messages.
272
273 2001-03-07  Michael Meissner  <meissner@redhat.com>
274
275         * run.c (alloca-conf.h): Delete, no longer provided.
276
277 2001-02-22  Ben Elliston  <bje@redhat.com>
278
279         * sim-trace.h (TRACE_VPU_IDX): Add.
280         (TRACE_vpu): Define.
281         (WITH_TRACE_VPU_P): Likewise.
282         (TRACE_VPU_P): Likewise.
283         * sim-trace.c (OPTION_TRACE_VPU): Define.
284         (trace_options): Add --trace-vpu.
285         (trace_option_handler): Handle OPTION_TRACE_VPU.
286         (trace_option_handler): Include VPU tracing in --trace-semantics.
287         (trace_idx_to_str): Handle TRACE_VPU_IDX.
288
289 2001-02-21  Ben Elliston  <bje@redhat.com>
290
291         * sim-trace.h (TRACE_BRANCH_INPUT1): New macro.
292         (TRACE_BRANCH_INPUT2): Likewise.
293
294 2001-02-09  Ben Elliston  <bje@redhat.com>
295
296         * (profile_print_pc): Write header out in target byte order.
297
298 2001-02-09  Ben Elliston  <bje@redhat.com>
299
300         * sim-profile.c (profile_pc_init): Correct bug in loop logic when
301         adjusting the pc shift value.
302
303 2001-01-12  Chris Demetriou  <cgd@sibyte.com>
304
305         * aclocal.m4 (SIM_AC_OPTION_SCACHE): Properly handle the case
306         where a numeric value is supplied.
307
308 2001-01-06  Ben Elliston  <bje@redhat.com>
309
310         * cgen.sh: Allow extrafiles to include the semantics files when
311         generating an ISA-specific decoder.
312
313 2000-12-27  Alexandre Oliva  <aoliva@redhat.com>
314
315         * Make-common.in (sim-io.o): Depend on targ-vals.h.
316
317 2000-12-23  Ben Elliston  <bje@redhat.com>
318
319         * cgen-trace.c (trace_result): Handle 'f' type operands; output
320         them to the trace stream using sim_fpu_printn_fpu. Include
321         "sim-fpu.h".
322
323 2000-12-15  Ben Elliston  <bje@redhat.com>
324
325         * sim-fpu.h (sim_fpu_printn_fpu): Declare.
326         * sim-fpu.c (print_bits): Add digits parameter. Print only as many
327         trailing digits as specified (-1 to print all digits).
328         (sim_fpu_print_fpu): New wrapper around sim_fpu_printn_fpu.
329         (sim_fpu_printn_fpu): Rename from sim_fpu_print_fpu; update calls
330         to print_bits ().
331
332 2000-12-13  Ben Elliston  <bje@redhat.com>
333
334         * cgen.sh: Set prefix/PREFIX (append ISA if applicable). Factor
335         sed expressions into $sedscript, substituting @prefix@/@PREFIX@.
336         (defs): New action.
337
338 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
339
340         * sim-endian.h: Don't have parameters on macro definitions which
341         are simply renaming functions, to permit use of XCONCAT2 in both
342         the macro name and the arguments in a use of such a definition.
343
344 2000-12-11  Ben Elliston  <bje@redhat.com>
345
346         * cgen-ops.h (SUBWORDDFDI): New function.
347
348 2000-12-05  Ben Elliston  <bje@redhat.com>
349
350         * Make-common.in (cgen-defs): New target.
351         (cgen-decode): Pass $(EXTRAFILES).
352
353         * genmloop.sh: Use @prefix@, not @cpu@ throughout. Add -prefix and
354         -outfile-suffix options.
355
356 2000-12-04  Ben Elliston  <bje@redhat.com>
357
358         * cgen-ops.h (SUBWORDSIQI): Mask off top bits.
359         (SUBWORDSIUQI): Likewise.
360         (SUBWORDDIHI): Likewise.
361         (SUBWORDDIQI): New function.
362
363         * cgen-trace.c (disassemble_insn): Remove unused declaration.
364         * cgen-scache.c (scache_option_handler): Remove unused local var.
365
366 2000-12-03  Ben Elliston  <bje@redhat.com>
367
368         * sim-profile.c (profile_option_handler): Remove unused prof_nr.
369
370 2000-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
371
372         * hw-events.c (delete_hw_event_data): Remove the scheduled events.
373
374 2000-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
375
376         * dv-core.c (dv_core_attach_address_callback): Don't abort if
377         space is not zero.
378
379 2000-11-24  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
380
381         * hw-base.c (hw_delete): Don't free base_of_hw since it's freed.
382         (set_hw_delete): Moved the macro as a function.
383         * hw-base.h (set_hw_delete): Declare as external function.
384         * hw-alloc.c (delete_hw_alloc_data): Allow to free the memory
385         allocated using hw_malloc.
386         
387 2000-11-24  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
388
389         * sim-options.c (sim_parse_args): Free the memory used for
390         long_options, short_options, handlers, opt_cpu, orig_val.
391
392 2000-11-20  Ben Elliston  <bje@redhat.com>
393
394         * cgen-ops.h (SUBBI): New macro.
395         (SUBWORDSIQI, SUBWORDSIHI, SUBWORDSIUQI): New functions.
396         (SUBWORDDIHI, SUBWORDDIUQI, SUBWORDDIDF): Likewise.
397
398 2000-11-16  Ben Elliston  <bje@redhat.com>
399
400         * cgen-types.h (VOID): New type.
401
402 2000-11-09  Ben Elliston  <bje@redhat.com>
403
404         * sim-fpu.c (sim_fpu_one): Set exponent to 0.
405         (sim_fpu_two): Set exponent to 1.
406
407 2000-10-26  Ben Elliston  <bje@redhat.com>
408
409         * cgen.sh: Handle an isa argument between cpu and mach. Default to
410         `all'. Pass `-i' options to cgen applications.
411         * Make-common.in (cgen-arch, cgen-cpu, cgen-decode, cgen-cpu-decode,
412         cgen-desc): Pass $(isa) to cgen.sh.
413
414 2000-10-08  Ben Elliston  <bje@redhat.com>
415
416         * cgen-utils.c (cgen_rtx_error): New function.
417
418 2000-10-07  Ben Elliston  <bje@redhat.com>
419
420         * cgen-trace.c (sim_cgen_disassemble_insn): Handle failure
421         conditions for sim_core_read_buffer().
422
423 2000-09-26  Dave Brolley  <brolley@redhat.com>
424
425         * cgen-utils.c (RORQI): New function.
426         (ROLQI): New function.
427         (RORHI): New function.
428         (ROLHI): New function.
429
430 2000-08-28  Dave Brolley  <brolley@redhat.com>
431
432         * cgen-trace.c (sim_cgen_disassemble_insn): Make sure entire insn is
433         in insn_value if it will fit.
434
435 2000-08-21  Frank Ch. Eigler  <fche@redhat.com>
436
437         * Make-common.in, cgen.sh: Contribute CGEN-related build targets/rules.
438
439 2000-08-15  Dave Brolley  <brolley@redhat.com>
440
441         * sim-profile.c (profile_print_speed): Print cpu frequency if not zero.
442
443 2000-08-15  Dave Brolley  <brolley@redhat.com>
444
445         * sim-profile.h (PROFILE_DATA): Add cpu_freq.
446         (PROFILE_CPU_FREQ): New macro.
447         * sim-profile.c (OPTION_PROFILE_CPU_FREQUENCY): New enumerator.
448         (profile-options): Add profile-cpu-frequency.
449         (parse_frequency): New function.
450         (profile_option_handler): Handle OPTION_PROFILE_CPU_FREQUENCY.
451         (profile_print_speed): Print cpu frequency and simulated execution time.
452         Re-indent other items to match.
453
454 2000-08-09  Andrew Cagney  <cagney@lulu.cygnus.com>
455
456         * dv-sockser.c (dv_sockser_init): Eliminate MIN macro.
457
458 2000-07-27  Frank Ch. Eigler  <fche@redhat.com>
459
460         From Maciej W. Rozycki <macro@ds2.pg.gda.pl>
461         * Makefile.in (install): Install run.1 man page.
462
463 Thu Jul 27 21:56:08 2000  Andrew Cagney  <cagney@b1.cygnus.com>
464
465         From 2000-06-23 Doug Evans <dje@casey.transmeta.com>:
466         * Makefile.in (headers,nltvals.def): Merge.
467
468 Thu Jul 27 20:37:47 2000  Andrew Cagney  <cagney@b1.cygnus.com>
469
470         From 2000-06-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>:
471         * nrun.c (main): Print the simulator statistics only in
472         verbose mode.
473         * hw-properties.h (hw_find_integer_array_property): Fix
474         prototype (use signed_cell).
475
476         From 2000-06-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>:
477         * sim-events.c (sim_events_remain_time): New function returning
478         the time that remains before the event is raised.
479         * hw-events.c (hw_event_remain_time): Likewise.
480         * sim-events.h (sim_events_remain_time): Declare.
481         * hw-events.h (hw_event_remain_time): Declare.
482
483         From 2000-06-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>:
484         * sim-hw.c: Use <errno.h> instead of <sys/errno.h>
485         (OPTION_HW_LIST): New option --hw-list to list the devices.
486         (hw_option_handler): List the device tree with 'sim_hw_print'.
487
488         From 2000-06-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>:
489         * sim-bits.h (_MSB_16, _LSB_16): Define for 16-bit targets.
490         (MASK, LSBIT, MSBIT): Likewise and use _MSB_16 and _LSB_16.
491         (EXTENDED): Define for 16-bit word size.
492         * sim-bits.c (LSEXTRACTED, MSEXTRACTED, LSINSERTED,
493         MSINSERTED, LSSEXT, MSSEXT): Implement for 16-bit word size.
494         * sim-types.h: Added support for 16-bit targets.
495
496 2000-06-23  Frank Ch. Eigler  <fche@redhat.com>
497
498         * cgen-trace.h (TRACE_USEFUL_MASK): Remove TRACE_EVENTS_IDX.
499
500 2000-06-24  Frank Ch. Eigler  <fche@redhat.com>
501
502         From Maciej W. Rozycki <macro@ds2.pg.gda.pl>:
503         * Makefile.in (distclean): Clean cconfig.h also.
504
505 Tue May 23 21:39:23 2000  Andrew Cagney  <cagney@b1.cygnus.com>
506
507         * configure: Regenerated to track ../common/aclocal.m4 changes.
508
509 Tue May 23 21:35:53 2000  Andrew Cagney  <cagney@b1.cygnus.com>
510
511         * aclocal.m4 (sim-profile): Enable the profiler by default.
512
513 Tue May 23 20:30:12 2000  Andrew Cagney  <cagney@amy.cygnus.com>
514
515         * run.c (main): Initialize sigrc.
516
517 Wed Apr 26 16:18:44 2000  Andrew Cagney  <cagney@b1.cygnus.com>
518
519         * sim-events.c (update_time_from_event): Add more detailed event
520         tracing.
521
522 2000-03-30  Dave Brolley  <brolley@redhat.com>
523
524         * aclocal.m4 (cgen): Use guile to run cgen.
525
526 2000-03-23  Dave Brolley  <brolley@redhat.com>
527
528         * cgen-fpu.h: Rename extsfdf to fextsfdf. Rename truncdfsf to
529         ftruncdfsf.
530         * cgen-accfp.c (fextsfdf): New function.
531         (ftruncdfsf): New function.
532         (cgen_init_accurate_fpu): Initialize fextsfdf and ftruncdfsf.
533
534 2000-03-13  Jeff Johnston <jjohnstn@cygnus.com>
535
536         * cgen-ops.h: Added TRUNCSISI.
537
538 2000-03-08  Dave Brolley  <brolley@redhat.com>
539
540         * cgen-par.h (cgen_write_queue_kind): Add CGEN_FN_SF_WRITE.
541         (CGEN_WRITE_QUEUE_ELEMENT): Add fn_sf_write.
542         (sim_queue_fn_si_write): Last argument is has type USI.
543         (sim_queue_fn_sf_write): New function.
544         * cgen-par.c (sim_queue_fn_si_write): Declare 'value' as USI.
545         (sim_queue_fn_sf_write): New function.
546         (cgen_write_queue_element_execute): Handle CGEN_FN_SF_WRITE.
547
548 Tue Feb 22 16:45:09 2000  Andrew Cagney  <cagney@b1.cygnus.com>
549
550         * run.c (main): When SIM_HAVE_ENVIRONMENT enable tracing with
551         sim_set_trace and run simulator using sim_resume.
552         (main): Add option ``-o'' - operating environment.  Only continue
553         after a signal when operating environment.
554         (main): Always set REASON and SIGRC using sim_stop_reason.
555         (sim_trace): Delete extern declaration.
556
557 2000-02-08  Nick Clifton  <nickc@cygnus.com>
558
559         * callback.c: Fix compile time warning messages.
560         * run.c: Fix compile time warning messages.
561      
562 1999-12-17  Dave Brolley  <brolley@cygnus.com>
563
564         * sim-profile.h: (set_profile_option_mask): Add prototype.
565         * sim-profile.c (set_profile_option_mask): No longer static.
566
567 Wed Dec  8 21:47:13 1999  Andrew Cagney  <cagney@b1.cygnus.com>
568
569         * sim-arange.c: Include <string.h>
570
571 1999-12-07  Dave Brolley  <brolley@cygnus.com>
572
573         * sim-options.c (print_help): '=' required before optional argument.
574         * cgen-par.h (CGEN_FN_MEM_QI_WRITE): New enumerator.
575         (CGEN_FN_MEM_HI_WRITE): New enumerator.
576         (CGEN_FN_MEM_SI_WRITE): New enumerator.
577         (CGEN_FN_MEM_DI_WRITE): New enumerator.
578         (CGEN_FN_MEM_DF_WRITE): New enumerator.
579         (CGEN_FN_MEM_XI_WRITE): New enumerator.
580         (fn_mem_qi_write): New union members.
581         (fn_mem_hi_write): New union members.
582         (fn_mem_si_write): New union members.
583         (fn_mem_di_write): New union members.
584         (fn_mem_df_write): New union members.
585         (fn_mem_xi_write): New union members.
586         (sim_queue_fn_mem_qi_write): New function.
587         (sim_queue_fn_mem_hi_write): New function.
588         (sim_queue_fn_mem_si_write): New function.
589         (sim_queue_fn_mem_di_write): New function.
590         (sim_queue_fn_mem_df_write): New function.
591         (sim_queue_fn_mem_xi_write): New function.
592         * cgen-par.c (sim_queue_fn_mem_qi_write): New function.
593         (sim_queue_fn_mem_hi_write): New function.
594         (sim_queue_fn_mem_si_write): New function.
595         (sim_queue_fn_mem_di_write): New function.
596         (sim_queue_fn_mem_df_write): New function.
597         (sim_queue_fn_mem_xi_write): New function.
598         (cgen_write_queue_element_execute): Handle CGEN_FN_MEM_QI_WRITE,
599         CGEN_FN_MEM_HI_WRITE, CGEN_FN_MEM_SI_WRITE, CGEN_FN_MEM_DI_WRITE,
600         CGEN_FN_MEM_DF_WRITE, CGEN_FN_MEM_XI_WRITE.
601
602 1999-12-01  Dave Brolley  <brolley@cygnus.com>
603
604         * cgen-accfp.c (subsf): Check status code.
605         (mulsf): Ditto.
606         (negsf): Ditto.
607         (abssf): Ditto.
608         (sqrtsf): Ditto.
609         (invsf): Ditto.
610         (minsf): Ditto.
611         (maxsf): Ditto.
612         (subdf): Ditto.
613         (muldf): Ditto.
614         (divdf): Ditto.
615         (negdf): Ditto.
616         (absdf): Ditto.
617         (sqrtdf): Ditto.
618         (invdf): Ditto.
619         (mindf): Ditto.
620         (maxdf): Ditto.
621
622 1999-11-26  Dave Brolley  <brolley@cygnus.com>
623
624         * cgen-par.h (fn_df_write): Mode of data is DF.
625         (sim_queue_fn_df_write): Mode of data is DF.
626         * cgen-par.c (sim_queue_fn_df_write): Mode of data is DF.
627
628 1999-11-22  Dave Brolley  <brolley@cygnus.com>
629
630         * cgen-trace.c (SIZE_TRACE_BUF): Inxrease size of trace buffer.
631         * cgen-par.h (CGEN_WRITE_QUEUE_SIZE): Increase size of queue.
632
633 1999-11-04  Dave Brolley  <brolley@cygnus.com>
634
635         * cgen-par.h (cgen_write_queue_kind): Add CGEN_FN_XI_WRITE and
636         CGEN_MEM_XI_WRITE members.
637         (CGEN_WRITE_QUEUE_ELEMENT): Add fn_xi_write and mem_xi_write members.
638         (sim_queue_fn_xi_write): New function.
639         (sim_queue_mem_xi_write): New function.
640
641         * cgen-par.c (sim_queue_fn_xi_write): New function.
642         (sim_queue_mem_xi_write): New function.
643         (cgen_write_queue_element_execute): Handle CGEN_FN_XI_WRITE and
644         CGEN_MEM_XI_WRITE.
645
646 1999-10-22  Dave Brolley  <brolley@cygnus.com>
647
648         * cgen-par.h (insn_address): New field in CGEN_WRITE_QUEUE_ELEMENT.
649         (CGEN_WRITE_QUEUE_ELEMENT_IADDR): New macro.
650         * cgen-par.c: Set insn_address for each queued write. Get pc from
651         cpu when executing queued writes.
652
653 1999-10-19  Dave Brolley  <brolley@cygnus.com>
654
655         * cgen-par.h (sim_queue_fn_pc_write): New function.
656         (CGEN_FN_PC_WRITE): New enumerator.
657         (fn_pc_write): New union member.
658         * cgen-par.c (sim_queue_fn_pc_write): New function.
659         (cgen_write_queue_element_execute): Handle CGEN_FN_PC_WRITE.
660
661 1999-10-18  Dave Brolley  <brolley@cygnus.com>
662
663         * cgen-par.h (CGEN_MEM_DI_WRITE): New enumerator.
664         (CGEN_MEM_DF_WRITE): New enumerator.
665         (mem_di_write): New union member.
666         (mem_df_write): New union member.
667         * cgen-par.c (sim_queue_mem_di_write): New function.
668         (sim_queue_mem_df_write): New function.
669         (cgen_write_queue_element_execute): Handle CGEN_MEM_DI_WRITE and
670         CGEN_MEM_DF_WRITE.
671         * cgen-accfp.c (divsf): Check for division errors.
672
673 1999-10-14  Doug Evans  <devans@casey.cygnus.com>
674
675         * cgen-engine.h (EXTRACT_INT,EXTRACT_UINT): Delete.
676
677 1999-10-07  Dave Brolley  <brolley@cygnus.com>
678
679         * cgen-par.h (CGEN_FN_HI_WRITE): New enumerator. 
680         (fn_hi_write): New union member.
681         (sim_queue_fn_hi_write): New function.
682         * cgen-par.c (sim_queue_fn_hi_write): New function.
683         (cgen_write_queue_element_execute): Handle CGEN_FN_HI_WRITE.
684
685 1999-09-29  Doug Evans  <devans@casey.cygnus.com>
686
687         * cgen-defs.h (sim_engine_invalid_insn): New arg `vpc'.
688         Change type of result to SEM_PC.
689
690 Wed Sep 29 14:43:57 1999  Dave Brolley  <brolley@cygnus.com>
691
692         * cgen-defs.h (sim_engine_invalid_insn): Now returns PC.
693
694 1999-09-25  Doug Evans  <devans@casey.cygnus.com>
695
696         * cgen-ops.h (SUBWORD*): Delete cpu arg.
697         (JOIN*): Delete cpu arg.
698
699 Tue Sep 21 17:14:16 1999  Dave Brolley  <brolley@cygnus.com>
700
701         * genmloop.sh (@cpu@_scache_lookup): No longer takes last_insn_p
702         parameter.
703         (SET_LAST_INSN_P): Set last_insn_p flag in the scache element.
704
705 Mon Sep 20 21:44:06 1999  Geoffrey Keating  <geoffk@cygnus.com>
706
707         * sim-fpu.c (i2fpu): Keep the guard bits sticky when converting
708         large values.
709
710 Tue Feb  8 16:33:48 2000  Andrew Cagney  <cagney@b1.cygnus.com>
711
712         * run.c (main): Check the sim_stop_reason and only halt simulation
713         when a valid stop condition is identified.
714
715 Wed Sep 15 14:12:37 1999  Andrew Cagney  <cagney@b1.cygnus.com>
716
717         * hw-tree.c, hw-properties.c, hw-instances.c: Include "sim-io.h".
718
719 Tue Sep 14 14:15:47 1999  Dave Brolley  <brolley@cygnus.com>
720
721         * cgen-par.h (CGEN_BI_WRITE): New enumerator.
722         (bi_write): New union element.
723         (sim_queue_bi_write): New function.
724         * cgen-par.c (sim_queue_bi_write): New function.
725         (cgen_write_queue_element_execute): Handle CGEN_BI_WRITE.
726
727 Thu Sep  2 18:15:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>
728
729         * configure: Regenerated to track ../common/aclocal.m4 changes.
730
731         * aclocal.m4 (WERROR_CFLAGS, WARN_CFLAGS): Merge from
732         ../gdb/configure.in.
733         * Make-common.in (WERROR_CFLAGS, WARN_CFLAGS): Define.
734         (SIM_WERROR_CFLAGS, SIM_WARN_CFLAGS): Define.
735         (SIM_WARNINGS): Delete
736         (CONFIG_CFLAGS): Update.
737
738 Tue Aug 31 16:01:42 1999  Dave Brolley  <brolley@cygnus.com>
739
740         * cgen-par.c: New file.
741         * cgen-par.h: New file.
742         * cgen-sim.h (cgen-par.h): #include it.
743         * cgen-cpu.h (write_queue): New field.
744         (CPU_WRITE_QUEUE): New access macro.
745         * Make-common.in (CGEN_MAIN_CPU_DEPS): Add cgen-par.h.
746         (cgen-par.o): New target.
747
748 1999-08-28  Doug Evans  <devans@casey.cygnus.com>
749
750         * cgen-types.h (mode_type,MODE_VOID): Renamed from MODE_VM.
751         * cgen-utils.c (mode_names): Update.
752
753 1999-08-20  Doug Evans  <devans@casey.cygnus.com>
754
755         * genmloop.sh: New args -parallel-generic-write, -parallel-only.
756         * cgen-engine.h (SEMANTIC_FN): Don't use version with PAREXEC
757         buffer arg if WITH_PARALLEL_GENWRITE.
758         (struct insn_sem): Handle WITH_PARALLEL_GENWRITE.
759         (struct idesc): Ditto.
760
761 Wed Aug 18 18:17:28 1999  Doug Evans  <devans@canuck.cygnus.com>
762
763         * sim-model.c (model_option_handler): Add \n to error message.
764
765 1999-08-08  Doug Evans  <devans@casey.cygnus.com>
766
767         * cgen-engine.h (SEM_FN_NAME,SEMF_FN_NAME): Delete.
768         (insn_sem): Rewrite.
769         (sem_fn_desc): New struct.
770         (idesc): Rewrite.
771         * genmloop.sh (scache case,@cpu@_scache_lookup): Profile scache hit,
772         misses if ! FAST_P.
773         (scache case): Split into non-parallel/parallel versions.
774         (@cpu@_engine_run_{full,fast}): Call @cpu@_{sem,semf}_init_idesc_table
775         if not use semantic switch version.
776
777 1999-08-04  Doug Evans  <devans@casey.cygnus.com>
778
779         * cgen-defs.h (SEM_BRANCH_TYPE): New enum.
780         * cgen-engine.h (SEM_BRANCH_UNTAKEN,SEM_BRANCH_UNCACHEABLE): Delete.
781         (SEM_BRANCH_INIT_EXTRACT): Delete.
782         (SEM_BRANCH_INIT): Replace npc_ptr with br_type.
783         (SEM_BRANCH_FINI): Ditto.
784         (SEM_BRANCH_VIA_ADDR): Ditto.
785         (SEM_BRANCH_VIA_CACHE): Ditto.  Delete cachvarptr arg.
786         (SEM_BRANCH_ADDR_CACHE): Delete.
787         (SEM_SKIP_COMPILE,SEM_SKIP_INSN): New macros.
788         * cgen-scache.h (cpu_scache): Replace member pbb_pr_npc_ptr with
789         pbb_br_type.
790         * genmloop.sh (eng.hin): Update prototype of ${cpu}_pbb_cti_chain.
791         (@cpu@_pbb_begin): Initialize branch_target.
792         (@cpu@_pbb_cti_chain): Replace arg new_vpc_ptr with br_type.
793         (@cpu@_engine_run_full): Replace local pbb_br_npc_ptr with
794         pbb_br_type.
795         (@cpu@_engine_run_fast): Ditto.
796
797 Fri Jul 16 14:47:53 1999  Dave Brolley  <brolley@cygnus.com>
798
799         * cgen-utils.c (RORSI): New function.
800         (ROLSI): New function.
801
802 1999-07-14  Doug Evans  <devans@casey.cygnus.com>
803
804         * Makefile.in (TAGS): Tweak TAGS regex.
805         * cgen-mem.h (*): Add TAGS markers.
806
807 Sun Jul 11 23:47:20 1999  Andrew Cagney  <cagney@b1.cygnus.com>
808
809         * sim-resume.c (sim_resume): Ensure that the siggnal [sic] is only
810         passed in when sim_resume is first entered - don't re-pass it
811         after a restart.
812         
813 Sun Jul 11 23:34:44 1999  Andrew Cagney  <cagney@b1.cygnus.com>
814
815         * sim-options.c (standard_option_handler): Add OPTION_LOAD_VMA and
816         OPTION_LOAD_LMA but only when is defined.
817         (standard_options): When SIM_HANDLES_LMA is defined include
818         options --load-lma and --load-vma.
819         (standard_install): Initialize STATE_LOAD_AT_LMA_P.
820
821         * sim-base.h (STATE_LOAD_AT_LMA_P): Define.
822         (struct sim_state_base): Add load_at_lma_p.
823         * sim-hload.c (sim_load): Replace SIM_HANDLES_LMA with
824         STATE_LOAD_AT_LMA_P.
825
826 Sun Jul 11 12:03:36 1999  Andrew Cagney  <cagney@b1.cygnus.com>
827
828         * nrun.c (main): Re-format loop gnu style.
829
830 Wed Jul  7 19:56:03 1999  Andrew Cagney  <cagney@b1.cygnus.com>
831
832         * dv-sockser.c (connected_p): Initialize addrlen.
833
834 1999-07-06  Dave Brolley  <brolley@cygnus.com>
835
836         * cgen-accfp.c (floatsidf): New function.
837         (fixdfsi): New function.
838
839 1999-07-06  Doug Evans  <devans@casey.cygnus.com>
840
841         * sim-model.c (sim_model_init): Issue error if machine is unsupported.
842
843 1999-07-05  Doug Evans  <devans@casey.cygnus.com>
844
845         * Make-common.in (CGEN_MAIN_CPU_DEPS): Add cgen-fpu.h.
846         (cgen-fpu.o,cgen-accfp.o): Add rules for.
847         * cgen-fpu.c: New file.
848         * cgen-fpu.h: New file.
849         * cgen-accfp.c: New file.
850         * cgen-cpu.h (CGEN_CPU): New member fpu.
851         * cgen-mem.h: Redo fp support.
852         * cgen-ops.h: Delete k&r support.  Redo fp support.
853         * cgen-sim.h: Include cgen-fpu.h.
854         * cgen-types.h (SF,DF,XF,TF): Moved to cgen-fpu.h.
855
856 1999-06-23  Doug Evans  <devans@casey.cygnus.com>
857
858         * cgen-engine.h (TARGET_SEM_BRANCH_FINI): Remove cruft at end of
859         ifndef.
860         * genmloop.sh (@cpu@_scache_lookup): Delete unused local var.
861         (@cpu@_pbb_cti_chain): Minor clean up.
862
863 1999-05-08  Felix Lee  <flee@cygnus.com>
864
865         * aclocal.m4: Use AC_EXEEXT instead of AM_EXEEXT.  Delete defn of
866         AM_CYGWIN32 and AM_EXEEXT.
867         * configure: Regenerate.
868         
869 Fri Apr 16 16:43:22 1999  Doug Evans  <devans@charmed.cygnus.com>
870
871         * sim-core.c (device_error,device_io_read_buffer,
872         device_io_write_buffer): Delete decls.
873         * sim-core.h: Put them here.
874
875         * sim-core.c (sim_core_read_buffer): Pass sd to device_io_read_buffer.
876         (sim_core_write_buffer): Pass sd to device_io_write_buffer.
877         * sim-n-core.h (sim_core_read_aligned_N): Ditto.
878         (sim_core_write_aligned_N): Ditto.
879
880 1999-04-14  Stephane Carrez  <stcarrez@worldnet.fr>
881
882         * sim-memopt.c (sim_memory_uninstall): Don't look into
883         free()d memory.
884
885 1999-04-14  Doug Evans  <devans@casey.cygnus.com>
886
887         * cgen-utils.scm (virtual_insn_entries): Update attribute definition.
888
889 1999-04-13  Doug Evans  <devans@casey.cygnus.com>
890
891         * sim-core.c (sim_core_read_buffer): Handle NULL cpu when WITH_DEVICES.
892         (sim_core_write_buffer): Ditto.
893
894 1999-04-02  Keith Seitz  <keiths@cygnus.com>
895
896         * sim-io.c (sim_io_poll_quit): Only call the poll_quit callback
897         after the interval counter has expired.
898         (POLL_QUIT_INTERVAL): Define. Used to tweak the frequency of
899         poll_quit callbacks. May be overridden by Makefile.
900         (poll_quit_counter): New global.
901         * sim-events.c: Remove all mentions of ui_loop_hook. The
902         host callback "poll_quit" will serve the purpose.
903         * run.c: Add definition of ui_loop_hook when NEED_UI_LOOP_HOOK
904         is defined.
905         * nrun.c: Remove declaration of ui_loop_hook.
906
907 Wed Mar 31 18:55:41 1999  Doug Evans  <devans@canuck.cygnus.com>
908
909         * cgen-run.c (sim_resume): Don't tell main loop to run "forever"
910         if being used by gdb.
911
912 1999-03-22  Doug Evans  <devans@casey.cygnus.com>
913
914         * cgen-types.h (XF,TF): Tweak.
915         * cgen-ops.h: Redo inline support.  Delete DI_FN_SUPPORT,
916         in cgen-types.h.
917         (SUBWORD*,JOIN*): Define.
918         * cgen-trace.c (sim_cgen_disassemble_insn): Update, base_insn_bitsize
919         moved into cpu descriptor.
920         * sim-model.h (MACH): New member `num'.
921
922 1999-02-09  Doug Evans  <devans@casey.cygnus.com>
923
924         * cgen-cpu.h (CGEN_DISASSEMBLER): New type.
925         (CGEN_CPU): Member opcode renamed to cpu_desc.
926         New members get_idata,disassembler.
927         * cgen-defs.h (CGEN_INSN_VIRTUAL_P): CGEN_INSN_ATTR renamed to
928         CGEN_INSN_ATTR_VALUE.
929         (CGEN_STATE): Delete member opcode_table.
930         (sim_disassemble_insn): Delete decl.
931         * cgen-engine.h (struct insn_sem): Moved to here from <cpu>-decode.c.
932         (struct idesc): Moved to here from <cpu>-decode.h.
933         * cgen-run.c (prime_cpu): Call prepare_run callback.
934         * cgen-trace.h (SFILE): New type.
935         (sim_disasm_sprintf): Declare.
936         (sim_disasm_read_memory,sim_disasm_perror_memory): Declare.
937         (sim_cgen_disassemble_insn): Declare.
938         * cgen-trace.c: Include errno.h,dis-asm.h.  Don't include cpu-opc.h.
939         (insn_fields): Delete.
940         (trace_insn_fini): STATE_OPCODE_TABLE (sd) replaced with
941         CPU_CPU_DESC (cpu).
942         (trace_insn): Call CPU_DISASSEMBLER hook.
943         (sim_disasm_sprintf): New function.
944         (sim_disasm_read_memory): New function.
945         (sim_disasm_perror_memory): New function.
946         (sim_cgen_disassemble_insn): New function.
947         * cgen-utils.c: Don't include cpu-opc.h.
948         (virtual_insn_entries): New static local.
949         (cgen_virtual_insn_table): Renamed from cgen_virtual_opcode_table.
950         (cgen_insn_name): Rewrite.
951         (disasm_sprintf,sim_disassemble_insn): Moved to cgen-trace.c.
952         * cgen.sh (desc): New file generator handler.
953         * genmloop.sh: -parallel changed to -parallel-read/-parallel-write.
954         Define WITH_PARALLEL_READ/WITH_PARALLEL_WRITE appropriately.
955         Don't include cpu-opc.h,cpu-sim.h.
956         * sim-model.c (model_set): Delete SIM_DESC arg.
957         (sim_model_set): Update.
958         * sim-model.h (MACH): New member prepare_run.
959
960 1999-01-28  Frank Ch. Eigler  <fche@cygnus.com>
961
962         * sim-memopt.c (memory_option_handler): Avoid memset() calls
963         if redundant with allocator functions.
964
965 Wed Jan 27 17:19:09 1999  Doug Evans  <devans@canuck.cygnus.com>
966
967         * cgen-engine.h (EXTRACT_LSB0_{INT,UINT}): Fix.
968
969         * sim-profile.h: Make like sim-trace.h.
970         (PROFILE_USEFUL_MASK): New macro.
971         * sim-profile.c (profile_options): Make like trace_options, allow
972         optional on|off arg where applicable.
973         (set_profile_option_mask): New function.
974         (sim_profile_set_option): New function.
975         (profile_option_handler): Simplify.
976         Have -p only enable selected things, not everything.
977         Add missing break to OPTION_PROFILE_PC_RANGE.
978         * cgen-scache.c (scache_options): Allow optional on|off arg to
979         --profile-scache.
980         (scache_option_handler): Use sim_profile_set_option.
981
982 1999-01-26  Frank Ch. Eigler  <fche@cygnus.com>
983
984         * sim-memopt.c (memory_options): Add MEMORY_FILL option.
985         (memory_option_handler): Implement MEMORY_FILL option.  Make
986         MEMORY_CLEAR an alias for MEMORY_FILL=0.
987         (parse_ulong_value): New function.
988         (do_memopt_add): Allocate all buffers.  Optionally fill them.
989
990 1999-01-15  Richard Henderson  <rth@cygnus.com>
991
992         * hw-events.c (hw_event_queue_schedule): _vtracef takes a
993         va_list, not an integer.
994         * sim-events.c (sim_events_schedule): Likewise.
995
996         * sim-types.h (UNSIGNED32, UNSIGNED64): Properly cast to 
997         the appropriate type.
998
999 1999-01-14  Doug Evans  <devans@casey.cygnus.com>
1000
1001         * cgen-defs.h (PCADDR,CIA): Define in terms of IADDR.
1002         (sim_disassemble_insn): Update prototype.
1003         (sim_engine_invalid_insn): Ditto.
1004         * cgen-engine.h (SEMANTIC_FN): Add !WITH_SCACHE version.
1005         (SEM_BRANCH_INIT): PCADDR->IADDR.
1006         (SEM_NBRANCH_FINI): New macro for !WITH_SCACHE case.
1007         * cgen-scache.c (scache_lookup,scache_lookup_or_alloc): PCADDR->IADDR.
1008         * cgen-scache.h (*): Ditto.
1009         * cgen-trace.c (*): Ditto.
1010         * cgen-trace.h (*): Ditto.
1011         * cgen-utils.c (*): Ditto.
1012         * cgen-types.h (integer modes): Use signedNN/unsignedNN types.
1013         (insn_t): Delete.
1014         * genmloop.sh (@cpu@_fill_argbuf): Add !WITH_SCACHE support.
1015         (simple engine framework): Rewrite.
1016         * sim-module.c (modules): Install model module sooner (and in
1017         particular before the profile module).
1018
1019 1999-01-12  Doug Evans  <devans@casey.cygnus.com>
1020
1021         * sim-model.h (sim_mach_lookup_bfd_name): Add prototype.
1022         * sim-model.c (sim_mach_lookup_bfd_name): New function.
1023         (sim_model_init): Call it.
1024
1025         * cgen-trace.c (trace_insn): Pass pc to trace_prefix for virtual insns.
1026
1027 1999-01-05  Doug Evans  <devans@casey.cygnus.com>
1028
1029         * Make-common.in (CGEN_INCLUDE_DEPS): Add cgen-defs.h, cgen-engine.h.
1030         * cgen-engine.h (SEM_BRANCH_FINI): New arg pcvar, all uses updated.
1031         (SEM_BRANCH_INIT_EXTRACT): New macro.
1032         (SEM_BRANCH_INIT): Add taken_p.
1033         (TARGET_SEM_BRANCH_FINI): Provide default definition.
1034         (SEM_BRANCH_FINI): Use it.
1035         (SEM_INSN): Update.
1036         * cgen-run.c (sim_resume): Handle tracing of last insn.
1037         * cgen-scache.h (WITH_SCACHE): Define as 0 if not defined.
1038         * cgen-trace.c (current_abuf): New static global.
1039         (trace_insn_init): Initialize it.
1040         (trace_insn_fini): Use it.
1041         (trace_insn): Set it.
1042         * cgen.sh (arch case): Pass -m ${mach} to cgen.
1043         * genmloop.sh (@cpu@_emit_before): Only define if WITH_SCACHE_PBB.
1044         (@cpu@_emit_after): Ditto.
1045         (simple @cpu@_engine_run_full): New local `pc'.  Initialize semantic
1046         labels if WITH_SEM_SWITCH_FULL.
1047         * sim-model.c: Include bfd.h.
1048         (sim_model_init): New function.
1049         (sim_model_install): Record init fn.
1050         * sim-model.h (MACH): New member bfd_name.
1051         * sim-module.c (modules): Initialize model before scache.
1052
1053 1998-12-24  Frank Ch. Eigler  <fche@cygnus.com>
1054
1055         * dv-sockser.c (DEFAULT_TIMEOUT): Increase to 1 ms.
1056         
1057         * nrun.c (main): Remain in simulation loop for traps and
1058         exceptions when in operating environment mode.
1059         (ui_loop_hook): New stub hook for standalone use.
1060         * sim-events.c (sim_events_process): Call ui_loop_hook
1061         periodically on CYGWIN host.
1062
1063         * sim-reason.c (sim_stop_reason): Return host signal numbers
1064         to gdb on sim_stopped and sim_signalled cases.
1065         * sim-engine.c (sim_engine_halt): Call SIM_CPU_EXCEPTION_SUSPEND
1066         hook just before longjmp.
1067         * sim-resume.c (sim_resume): Call SIM_CPU_EXCEPTION_RESUME
1068         hook just before sim_engine_run.
1069
1070         * sim-n-core.h (sim_core_trace_M): Allay const warning.
1071         * sim-trace.h (trace_generic): Ditto.
1072         * sim-trace.c (trace_generic): Ditto.
1073         
1074 1998-12-14  Doug Evans  <devans@casey.cygnus.com>
1075
1076         * Make-common.in (SIM_MAIN_DEPS): New var.
1077         (CGEN_MAIN_CPU_DEPS): New var.
1078         * aclocal.m4: Add --enable-cgen-maint option.
1079         * cgen-mem.h (GETMEM*): New arg `pc'.  Pass to sim_core routine.
1080         (SETMEM*): Ditto.
1081         (GETIMEM*): Pass pc value to sim_core routine.
1082
1083 Fri Dec 11 16:58:36 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1084
1085         * hw-handles.c (hw_handle_add_ihandle, hw_handle_add_phandle):
1086         Compare with ZERO not NULL.
1087
1088 Thu Dec 10 14:14:39 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1089
1090         * hw-properties.c, hw-instances.c, hw-tree.c: Include
1091         "sim-assert.h".
1092
1093 1998-12-09  Doug Evans  <devans@casey.cygnus.com>
1094
1095         * sim-arange.c: Include libiberty.h, and stdlib.h if present.
1096         * sim-trace.c: Include stdlib.h if present.
1097         * dv-sockser.c: Include unistd.h if present.
1098         (dv_sockser_init): Add missing arg to call to sim_io_eprintf.
1099         * cgen-scache.c (scache_flush): Delete unused locals i,sc.
1100
1101 1998-12-08  James E Wilson  <wilson@wilson-pc.cygnus.com>
1102
1103         * gennltvals.sh: Add i960.
1104         * nltvals.def: Rebuild.
1105
1106 1998-12-04  Doug Evans  <devans@casey.cygnus.com>
1107
1108         * cgen-defs.h: New file, old cgen-sim.h.
1109         * cgen-sim.h: Simple header that includes others.
1110         * sim-arange.c: New file.
1111         * sim-arange.h: New file.
1112         * sim-basics.h: Include it.
1113         * Make-common.in (SIM_NEW_COMMON_OBJS): Add sim-arange.o.
1114         (sim-arange.o): Add rule for.
1115         * sim-cpu.h (sim_cpu_msg_prefix): Add prototype.
1116         (sim_io_eprintf_cpu): Add prototype.
1117         * sim-inline.h (HAVE_INLINE): Define if GNUC.
1118         (INLINE2): New macro.
1119         (EXTERN_INLINE): New macro.
1120         * sim-module.c (sim_post_argv_init): Initialize cpu backlink
1121         before calling module init fns.
1122         * sim-profile.c (OPTION_PROFILE_*): Move into enum.
1123         (profile_init): New function.
1124         (profile_options): New option --profile-range.
1125         (profile_option_handler): Handle --profile-range.
1126         (profile_print_insn): Qualify address range specific section titles.
1127         (profile_print_addr_ranges): New function.
1128         (profile_info): Print address ranges if specified.
1129         (profile_install): Set profile_init init fn.
1130         * sim-profile.h (PROFILE_DATA): New member `range'.
1131         * sim-trace.c (trace_init): New function.
1132         (trace_options): New option --trace-range.
1133         (trace_option_handler): Handle --trace-range.
1134         (trace_install): Set trace_init init fn.
1135         * sim-trace.h (TRACE_DATA): New member `range'.
1136         * sim-utils.c (sim_cpu_msg_prefix): New function.
1137         (sim_io_eprintf_cpu): New function.
1138         * cgen-engine.h (PC_IN_TRACE_RANGE_P): New macro.
1139         (PC_IN_PROFILE_RANGE_P): New macro.
1140         * cgen-trace.c (trace_insn_init): Set current_insn to NULL.
1141         (trace_insn_fini): New arg abuf.  All callers updated.
1142         Exit early if trace_insn not called.  Check ARGBUF_PROFILE_P before
1143         printing cycle counts.
1144         * cgen-trace.h (trace_insn_fini): Update prototype.
1145         (TRACE_RESULT_P): New macro.
1146         (TRACE_INSN_INIT,TRACE_INSN_FINI): New arg abuf.  All callers updated.
1147         (TRACE_INSN): Check ARGBUF_TRACE_P.
1148         (TRACE_EXTRACT,TRACE_RESULT): New arg abuf.  All callers updated.
1149         * cgen-types.h (SIM_INLINE): Delete.
1150         (SIM_HAVE_MODEL,SIM_HAVE_ADDR_RANGE): Define.
1151         * cgen-utils.c: Don't include cgen-engine.h
1152         * genmloop.sh (@cpu@_fill_argbuf): New function.
1153         (@cpu@_fill_argbuf_tp): New function.
1154         (@cpu@_emit_before,@cpu@_emit_after): New functions.
1155         (@cpu@_pbb_begin): Prefix cti_sc,insn_count with '_'.
1156         (SET_CTI_VPC,SET_INSN_COUNT): Update.
1157         (@cpu@_pbb_before): Check ARGBUF_PROFILE_P before calling
1158         doing profiling.  Update call to TRACE_INSN_INIT,TRACE_INSN_FINI.
1159         (@cpu@_pbb_after): Check ARGBUF_PROFILE_P before calling
1160         doing profiling. Update call to TRACE_INSN_FINI.
1161
1162         * sim-memopt.c (sim_memory_uninstall): Result type is `void'.
1163
1164 1998-12-03  Frank Ch. Eigler  <fche@cygnus.com>
1165
1166         * sim-memopt.c (sim_memory_uninstall): Deallocate all memory
1167         regions.
1168
1169 1998-12-01  Doug Evans  <devans@casey.cygnus.com>
1170
1171         * sim-inline.c (SIM_INLINE_P): Fix typo.
1172
1173 1998-11-30  Doug Evans  <devans@casey.cygnus.com>
1174
1175         * cgen-utils.c (cgen_virtual_opcode_table): Update.
1176
1177 Tue Nov 24 18:40:03 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1178
1179         * gennltvals.sh: Add v850 and d10v. Sort alphabetically.
1180         * nltvals.def: Re-generate.
1181
1182 Mon Nov 23 13:28:38 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1183
1184         * sim-core.c (reverse_n, sim_core_uninstall, sim_core_init,
1185         sim_core_map_attach, sim_core_map_detach, next_event_queue,
1186         new_sim_core_mapping): Only define when EXTERN_SIM_CORE_P, pacify
1187         GCC.
1188         * sim-events.c (sim_events_uninstall, sim_events_suspend,
1189         sim_events_resume, sim_events_zalloc, insert_sim_event): Ditto.
1190
1191 1998-11-22  Doug Evans  <devans@tobor.to.cygnus.com>
1192
1193         * genmloop.sh (${cpu}_pbb_chain): Watch for Ctrl-C's.
1194         (${cpu}_pbb_cti_chain): Ditto.
1195
1196 1998-11-18  Doug Evans  <devans@casey.cygnus.com>
1197
1198         * Make-common.in (cgen-utils.o): Depend on cgen-engine.h.
1199         * cgen-engine.h (EXTRACT_[ML]SB0_{INT,UINT}): New macros.
1200         (EXTRACT_INT,EXTRACT_UINT): New macros.
1201         (SEM_SEM_ARG): New macro.
1202         (SEM_NEXT_VPC): New arg `pc'.
1203         * cgen-sim.h (EXTRACT_SIGNED,EXTRACT_UNSIGNED): Delete.
1204         (sim_disassemble_insn): Update prototype.
1205         * cgen-trace.c (current_insn,insn_fields): New static locals.
1206         (trace_insn): Set them.
1207         * cgen-utils.c: #include cgen-engine.h.
1208         (sim_disassemble_insn): New arg insn_fields.
1209         Handle variable length insns.
1210         * genmloop.sh: Only emit pbb decls if -pbb.
1211         (${cpu}_scache_lookup): New arg `vpc'.
1212         (scache support): Fetch pc before entering loop.
1213
1214         * gennltvals.sh: Add fr30 support.
1215         * nltvals.def: Rebuild.
1216
1217 Wed Nov 18 10:22:22 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1218
1219         * sim-types.h: Re-do type system so that GCC's attribute and mode
1220         are used to specify types.  Handle case of ALPHA.
1221
1222 1998-11-13  Frank Ch. Eigler  <fche@elastic.org>
1223         
1224         * aclocal.m4: Add tests for dlopen family.
1225         * config.in: Regenerated.
1226         
1227 Wed Nov 11 14:02:25 1998  Doug Evans  <devans@canuck.cygnus.com>
1228
1229         * sim-hload.c (sim_load): Pass `prog_name' to sim_load_file, not NULL.
1230
1231 Wed Nov  4 23:51:19 1998  Doug Evans  <devans@seba.cygnus.com>
1232
1233         * genmloop.sh (eng.hin): Rename HAVE_PARALLEL_EXEC to
1234         HAVE_PARALLEL_INSNS, define as 0 or 1.  Emit decls of fns in mloop.cin.
1235         * cgen-engine.h: Typedefs of IADDR,CIA,SEM_ARG,SEM_PC moved ...
1236         * cgen-sim.h: ... to here.
1237
1238 Wed Oct 28 12:00:57 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1239
1240         * aclocal.m4 (enable-build-warnings): Replace
1241         enable-sim-warnings. Extend =LIST syntax so that prepend and
1242         append of options is possible.  Drop -Werror, add
1243         -Wstrict-prototypes for GDB compatibility.
1244         * Make-common.in (SIM_WARNINGS): Update.
1245
1246 Mon Oct 19 13:56:32 1998  Doug Evans  <devans@seba.cygnus.com>
1247
1248         * Make-common.in (CGEN_INCLUDE_DEPS): Define.
1249         (sim-core.o): Delete duplicate dependence on $(SIM_EXTRA_DEPS).
1250         (sim-cpu.o,sim-endian.o,sim-hw.o): Ditto.
1251         (cgen-run.o,cgen-scache.o,cgen-trace.o,cgen-utils.o): Delete
1252         explicit cgen header dependencies, require SIM_EXTRA_DEPS to include
1253         CGEN_INCLUDE_DEPS.
1254         * cgen-cpu.h: New file.
1255         * cgen-engine.h: New file.
1256         * cgen-scache.h: New file.
1257         * cgen-sim.h: Delete portions moved to new files.
1258         * genmloop.sh: Generate two files eng.hin,mloop.cin explicitly,
1259         rather than sending result to stdout.
1260
1261 Fri Oct  9 14:20:22 1998  Doug Evans  <devans@seba.cygnus.com>
1262
1263         * Make-common.in (sim-reg.o): New rule.
1264         (cgen-run.o): New rule.
1265         * cgen-ops.h: Delete many BI macros.  Change all UBI -> BI.
1266         * cgen-run.c (prime_cpu): New function.
1267         * cgen-scache.c: Add pseudo-basic-block (pbb) scaching support.
1268         (scache_option_handler, case OPTION_PROFILE_SCACHE): Handle explicitly
1269         mentioned cpu.
1270         (scache_flush_cpu,scache_lookup,scache_lookup_or_alloc): New fns.
1271         * cgen-sim.h (CGEN_INSN_VIRTUAL_TYPE): New enum.
1272         (CGEN_INSN_VIRTUAL_P): New macro.
1273         (SEM_PC): New typedef.
1274         (SEMANTIC_FN): Change type of result to SEM_PC.
1275         (SEM_SET_FULL_CODE,SEM_SET_FAST_CODE,SEM_SET_CODE): New macros.
1276         (IDESC_CTI_P,IDESC_SKIP_P): New macros.
1277         (SCACHE_MAP): New typedef.
1278         (CPU_SCACHE): Add pbb support.
1279         (scace_lookup,scache_lookup_or_alloc,scache_flush_cpu): Declare.
1280         (SEM_BRANCH_INIT_EXTRACT,SEM_BRANCH_INIT,SEM_BRANCH_FINI): New macros.
1281         (CGEN_CPU): New members running_p,insn_count,{fast,full}_engine_fn,
1282         max_slice_insns.
1283         (INSN_NAME): Delete.
1284         (cgen_insn_name): Declare.
1285         (sim_engine_invalid_insn): Renamed from sim_engine_illegal_insn.
1286         * cgen-trace.c (trace_buf): Shrink from 1024 to 256 bytes.
1287         (first_insn_p): Make static.
1288         (trace_insn): Handle virtual insns specially.
1289         (cgen_trace_printf): Ensure we haven't overflowed the buffer.
1290         * cgen-types.h (UBI): Delete.
1291         (MODE_TYPE): New enum.
1292         (HOSTINT,HOSTUINT,HOSTPTR): Delete.
1293         * cgen-utils.c (mode_names): Delete UBI.  Add INT,UINT,PTR.
1294         (cgen_virtual_opcode_table): New global.
1295         (cgen_insn_name): New function.
1296         (sim_disassemble_insn): Ignore virtual insns.
1297         * genmloop.sh: Delete top level loop generation.  Add pbb support.
1298         * sim-cpu.h (CPU_INSN_NAME_FN): New typedef.
1299         (sim_cpu_base): New members max_insns,insn_name,model_data.
1300         (CPU_PC_GET,CPU_PC_SET): New macros.
1301         (sim_pc_get,sim_pc_set): Declare.
1302         * sim-model.c (model_set): Call model init fn.
1303         * sim-model.h (MODEL_FN): New typedef.
1304         (INSN_TIMING): New member model_fn.
1305         (MODEL): New members num,init.
1306         * sim-profile.c (sim_profile_print_bar): Renamed from print_bar.
1307         All callers updated.
1308         (profile_insn_init): New fn.
1309         (profile_print_insn): Update, INSN_NAME -> CPU_INSN_NAME.
1310         Exit early if insn profiling not supported.
1311         (profile_print_memory): Update, MAX_MODES -> MODE_TARGET_MAX.
1312         (profile_install): Record profile_insn_init as init fn.
1313         (profile_uninstall): Free PROFILE_INSN_COUNT if non-null.
1314         * sim-profile.h: Update, MAX_MODES -> MODE_TARGET_MAX.
1315         (PROFILE_DATA): Delete member exec_time.
1316         Change insn_count to pointer to array, rather than the array.
1317         (sim_profile_print_bar): Declare.
1318
1319 Wed Oct  7 16:56:42 1998  Doug Evans  <devans@seba.cygnus.com>
1320
1321         * cgen-run.c: New file.
1322         * sim-reg.c: New file.
1323
1324 Mon Sep 14 10:58:19 1998  Frank Ch. Eigler  <fche@cygnus.com>
1325
1326         * aclocal.m4: Add checks for -lsocket and -lnsl.
1327
1328         * dv-sockser.c (dv_sockser_init): Use SO_REUSEADDR to
1329         allow local port reuse on listening socket.
1330
1331 Tue Sep  1 15:36:52 1998  Frank Ch. Eigler  <fche@cygnus.com>
1332
1333         * sim-config.h: Remove reference to linux kernel header.
1334
1335 Tue Aug 25 12:45:27 1998  Frank Ch. Eigler  <fche@cygnus.com>
1336
1337         * dv-sockser.c (sockser_addr): Make variable non-static.
1338
1339 Mon Aug 24 11:47:37 1998  Joyce Janczyn  <janczyn@cygnus.com>
1340
1341         * sim-hw.{c,h} (sim_hw_parse): Return struct hw pointer.
1342
1343 Tue Aug 11 18:12:19 1998  Doug Evans  <devans@canuck.cygnus.com>
1344
1345         * sim-events.c (sim_events_elapsed_time): Fix calculation.
1346
1347 Tue Aug  4 20:36:46 1998  Jeff Holcomb  <jeffh@cygnus.com>
1348
1349         * Make-common.in (install-common): Add $(EXEEXT) when installing
1350         run.
1351
1352 Mon Aug  3 11:46:01 1998  Doug Evans  <devans@seba.cygnus.com>
1353
1354         * cgen-sim.h (cgen_state): New member opcode_table.
1355         * cgen-utils.c (sim_disassemble_insn): Use it.
1356
1357 Fri Jul 24 10:14:18 1998  Doug Evans  <devans@canuck.cygnus.com>
1358
1359         * cgen-mem.h (DECLARE_SETT): Fix return type.
1360         * cgen-sim.h (sim_engine_illegal_insn): Declare.
1361         * cgen-scache.c: Include stdlib.h.
1362         * cgen-trace.c (trace_extract): Use %lx for PCADDR.
1363         * sim-model.c (model_option_handler): Remove unused variable `n'.
1364
1365 Tue Jul 21 16:27:43 1998  Doug Evans  <devans@seba.cygnus.com>
1366
1367         * cgen-utils.c: Include bfd.h.
1368         (sim_disassemble_insn): Update call to CGEN_EXTRACT_FN.
1369
1370 Wed Jul  8 18:24:10 1998  Jeffrey A Law  (law@cygnus.com)
1371
1372         * sim-bits.h (EXTEND24): Fix typo.
1373
1374 Wed Jul  8 17:41:47 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1375
1376         * sim-events.c (ETRACE_P): New macro.
1377         (struct _sim_event): Add member trace.
1378         (sim_events_free): Reclaim trace message.
1379
1380         * sim-events.c, sim-events.h (sim_events_schedule_vtracef,
1381         sim_events_schedule_tracef): New functions, include printf trace
1382         information in argument list.  If tracing, store asprintf'd trace
1383         message in sim_event.
1384
1385         * hw-events.c, hw-events.h (hw_event_queue_schedule_tracef,
1386         hw_event_queue_schedule_vtracef): New functions, mimic
1387         sim_event_tracef.
1388
1389 Mon Jul  6 15:51:14 1998  Jeffrey A Law  (law@cygnus.com)
1390
1391         * sim-bits.h (EXTEND24): Define.
1392
1393 Thu Jul  2 17:13:25 1998  Doug Evans  <devans@seba.cygnus.com>
1394
1395         * cgen-sim.h (CPU_SCACHE): Make size unsigned.
1396         (CPU_SCACHE_HASH_MASK): New macro.
1397         (SCACHE_HASH_PC): Rewrite.
1398         * genmloop.sh (engine_resume_{full,fast}): Move some of hash
1399         computation out of main loop.
1400
1401 Wed Jul  1 16:44:12 1998  Doug Evans  <devans@seba.cygnus.com>
1402
1403         * cgen-sim.h (RECORD_IADDR): Delete.
1404         * cgen-types.h (HOSTINT,HOSTUINT,HOSTPTR): New types.
1405         * genmloop.sh (engine_resume_{full,fast}): Delete icount.
1406
1407 Wed Jun 17 12:25:08 1998  Mark Alexander  <marka@cygnus.com>
1408
1409         * gennltvals.def (mn10200): Add entry.
1410         * nltvals.def: Regenerate with MN10200 additions.
1411
1412 Wed Jun 17 13:18:28 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1413
1414         * sim-inline.h (EXTERN_*): Replace with EXTERN_*_P. Correct
1415         documentation on how it works.
1416
1417         * sim-core.h, sim-core.c (sim_core_install, sim_core_attach,
1418         sim_core_detach, sim_core_read_buffer, sim_core_write_buffer,
1419         sim_core_set_xor, sim_core_xor_read_buffer,
1420         sim_core_xor_write_buffer): Update.
1421
1422         * sim-events.h, sim-events.c (sim_events_install,
1423         sim_events_watch_clock, sim_events_schedule_after_signal,
1424         sim_events_schedule, sim_events_watch_sim, sim_events_watch_core,
1425         sim_events_deschedule): Update.
1426
1427         * sim-fpu.h, sim-fpu.c (sim_fpu_zero, sim_fpu_one, sim_fpu_two,
1428         sim_fpu_max32, sim_fpu_max64): Update.
1429
1430 Sat Jun 13 07:45:38 1998  Doug Evans  <devans@fallis.cygnus.com>
1431
1432         * cgen-trace.c (trace_insn_fini): Redo cycle handling.
1433         * sim-profile.h (PROFILE_DATA): Rename cycle handling members.
1434         * sim-profile.c (profile_print_model): Update.
1435
1436 Fri Jun 12 18:35:07 1998  Doug Evans  <devans@seba.cygnus.com>
1437
1438         * gennltvals.def (m32r): Use common syscall.h now.
1439         (mn10300): Add entry.
1440         * nltvals.def: Regenerate.
1441
1442         * sim-engine.c (sim_engine_get_run_state): New function.
1443         * sim-engine.h (sim_engine_get_run_state): Declare it.
1444
1445 Thu Jun 11 00:50:03 1998  Doug Evans  <devans@seba.cygnus.com>
1446
1447         * sim-core.h (SIM_CORE_SIGNAL_FN): New typedef.
1448         * sim-core.c (sim_core_signal): Make extern, always define.
1449
1450 Wed Jun 10 16:02:29 1998  Doug Evans  <devans@seba.cygnus.com>
1451
1452         * Make-common.in (CGEN_FLAGS_TO_PASS): New variable.
1453         * cgen-ops.h (ANDIF): New macro.
1454         (ANDIF[BQHSD]I): Delete.
1455
1456 Thu Jun  4 13:53:54 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1457
1458         * hw-events.c (create_hw_event, delete_hw_event): Delete.
1459         (hw_event_queue_schedule, hw_event_queue_deschedule,
1460         bounce_hw_event): Fix hw-event memory corruptions found by Joyce
1461         Janczyn.
1462
1463         * hw-alloc.h (HW_NZALLOC): Define.
1464
1465         * Make-common.in (test-hw-events): Add target for testing the
1466         hw-event code.
1467
1468 Mon May 25 21:11:26 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1469
1470         * Make-common.in (SIM_COMMON_HW_OBJS): Add hw-handles.o and
1471         hw-instances.o.
1472         hw-handles.c, hw-instances.c, hw-handles.h, hw-instances.h: New
1473         files.
1474         * hw-main.h: Include hw-handles.h, hw-instances.h.
1475         * hw-base.h ({create,delete}_hw_{handles,instances}_data): Declare
1476         * hw-base.c (hw_create, hw_delete): Call same.
1477         
1478 Mon May 25 18:55:35 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1479
1480         * dv-core.c: Include hw-main.h and sim-main.h.
1481         * dv-pal.c: Include hw-main.h and sim-io.h.
1482         * dv-glue.c: Include hw-main.h.
1483
1484         * hw-main.h: New file.  Move list of includes to here.
1485         * hw-base.h: From here.
1486         * Make-common.in (hw_base_headers): Rename to hw_main_headers.
1487         (hw-*.o, dv-*.o): Update.
1488         * hw-tree.c, hw-base.c, hw-properties.c, hw-ports.c, hw-device.c,
1489         hw-events.c, hw-alloc.c, sim-hw.c: Include hw-main.h instead of
1490         sim-main.h.
1491
1492         * hw-base.h (do_hw_attach_regs, do_hw_poll_read_method,
1493         do_hw_poll_read): Move declarations from here.
1494         * hw-main.h: To here.
1495         
1496         * hw-base.h (struct hw_device_descriptor, hw_finish_callback):
1497         Move from here.
1498         * hw-main.h (struct hw_descriptor, hw_finish_method): To here,
1499         rename.
1500         * Make-common.in (hw-config.h): Update
1501         * hw-base.c, dv-pal.c, dv-glue.c: Update
1502
1503         * dv-glue.c, hw-device.h, hw-base.h, hw-ports.c: Rename
1504         `*_callback' to `*_method.
1505
1506 Mon May 25 18:41:18 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1507
1508         * hw-base.h (set_*): Move set method macros from here.
1509         * hw-device.h: To here.
1510
1511 Mon May 25 18:21:38 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1512
1513         * hw-base.h (create_hw_property_data, delete_hw_property_data):
1514         Declare.
1515
1516         * hw-base.c (hw_create, hw_delete): Call
1517         * hw-properties.c (create_hw_property_data,
1518         delete_hw_property_data): Define.
1519         
1520 Mon May 25 17:40:46 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1521
1522         * hw-device.c, hw-properties.c: Include hw-base.h
1523
1524         * hw-alloc.h, hw-alloc.c: New files. Move alloc code to here.
1525         * hw-device.c: From here.
1526         * hw-base.h: Include "hw-events.h".
1527
1528         * hw-base.h (create_hw_alloc_data, delete_hw_alloc_data): Declare.
1529         * hw-base.c (hw_create, hw_delete): Call.
1530         * hw-alloc.c (create_hw_alloc_data, delete_hw_alloc_data): Define.
1531
1532         * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-alloc.o.
1533         (hw-alloc.o): New target.
1534         
1535 Mon May 25 17:14:27 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1536
1537         * hw-events.h, hw-events.c: New files.  Move event code to here.
1538         * sim-hw.c: From here.
1539         * hw-base.h: Include "hw-events.h".
1540         * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-events.o.
1541         (hw-events.o): New target.
1542
1543         * hw-device.h (struct hw): Add struct hw_event_data events_of_hw.
1544         * hw-events.h (struct hw_event): Replace typedef hw_event.
1545         
1546         * hw-base.h (create_hw_event_data, delete_hw_event_data): Declare.
1547         * hw-base.c (hw_create, hw_delete): Call.
1548         * hw-events.c (create_hw_event_data, delete_hw_event_data): Define.
1549
1550         * dv-pal.c: Update.
1551
1552 Mon May 25 16:55:16 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1553
1554         * hw-base.c (panic_hw_port_event, empty_hw_ports): Move from here.
1555         * hw-ports.c: To here.
1556         
1557         * hw-base.h, hw-ports.c (create_hw_port_data,
1558         delete_hw_port_data): New functions.
1559         * hw-base.c (hw_delete, hw_create): Call same.
1560         
1561         * hw-base.h (set_hw_ports, set_hw_port_event): Move set functions
1562         from here.
1563         * hw-ports.h: To here.
1564
1565 Mon May 25 16:42:48 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1566
1567         * hw-device.c (hw_ioctl), hw-device.h (hw_ioctl_callback): Drop
1568         PROCESSOR and CIA arguments.
1569
1570 Fri May 22 12:16:27 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1571
1572         * aclocal.m4 (SIM_AC_OPTION_HW): Add enable / disable argument.
1573         Move common object files from here.
1574         * Make-common.in (SIM_COMMON_HW_OBJS): To here.
1575         
1576 Thu May 21 17:57:16 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1577
1578         * sim-hw.c: Include ctype.h.
1579         (do_hw_poll_read): Do not assume EAGAIN.
1580
1581 Wed May 20 04:37:57 1998  Doug Evans  <devans@seba.cygnus.com>
1582
1583         * cgen-trace.c (first_insn_p): New static local.
1584         (trace_insn_init): Set it.
1585         (trace_insn_fini): Use TRACE_PREFIX.
1586         (trace_insn): Rewrite to use trace_prefix.
1587         * sim-trace.c (trace_prefix): Don't print filename arg if NULL.
1588         Adjust width accordingly.
1589
1590         * sim-profile.h (PROFILE_DATA): New member profile_any_p.
1591         (PROFILE_ANY_P,PROFILE_INSN_P,PROFILE_MEMORY): New macros.
1592         (PROFILE_SCACHE_P,PROFILE_PC_P,PROFILE_CORE_P): New macros.
1593         (PROFILE_COUNT_INSN,PROFILE_COUNT_READ,PROFILE_COUNT_WRITE): Simplify.
1594         (PROFILE_COUNT_CORE): Simplify.
1595         * sim-profile.c (profile_option_handler): Compute profile_any_p.
1596
1597 Tue May 19 23:55:30 1998  Doug Evans  <devans@seba.cygnus.com>
1598
1599         * cgen-ops.h (ADDCFSI): Fix typo.
1600
1601 Sat May 16 12:44:52 1998  Doug Evans  <devans@seba.cygnus.com>
1602
1603         * cgen-sim.h (CGEN_CPU): New members idesc_{read,sem}_init_p.
1604         * genmloop.sh: Use them rather than static locals.
1605
1606         * sim-engine.c (sim_engine_set_run_state): New function.
1607         * sim-engine.h (sim_engine_set_run_state): Declare.
1608         * genmloop.sh (pending_reason,pending_sigrc): New static locals.
1609         (@cpu@_engine_stop): New args reason,sigrc.  All callers updated.
1610         (engine_resume): Reorganize.  Allow synchronous exit from main loop.
1611
1612 Fri May 15 16:06:05 1998  Doug Evans  <devans@seba.cygnus.com>
1613
1614         * cgen-trace.c (trace_insn_init): New arg first_p. 
1615         All callers updated.
1616         (trace_insn_fini): New arg last_p.  All callers updated.
1617         * cgen-trace.h (trace_insn_init,trace_insn_fini): Update.
1618         (TRACE_INSN_INIT,TRACE_INSN_FINI): Update.
1619         * genmloop.sh (engine_resume): Update.
1620
1621 Fri May 15 15:59:00 1998  Joyce Janczyn  <janczyn@cygnus.com>
1622
1623         * Make-common.in (install-common): Run ranlib on installed copy of
1624         libsim.a.
1625
1626 Fri May 15 15:03:00 1998  Joyce Janczyn  <janczyn@cygnus.com>
1627
1628         * Make-common.in (install-common): Rename and install libsim.a.
1629
1630 Tue May 12 15:23:57 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1631
1632         * sim-io.c (unistd.h): Include.
1633
1634 Wed May  6 16:04:18 1998  Doug Evans  <devans@seba.cygnus.com>
1635
1636         * Make-common (sim_main_headers): Sort.
1637         (cgen-*.o): Add cgen-sim.h dependency.
1638
1639         * cgen-scache.c (scache_init): Only allocate space if scache element
1640         size is non-zero.
1641         (scache_flush,scache_print_profile): Check if scache in use first.
1642
1643         * cgen-sim.h (IDESC): Provide forward declaration.
1644         (DECODE): Delete.
1645         (CGEN_CPU): Always define scache member.  New members idesc,opcode.
1646         (cgen_cpu_max_extra_bytes): Declare.
1647         * cgen-utils.c (cgen_cpu_max_extra_bytes): New function.
1648
1649         * sim-cpu.h: New file.  sim_cpu_base moved here.
1650         Move sim_cpu_lookup decl here.
1651         * sim-base.h: #include "sim-cpu.h".
1652         * sim-cpu.c: New file.
1653         * Make-common (sim_main_headers): Add sim-cpu.h.
1654         (sim-cpu.o): Add rule for.
1655
1656         * sim-model.c (set_model): Delete.
1657         (sim_model_set,model_set): New functions.
1658         (sim_model_install): Renamed from model_install.
1659         Don't set default model here.
1660         (model_option_handler): Rewrite --model processing.
1661         (sim_model_lookup,sim_mach_lookup): New functions.
1662         * sim-model.h (MAX_MODELS,MAX_INSNS): Delete.
1663         (insn_timing): Delete.
1664         (INSN_TIMING): New member `num'.
1665         (IMP_PROPERTIES): Always define scache_elm_size member.
1666         (MACH): New member init_cpu.
1667         (sim_machs): Renamed from machs.
1668         (sim_model_install): Renamed from model_install.
1669         (sim_model_set,sim_model_lookup,sim_mach_lookup): Declare.
1670         * sim-module.c (modules): Update.
1671
1672         * sim-profile.c (profile_print_insn): Add cpu arg to INSN_NAME macro.
1673
1674         * sim-io.c: #include <errno.h>.
1675
1676 Wed May  6 12:39:15 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1677
1678         * dv-pal.c (struct hw_pal_device): Add reader.
1679         (hw_pal_finish): Initialize reader.
1680         (scan_hw_pal): Use reader.
1681
1682         * hw-base.h, sim-hw.c (do_hw_poll_read): New function.
1683         (HW_IO_EOF, HW_IO_NOT_READY): Define.
1684         * dv-pal.c: Use.
1685
1686         * sim-io.h, sim-io.c (sim_io_poll_read): New function.  Copy from
1687         ../ppc/main.c sim_io_read_stdin.
1688
1689 Fri May  1 12:11:02 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1690
1691         * hw-tree.h (hw_tree_print): Paramaterize with print and file
1692         arguments.
1693         * hw-tree.c: Update.
1694         
1695         * hw-base.h (hw_port_event_callback): Delete CPU/CIA args.
1696         * hw-device.h (hw_io_read_buffer, hw_io_write_buffer): Delete
1697         CPU/CIA args.
1698         * hw-ports.h (hw_port_event): Ditto.
1699         * hw-ports.c (hw_port_event): Update.
1700         * hw-base.c (panic_hw_io_read_buffer, panic_hw_io_write_buffer):
1701         Update.
1702         * dv-pal.c (hw_pal_io_read_buffer, hw_pal_io_write_buffer):
1703         Update.
1704         (hw_pal_io_write_buffer): Call hw_halt not sim_engine_halt.
1705         (do_counter_event): Update.
1706         * dv-glue.c (hw_glue_io_read_buffer): Update.
1707         (hw_glue_port_event): Update.
1708
1709         * hw-device.h (SIM_DESC): Replace with struct sim_state.
1710         * hw-base.h (hw_create): Ditto.
1711         * hw-base.c (hw_create): Ditto.
1712         
1713         * hw-device.c (hw_abort, hw_trace, hw_hw_event_queue_schedule,
1714         hw_event_queue_deschedule, hw_event_queue_time): Delete, moved
1715         from here to.
1716         * sim-hw.c: Here.
1717         * hw-device.h (hw_system_cpu): Declare.
1718         * sim-hw.c (hw_system_cpu): New function.
1719
1720         * sim-core.c (sim_core_map_attach, sim_core_attach): Call
1721         sim_hw_abort not hw_abort.
1722         (sim-hw.h): Include.
1723         (sim_core_read_buffer, sim_core_write_buffer): Call
1724         sim_hw_io_read_buffer and sim_hw_io_write_buffer. Do not pass CPU
1725         argument.
1726         (sim_core_set_xor): Do not pass CPU when aborting.
1727
1728         * sim-n-core.h (sim_core_read_aligned_N,
1729         sim_core_write_aligned_N): Call sim_hw_abort not hw_abort.
1730         (sim_core_read_aligned_N, sim_core_write_aligned_N): Call
1731         sim_cpu_hw_io_read_buffer and sim_cpu_hw_io_write_buffer. Does not
1732         return length.
1733
1734         * sim-hw.h: Declare sim_hw_io_{read,write}_buffer. Declare
1735         sim_hw_print.
1736         * sim-hw.c (sim_hw_io_read_buffer, sim_hw_io_write_buffer,
1737         sim_cpu_hw_io_read_buffer, sim_cpu_hw_io_write_buffer): New
1738         functions.
1739         (sim_hw_print): New function.
1740
1741         * sim-engine.h (sim_engine_vabort): Declare.
1742         * sim-engine.c (sim_engine_vabort): New function.
1743
1744 Wed Apr 29 23:58:52 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1745
1746         * sim-trace.c (print_data): For floating-point numbers trace raw
1747         hex value.
1748         (trace_result_fp2): New function.
1749         * sim-trace.h (trace_result_fp2): New declaration.
1750         (TRACE_FP_RESULT2): New macro.
1751
1752 Tue Apr 28 18:28:58 1998  Geoffrey Noer  <noer@cygnus.com>
1753
1754         * common/aclocal.m4: call AM_EXEEXT in SIM_AC_COMMON, define
1755         AM_CYGWIN32 and AM_EXEEXT.
1756         * common/Make-common.in: set EXEEXT, add missing EXEEXTs
1757         to run and install-common rules.
1758         * common/configure: regenerate
1759
1760 Sat Apr 25 17:45:01 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1761
1762         * sim-types.h (cell_word): New type.
1763         (natural_cell): Delete type.
1764
1765 Sun Apr 26 15:31:55 1998  Tom Tromey  <tromey@creche>
1766
1767         * configure: Regenerated to track ../common/aclocal.m4 changes.
1768         * config.in: Ditto.
1769
1770 Sun Apr 26 15:25:07 1998  Tom Tromey  <tromey@cygnus.com>
1771
1772         * acconfig.h (NEED_DECLARATION_PRINTF): Removed.
1773
1774 Fri Apr 24 14:16:40 1998  Tom Tromey  <tromey@creche>
1775
1776         * configure: Regenerated to track ../common/aclocal.m4 changes.
1777         * config.in: Ditto.
1778
1779 Fri Apr 24 11:38:08 1998  Tom Tromey  <tromey@cygnus.com>
1780
1781         * acconfig.h: New file.
1782         * Make-common.in (top_builddir): New macro.
1783         (INTL_LIB): Removed.
1784         (INTLLIBS): New macro.
1785         (INTLDEPS): Likewise.
1786         (LIBDEPS): Use INTLDEPS.
1787         (EXTRA_LIBS): Use INTLLIBS.
1788         * aclocal.m4 (SIM_AC_COMMON): Call CY_GNU_GETTEXT.
1789         (CY_WITH_NLS, CY_GNU_GETTEXT, AM_PATH_PROG_WITH_TEST,
1790         AM_LC_MESSAGES): New macros from GNU gettext.
1791
1792 Fri Apr 24 19:57:59 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1793
1794         * sim-config.h: Discard leading _ from macros.
1795         * sim-types.h: Ditto.
1796
1797 Wed Apr 22 14:14:19 1998  Michael Meissner  <meissner@cygnus.com>
1798
1799         * Make-common.in (CSEARCH): Add -I to intl directories.
1800         (INTL_LIB): Point to libintl.a.
1801         (LIBDEPS): Add $(INTL_LIB).
1802         (EXTRA_LIBS): Ditto.
1803
1804 Tue Apr 21 12:44:27 1998  Doug Evans  <devans@canuck.cygnus.com>
1805
1806         * cgen-types.h (GETHIDI,MAKEDI): Tweak.
1807
1808         * cgen-ops.h (ADDCFSI): Fix.
1809         (SUBCFSI): Tweak.
1810
1811 Tue Apr 21 13:18:41 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1812
1813         * sim-types.h (signed_address, unsigned_address): Define.
1814
1815 Mon Apr 20 21:47:54 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1816
1817         * sim-fpu.c (sim_fpu_2d): Don't return an SNaN, convert it into a
1818         QNaN.
1819
1820 Thu Apr 16 10:30:14 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1821
1822         * sim-fpu.c, sim-fpu.h (sim_fpu_fractionto, sim_fpu_tofraction):
1823         New functions, pack / unpack sim_fpu struct using raw values.
1824         (sim_fpu_is): Differentiate between negative and positive
1825         infinity.
1826
1827 Tue Apr 14 18:49:31 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1828
1829         * sim-bits.h (EXTEND4): Define.
1830         (EXTEND4, EXTEND15, EXTEND11): Ditto.
1831         
1832 Tue Apr 14 16:31:35 1998  John Metzler  <jmetzler@cygnus.com>
1833
1834         * sim-memopt.c (parse_addr): Sunos 4.5 does not have strtol
1835         declared so we need this cast to prevent long long addresses
1836         from being misconfigures. Results in access to unmapped memory.
1837
1838 Tue Apr 14 13:19:14 1998  Doug Evans  <devans@canuck.cygnus.com>
1839
1840         * Make-common.in (RUNTESTFLAGS): Define.
1841         (check): Pass RUNTESTFLAGS to recursive make.
1842
1843 Tue Apr 14 15:09:19 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1844
1845         * sim-info.c (sim_info): Be verbose when either VERBOSE or
1846         STATE_VERBOSE_P.
1847
1848 Sat Apr  4 23:24:17 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1849
1850         * aclocal.m4 (sim-inline): By default, disable sim-inline when
1851         cross compiling.
1852
1853 Sat Apr  4 20:36:25 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1854
1855         * aclocal.m4 (sim-cflags): Add -fomit-frame-pointer to defaults.
1856         (sim-inline): Update to match sim-inline.[hc]
1857         * configure: Regenerated to track ../common/aclocal.m4 changes.
1858
1859         * Make-common.in (sim_main_headers): Add sim-inline.h
1860
1861         * sim-bits.h (sim-bits.c): Include when H_REVEALS_MODULE_P.
1862         selected.
1863         * sim-endian.h (sim-endian.c): Ditto.
1864         
1865         * sim-events.h (_SIM_EVENTS_H_): Replace with SIM_EVENTS_H.
1866         (sim_events_set_trace): Delete unused prototype.
1867         
1868         * sim-core.h (_SIM_CORE_H_): Replace with SIM_CORE_H.
1869         * sim-core.c (_SIM_CORE_C_): Ditto for SIM_CORE_C.
1870
1871         * sim-fpu.h (sim-fpu.c): Include when H_REVEALS_MODULE_P.
1872         (sim_fpu_to232i, sim_fpu_to232u, sim_fpu_i232to, sim_fpu_u232to):
1873         Comment out, not yet implemented in sim-fpu.c.
1874         (sim_fpu_zero, sim_fpu_one, sim_fpu_two, sim_fpu_qnan,
1875         sim_fpu_max32, sim_fpu_max64): Mark as EXTERN_SIM_FPU.
1876         
1877         * sim-inline.h: Rewrite description.
1878         (H_REVEALS_MODULE_P, C_REVEALS_MODULE_P): Define.
1879         (SIM_MAIN_INLINE): Add inline option.
1880         
1881         * sim-inline.c (semantics.c, idecode.c, engine.c, ...): Do not
1882         include generated files. Handled by generator directly.
1883         
1884 Sat Apr  4 01:07:06 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1885
1886         * sim-trace.c (set_trace_option_mask): Keep TRACE_ANY_P
1887         up-to-date.
1888
1889         * sim-trace.h (TRACE_ANY_P): Define.
1890         (struct _trace_data): Add trace_any_p.
1891
1892 Mon Mar 30 17:11:55 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1893
1894         * run.c (main): Handle all alternatives of enum sim_stop.
1895         (main): Delete unused `asection *s'.
1896
1897 Fri Mar 27 16:15:52 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1898
1899         * hw-tree.h, hw-tree.c (hw_tree_vparse): New function
1900
1901         * configure: Regenerated to track ../common/aclocal.m4 changes.
1902
1903         * sim-hw.c: New file.
1904         * sim-hw.h (sim_hw_parse): Declare function.
1905         (hw-tree.h): Do not include.
1906         
1907         * sim-base.h (STATE_HW): Define.
1908         (struct sim_state_base): Add member struct *hw.
1909
1910         * sim-module.c (sim-hw.h): Include.
1911         (modules): Add sim_hw_install.
1912         
1913         * aclocal.m4 (sim_hw_obj): Add sim-hw.o
1914
1915 Fri Mar 27 14:55:06 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1916
1917         * sim-base.h (CPU_INDEX): Define.
1918
1919         * sim-utils.c (sim_state_alloc): Initialize.
1920         * sim-module.c (sim_post_argv_init): Ditto.
1921
1922 Thu Mar 26 10:07:57 1998  Stu Grossman  <grossman@bhuna.cygnus.co.uk>
1923
1924         * aclocal.m4 (sim_hw_obj):  Fix sed expression to generate
1925         properly formatted lists.
1926
1927 Thu Mar 26 10:37:22 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1928
1929         * dv-pal.c (enum hw_pal_address_mask): From Stu Grossman, was
1930         0x2f needs to be 0x3f.
1931
1932 Thu Mar 26 09:10:56 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1933
1934         * hw-tree.c (hw_tree_find_property): Return NULL when device is
1935         not found.
1936         (hw_tree_find_*_property): Clean up error message when property is
1937         not found.
1938
1939         * dv-pal.c (hw_pal_io_read_buffer): Check the smp property is
1940         present before looking for it.
1941
1942 Wed Mar 25 16:17:38 1998  Ian Carmichael  <iancarm@cygnus.com>
1943
1944         * aclocal.m4 (AC_CHECK_HEADERS): Add check for fpu_control.h.  
1945         (AC_CHECK_FUNCS): Add check for __setfpucw.
1946         * configure: Regenerated.
1947
1948 Wed Mar 25 09:18:34 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1949
1950         * dv-pal.c (hw_pal_countdown, hw_pal_countdown_value,
1951         hw_pal_timer, hw_pal_timer_value): Define.
1952         (hw_pal_io_read_buffer, hw_pal_io_write_buffer): Add timer support
1953         (do_counter_event, do_counter_read, do_counter_value,
1954         do_counter_write): new functions.
1955
1956 Tue Mar 24 12:24:24 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1957
1958         * hw-tree.c (hw_printf): Send tree dump to stderr, same as other
1959         trace output.
1960
1961         * hw-base.c (hw_create): Stop searching for a device when one is
1962         found.
1963
1964 Wed Mar 25 12:35:29 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1965
1966         * configure: Regenerated to track ../common/aclocal.m4 changes.
1967
1968 Mon Mar 23 10:25:08 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1969
1970         * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Add second argument,
1971         appends extra devices.
1972         (SIM_AC_OPTION_HARDWARE): Substute sim_hw, a non-duplicate list of
1973         the device names.
1974         
1975         * Make-common.in (hw-config.h): New target, create hw-config.h
1976         file.
1977         (SIM_HW): Definition from @sim_hw@.
1978         (hw-base.o): Depend on hw-config.h
1979
1980 Tue Mar 24 17:41:35 1998  Stu Grossman  <grossman@bhuna.cygnus.co.uk>
1981
1982         * Make-common.in:  Get SHELL from configure.
1983         * (stamp-tvals sim-inline.c):  Use $(SHELL) when invoking
1984         move-if-change.  Fixes NT native build problem.
1985         * Makefile.in (nltvals.def):   Use $(SHELL) when invoking
1986         move-if-change.  Fixes NT native build problem.
1987         * configure:  Regenerate with autoconf 2.12.1 to fix shell issues for
1988         NT native builds.
1989         
1990 Sun Mar 22 16:54:40 1998  Andrew Cagney  <cagney@b1.cygnus.com>
1991
1992         * hw-device.h, hw-device.c (hw_strdup): New function.
1993
1994         * hw-base.c (hw_create): Use hw_strdup when saving a copy of the
1995         strings name, family and args.
1996         (full_name_of_hw): Use hw_strdup when returning the full path.
1997
1998         * hw-properties.c: Clean up property not found / wrong type error
1999         messages.
2000         
2001         * hw-tree.c (hw_tree_parse): Finish a devices initialization
2002         before attaching any ports.
2003
2004         * hw-base.c (hw-config.): Include.  Replace hardwired table.
2005
2006         * dv-glue.c: Copy over ../ppc/hw_glue.c.  Update to new framework.
2007
2008         * Make-common.in: Add rule for dv-glue.o.
2009
2010 Sun Mar 22 16:45:54 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2011
2012         * hw-base.c (hw_finish): Move setting of trace level to here.
2013         (hw_create): From here.
2014
2015         * hw-base.h, hw-base.c (do_hw_attach_regs): Copy function from
2016         ../ppc/device_table.c.
2017
2018         * dv-pal.c (hw_pal_finish): Attach PAL device to parent bus.
2019
2020         * hw-tree.c (print_properties): Supress path when printing
2021         properties of root node.
2022
2023 Sun Mar 22 16:21:15 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2024
2025         * hw-device.h (HW_TRACE): Define.
2026         (hw_trace): Declare.
2027         * hw-device.c (hw_trace): Implement function.
2028
2029         * hw-base.c (hw_create): Set hw trace level from "trace?"
2030         property.
2031
2032         * dv-core.c (dv_core_attach_address_callback): Add trace.
2033
2034         * dv-pal.c: Replace DTRACE with HW_TRACE.
2035
2036 Sun Mar 22 15:23:35 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2037
2038         * hw-device.h (HW_ZALLOC, HW_MALLOC): New macros.
2039         (hw_alloc_data): Delcare.
2040         (struct hw): Add member alloc_of_hw.
2041         
2042         * hw-device.c (hw_zalloc, hw_malloc, hw_free, hw_free_all): New
2043         functions. Assocate memory with a device.
2044         (stdlib.h): Include.
2045         
2046         * hw-base.h (set_hw_delete): Define.
2047         (hw_delete_callback): Declare.
2048         (hw_delete): Declare.
2049
2050         * hw-base.c (hw_delete): Implement function.
2051         (struct hw_base_data): Add member to_delete.
2052         (ignore_hw_delete): New function, does nothing.
2053         (hw_create): Set the hw_delete method.
2054         (hw_create): Allocate the base type using HW_ZALLOC before setting
2055         any methods.
2056
2057         * hw-tree.h, hw-tree.c (hw_tree_delete): New function.
2058         
2059         * hw-properties.c: Replace zalloc/zfree with hw_zalloc/hw_free.
2060         
2061         * hw-ports.c: Replace zalloc/zfree with hw_zalloc/hw_free.
2062         (attach_hw_port_edge): Add struct hw argument
2063
2064         * dv-pal.c (hw_pal_finish): Replace zalloc/zfree with
2065         hw_zalloc/hw_free.
2066
2067 Sun Mar 22 15:09:52 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2068
2069         * hw-device.h (hw_attach_address_callback,
2070         hw_detach_address_callback): Attach to a single space not a space
2071         mask. Clarify interpretation of SPACE:ADDR parameters.
2072
2073         * hw-base.c (passthrough_hw_attach_address,
2074         passthrough_hw_detach_address): Update.
2075         * dv-core.c (dv_core_attach_address_callback): Ditto.
2076         * dv-pal.c (hw_pal_attach_address): Ditto.
2077
2078 Thu Mar 19 00:41:00 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2079
2080         * sim-options.h: Document additional CPU arg to OPTION_HANDLER.
2081
2082 Wed Mar 18 14:13:02 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2083
2084         * Make-common.in (SIM_HW_OBJS, SIM_HW_SRC, SIM_DV_OBJS): Define.
2085         (hw-base_h, hw-device_h, hw-handles_h, hw-instances_h, hw_ports_h,
2086         hw-properties_h, hw-tree_h): Define, point at corresponding
2087         header.
2088         (hw_base_headers): Define list of headers included by hw-base.h
2089         (hw-base.o, hw-device.o, hw-instances.o, hw-handles.o, hw-ports.o,
2090         hw-properties.o, hw-tree.o): Specify dependencies.
2091         (dv-core.o, dv-pal.o): Ditto.
2092
2093         * sim-hw.h: New file.
2094
2095         * hw-device.h, hw-device.c, hw-properties.h, hw-properties.c,
2096         hw-ports.h, hw-ports.c: New files. Copied from ../ppc/device.[ch].
2097         
2098         * hw-tree.h, hw-tree.c: New files. Copied from ../ppc/tree.[hc].
2099
2100         * hw-base.h, hw-base.c: new files.  Copied from
2101         ../ppc/device_table.[hc].
2102
2103         * dv-core.c, dv-pal.c: New files. Copied from
2104         ../ppc/hw_{core,pal}.c
2105         
2106         * sim-basics.h (struct hw): Declare.
2107         (enum port_direction, enum object_disposition): Declare.
2108
2109 Wed Mar 18 12:38:12 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2110
2111         * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Set sim_hw_obj, sim_dv_obj,
2112         sim_dv_src in Makefile. Take list of devices as parameter to m4
2113         macro..
2114
2115         * configure: Regenerated to track ../common/aclocal.m4 changes.
2116
2117 Mon Mar 16 12:37:33 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2118
2119         * sim-trace.h, sim-trace.c (trace_prefix): Pass in sim_cia so that
2120         trace_prefix can abort cleanly.
2121
2122 Sat Mar 14 18:36:12 1998  Doug Evans  <devans@seba.cygnus.com>
2123
2124         * dv-sockser.c, dv-sockser.h: New files.
2125         * Make-common.in (dv-sockser.o): Add rule for.
2126         * aclocal.m4: Check for fcntl.h.
2127         * config.h: Add HAVE_FCNTL_H.
2128
2129         * sim-break.c (remove_breakpoint): Fix thinko.
2130
2131         * sim-hload.c (sim_load): Provide default value of SIM_HANDLES_LMA.
2132         Use SIM_HANDLES_LMA for lma_p arg to sim_load_file.
2133
2134 1998-03-13  Fred Fish  <fnf@cygnus.com>
2135
2136         * sim-base.h (struct sim_state_base): Add prog_syms and
2137         define macro STATE_PROG_SYMS.
2138         * sim-trace.c (trace_prefix): Add variables abfd, symsize,
2139         symbol_count, and asymbols.  Call bfd_get_symtab_upper_bound
2140         and bfd_canonicalize_symtab, to get symbol table on first use
2141         and preserve it via STATE_PROG_SYMS for future calls to
2142         bfd_find_nearest_line.
2143
2144 Wed Mar 11 14:02:47 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2145
2146         * sim-core.h, sim-core.c (sim_core_map_to_str): Delete.
2147
2148         * sim-core.c (sim_core_attach): Handle a generic number of maps -
2149         up to nr_maps, not just access_* maps.
2150
2151         * sim-profile.h (struct PROFILE_DATA): Track nr_maps different
2152         maps.
2153
2154         * sim-profile.c (profile_print_core): Make map unsigned.  Iterate
2155         over nr_maps not sim_core_nr_maps.
2156
2157         * sim-events.h, sim-events.c (sim_events_watch_core): Change
2158         core_map argument to unsigned.
2159         (struct _sim_core): Ditto for struct member core_map.
2160
2161         * sim-core.h (nr_sim_core_maps, sim_core_*_map): Delete
2162
2163         * sim-basics.h (access_io, access_*_io): Define.
2164         (map_read, map_write, map_exec, map_io): Define.
2165
2166         * sim-core.c, sim-core.h (sim_core_attach): Replace argument
2167         attach with more generic mapmask.
2168         (sim_core_{read,write}_*): Change map argument to unsigned.
2169         
2170         * sim-core.c (sim_core_uninstall, sim_core_attach,
2171         sim_core_detach): Iterate over nr_maps instead of
2172         sim_core_nr_maps.
2173
2174         * sim-break.c (insert_breakpoint): Write breakpoints to exec_map
2175         instead of the write_map.
2176         (remove_breakpoint): Ditto.
2177
2178         * genmloop.sh (engine_resume_full): Replace sim_core_*_map
2179         with read_map, write_map, exec_map resp.
2180
2181         * cgen-mem.h (DECLARE_GETMEM, DECLARE_SETMEM, DECLARE_GETIMEM):
2182         Ditto.
2183
2184         * cgen-utils.c (sim_disassemble_insn): Ditto.
2185
2186         * sim-hrw.c (sim_write, sim_write): Ditto.
2187
2188         * sim-utils.h, sim-utils.c (access_to_str, map_to_str,
2189         transfer_to_str): New functions.
2190
2191 Mon Mar  9 12:50:59 1998  Doug Evans  <devans@seba.cygnus.com>
2192
2193         * sim-base.h (sim_state_base): New member environment.
2194         (STATE_ENVIRONMENT): New macro.
2195         * sim-config.c (current_environment): Delete.
2196         (sim_config_default): New function.
2197         (sim_config): Set STATE_ENVIRONMENT, not current_environment.
2198         * sim-config.h (current_environment,CURRENT_ENVIRONMENT): Delete.
2199         (sim_config_default): Add prototype.
2200         * sim-module.c (sim_pre_argv_init): Call sim_config_default.
2201         * sim-options.c (standard_option_handler, case OPTION_ENVIRONMENT):
2202         Set STATE_ENVIRONMENT, not current_environment.
2203
2204 Mon Mar  9 11:59:03 1998  Jim Wilson  <wilson@cygnus.com>
2205
2206         * sim-fpu.c (NR_GUARDS64): Change NR_PAD32 to NR_PAD64.
2207
2208 Tue Mar  3 10:53:05 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2209
2210         * sim-types.h (SIGNED32, SIGNED64): Pacify GCC.
2211
2212         * sim-alu.h (ALU64_BEGIN): Make alu64_r unsigned.
2213
2214 Mon Mar  2 10:20:06 1998  Doug Evans  <devans@seba.cygnus.com>
2215
2216         * Make-common.in (TAGS): Make smarter.
2217         * Makefile.in (TAGS): Ditto.
2218
2219 Fri Feb 27 19:09:57 1998  Doug Evans  <devans@canuck.cygnus.com>
2220
2221         * sim-module.c (*): Fix typos in assertion tests.
2222
2223 Sat Feb 28 13:54:10 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2224
2225         * sim-module.c (sim_pre_argv_init): String passed to asprintf
2226         can't be constant.
2227         
2228         * sim-options.c (sim_parse_args): Ditto.
2229         (sim_args_command): Return OK, instead of nothing, for an empty
2230         command.
2231
2232 Fri Feb 27 13:29:13 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2233
2234         * sim-profile.c (profile_info): Rename from profile_print. Drop
2235         misc and misc_cpu callback arguments.  Use
2236         PROFILE_INFO_CPU_CALLBACK and STATE_PROFILE_INFO_CALLBACK instead.
2237         (profile_install): Install profile_info function.
2238
2239         * sim-profile.h (PROFILE_INFO_CPU_CALLBACK,
2240         STATE_PROFILE_INFO_CALLBACK): Define.
2241         (struct PROFILE_DATA): Add field info_cpu_callback.
2242         (profile_print): Delete function.
2243
2244         * sim-base.h (STATE_MODULES): Define.  Replace individual
2245         STATE_*_LIST with single struct module_list.
2246
2247         * sim-module.h (MODULE_INFO_FN, MODULE_INFO_LIST): Declare.
2248         (struct module_list): Declare.
2249         
2250         * sim-module.h, sim-module.c (sim_module_add_info_fn,
2251         sim_module_info): New functions.
2252         (sim_module_install): Clean up module data structures.
2253
2254         * sim-info.c (sim_info): New file. New function. Call
2255         sim_module_info.
2256
2257         * Make-common.in (sim-info.o): Define rule.
2258         (SIM_NEW_COMMON_OBJS): Add sim-info.o.
2259
2260
2261 Fri Feb 27 18:26:16 1998  Doug Evans  <devans@canuck.cygnus.com>
2262
2263         * sim-base.h (sim_cpu_base): New members name, options.
2264         (sim_cpu_lookup): Add prototype.
2265         * sim-module.c (sim_pre_argv_init): Provide default names for cpus.
2266         * sim-options.h (DECLARE_OPTION_HANDLER): New argument `cpu'.
2267         (sim_add_option_table): Update prototype.
2268         * sim-options.c (sim_add_option_table): New argument `cpu'.
2269         (standard_option_handler,standard_install): Update.
2270         (sim_parse_args): Handle cpu specific options.
2271         (print_help): New static function.
2272         (sim_print_help): Call it.  Print cpu specific options.
2273         (find_match): New static function.
2274         (sim_args_command): Call it.  Handle cpu specific options.
2275         * sim-utils.c (sim_cpu_lookup): New function.
2276         * sim-memopt.c (memory_option_handler): Update.
2277         (sim_memopt_install): Update.
2278         * sim-model.c (model_option_handler): Update.
2279         (model_install): Update.
2280         * sim-profile.c (profile_option_handler): Update.
2281         (profile_install): Update.
2282         * sim-trace.c (trace_option_handler): Update.
2283         (trace_install): Update.
2284         * sim-watch.c (watchpoint_option_handler): Update.
2285         (sim_watchpoint_install): Update.
2286         * cgen-scache.c (scache_option_handler): Update.
2287         (scache_install): Update.
2288
2289 Wed Feb 25 11:00:26 1998  Doug Evans  <devans@canuck.cygnus.com>
2290
2291         * Make-common.in (check): Run `make check' in testsuite dir.
2292
2293 Wed Feb 25 14:40:24 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2294
2295         * sim-trace.c (trace_result0): New function.
2296
2297         * sim-trace.h (TRACE_FP_*, TRACE_FPU_*): Rename TRACE_FPU_*
2298         macro's to TRACE_FP_*. TRACE_FPU_* should be defined and used when
2299         tracing sim_fpu variables.
2300         (TRACE_ALU_RESULT0): Define.
2301         (TRACE_FP_RESULT_WORD): Define.
2302         (TRACE_FP_INPUT_WORD1): Define.
2303
2304         * sim-fpu.c, sim-fpu.h (sim_fpu_max32, sim_fpu_max64, sim_fpu_one,
2305         sim_fpu_two): New constants.
2306         (sim_fpu_op1, sim_fpu_op2): New types.
2307         (struct _sim_fpu): Delete member result.  Re-order other members.
2308         (sim_fpu_sign, sim_fpu_exp): New functions.
2309         (sim_fpu_max, sim_fpu_min): new functions.
2310         (EXPMAX32, EXPMAX64, NR_PAD32, NR_PAD64, NR_GUARDS32, NR_GUARDS64,
2311         NORMAL_EXPMAX32, NORMAL_EXPMAX64): Define.
2312         
2313 Tue Feb 24 22:45:39 1998  Doug Evans  <devans@seba.cygnus.com>
2314
2315         * sim-profile.c (profile_print): Delete duplicate test of
2316         PROFILE_INSN_IDX.
2317         (profile_print_pc): Exit early if data collection not set up.
2318         (profile_print_core): Simplify by calling sim_core_map_to_str.
2319         * sim-core.h (sim_core_map_to_str): Declare.
2320         * sim-core.c (sim_core_map_to_str): Make non-static.
2321
2322         * genmloop.sh (engine_resume): Update insn_count before exiting.
2323         (engine_resume_full): Keep accurate core profile data.
2324
2325         * cgen-utils.c (sim_disassemble_insn): Don't use
2326         sim_core_read_aligned_N, it messes up profiling results.
2327
2328 Mon Feb 23 20:45:57 1998  Mark Alexander  <marka@cygnus.com>
2329
2330         * nltvals.def: Regenerate with MN10300 additions.
2331
2332 Tue Feb 24 13:18:42 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2333
2334         * sim-trace.h (TRACE_ALU_RESULT2): Define.
2335         
2336         * sim-trace.h, sim-trace.c (trace_result_word2,
2337         trace_input_word4, trace_result_word4): New function.
2338
2339 Mon Feb 23 13:08:35 1998  Doug Evans  <devans@canuck.cygnus.com>
2340
2341         * cgen-sim.h (SEM_NEXT_PC): New arg `len'.
2342
2343         * sim-xcat.h: Delete.
2344         * cgen-mem.h: Delete inclusion of sim-xcat.h.
2345         * cgen-sim.h: Ditto.
2346         * sim-alu.h: Replace sim-xcat.h with symcat.h.
2347         * sim-n-bits.h: Ditto.
2348         * sim-n-core.h: Ditto.
2349         * sim-n-endian.h: Ditto.
2350
2351 Mon Feb 23 13:19:58 1998  Michael Meissner  <meissner@cygnus.com>
2352
2353         * syscall.c (cb_syscall): Handle short reads, and EOF.
2354
2355 Tue Feb 24 00:29:57 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2356
2357         * sim-trace.c (print_data): case trace_fmt_fp missing break.  Use
2358         sim_fpu to safely print fp_word values.
2359         (print_data): Add trace_fmt_bool and trace_fmt_addr.
2360         (trace_result_bool1, trace_result_addr1): New functions.
2361         (trace_input_bool1, trace_input_addr1): New functions.
2362
2363         * sim-trace.h (TRACE_FPU_*): Define.
2364
2365 Mon Feb 23 13:24:54 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2366
2367         * sim-fpu.h (enum sim_fpu_class): Add sim_fpu_class_denorm.
2368         (sim_fpu_fpto, sim_fpu_tofp): Define.
2369
2370 Fri Feb 20 18:08:51 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2371
2372         * sim-fpu.c (sim_fpu_cmp): New function.
2373
2374 Wed Feb 18 16:29:21 1998  Doug Evans  <devans@canuck.cygnus.com>
2375
2376         * cgen-utils.h (sim_disassemble_insn): Use CGEN_INSN_BITSIZE
2377         instead of abuf->length.
2378         * sim-trace.c (trace_options): Have -t only trace a few useful things.
2379         (set_trace_option_mask): Renamed from set_trace_options.
2380         (set_trace_option): New function.
2381         (trace_option_handler): Update calls to set_trace_option{,_mask}.
2382         * sim-trace.h (TRACE_USEFUL_MASK): New macro.
2383
2384 Wed Feb 18 12:42:15 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2385
2386         * sim-basics.h: Declare struct _sim_fpu.
2387
2388 Tue Feb 17 16:27:46 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2389
2390         * sim-trace.h (TRACE_ALU_INPUT*, TRACE_ALU_RESULT): Define.
2391         (trace_prefix, trace_input*, trace_result*): Declare.
2392         (trace_one_insn): Change declaration, assume trace_prefix called.
2393         (trace_generic): Like trace_one_insn.
2394         (TRACE_ALU_IDX, TRACE_*_IDX): Change #define's to enum.
2395         (TRACE_alu, TRACE_[a-z]*): Update.
2396         
2397         * sim-trace.c (trace_prefix, trace_input*, trace_result*,
2398         trace_insn, save_data, trace_idx_to_str, print_data): New
2399         functions.
2400         (trace_one_insn): Rewrite.
2401         (trace_generic): New function.
2402         
2403 Tue Feb 17 17:27:30 1998  Doug Evans  <devans@seba.cygnus.com>
2404
2405         * aclocal.m4 (USE_MAINTAINER_MODE): New variable.
2406
2407         * cgen-sim.h (SEMANTIC_CACHE_FN): Delete.
2408         (SEMANTIC_FN): Rewrite declaration.
2409         (DECODE): Update type of semantic_fast member.
2410         ({EX,SEM}_FN_NAME): Have only one version.
2411         * sim-base.h (sim_state_base): Delete conditionals surrounding
2412         member scache_size.
2413
2414 Tue Feb 10 18:31:49 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2415
2416         * sim-load.c (sim_load_file): Print LMA/VMA according to value
2417         used.
2418
2419 Tue Feb 10 14:56:23 1998  Ian Carmichael  <iancarm@cygnus.com>
2420
2421         * sim-core.c: Add missing prototypes for WITH_DEVICES.
2422         Add missing parameters to device_io calls.
2423         * sim-core.h: Add missing parameters to device_io calls.
2424
2425 Mon Feb  9 14:48:37 1998  Doug Evans  <devans@canuck.cygnus.com>
2426
2427         * cgen-sim.h (DECODE): Always use switch for `read' for now.
2428         (PAREXEC): Renamed from PARALLEL_EXEC.  All uses updated.
2429         (SEMANTIC{,_CACHE}_FN): Fix return type.
2430         * genmloop.sh (@cpu@_engine_run): Delete `current_state'.
2431         (engine_resume): Likewise.  Make `engine' volatile.  Save copy
2432         of cpu pointer in volatile object.  Initialize read switch if
2433         -parallel.
2434
2435 Thu Feb  5 13:27:04 1998  Doug Evans  <devans@seba.cygnus.com>
2436
2437         * cgen-sim.h (EX_FN_NAME): _exc_ -> _ex_.
2438         (SEM_INSN): New macro.
2439
2440 Tue Feb  3 16:31:56 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2441
2442         * sim-run.c (sim_engine_run): Assume IMEM is 32 bit.
2443
2444 Sun Feb  1 16:47:51 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2445
2446         * configure: Regenerated to track ../common/aclocal.m4 changes.
2447
2448 Sun Feb  1 16:16:57 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2449
2450         * sim-types.h (fp_word): New type, define according to
2451         WITH_TARGET_FLOATING_POINT_BITSIZE.
2452
2453         * aclocal.m4 (default_sim_floating_point_bitsize): Add
2454         configuration of size of floating point registers.
2455
2456 Sun Feb  1 14:02:31 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2457
2458         * sim-profile.c (profile_print): Only print CPU <N> if other
2459         output is going to appear.
2460
2461 Sat Jan 31 18:15:41 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2462
2463         * configure: Regenerated to track ../common/aclocal.m4 changes.
2464
2465 Sat Jan 31 18:03:55 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2466
2467         * sim-types.h (address_word): Typedef according to
2468         WITH_TARGET_ADDRESS_BITSIZE.
2469         (signed_cell, unsigned_cell, natural_cell): Ditto using
2470         WITH_TARGET_CELL_BITSIZE.
2471         
2472         * sim-config.h (WITH_TARGET_ADDRESS_BITSIZE): Define.
2473         (WITH_TARGET_CELL_BITSIZE): Define.
2474         (WITH_HOST_WORD_BITSIZE): Delete.
2475
2476         * sim-config.c (print_sim_config): Update.
2477
2478         * aclocal.m4 (SIM_AC_OPTION_BITSIZE): Add support for
2479         configuration of address and OpenFirmware cell sizes.
2480
2481 Fri Jan 30 09:36:33 1998  Andrew Cagney  <cagney@b1.cygnus.com>
2482
2483         * sim-engine.h (sim_engine_run): Add argument nr_cpus.
2484         * sim-run.c (sim_engine_run): Update.
2485         
2486         * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use SET_CPU_CIA instead of
2487         CPU_CIA.
2488         * sim-run.c (sim_engine_run): Ditto.
2489
2490         * sim-resume.c (sim_resume): Obtain nr_cpus from sim_engine.
2491         (sim_resume): Pass nr_cpus to sim_engine_run.
2492
2493         * sim-engine.h (struct _sim_engine): Add member nr_cpus.
2494         
2495         * sim-engine.c (sim_engine_init): Hardwire nr_cpus to
2496         MAX_NR_PROCESSORS.
2497         (sim_engine_nr_cpus) sim-engine.c, sim-engine.h: New function
2498         
2499 Fri Jan 23 14:20:54 1998  Doug Evans  <devans@seba.cygnus.com>
2500
2501         * Make-common.in (stamp-tvals): New rule.
2502         (targ-vals.h,targ-map.c): Depend on it.
2503         (clean): Remove stamp-tvals.
2504
2505 Tue Jan 20 21:35:13 1998  Michael Meissner  <meissner@cygnus.com>
2506
2507         * sim-utils.c (sim_state_alloc): #if 0 variable that is only used
2508         in code also #if 0'ed.
2509
2510 Mon Jan 19 22:26:29 1998  Doug Evans  <devans@seba>
2511
2512         * configure: Regenerated to track ../common/aclocal.m4 changes.
2513         * aclocal.m4: Recognize --enable-maintainer-mode.
2514
2515 Mon Jan 19 12:45:45 1998  Doug Evans  <devans@seba.cygnus.com>
2516
2517         * cgen-scache.h: Deleted.
2518         * Make-common.in (cgen-run.o,cgen-scache.o): Delete cgen-scache.h dep.
2519         * cgen-scache.c: Only compile contents if WITH_SCACHE.
2520         (scache_init): Use runtime computed size of SCACHE.
2521         (scache_flush): Likewise.
2522         * cgen-mem.h (GETIMEMU[QHSD]I): Declare.
2523         ([GS]ETT{QI,UQI,HI,UHI,SI,USI,DI,UDI}): Declare.
2524         * cgen-sim.h: Scache support moved here.
2525         (PC): Redo definition.
2526         (ARGBUF,SCACHE,PARALLEL_EXEC): Provide forward decls.
2527         (DECODE): Add parallel execution support.
2528         Only include semantic label members if using switch.
2529         (SWITCH,CASE,BREAK,DEFAULT,ENDSWITCH): Portable computed goto support.
2530         (CGEN_CPU): Delete members exec_state, halt_sigrc, halt_jmp_buf.
2531         (IADDR,CIA,SEM_ARG,EX_FN_NAME,SEM_FN_NAME,RECORD_IADDR,SEM_ARGBUF,
2532         SEM_NEXT_PC,SEM_BRANCH_VIA_{CACHE,ADDR},SEM_NEW_PC_ADDR): Moved here
2533         from cgen-types.h.
2534         (engine_{stop,run,resume,halt,signal}): Delete decls.
2535         * cgen-types.h (CGEN_{XCAT3,CAT3}): Delete.
2536         (argbuf,scache): Delete forward decls.
2537         (STATE): Delete decl.
2538         * cgen-utils.c: Don't include decode.h, mem-ops.h, sem-ops.h.
2539         Include cgen-mem.h, cgen-ops.h.
2540         (engine_halt,engine_signal): Delete.
2541         ({ex,exc,sem,semc}_illegal): Delete.
2542         (sim_disassemble_insn): Result of extract fn is in bits.
2543         * genmloop.sh: Rewrite.
2544
2545         * cgen-trace.c (trace_insn): Set printed_result_p=0 if not tracing
2546         line numbers.
2547
2548         * sim-base.h (sim_state_base): Delete member `model'.
2549         (sim_cpu_base): Add member `model'.
2550         * sim-model.h (IMP_PROPERTIES): New type.
2551         (MACH): New members imp_props, models.
2552         (models): Delete decl.
2553         * sim-model.c (set_model): Update.
2554         * sim-profile.c (profile_print_model): Update.
2555
2556         * sim-utils.c (sim_state_alloc): Delete setting of cpu backlink here.
2557
2558 Fri Jan 16 12:33:09 1998  Nick Clifton  <nickc@cygnus.com>
2559
2560         * cgen-trace.c (trace_insn): Call CGEN_INSN_MNEMONIC() rather than
2561         CGEN_INSN_SYNTAX().
2562
2563 Mon Dec 15 23:17:11 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2564
2565         * configure: Regenerated to track ../common/aclocal.m4 changes.
2566         * config.in: Ditto.
2567
2568 Mon Dec 15 23:16:03 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2569
2570         * aclocal.m4 (AR): Check for sigaction.
2571
2572 Thu Dec  4 09:21:05 1997  Doug Evans  <devans@canuck.cygnus.com>
2573
2574         * Make-common.in (sim-core.o): Depend on $(sim_main_headers).
2575
2576         * sim-config.h (WITH_TREE_PROPERTIES): Define as 0.
2577         * sim-config.c (sim_config): Replace WITH_DEVICES with
2578         WITH_TREE_PROPERTIES.
2579
2580         * configure: Regenerated to track ../common/aclocal.m4 changes.
2581
2582 Wed Dec  3 17:56:02 1997  Doug Evans  <devans@canuck.cygnus.com>
2583
2584         * Make-common.in (SIM_ENVIRONMENT): New variable.
2585         (CONFIG_CFLAGS): Add it.
2586         * aclocal.m4 (SIM_AC_OPTION_ENVIRONMENT): Handle
2587         --enable-sim-environment option.
2588         * configure: Regenerated.
2589         * sim-config.h (environment support): Rewrite.
2590         * sim-config.c (current_environment): Define as enum, unconditionally.
2591         (current_alignment): Define unconditionally.
2592         (config_environment_to_a): Update.
2593         (config_alignment_to_a): Fix type of argument.  Define unconditionally.
2594         (sim_config): Handle environment and alignment determination
2595         unconditionally.  Delete sanity checks of current_environment,
2596         unnecessary.
2597         (print_sim_config): Update.
2598         * sim-options.c (STANDARD_OPTIONS enum): Add OPTION_ENVIRONMENT.
2599         (standard_options): Add --environment.
2600         (standard_option_handler): Likewise.
2601
2602 Fri Nov 28 12:21:25 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2603
2604         * sim-alu.h: Add notes on carry vs borrow for subtraction.
2605         (ALU{,8,16,32,64}ADD): Redefine ADD macro as add overflowing.
2606         (ALU{,8,16,32,64}ADDC): Define - add carrying.
2607         (ALU{,8,16,32,64}SUB): Redefine SUB macro as subtract overflowing.
2608         (ALU{,8,16,32,64}SUBB): Define - subtract borrowing.
2609         (ALU{,8,16,32,64}SUBC): Define - tract carrying.
2610         (ALU{,8,16,32,64}ADD_CA, ALU{,8,16,32,64}ADDC_C): Replace single
2611         argument ADD_CA macro with two argument ADDC_C - add carrying with
2612         carry in.
2613         (ALU{,8,16,32,64}SUB_CA, ALU{,8,16,32,64}SUBC_X): Replace single
2614         argument SUB_CA macro with two argument SUBC_X - subtract
2615         carrying, extended.
2616         (ALU{,8,16,32,64}SUBB_B): Define - subtract borrowing with
2617         borrow-in.
2618         (ALU{,8,16,32,64}NEGC, ALU{,8,16,32,64}NEGB): Define.
2619
2620 Sun Nov 30 17:40:57 1997  Michael Meissner  <meissner@cygnus.com>
2621
2622         * sim-io.c (sim_io_{syscalls,getstring}): Delete.  No longer used.
2623         * sim-io.h (sim_io_syscalls): Delete.
2624
2625 Fri Nov 28 20:10:09 1997  Michael Meissner  <meissner@cygnus.com>
2626
2627         * syscall.c (cb_syscall): Add missing else, so write to stdout
2628         isn't doubled.
2629
2630         * sim-alu.h (ALU{,8,16,32,64}_SET_CARRY): Provide macros to import
2631         the carry bit from the CPU's psw.
2632
2633 Fri Nov 28 11:15:05 1997  Doug Evans  <devans@canuck.cygnus.com>
2634
2635         * gennltvals.sh: Redo syscall support.
2636         * nltvals.def: Regenerated.
2637
2638 Wed Nov 26 16:49:38 1997  Michael Meissner  <meissner@cygnus.com>
2639
2640         * syscall.c (cb_syscall): If writing to stdout or stderr, flush
2641         the stream immediately.
2642
2643 Wed Nov 26 12:32:11 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2644
2645         * sim-io.c (sim_io_getstring): Delete unused len2.
2646         (sim_io_syscalls): Ditto for sys_errno.
2647
2648 Wed Nov 26 11:18:40 1997  Doug Evans  <devans@canuck.cygnus.com>
2649
2650         * syscall.c (cb_syscall): Test CB_SYSCALL struct magic number.
2651
2652         * Make-common.in (run.o): Depend on remote-sim.h.
2653         (nrun.o,sim-hload.o,sim-hrw.o): Likewise.
2654         (sim-io.o,sim-reason.o,sim-resume.o): Likewise.
2655
2656 Tue Nov 25 20:12:46 1997  Michael Meissner  <meissner@cygnus.com>
2657
2658         * sim-io.c (sim_io_syscalls): Disable lseek.
2659
2660 Tue Nov 25 00:12:38 1997  Doug Evans  <devans@seba.cygnus.com>
2661
2662         * gennltvals.sh: Generate syscall values for d30v.
2663
2664         * gennltvals.sh: Use libgloss/syscall.h for sparc.
2665         * nltvals.def: Regenerate.
2666
2667         * callback.c (os_stat): Make 3rd arg a host struct stat ptr.
2668         (os_fstat): Likewise.  Validate fd argument.
2669         (cb_host_to_target_stat): Delete big_p arg.  If HS arg is NULL,
2670         just compute target stat struct length.
2671         * syscall.c: #include "libiberty.h", <sys/types.h>, <sys/stat.h>.
2672         (ENOSYS,ENAMETOOLONG): Provide definitions if missing.
2673         (get_string): Return host errno values so they can be properly
2674         translated later.
2675         (cb_syscall): Likewise.
2676         (cb_syscall, cases open,unlink): Use get_path instead of get_string.
2677         (cb_syscall, case read): Use read_stdin for file descriptor 0.
2678         (cb_syscall, case write): Use write_stderr for file descriptor 2.
2679         (cb_syscall): Add cases for lseek, unlink, stat, fstat, time.
2680         (get_path): New function.
2681
2682 Mon Nov 24 18:56:07 1997  Michael Meissner  <meissner@cygnus.com>
2683
2684         * sim-io.c (sim_io_syscalls): New function to provide system call
2685         emulation.  Provide exit, open, close, read, write, lseek, and
2686         unlink.
2687         (sim_io_getstring): New function to return a string from a
2688         simulated memory location.
2689
2690         * sim-io.h (sim_io_syscalls): Add declaration.
2691
2692 Mon Nov 24 12:09:59 1997  Doug Evans  <devans@seba.cygnus.com>
2693
2694         * sim-core.c (sim_core_signal): Fix spelling error in message.
2695
2696         * sim-hrw.c (sim_read): Use read map, not write map.
2697
2698         * Make-common.in (all): Add .gdbinit.
2699         * gdbinit.in: Add dump command.
2700
2701         * sim-model.c (model_options): Use '\0' for `shortopt'.
2702
2703         * sim-trace.c (trace_option_handler): Set state trace file
2704         for --trace-file in addition to cpu's values.
2705         (trace_vprintf): If cpu == NULL, try state's trace file.
2706         (trace_options): Reorganize table, reword some descriptions.
2707
2708 Sun Nov 23 10:57:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2709
2710         * sim-fpu.c (sim_fpu_abs, sim_fpu_neg, sim_fpu_inv), sim-fpu.h:
2711         New functions.
2712
2713 Sat Nov 22 19:16:54 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2714
2715         * sim-reason.c (sim_stop_reason): For sim_signalled, return the
2716         signal untranslated, document problem with this.
2717
2718         * nrun.c (main): Check for a prog name of `*step'.  If present,
2719         step the simulator instead of allowing it to run free.
2720
2721         * sim-signal.c (SIGQUIT): Define on _MSC_VER hosts.
2722
2723         * Make-common.in (sim_main_headers): Add sim-signal.h.
2724
2725 Fri Nov 21 09:32:32 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2726
2727         * sim-signal.c (sim_signal_to_host): Return 0 for SIM_SIGNONE.
2728
2729 Thu Nov 20 20:35:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2730
2731         * sim-signal.h: Start simulator signals at 64 so that host signal
2732         numbers can be detected and reported.
2733
2734         * sim-signal.h (SIM_SIGFPE), sim-signal.h: Add signal.
2735
2736 Wed Nov 19 12:02:41 1997  Doug Evans  <devans@seba.cygnus.com>
2737
2738         * callback.c (cb_host_to_target_stat): Fix return values.
2739
2740         * cgen-sim.h (enum_signal_type): Delete.
2741         (engine_signal): Update prototype.
2742         * cgen-utils.c: Don't include <signal.h>.
2743         (sim_signal_to_host): Delete, lives in sim-signal.c now.
2744         (engine_signal): Update.
2745
2746         * sim-utils.c (sim_state_alloc): Call SIM_STATE_ALLOC if defined.
2747         (sim_state_free): Call SIM_STATE_FREE if defined.
2748
2749         * sim-module.c (sim_module_install): Don't leave any modules
2750         installed if one fails to install.
2751
2752 Wed Nov 19 13:25:48 1997  Michael Meissner  <meissner@cygnus.com>
2753
2754         * sim-options.c: Don't include ../libiberty/alloca-conf.h any
2755         more, since alloca is not used in this file.
2756
2757         * sim-alu.h (ALU{32,64}_*): Rewrite 32 and 64 bit ALU support to
2758         correctly set the carry and overflow bits for those types.
2759         (ALU{8,16,32,64}_{ADD,SUB}_CA): Take VAL argument to add along
2760         with carry, so carry is correct after doing both adds.
2761         (ALU*): Space out '\' to make it easier to read.
2762
2763 Tue Nov 18 15:53:45 1997  Doug Evans  <devans@canuck.cygnus.com>
2764
2765         * sim-core.c (sim_core_signal): Use sim_stopped instead of
2766         sim_signalled.
2767
2768         * sim-signal.c, sim-signal.h: New files.
2769         * Make-common.in (sim-signal.o): Add rule for.
2770         (SIM_NEW_COMMON_OBJS): Add sim-signal.o.
2771         * sim-abort.c: Don't include <signal.h>.
2772         * sim-basics.h: #include "sim-signal.h".
2773         * sim-break.c: Don't include <signal.h>.
2774         (sim_handle_breakpoint): Replace SIGTRAP with SIM_SIGTRAP.
2775         * sim-core.c: Don't include <signal.h>.
2776         (SIGBUS): Delete definition.
2777         (sim_core_signal): Replace SIGSEGV,SIGBUS with SIM_SIGSEGV,SIM_SIGBUS.
2778         * sim-engine.c: Don't include <signal.h>.
2779         (sim_engine_abort): Replace SIGABRT with SIM_SIGABRT.
2780         * sim-reason.c (sim_stop_reason): Call sim_signal_to_host.
2781         * sim-resume.c: Don't include <signal.h>.
2782         (SIGTRAP): Delete definition.
2783         (has_stepped): Replace SIGTRAP with SIM_SIGTRAP.
2784         * sim-stop.c: Don't include <signal.h>.
2785         (control_c_simulation): Replace SIGINT with SIM_SIGINT.
2786         * sim-watch.c: Don't include <signal.h>.
2787         (handle_watchpoint): Replace SIGINT with SIM_SIGINT.
2788
2789         * Make-common.in (SIM_NEW_COMMON_OBJS): New variable.
2790
2791         * sim-base.h (CIA_ADDR): Provide default definition.
2792         * sim-core.c (sim_core_signal): Use CIA_ADDR to fetch value.
2793         * sim-break.c (sim_handle_breakpoint): Likewise.
2794
2795 Mon Nov 17 14:15:31 1997  Doug Evans  <devans@seba.cygnus.com>
2796
2797         * Make-common.in (srccom): New variable.
2798
2799         * Make-common.in (DEP, COMMON_DEP_CFLAGS): Define.
2800         (LIB_OBJS): Add syscall.o.
2801         (gentmap): Pass $(NL_TARGET) to $(CC).
2802         (syscall.o): Add rule for.
2803         (sim_main_headers): Add $(SIM_EXTRA_DEPS).
2804         (sim-bits.o): Depend on $(sim-n-bits_h).
2805         (sim-load.o): Depend on callback.h.
2806
2807         * Make-common.in (cgen-*.o): Update dependencies, mem-ops.h renamed to
2808         cgen-mem.h, sem-ops.h renamed to cgen-ops.h.
2809         * cgen-mem.h, cgen-ops.h: New files.
2810
2811         * aclocal.m4 (--enable-sim-scache): Pass -DWITH_SCACHE=0 for "=no".
2812
2813         * Makefile.in (nltvals.def): Depend on gennltvals.sh.
2814         Rewrite build rule.
2815         * callback.c: #include string.h or strings.h.
2816         #include sys/types.h and sys/stat.h.
2817         (cb_init_syscall_map,cb_init_errno_map,cb_init_open_map): Declare.
2818         (os_get_errno,os_open): Update.
2819         (os_stat,os_fstat): New functions.
2820         (os_init): Initialize syscall_map, errno_map, open_map.
2821         (default_callback): Add entries for os_stat, os_fstat, syscall_map,
2822         errno_map, open_map, signal_map, stat_map.
2823         (cb_read_target_syscall_maps): New function.
2824         (cb_target_to_host_syscall): New function.
2825         (cb_host_to_target_errno): Renamed from host_to_target_errno.
2826         (cb_target_to_host_open): Renamed from target_to_host_open.
2827         (store): New function.
2828         (cb_host_to_target_stat): New function.
2829         * syscall.c: New file.
2830         * gentmap.c (sys_tdefs): New global.
2831         (gen_targ_vals_h): Output target syscall numbers.
2832         (gen_targ_map_c): Update.  Output target syscall translation map.
2833         * gentvals.sh: New first argument `target'.  Preface table with
2834         #ifdef NL_TARGET_$target if non-null target passed.
2835         * gennltvals.sh: New file.
2836         * nltvals.def: Regenerated.
2837
2838 Fri Nov 14 11:33:34 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2839
2840         * sim-n-core.h (sim_core_read_unaligned_N): Return static
2841         sim_core_dummy_M.
2842         (sim_core_dummy_M): Declare.
2843         
2844 Wed Nov 12 18:16:15 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2845
2846         * sim-core.c (sim_core_signal): Print the address of the
2847         instruction.
2848
2849 Thu Nov 13 11:49:41 1997  Doug Evans  <devans@seba.cygnus.com>
2850
2851         * sim-base.h (sim_state_base): Move `magic' to end of struct.
2852
2853         * sim-base.h (sim_state_base): Add member trace_data.
2854         (STATE_TRACE_DATA): New macro.
2855         * sim-trace.h (TRACE_DEBUG_IDX,TRACE_debug): New macros.
2856         ({WITH_,}TRACE_DEBUG_P): New macros.
2857         (STATE_TRACE_FLAGS,STRACE_P,STRACE_DEBUG_P): New macros.
2858         (_sim_cpu): Delete forward reference.
2859         (debug_printf): Update.
2860         * sim-trace.c (OPTION_TRACE_DEBUG): Define.
2861         (trace_options): Add --trace-debug.
2862         (set_trace_options): Handle it.
2863         (trace_option_handler): Likewise.
2864         (trace_install): Init state trace_data struct.
2865         (trace_uninstall): Close state trace file.
2866         * sim-events.c (ETRACE): Only print source file and line number if
2867         --trace-debug.
2868         * sim-n-core.h (sim_core_trace_M): Likewise.
2869
2870         * sim-core.c (sim_core_signal): Add missing "\n" in message.
2871
2872 1997-11-13  Felix Lee  <flee@cygnus.com>
2873
2874         * sim-n-core.h (sim_core_read_unaligned_N): illegal empty
2875         initializer.
2876         * sim-types.h (unsigned128,signed128): fix typo for MSVC.
2877
2878 Wed Nov 12 12:18:08 1997  Doug Evans  <devans@canuck.cygnus.com>
2879
2880         * aclocal.m4 (SIM_AC_OPTION_SCACHE): Fix typo.
2881
2882         * Make-common.in (BUILT_SRC_FROM_COMMON): Remove files no longer
2883         built this way.
2884         (sim-config.o): Remove non-existent $(sim-nconfig_h) dependency.
2885         (clean): Don't delete $(BUILT_SRC_FROM_COMMON) if building in
2886         source tree.
2887
2888 Tue Nov 11 13:28:02 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2889
2890         * sim-events.c (sim_events_process): Re-compute the time -
2891         update_time_from_event - as each event is processed. Reverses
2892         previous change.
2893
2894 Fri Nov  7 00:37:36 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2895
2896         * callback.c (os_poll_quit): Replace _WIN32 with _MSC_VER.
2897
2898 Fri Nov  7 00:37:36 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2899
2900         * sim-events.c (sim_events_process): Delete redundant call to
2901         update_time_from_event.
2902         (sim_events_slip): Always decrement time_from_event.
2903         (sim_events_tick, sim_events_deschedule, update_time_from_event):
2904         Delete assertion that time_from_event >=0 when work in queue, no
2905         longer applicable.
2906
2907 Thu Nov  6 12:06:46 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2908
2909         * sim-options.c (STANDARD_OPTIONS): Change OPTION_* to an enum.
2910         (standard_option_handler): Update.
2911
2912         * sim-options.h: Clarify documentation.
2913         (OPTION_LONG_ONLY_P): Delete definition.
2914         (OPTION_VALID_P): Define.
2915         
2916         * sim-options.c (sim_print_help): Allow short only options.
2917         (sim_parse_args): Ditto.
2918         (sim_args_command): Skip short only options.
2919         (sim_parse_args): Allocate space for NUM_OPTS not just 256. Make
2920         separate entries for short and long options in the HANDLERS and
2921         ORIG_VAL tables.
2922         (sim_parse_args): Disable argument permutation.
2923
2924 Wed Nov  5 13:40:31 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2925
2926         * sim-core.h (DECLARE_SIM_CORE_WRITE_N. DECLARE_SIM_CORE_READ_N):
2927         Add argument M, size of data type.
2928         (sim_core_read_misaligned_3, sim_core_write_misaligned_3):
2929         Declare, ditto for 5, 6 & 7 byte transfers.
2930         (sim_core_write_unaligned_1, sim_core_write_unaligned_1): Define
2931         as aligned variant.
2932         
2933         * sim-n-core.h (sim_core_trace_M): Rename from
2934         sim_core_trace_N. Add nr_bytes argument. Replace transfer argument
2935         with transfer type. Print transfer direction.  Handle 1 and 2 byte
2936         transfers.
2937         (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Trace
2938         unaligned accesses.
2939         (unsigned_M, T2H_M, H2T_M): Rename from unsigned_N, T2H_N, H2T_N.
2940         Update all functions.
2941
2942         * sim-core.c: Generate functions starting with 16 not 1.
2943         (sim_core_read_unaligned_3): Generate. Ditto for 3 byte write and
2944         all 5, 6 & 7 byte transfers.
2945
2946         * sim-n-core.h (sim_core_read_misaligned_N,
2947         sim_core_write_misaligned_N): Implement.
2948
2949 Mon Nov  3 15:03:04 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2950
2951         * sim-endian.h (U16_8): Implement
2952
2953         * sim-endian.c (sim_endian_split_16, sim_endian_join_16): New functions
2954
2955         * sim-endian.h (VL8_16, VH8_16): Implement.
2956
2957         * sim-memopt.c (memory_option_handler): Typecast 64bit value to
2958         long in printf.
2959         (memory_option_handler): Only zalloc modulo bytes when non-zero.
2960         (memory_option_handler): Skip comma in alias address list
2961
2962 Fri Oct 31 13:03:33 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2963
2964         * sim-memopt.c (do_memopt_add, do_memopt_delete): Add level and
2965         space params.
2966         (parse_size, parse_addr): New functions
2967         (memory_option_handler, memory_options): Parse address & size
2968         using new functions. Pass level, space, modulo to do_memopt_add &
2969         do_memopt_del.
2970
2971         * sim-memopt.h (struct _sim_memopt): Add level & space fields.
2972
2973         * sim-core.h (sim_core_arrach, sim_core_detach): Replace
2974         `attach_type attach' argument with `unsigned level' argument.
2975         Document.
2976
2977         * sim-core.c (new_sim_core_mapping, sim_core_map_attach,
2978         sim_core_attach): Replace argument attach with level.  Update
2979         verification of arguments.
2980         (sim_core_map_detach, sim_core_detach): Replace argument attach
2981         with level.
2982
2983         * sim-basics.h (enum _attach_type): Delete.
2984
2985 Thu Oct 30 13:45:00 1997  Doug Evans  <devans@seba.cygnus.com>
2986
2987         * sim-core.h (sim_core_write_8): Define.
2988
2989 Tue Oct 28 12:29:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2990
2991         * sim-bits.h: Document ROTn macro.
2992
2993         * sim-endian.h (H2T): Handle 16 byte variables.
2994
2995         * sim-n-core.h (sim_core_read_unaligned_N): Return a dummy when an
2996         error.
2997
2998         * sim-core.c: Do not generate sim_core_*_word.
2999
3000         * sim-n-core.h (sim_core_trace_N): Add line_nr argument.
3001         (sim_core_write_aligned_N, sim_core_read_aligned_N): Update.
3002
3003         * sim-core.h (sim_core_read_unaligned_word,
3004         sim_core_read_aligned_word, sim_core_read_word,
3005         sim_core_write_unaligned_word, sim_core_write_aligned_word,
3006         sim_core_write_word): Change to macros that map onto sim_core_*_N.
3007
3008 Mon Oct 27 11:25:10 1997  Doug Evans  <devans@canuck.cygnus.com>
3009
3010         * sim-n-endian.h: Add TAGS entrys for 16 byte versions.
3011
3012         * sim-endian.h: Disable 16 byte support.
3013
3014 Mon Oct 27 12:00:48 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3015
3016         * sim-endian.c (_SWAP_16): Define.  Generate 126 bit swap code.
3017
3018         * sim-n-core.h (sim_core_trace_N): New function.
3019         (sim_core_read_aligned_N, sim_core_write_aligned_N): Use,
3020         (sim_core_read_unaligned_N): Do not retyrn bogus value wden error.
3021
3022         * sim-endian.h:  Add 128 bit variant.
3023
3024         * sim-core.h, sim-core.c: Add 128 bit variant.
3025
3026         * sim-types.h: Add signed128 and unsigned128 types using a struct.
3027
3028 Fri Oct 24 11:33:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3029
3030         * sim-events.c (sim_events_process): Clear events->work_pending.
3031         (sim_events_tickn, sim_events_tick): Accumulate, instead of
3032         setting, nr_ticks_to_process.
3033         (sim_events_preprocess): Allow nr_ticks_to_process to be non-zero
3034         when the event queue isn't next.
3035
3036         * sim-events.h, sim-events.c (sim_events_slip): New function.
3037
3038 Wed Oct 22 14:18:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3039
3040         * sim-hload.c (sim_load): Pass lma_p==0 and do_load=sim_load.
3041
3042         * sim-utils.h, sim-load.c (sim_load_file): Add lma_p and do_load
3043         arguments.
3044
3045 Tue Oct 21 18:37:57 1997  Doug Evans  <devans@canuck.cygnus.com>
3046
3047         * nrun.c (main): Remove useless test of name != NULL.
3048         Exit if bfd_openr fails.  Call bfd_check_format after bfd_openr.
3049
3050 Tue Oct 21 10:42:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3051
3052         * sim-fpu.c (EXPMAX): Type is unsigned.
3053         (MIN_INT, MAX_INT): Type is signed64.
3054         (i2fpu): Type of val is signed64.
3055
3056 Tue Oct 21 10:42:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3057
3058         * sim-profile.h (PROFILE_PC_BUCKET_SIZE): Treat a shift of zero as
3059         a bucket size of zero.
3060
3061         * sim-profile.c (OPTION_PROFILE_PC_GRANULARITY,
3062         OPTION_PROFILE_PC): Define.
3063         (profile_option_handler): Add support for --profile-pc and
3064         --profile-pc-granularity options.
3065         (profile_pc_init): When possible, compute nr buckets from bucket
3066         size.
3067
3068         * sim-profile.c (profile_pc_init): Align the profile-pc end
3069         address with the profile-pc bucket size.
3070
3071         * sim-profile.h (PROFILE_PC_NR_BUCKETS): Rename PROFILE_PC_SIZE to
3072         something less ambiguous.
3073         (PROFILE_PC_BUCKET_SIZE): Ditto for PROFILE_PC_SAMPLE_SIZE.
3074
3075         * sim-profile.c (profile_pc_cleanup): New function. Move
3076         profile_pc_uninstall code to here.
3077         (profile_pc_uninstall): Call.
3078         (profile_pc_init): Call.
3079
3080 Mon Oct 20 17:23:58 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3081
3082         * sim-profile.c (profile_print_pc): Dump pc profile to dmon.out
3083         file using BSD gprof format.
3084
3085         * sim-bits.h (LSBIT, MSBIT, BIT): Force result to type
3086         unsigned_word.
3087         (LSBIT8, LSBIT16, LSBIT32, LSBIT64, MSBIT8, MSBIT16, MSBIT32,
3088         MSBIT64): Force result to unsignedN.
3089
3090 Thu Oct 16 11:38:56 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3091
3092         * sim-alu.h (ALU16_BEGIN, ALU32_BEGIN, ALU64_BEGIN): Drop opening
3093         brace from macro.
3094         (ALU8_BEGIN, ALU8_SET, ALU8_ADD, ALU8_SUB, ALU8_NEGATE): Define.
3095         (ALU16_ADD, ALU16_SUB, ALU16_NEGATE): Simplify arrithmetic.
3096         (ALU32_ADD, ALU32_SUB, ALU32_NEGATE): Simplify arrithmetic.
3097         (ALU64_ADD, ALU64_SUB, ALU64_NEGATE): Simplify arrithmetic.
3098
3099 Wed Oct 15 09:24:19 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3100
3101         * sim-core.h (struct _sim_core_mapping): Change free_buffer to
3102         type void*.
3103
3104         * sim-core.c (sim_core_uninstall, new_sim_core_mapping,
3105         sim_core_map_attach, sim_core_map_detach): Change free_buffer to
3106         type void*.
3107         (sim_core_attach): Rename buffer_freed to free_buffer, type
3108         void*. Ensure that allocated buffer is alligned according to
3109         region's address.
3110
3111 Mon Oct 13 11:34:50 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3112
3113         * sim-alu.h (ALU64_HAD_OVERFLOW): Define.
3114         (ALU64_SUB): Define.
3115
3116         * Make-common.in (all): Build SIM_EXTRA_ALL first.
3117         (.gdbinit): Remove dependencies, generate once per build.
3118
3119 Tue Oct 14 19:20:09 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3120
3121         * sim-n-core.h (sim_core_read_aligned_N,
3122         sim_core_write_aligned_N): Make xaddr param type address_word not
3123         unsigned_word.
3124
3125 Fri Oct  3 09:49:18 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3126
3127         * sim-fpu.h, sim-fpu.c: Rewrite.  Change sim_fpu object to an
3128         unpacked floating point struct.  Pass sim_fpu object by reference.
3129         Add preliminary support for rounding modes.
3130         
3131 Fri Oct  3 09:28:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3132
3133         * configure: Regenerated to track ../common/aclocal.m4 changes.
3134
3135 Thu Oct  2 19:43:52 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3136
3137         * aclocal.m4 (sim-bitsize): Fix typo, WITH_TARGET_WORD_BITSIZE not
3138         WITH_TARGET_BITSIZE.
3139
3140 Thu Sep 25 23:20:20 1997  Felix Lee  <flee@yin.cygnus.com>
3141
3142         * sim-profile.c (profile_print_core): label needs empty statement.
3143
3144 Thu Sep 25 11:20:47 1997  Stu Grossman  <grossman@babylon-5.cygnus.com>
3145
3146         * sim-break.c (sim_set_breakpoint sim_clear_breakpoint):  Use ZALLOC
3147         and zfree instead of xmalloc and free.  Prevents warnings.
3148
3149 Wed Sep 24 17:38:57 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3150
3151         * configure: Regenerated to track ../common/aclocal.m4 changes.
3152
3153 Wed Sep 24 17:23:31 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3154
3155         * Make-common.in (SIM_BITSIZE): Assign from configured value.
3156         (CONFIG_CFLAGS): Add SIM_BITSIZE.
3157
3158         * aclocal.m4 (--enable-sim-bitsize): Developer option for
3159         controling the bitsize/msb of the target.
3160
3161 Wed Sep 24 17:41:40 1997  Stu Grossman  <grossman@babylon-5.cygnus.com>
3162
3163         * Make-common.in:  New files sim-break.c, sim-break.h.
3164         * sim-base.h:  Add point to breakpoint list to sim_state_base.
3165         * sim-break.c sim-break.h:  New modules that implement intrinsic
3166         breakpoint support.
3167         * sim-module.c:  Add breakpoint module.
3168         
3169 Tue Sep 23 00:26:39 1997  Felix Lee  <flee@yin.cygnus.com>
3170
3171         * sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
3172         an hour.
3173         * sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
3174         if (0) { 1 % 0; }
3175         * sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
3176         (SIGBUS) define for Windows.
3177         * sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
3178         * sim-resume.c: define SIGTRAP for windows.
3179         * sim-xcat.h: use token pasting if ALMOST_STDC.
3180
3181 Tue Sep 23 11:04:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3182
3183         * Make-common.in (SIM_SCACHE, SIM_DEFAULT_MODEL): Assign
3184         configured values.
3185         (CONFIG_CFLAGS): Add same.
3186         
3187 Mon Sep 22 17:20:27 1997  Felix Lee  <flee@cygnus.com>
3188
3189         * sim-types.h (SIGNED64): ##i64 when _MSC_VER, not _WIN32.
3190         (SIGNED32): use ##i32.
3191
3192 Tue Sep 23 11:04:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3193
3194         * configure: Regenerated to track ../common/aclocal.m4 changes.
3195
3196 Tue Sep 23 10:07:47 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3197
3198         * aclocal.m4 (sim-endian): Simplify logic determining [default]
3199         endian of target.
3200
3201         * Make-common.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
3202         SIM_HOSTENDIAN, SIM_RESERVED_BITS, SIM_ASSERT, SIM_FLOAT,
3203         SIM_HARDWARE, SIM_INLINE, SIM_PACKAGES, SIM_REGPARM, SIM_SMP,
3204         SIM_STDCALL, SIM_XOR_ENDIAN): Assign configured values.
3205         (CONFIG_CFLAGS): Add same.
3206
3207         * aclocal.m4: Perform AC_SUBST on optional options.
3208
3209 Mon Sep 22 11:46:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3210
3211         * sim-config.h (WITH_DEFAULT_ALIGNMENT): Don't hardwire any alignment.
3212
3213         * sim-options.c (standard_option_handler): Typo in warning message.
3214
3215         * sim-base.h (STATE_MODEL): Make conditional on SIM_HAVE_MODEL.
3216
3217         * sim-profile.c (profile_print_insn): Check 0 .. MAX_INSN for any
3218         insn count.  Make count conditional on there being a valid
3219         INSN_NAME.
3220         (profile_pc_init): Make default PC profile frequency an arbitrary
3221         256.
3222
3223         * sim-base.h: Ditto.
3224
3225         * sim-profile.h (WITH_PROFILE_MODEL_P): Only enable modeling when
3226         SIM_HAVE_MODEL.
3227
3228         * sim-model.h (struct MACH): Depreciate, to be replaced by bfd
3229         archure struct.
3230
3231 Mon Sep 22 11:46:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3232
3233         * configure: Regenerated to track ../common/aclocal.m4 changes.
3234
3235 Mon Sep 22 11:45:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3236
3237         * aclocal.m4 (sim_alignment): Simplify logic for selecting the
3238         configured alignment.
3239
3240 Fri Sep 19 17:45:25 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3241
3242         * configure: Regenerated to track ../common/aclocal.m4 changes.
3243
3244 Fri Sep 19 17:26:14 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3245
3246         * sim-config.c (sim_config): Check for default alignment.
3247
3248         * sim-options.c (standard_option_handler): Add alignment option.
3249
3250         * aclocal.m4 (sim_alignment): Allow configuration of hardwired and
3251         default alignment requirements on memory accesses.
3252         
3253 Fri Sep 19 11:51:35 1997  Jeffrey A Law  (law@cygnus.com)
3254
3255         * sim-load.c (sim_load_file): Return failure if the executable
3256         had no loadable sections.
3257
3258 Wed Sep 17 13:33:28 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3259
3260         * sim-events.c (ETRACE): Use trace_printf not sim_io_printf for
3261         trace output.
3262
3263         * sim-core.c (sim_core_signal): When bad access halt simulator
3264         SIGSEGV / SIGBUS instead of aborting.
3265         (signal.h): Include.
3266         
3267         * sim-watch.c (sim_watchpoint_install): Handler for watchpoint
3268         options was missing.
3269
3270         * sim-bits.h (MOVED): Define
3271
3272 Wed Sep 17 10:33:28 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3273
3274         * sim-alu.h (ALU32_HAD_OVERFLOW): Pacify GCC, Use MSBIT instead of
3275         BIT.
3276
3277         * sim-bits.h (LSBIT, MSBIT): Check for overflow of shift value.
3278
3279         * sim-bits.c: Add 8 bit versions of bit macros.
3280
3281         * sim-bits.h: Ditto.
3282
3283 Tue Sep 16 16:15:16 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3284
3285         * sim-bits.c (LSSEXT, MSSEXT): Replace SEXT.
3286         (LSINSERTED, MSINSERTED): Ditto for INSERTED.
3287         
3288         * sim-n-bits.h (MSSEXTn, LSSEXTn): Replace SEXTn.
3289         (LSINSERTDn, MSINSERTEDN): Ditto for INSERTEDn.
3290         
3291         * sim-bits.h (SEXT*): Define as MSEXT/LSEXT.
3292         (INSERTED*): Ditto for LSINSERTED/MSINSERTED.
3293         
3294 Mon Sep 15 17:36:15 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3295
3296         * aclocal.m4 (SIM_AC_COMMON): Add optional config.h file argument.
3297         configure.in: Output to cconfig.h instead of config.h.
3298
3299         * configure: Regenerated to track ../common/aclocal.m4 changes.
3300
3301 Mon Sep 15 15:39:28 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3302
3303         * sim-utils.c (sim_analyze_program): Set STATE_ARCHITECTURE from
3304         BFD if known.
3305
3306 Tue Sep  9 21:46:46 1997  Felix Lee  <flee@cygnus.com>
3307
3308         * callback.c (os_write): divert stdout and stderr to their
3309         respective hooks.
3310
3311 Thu Sep 11 10:08:48 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3312
3313         * sim-profile.c (profile_print_speed): Call
3314         sim_events_elapsed_time instead of PROFILE_EXEC_TIME for moment.
3315
3316         * sim-events.c (sim_events_elapsed_time): New function return nr
3317         host MS consumed by the simulator.
3318         (sim_watch_valid): Use.
3319
3320         * sim-module.c (modules): Install sim_events very very early.
3321
3322         * sim-profile.c (profile_print): Call profile_print_pc.
3323         (print_bar):
3324         (profile_pc_init): New function, set up processor for PC
3325         profiling.
3326         (profile_print_pc): New function, print a PC profile.
3327         (profile_pc_event): New function, sample PC.
3328
3329         * sim-profile.h (PROFILE_PC_COUNT, PROFILE_PC_START,
3330         PROFILE_PC_END, PROFILE_PC_SHIFT, PROFILE_PC_SAMPLE_SIZE): Add to
3331         profile struct.
3332
3333         * sim-options.c (sim_print_help): Pacify GCC.
3334
3335         * sim-n-core.h (sim_core_read_aligned_N,
3336         sim_core_write_aligned_N): Add un-conditional profile call.
3337         (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Add
3338         profile call when aligned read/write isn't used.
3339
3340         * sim-base.h: Include sim-profile, sim-model after sim-core &
3341         sim-events allow sim-core to define useful values.
3342
3343         * sim-profile.c (OPTION_PROFILE_CORE): Define.
3344         (profile_option_handler, profile_options): Add support for
3345         --profile-core option.
3346         (print_bar): Include when core profiling.
3347         (profile_print_core): New function, print core profile.
3348
3349         * sim-config.c (print_sim_config): Print profile status.
3350
3351         * sim-profile.h (PROFILE_NEXT_IDX, PROFILE_core,
3352         WITH_PROFILE_PC_P): Define.
3353         (PROFILE_CORE_COUNT): Count each core-map/size separatly.
3354         (PROFILE_COUNT_CORE): Define.
3355
3356 Thu Sep 11 08:44:52 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3357
3358         * sim-watch.c (handle_watchpoint): Pass a char** index into the
3359         interrupt_names array as the data.
3360         (sim-watch.h): Document.
3361
3362 Wed Sep 10 16:15:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3363
3364         * sim-options.c (sim_print_help): When the doc string is to long
3365         word wrap it.
3366
3367         * sim-watch.c (sim_watchpoint_install): Use option.doc_name so
3368         that only the first few the watch options are listed.  Generate
3369         meanginful usage messages.
3370
3371         * sim-options.h (struct OPTION): Clarify use of doc_name field
3372         
3373 Wed Sep 10 13:23:24 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3374
3375         * sim-options.c (OPTION_ARCHITECTURE_INFO): New option.
3376         (standard_option_handler): Handle --architecture-info.
3377
3378 Tue Sep  9 21:46:46 1997  Felix Lee  <flee@cygnus.com>
3379
3380         * sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
3381         illegal zero-sized array.
3382         * sim-core.c (sim_core_xor_read_buffer): same.
3383
3384 Tue Sep  9 11:20:35 1997  Doug Evans  <dje@canuck.cygnus.com>
3385
3386         * nltvals.def: Regenerate.
3387
3388 Tue Sep  9 02:10:36 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3389
3390         * sim-fpu.c (DP_FRACHIGH2): Define LL using SIGNED64.
3391
3392 Mon Sep  8 12:22:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3393
3394         * sim-bits.c (MASKED): Delete.
3395         (EXTRACTED): Delete.
3396         (LSEXTRACTED, MSEXTRACTED): New functions.
3397
3398         * sim-n-bits.h (MASKEDn): Delete, define as MSMASKED or LSMASKED.
3399         (MSMASKEDn, LSMASKEDn): Add last argument.
3400         (MSMASK*): Ditto.
3401         
3402         * sim-bits.h (EXTEND8, EXTEND16): Define.
3403         (EXTRACTED64): Define as 64 bit extract, not 32 bit.
3404
3405         * sim-run.c (sim_engine_run): Use CPU_CIA macro.
3406
3407         * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use CPU_CIA to get at
3408         current instruction address.
3409
3410         * sim-inline.h (*_ENGINE): Define.
3411
3412 Fri Sep  5 08:39:02 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3413
3414         * sim-core.c (sim_core_attach): Fix checks of modulo/mask.
3415
3416         * sim-watch.c (delete_watchpoint): Delete by ident and type.
3417         (watch_option_handler): Call delete_watchpoint with ident or type.
3418         (sim_watchpoint_install): Create interrupt specific watchpoint
3419         commands on the fly.
3420         (do_watchpoint_create): New function, create a watch point using
3421         type/int-nr info encoded in the option nr.
3422         (do_watchpoint_info): New function.  List active watchpoints.
3423
3424         * sim-watch.h: Change data structure to a list.
3425
3426         * sim-memopt.c (memory_option_handler): Require explicit "all"
3427         before deleting all memory regions.
3428
3429         * sim-utils.c (sim_do_commandf): New function, printf version of
3430         sim_do_command.
3431
3432         * sim-basics.h (asprintf, vasprintf): Hack, define for CYGWIN32. 
3433         
3434         * sim-alu.h (ALU64_ADD): Use explicit MSEXTRACTED64, do not assume
3435         bit endianness.
3436         (SIGNED64, UNSIGNED64): Delete.
3437         (ALU64_ADD): Don't rely on bit endianness.
3438         (ALU64_BEGIN): Define.
3439
3440         * sim-n-bits.h (MSEXTRACTEDn, LSEXTRACTED): New functions.
3441         (EXTRACTEDn): Delete, define as either LSEXTRACTED or MSEXTRACTED.
3442
3443         * sim-types.h (SIGNED64, UNSIGNED64): New macros, attach relevant
3444         suffix - u64, LL - to 64 bit constants.
3445
3446 Thu Sep  4 09:27:54 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3447
3448         * sim-config.c (sim_config): Add assert for SIM_MAGIC_NUMBER.
3449
3450         * sim-utils.h (NZALLOC): Define - zalloc * N.
3451
3452         * sim-hrw.c (sim_read, sim_write): New file.  Provide generic
3453         implementation of read/write functions.
3454
3455         * Make-common.in (sim-hrw.o): New target.
3456
3457         * sim-base.h (STATE_MEMOPT_P): Delete, simulators _always_ add
3458         memory.
3459
3460         * sim-memopt.c (memory_option_handler): Implement memory-size
3461         command. Implement memory-alias command.  Let memory-delete delete
3462         all memory regions.
3463         (add_memopt): New function.  Add a memory region.
3464         (do_memopt_delete): New function. Delete a memory region.
3465
3466         * sim-utils.c (sim_elapsed_time_get): Never return zero.
3467
3468         * sim-core.c (sim_core_detach): New function.
3469         (sim_core_map_detach): New function. Perform the actual detach.
3470         (sim_core_init): Move initialization code from here.
3471         (sim_core_install): To here.
3472         (sim_core_uninstall): And here.
3473
3474         * sim-module.c: Add memopt module.
3475
3476         * sim-base.h (STATE_MEMOPT, STATE_MEMOPT_P): Add memopt to
3477         simulator base type.
3478
3479         * Make-common.in (sim_main_headers): Add sim-memopt.h
3480         (sim-memopt.o): New target.
3481
3482         * sim-core.c (sim_core_install): Add core_options to the option
3483         table.
3484
3485         * sim-watch.c (watch_options): Make --delete-watch a synonym for
3486         --watch-delete.
3487
3488         * sim-config.h (WITH_MODULO_MEMORY): Define as 0.  Update
3489         comments.
3490
3491         * sim-core.h (struct _sim_core_mapping): Change nr_bytes to type
3492         address_word, add mask member.
3493         
3494         * sim-core.h, sim-core.c (sim_core_attach): Make nr_bytes of type
3495         address_word, allow for 64bit targets in 32bit host. Add modulo
3496         argument.
3497         (sim_core_map_attach): Ditto.
3498         (new_sim_core_mapping): Ditto.
3499         (sim_core_translate): Mask address when modulo memory.
3500
3501 Wed Sep  3 17:32:54 1997  Doug Evans  <dje@seba.cygnus.com>
3502
3503         * sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
3504
3505         * gdbinit.in: New file.
3506         * aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
3507         * Make-common.in (distclean): Delete .gdbinit.
3508         (.gdbinit): Add rule for.
3509         * configure: Regenerated to track ../common/aclocal.m4 changes.
3510
3511         * Make-common.in (cgen-run.o): Add rule for.
3512
3513 Wed Sep  3 10:08:21 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3514
3515         * sim-resume.c (sim_resume): Suspend/resume the simulator.
3516
3517         * sim-events.c (sim_watch_valid): Compute total elapsed time from
3518         both resumed and previous elapsed time.
3519         (sim_events_init): Set initial_wallclock and current_wallclock to
3520         zero.
3521         (sim_events_install): Install sim_events_suspend and
3522         sim_events_resume.
3523         (sim_events_watch_clock): Allow for suspended simulator when
3524         computing the time of the clock event.
3525
3526         * sim-events.h (struct _sim_event): Add resume_wallclock, rename
3527         initial_wallclock to elapsed_wallclock, set both to zero.
3528         (sim_events_init, sim_events_uninstall): Delete prototypes.
3529
3530         * sim-module.h (MODULE_SUSPEND_FN, MODULE_RESUME_FN): Define types.
3531         
3532         * sim-module.c(sim_module_resume, sim_module_suspend): New
3533         functions.
3534
3535 Wed Sep  3 10:08:21 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3536
3537         * sim-core.c (sim_core_map_attach): Clarify memory overlap error
3538         message.
3539
3540 Tue Sep  2 14:57:06 1997  Doug Evans  <dje@canuck.cygnus.com>
3541
3542         * Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
3543         * Make-common.in (TAGS): Likewise.
3544         * sim-n-bits.h: Add TAGS comments for all functions.
3545         * sim-n-core.h: Likewise.
3546         * sim-n-endian.h: Likewise.
3547
3548 Mon Sep  1 10:50:11 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3549
3550         * sim-utils.c (sim_state_alloc): Set CPU backlinks, callback and
3551         kind.
3552         
3553         * sim-base.h (sim_state_alloc): Add callback and kind arguments.
3554         
3555         * sim-base.h (INVALID_INSTRUCTION_ADDRESS): Add default
3556         definition.
3557
3558 Sat Aug 30 09:47:21 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3559
3560         * sim-fpu.c (DP_GARDMSB, ...): Make unsigned.
3561         (DP_FRACHIGH, DP_FRACHIGH2, ..): Use MSMASK to avoid LL.
3562
3563 Fri Aug 29 13:37:44 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3564
3565         * sim-core.c (sim_core_map_attach): Cast attach enum to int.
3566         (sim_core_xor_read_buffer, sim_core_xor_write_buffer): Make
3567         nr_transfered and nr_this_transfer unsigned.
3568
3569         * sim-events.c (sim_events_tickn): N is signed, as limited to
3570         MAXINT.
3571
3572         * sim-n-endian.h (offset_N): Change size to unsigned.
3573
3574         * callback.c (os_poll_quit): Add prototypes for kbhit and getkey.
3575
3576 Fri Aug 29 10:10:53 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3577
3578         * sim-utils.c (sim_copy_argv): Delete, replaced by dupargv.
3579
3580         * sim-options.c (sim_parse_args): Use dupargv.
3581
3582 Thu Aug 28 10:36:34 1997  Doug Evans  <dje@canuck.cygnus.com>
3583
3584         * sim-options.c (standard_option_handler): Use xstrdup, not strdup.
3585
3586 Thu Aug 28 12:09:15 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3587
3588         * sim-base.h (STATE_ARCHITECTURE, STATE_TARGET): Add to simulator
3589         base type.
3590
3591         * sim-options.c (standard_options): Add --architecture=MACHINE and
3592         --target=TARGET options.
3593         (OPTION_ARCHITECTURE, OPTION_TARGET): Define.
3594         (standard_option_handler): Handle architecture and target options.
3595         (bfd.h): Include.
3596         
3597         * sim-utils.c (sim_analyze_program): Pass STATE_TARGET to
3598         bfd_openr.
3599         (sim_analyze_program): Set prog_bfd architecture from
3600         STATE_ARCHITECTURE if known.
3601
3602 Wed Aug 27 18:13:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3603
3604         * configure: Regenerated to track ../common/aclocal.m4 changes.
3605         * config.in: Ditto.
3606
3607 Wed Aug 27 18:11:30 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3608
3609         * aclocal.m4 (enable-sim-warnings): Remove comment stating
3610         that option does not apply to certain files.
3611
3612 Wed Aug 27 15:13:04 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3613
3614         * sim-bits.h (LSBIT8, LSBIT16, LSBIT32, LSBIT64, LSBIT, MSBIT8,
3615         MSBIT16, MSBIT32, MSBIT64, MSBIT): New macros - single bit as
3616         offset from MSB/LSB.
3617
3618         * sim-endian.h (A1_8, A2_8, A4_8, A1_4, A2_4, A1_2): New macro,
3619         access address of sub word quantity of a hosts 16, 32, 64 bit word
3620         type.
3621         (V1_2, V1_4, V2_4, V1_8, V2_8, V4_8): Ditto for values.
3622         (U8_1, U8_2, U8_4, U4_1, U4_2, U2_1): Ditto for set of values.
3623         (V2_H1, V2_L1, V4_H2, V4_L2, V8_L4, V8_H4): Given N byte argument,
3624         return N*2 byte value with argument in Hi/Lo word.  Renamed from
3625         V1_H2, V1_L2, V2_H4, V2_L4, V4_H8, V4_L8.
3626         
3627         * sim-alu.h (ALU32_HAD_OVERFLOW): Use 64 bit mask not 32bit.
3628         (ALU16_HAD_CARRY, ALU32_HAD_CARRY, ALU16_HAD_OVERFLOW): Use MSBIT
3629         so that bit offset is explicit.
3630
3631 Wed Aug 27 11:55:35 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3632
3633         * sim-utils.c (sim_analyze_program): Add prog_name argument.
3634         Update STATE_PROG_BFD when needed with a dup'd copy of the
3635         program.
3636
3637         * sim-config.c (sim_config): Delete ABFD argument, use
3638         STATE_PROG_BFD directly.
3639
3640 Tue Aug 26 12:55:26 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3641
3642         * run.c (main): Pass the open ABFD to sim_create_inferior.
3643         
3644         * nrun.c (main): Determine prog_bfd.  Pass to sim_create_inferior
3645         and sim_load.
3646         (bfd.h): Include.
3647         
3648         * sim-hload.c (sim_load): New file. Implement generic sim_load for
3649         hardware only simulator targets.
3650
3651         * Make-common.in (sim-hload.o): Add rule.
3652
3653 Wed Aug 27 09:51:42 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3654
3655         * sim-utils.c (sim_copy_argv): Rewrite to match malloc strategy
3656         used by copyargv and freeargv.
3657
3658         * sim-options.c (sim_parse_args): Save a copy of PROG-ARGS in
3659         STATE_PROG_ARGV, not just a pointer.
3660
3661 Mon Aug 25 17:50:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3662
3663         * configure: Regenerated to track ../common/aclocal.m4 changes.
3664         * config.in: Ditto.
3665
3666 Mon Aug 25 12:11:06 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3667
3668         * aclocal.m4 (sim-endian): Add second argument to
3669         SIM_AC_OPTION_ENDIAN.  First is hardwired endian, second is
3670         default endian when not hardwired.
3671
3672         * sim-config.h (WITH_DEFAULT_TARGET_BYTE_ORDER): New macro, if all
3673         else failes value for target byte order.
3674
3675         * sim-config.c (sim_config): Add abfd arguments. Set
3676         STATE_PROG_BFD accordingly.  Determine prefered_target_byte_order
3677         from same.
3678         (sim_config): Return SIM_RC, don't abort.
3679         (bfd.h): Include.
3680         
3681         * run.c (main): Update call to sim_open - add ABFD argument.
3682         * nrun.c (main): Add NULL ABFD argument.
3683
3684 Thu Aug 14 12:48:57 1997  Doug Evans  <dje@canuck.cygnus.com>
3685
3686         * callback.c (os_poll_quit): Make static.
3687         Call sim_cb_eprintf, not p->eprintf.
3688         (sim_cb_printf, sim_cb_eprintf): New functions.
3689         * sim-utils.h (sim_cb_printf, sim_cb_eprintf): Declare.
3690
3691         * sim-basics.h (zalloc,zfree,sim_add_commas,SIM_ELAPSED_TIME,
3692         sim_elapsed_time_get,sim_elapsed_time_since): Move decls to
3693         sim-utils.h. #include sim-utils.h.
3694         * sim-utils.h: Above decls moved here.
3695         (sim_analyze_program,sim_load_file): Use `struct _bfd', not `bfd'.
3696
3697         * sim-watch.c (action_watchpoint): Fix thinkos.
3698
3699 Thu Jul 24 08:48:05 1997  Stu Grossman  (grossman@critters.cygnus.com)
3700
3701         * sim-types.h:  Fix defs of 64 bit data types for MSVC.
3702
3703 Tue Jul 22 10:35:37 1997  Doug Evans  <dje@canuck.cygnus.com>
3704
3705         * sim-n-core.h (sim_core_write_unaligned_N): Add missing break
3706         to FORCED_ALIGNMENT case.
3707
3708 Thu Jun  5 13:48:37 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3709
3710         * callback.c (target_to_host_open): Handle hosts with O_BINARY.
3711
3712 Thu Jun  5 08:47:10 1997  Jeffrey A Law  (law@cygnus.com)
3713
3714         * Make-common.in (libsim.a): Fix typo.
3715
3716 Thu Jun  5 13:48:37 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3717
3718         * nrun.c (main): Verify the structure returned before using it.
3719
3720 Wed Jun  4 11:44:06 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3721
3722         * sim-config.h (WITH_ENGINE): Enable the sim-engine module by
3723         default.
3724
3725         * sim-engine.c (sim_engine_install): New function.  Install the
3726         engine init functions.
3727         (sim_engine_init): [Re]initialize the simulator engine.
3728         
3729         * sim-module.c: Add sim_engine to list of modules that always
3730         install.
3731
3732 Tue Jun  3 04:52:04 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3733
3734         * sim-watch.c (schedule_watchpoint): Use sim_unschedule_watchpoint
3735         to remove the old watchpoint, not delete_watchpoint.
3736         (watch_option_handler): Action the correct watchpoint, not just
3737         cycles.
3738
3739 Wed May 28 14:47:41 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3740
3741         * sim-n-core.h (sim_core_write_aligned_N): For 8byte reads, output
3742         both low and high word.
3743         (sim_core_write_aligned_N): Ditto.
3744         
3745         * sim-trace.c (set_trace_options): Delete code explicitly setting
3746         core->trace.
3747
3748         * sim-options.c (sim_print_help): Call the list commands if not a
3749         standalone simulator.
3750         (sim_print_help): Advise that some options may not be applicable.
3751         
3752         * sim-trace.c (set_trace_options): Assume core present.
3753
3754         * sim-events.c (sim_events_schedule_after_signal): Overflow signal
3755         buffer when full not almost full.
3756
3757 Tue May 27 14:32:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3758
3759         * sim-events.c (sim_events_process): Don't blat the event queue
3760         when processing watchpoints.
3761
3762         * sim-watch.h: Make arg unsigned long - stop sign extension.
3763
3764         * sim-events.c (sim_watch_valid): rewrite so debugable.
3765
3766         * sim-config.h (WITH_XOR_ENDIAN): Default to zero.
3767
3768         * sim-watch.c (schedule_watchpoint): Add is_within option so that
3769         inequality test is possible.
3770         (handle_watchpoint): Re-pass is_within arg.
3771         (watch_option_handler): When `!' prefix to pc-watchpoint arg pass
3772         0 to schedule_watchpoint's is_within arg.
3773         (sim_watchpoint_init): Re-pass is_within arg.
3774
3775         * sim-options.c (sim_print_help): Add is_command argument.  Don't
3776         include -- prefix when called from the command line interpreter.
3777
3778         * sim-watch.c (schedule_watchpoint): Pass true is_within argument.
3779
3780         * sim-events.c (sim_events_watch_sim): Add is_within argument,
3781         zero indicates that the test should be reversed.
3782         (sim_events_watch_core): Ditto.
3783         (WATCH_CORE): Compare range against is_within.
3784         (WATCH_SIM): Ditto.
3785
3786 Tue May 27 12:48:03 1997  Andrew Cagney  <cagney@b2.cygnus.com>
3787
3788         * sim-events.c (WATCH_CORE): Pass NULL cpu argument to
3789         sim_core_read_buffer.  Check nr-bytes transfered.
3790
3791         * sim-core.h (sim_core_common): Define a new struct that contains
3792         the common data.  to sd and cpu structures.
3793         * sim-core.c (sim_core_attach): Update.
3794         (sim_core_init): Update. Remember to copy initialized data to each
3795         cpu.
3796         (sim_core_find_mapping): Ditto.
3797
3798         * sim-core.c (sim_core_read_buffer): Add cpu argument.
3799         (sim_core_write_buffer): Ditto.
3800
3801         * sim-n-core.h (sim_core_read_unaligned_N): When mis-aligned
3802         transfer use xor version of read buffer.
3803         (sim_core_write_unaligned_N): Ditto for write.
3804         
3805         * sim-core.c (sim_core_xor_read_buffer): New function implement
3806         xor-endian data read breaking transfer up into xor-endian sized
3807         blocks.
3808         (sim_core_xor_write_buffer): Ditto for write.
3809         (reverse_n): Reverse order of arbitrary number of bytes in buffer
3810         - needed for xor-endian transfers.
3811
3812 Fri May 23 14:24:31 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3813
3814         * sim-inline.h: Review description.
3815         
3816         * sim-core.h, sim-core.c: Reduce number of functions being inlined
3817         to just those involved in data transfers and configuration.
3818         
3819         * sim-xcat.h (XSTRING): New macro, map macro definition onto
3820         string.
3821         * sim-n-core.h (sim_core_read_aligned_N): Use.
3822         (sim_core_read_unaligned_N): Ditto.
3823         (sim_core_read_unaligned_N): Ditto..
3824         (sim_core_write_unaligned_N): Ditto.
3825         
3826         * sim-core.h: Add xor endian bitmap to main structure.  *
3827         
3828         sim-n-core.h (sim_core_write_aligned_N): Add suport for xor
3829         endian.
3830         (sim_core_read_aligned_N): Ditto.
3831
3832         * sim-core.c (sim_core_set_xor_endian): New function.
3833         (sim_core_attach): Don't overwrite the per-cpu xor map when
3834         cloning the global core.
3835
3836 Fri May 23 10:53:13 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3837
3838         * sim-engine.h: Update below so that it is using an enumerated
3839         type.
3840
3841 Thu May 22 09:12:16 1997  Gavin Koch  <gavin@cygnus.com>
3842
3843         * sim-engine.c (sim_engine_restart): 
3844         * sim-resume.c (sim_resume): Change longjmp param/setjmp 
3845         return value used for simulator restart from 0 to 2.
3846
3847 Wed May 21 08:47:30 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3848
3849         * cgen-scache.c (scache_option_handler): Add is_command arg.
3850
3851         * sim-model.c (model_option_handler): Add is_command argument.
3852
3853         * sim-profile.c (profile_option_handler): Add is_command arg.
3854
3855         * sim-events.c (sim_watch_valid): Use ub64, lb64 when 64bit value
3856         involved.
3857
3858         * sim-module.c (sim_module_add_init_fn): Call init fn in the same
3859         order that they are registered.
3860
3861         * sim-options.h (OPTION_HANDLER): Add argument to differentiate
3862         between option and command line processing.
3863
3864         * sim-options.c: Include stdlib.h, ctype.h.
3865
3866         * Make-common.in (sim-watch.o): Add rule.
3867         (sim_main_headers): Assume sim-assert.h included.
3868         (sim-*.o): Simplify make rule.
3869         
3870         * sim-module.c: Add sim_watch_install to module list.
3871
3872 Tue May 20 14:15:23 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3873
3874         * sim-base.h (STATE_LOADED_P): New predicate. Set once everything
3875         has been loaded.
3876
3877         * sim-trace.c (trace_install): Check magic. Include sim-assert.h.
3878         * sim-events.c (sim_events_install): Ditto.
3879         * sim-core.c (sim_core_install): Ditto.
3880         * sim-model.c (model_install): Ditto.
3881         * sim-options.c (standard_install): Ditto.
3882         * sim-profile.c (profile_install): Ditto.
3883         * sim-reason.c (sim_stop_reason): Ditto.
3884         * sim-run.c (sim_engine_run): Ditto.
3885         * sim-utils.c (sim_analyze_program): Ditto.
3886
3887         * sim-module.c (modules): Make profile_install and trace_install
3888         optional.
3889
3890         * sim-base.h (STATE_MEM_BASE): Define for flat memory systems.
3891
3892         * sim-options.c (standard_option_handler): Set the byte order.
3893
3894         * sim-events.c (sim_events_process): Allow multi tick processing.
3895         (sim_events_tickn): New function - multi cycle tick.
3896         
3897         * sim-events.h (sim_events_tickn, sim_events_timewarp): Add
3898         prototypes.  Under development.
3899         (sim_events): Replace processing with nr_ticks_to_process.
3900
3901 Tue May 20 09:39:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3902
3903         * nrun.c (main): Pass callbacks to sim_open instead of using
3904         sim_set_callbacks.
3905
3906         * run.c (main): Ditto.
3907
3908 Mon May 19 12:07:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3909
3910         * sim-events.c (sim_events_zalloc): Signal save memory allocator -
3911         stop tk interrupting malloc calls.
3912         (sim_events_zalloc): Converse.
3913
3914         * Make-common.in (sim_main_headers): Add sim-events.h.
3915
3916         * sim-events.c (sim_events_schedule_after_signal): Change return
3917         type to void - signal events are strictly internal.
3918         (sim_events_init): Allocate a finite buffer for signal events.
3919         (sim_events_schedule_after_signal): Enter signal events into the
3920         signal buffer.
3921
3922         * sim-engine.c (sim_engine_halt): Check SIM_DESC magic.
3923         (sim_engine_restart): Ditto.
3924         (sim_engine_abort): Ditto.
3925         * sim-stop.c (sim_stop): Ditto.
3926         (control_c_simulation): Ditto.
3927         * sim-resume.c (sim_resume): Ditto.
3928         (has_stepped): Ditto.
3929         * sim-abort.c (sim_engine_abort): Ditto.
3930
3931         * sim-basics.h (transfer_type): New type.
3932
3933         * sim-core.c (sim_core_signal): New function. Print core signal
3934         information.
3935         (sim_core_find_mapping): Add transfer argument.
3936
3937         * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
3938         SIM_CORE_SIGNAL if a recoverable abort.
3939         * sim-core.c (sim_core_find_mapping): Ditto.
3940
3941 Fri May 16 15:13:21 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3942
3943         * sim-core.c (sim_core_find_mapping): Replace calls to
3944         sim_io_error to more resiliant sim_engine_abort.
3945
3946         * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
3947         (sim_core_write_unaligned_N): Ditto.
3948
3949 Tue May 13 13:50:06 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3950
3951         * sim-module.c: Add sim_events_install to list.
3952         
3953         * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
3954         from sim_core_*.
3955         (sim_events_init): Now returns SIG_RC.
3956
3957         * sim-run.c: New file. Generic sim_engine_run.
3958         * sim-reason.c: New file. Generic sim_stop_reason.
3959         * sim-stop.c: New file. Generic sim_stop.
3960         * sim-resume.c: New file. Generic sim_resume.
3961         
3962         * Make-common.in (sim-engine.o): Add rule.
3963         (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
3964         
3965         * sim-engine.h, sim-engine.c: New file. Provide generic
3966         implementation of sim_engine_halt, sim_engine_error. et.al.
3967
3968         * sim-base.h (sim_state_base): Add member halt.
3969         (sim-engine.h): Include.
3970
3971         * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
3972         handlers.
3973         * sim-events.c (sim_events_poll): Update event handler.
3974
3975 Tue May 13 09:57:49 1997  Andrew Cagney  <cagney@b2.cygnus.com>
3976
3977         * sim-events.h, sim-events.c (sim_events_watch_clock): New
3978         function.
3979         (sim_events_watch_sim): New function.
3980         (sim_events_watch_core): New function.
3981         (sim_watch_valid): New function.
3982         (sim_events_preprocess): New function.
3983         (sim_events_process): Process the watchpoints as well as the timer
3984         queue.
3985         (sim_events_tick): Check WORK_PENDING instead of the hold queue.
3986         (sim_events_deschedule): Check all the queues when removing an
3987         event.
3988         (sim_events_init): Ditto for cleaning.
3989
3990 Mon May 19 12:07:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3991
3992         * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
3993
3994 Mon May 19 11:23:03 1997  Andrew Cagney  <cagney@b1.cygnus.com>
3995
3996         * callback.c (os_open): Type of arg flags is int.
3997
3998 Fri May 16 22:26:43 1997  Michael Meissner  <meissner@cygnus.com>
3999
4000         * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
4001         just like normal numbers as per IEEE rules.
4002
4003 Wed May 14 21:20:38 1997  Bob Manson  <manson@charmed.cygnus.com>
4004
4005         * callback.c (os_close): Mark the descriptor as being
4006         available if the close succeeded.
4007         (os_open): Pass 0644 as the mode of the file being created.
4008
4009 Thu May 15 10:58:52 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4010
4011         * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
4012         float.
4013
4014         * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
4015         * sim-lnline.h: Update.
4016
4017         * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
4018         conversion functions.
4019         (sim_fpu_to{32,64}[iu]): New fp2int functions.
4020         
4021         * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
4022         compare functions.  Replacing.
4023         (sim_fpu_cmp): This. Delete.
4024         
4025 Mon May 12 14:49:05 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4026
4027         * sim-core.c (sim_core_find_mapping): Call engine_error not
4028         sim_io_error when possible.
4029
4030 Mon May 12 08:55:07 1997  Andrew Cagney  <cagney@b2.cygnus.com>
4031
4032         * sim-endian.h (V1_H2): Add macro's to insert a word into a
4033         high/low double word.
4034
4035         * sim-trace.h: Remove definition of attribute - defined in
4036         sim_basics.h.
4037
4038 Mon May 12 08:55:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4039
4040         * sim-options.h (struct OPTION): Add doc_opt as the documenting
4041         name of the option - or family of options.
4042
4043         * sim-options.c (sim_args_command): Match command `a-b c' with
4044         option `--a-b-c' from option table.
4045
4046 Thu May  8 12:40:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4047
4048         * sim-options.c (sim_print_help): For optional arguments, wrap
4049         them in [].
4050
4051         * sim-trace.c (set_trace_options): New function, handle optional
4052         argument and multiple assignment.
4053         (trace_option_handler): Update.
4054
4055         * sim-trace.c (trace_option_handler): Trace branch and not fpu
4056         when branch tracing selected.
4057
4058 Wed May  7 15:19:58 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4059
4060         * sim-trace.c (trace_one_insn): Make a va-args function.
4061
4062         * sim-trace.c (trace_vprintf): New function, va-arg version of
4063         trace_printf.
4064
4065 Tue May  6 16:38:16 1997  Doug Evans  <dje@canuck.cygnus.com>
4066
4067         * sim-trace.c (trace_uninstall): Don't close a file twice.
4068         * sim-profile.c (profile_uninstall): Likewise.
4069
4070 Tue May  6 06:14:01 1997  Mike Meissner  <meissner@cygnus.com>
4071
4072         * sim-trace.c (toplevel): Include bfd.h.
4073         (trace_options): Note that --trace-linenum also turns on
4074         --trace-insn.  Add --trace-{branch,semantics}.
4075         (trace_option_handler): If --trace-linenum, also turn on
4076         --trace-insn.  Add --trace-branch support.  If --trace-semantics,
4077         turn on ALU, FPU, branch, and memory tracing.
4078         (trace_one_insn): New function to trace an instruction.  Support
4079         --trace-linenum.
4080         (OPTION_TRACE_*): Use an enum, rather than lots of defines.
4081
4082         * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
4083         (MAX_TRACE_VALUES): Use 32, not 12 by default.
4084         (TRACE_branch): Add new mask.
4085         (TRACE_*_P): Define all possible trace_p macros.
4086         (trace_one_insn): Declare function.
4087
4088 Mon May  5 14:08:34 1997  Mike Meissner  <meissner@cygnus.com>
4089
4090         * sim-trace.h (__attribute__): Define as nothing if not GNU C or
4091         GNU C doesn't support __attributes__.
4092         ({trace,debug}_printf): Add attribute's so -Wformat can check the
4093         format strings.
4094
4095 Mon May  5 11:16:12 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4096
4097         * sim-config.h (FORCED_ALIGNMENT): New alignment option -
4098         addresses are masked forcing them to be correctly aligned.
4099         (WITH_ALIGNMENT): Make NONSTRICT_ALIGNMENT the default.
4100         * sim-config.c (config_alignment_to_a): Update.
4101
4102         * sim-core.h (sim_cpu_core): New data type contains cpu specific
4103         core data.
4104         * sim-base.h (CPU_CORE): Add cpu specific core data to cpu base
4105         type.
4106         * sim-core.c (sim_core_attach): Add CPU argument.  Ready for
4107         processor specific core maps.
4108         (sim_core_map_attach): Copy the core map data to each of the
4109         processor specific core data structures.
4110         * sim-core.c (sim_core_find_mapping): Update.
4111
4112         * sim-n-core.h (sim_core_read_N, sim_core_write_N): Rename.
4113         (sim_core_write_aligned_N, sim_core_write_aligned_N): New names.
4114         (sim_core_write_unaligned_N, sim_core_write_unaligned_N): New
4115         alternatives that handle unaligned addresses.
4116         (sim_core_{read,write}_{,un}aligned_N): Drop SIM_DESC arg, replace
4117         with just CPU arg.
4118         * cgen-utils.c (sim_disassemble_insn): Update.
4119
4120 Mon May  5 13:19:16 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4121
4122         * sim-trace.h (TRACE_FPU_IDX): Add Floating-point specific
4123         tracing.
4124
4125         * sim-fpu.h, sim-fpu.c: New files - prototype for generic target
4126         fpu support.
4127
4128         * sim-inline.h, sim-inline.c: Add support for SIM_FPU.
4129
4130 Fri May  2 17:59:42 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4131
4132         * sim-core.c (sim_core_map_to_str): New function ascii equivalent
4133         to map type.
4134         
4135         * sim-n-core.h (sim_core_read_N, sim_core_write_N): Use in trace
4136         statement.
4137
4138 Fri May  2 17:28:02 1997  Andrew Cagney  <cagney@b2.cygnus.com>
4139
4140         * cgen-trace.c: Prepend additional trace_printf argument.
4141
4142         * cgen-utils.c (sim_disassemble_insn): Add additional core
4143         arguments.
4144
4145 Fri May  2 11:40:23 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4146
4147         * nrun.c (main): Catch/report errorenous simulator states.
4148
4149         * sim-module.c: #include "libiberty.h" so that xmalloc is defined.
4150         * sim-trace.c: #include string.h/strings.h so that memset is
4151         defined.
4152         * sim-utils.c: Ditto.
4153         * sim-profile.c: Ditto. And stdlib.h.
4154         (print_bar): Only define when used by instruction or memory profiler.
4155
4156         * sim-options.c (standard_option_handler): Make ul more local.
4157         
4158         * sim-load.c (sim_load_file): Make the name constant.
4159         (sim_load_file): Passify gcc.
4160
4161         * sim-utils.h: New file, pre-declare utilites in corresponding .c
4162         file.
4163         * sim-utils.c, sim-load.c: Include sim-utils.h.
4164         
4165         * sim-base.h (sim_cpu): Pre define here so available to all.
4166
4167         * sim-core.h (DECLARE_SIM_CORE_WRITE_N, DECLARE_SIM_CORE_READ_N):
4168         Restore the sim_cpu and instruction_address arguments so that full
4169         information is available to the abort function.
4170         * sim-core.c (sim_core_find_mapping, sim_core_write_buffer): Ditto.
4171         * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
4172
4173         * sim-trace.h, sim-trace.c (trace_option_handler): Add interim
4174         tracing support for sim-events and sim-core.
4175         (trace_option_handler): Convert #if to if where possible so always
4176         compiled/checked by C compiler.
4177         * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
4178         
4179         * sim-base.h: Adjust comment documenting how to define the cpu
4180         structure.
4181         (sim_state_base): Add sim_core and sim_events to simulator base
4182         object.
4183
4184         * sim-trace.h, sim-trace.c (trace_printf): Add SIM_DESC argument.
4185         * sim-core.c (sim_core_init, sim_core_attach,
4186         sim_core_find_mapping): Update.
4187         * sim-events.c (ETRACE, sim_events_init, sim_events_time,
4188         update_time_from_event, insert_sim_event,
4189         sim_events_schedule_after_signal, sim_events_deschedule,
4190         sim_events_tick): Ditto.
4191         
4192         * sim-basics.h (sim-module.h, sim-trace.h, sim-profile.h,
4193         sim-model.h): Move #includes from here.
4194         * sim-base.h: To here.
4195         (sim-core.h, sim-events.h, sim-io.h): Include also
4196         
4197 Wed Apr 30 15:37:54 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4198
4199         * callback.c (default_callback): Missing initialisers.
4200
4201 Thu May  1 10:40:47 1997  Doug Evans  <dje@canuck.cygnus.com>
4202
4203         * sim-utils.c (sim_add_commas): New function.
4204         * sim-basics.h (sim_add_commas): Add prototype.
4205         * cgen-scache.c (scache_print_profile): Print commas in numbers.
4206         * sim-profile.c (COMMAS): New macro.
4207         (print_*): Use it to print commas in numbers.
4208
4209         * configure: Regenerated.
4210
4211         * cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
4212         (cgen_state): New member run_fast_p.
4213         (cgen_init): Add prototype.
4214         (sim_disassemble_insn): New arg `cpu'.
4215         * cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
4216         * cgen-utils.c (cgen_init): New function.
4217         (sim_disassemble_insn): New arg `cpu'.  Rewrite fetching of insn.
4218         * genmloop.sh: Call engine_halt if loop exits.
4219
4220         * Makefile.in (sim-options_h): Define.
4221         (sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
4222         (sim-model.o): Add new rule.
4223         (cgen-{scache,trace,utils}.o): Add new rules.
4224         * aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
4225         * cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
4226         Indent output by 2 spaces.
4227         * cgen-scache.h (scache_print_profile): Update.
4228         * cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
4229         Use trace_printf, not fprintf.
4230         (trace_extract): Use trace_printf, not cgen_trace_printf.
4231         * genmloop.sh (!FAST case): Increment `insn_count'.
4232         * sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
4233         (sim_cpu_base): Rename member `sd' to `state' to be consistent with
4234         access macro's name.
4235         * sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
4236         Change return type to SIM_RC.
4237         (sim_core_{install,uninstall}): New functions.
4238         * sim-core.h (sim_core_{install,uninstall}): Declare.
4239         (sim_core_init): Use EXTERN_SIM_CORE to define it.
4240         Change return type to SIM_RC.
4241         * sim-model.h (models,machs,model_install): Declare.
4242         * sim-module.c (modules): Add scache_install, model_install.
4243         (sim_post_argv_init): Set cpu->state backlinks.
4244         * sim-options.c (standard_options): Delete --simcache-size,--max-insns.
4245         (standard_option_handler): Likewise.
4246         * sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
4247         sim-profile.h.
4248         (*): Assume ANSI C.
4249         (profile_options): Delete --profile-simcache.
4250         (profile_option_handler): Likewise.
4251         (profile_print_insn): Change `sd' arg to `cpu'.  Indent output 2
4252         spaces.
4253         (profile_print_{memory,model}): Likewise.
4254         (profile_print_simcache): Delete.
4255         (profile_print_speed): New function.
4256         (profile_print): Rewrite.
4257         * sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
4258         (WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
4259         (PROFILE_DATA): Delete members simcache_{hits,misses}.
4260         (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
4261         (PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
4262         (profile_print): Update prototype.
4263
4264 Wed Apr 30 11:34:14 1997  Doug Evans  <dje@canuck.cygnus.com>
4265
4266         * cgen-scache.[ch], cgen-sim.h: New files.
4267         * cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
4268         * sim-model.c: New file.
4269
4270         * Make-common.in (clean targets): Undo patch of Apr. 22.
4271
4272 Fri Apr 25 15:28:32 1997  Mike Meissner  <meissner@cygnus.com>
4273
4274         * sim-n-bits.h (signed): If we have a standard compiler, undef
4275         signed, so that signedN is defined correctly.
4276
4277 Thu Apr 24 00:00:07 1997  Doug Evans  <dje@canuck.cygnus.com>
4278
4279         * sim-module.h, sim-model.h, sim-profile.h: New files.
4280         * sim-module.c, sim-profile.c: New files.
4281         * Make-common.in (SIM_PROFILE): Define
4282         (CONFIG_CFLAGS): Add $(SIM_PROFILE).
4283         (sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
4284         (sim_module.o,sim-profile.o): Add rules for.
4285         * aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
4286         (--enable-sim-profile): Add.
4287         * configure: Regenerated.
4288         * sim-base.h (sim_state_base): New members init_list, uninstall_list,
4289         model.  Move trace and profile support to sim-{trace,profile}.h.
4290         New members trace_data, profile_data.
4291         * sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
4292         * sim-config.h: Provide default definition of WITH_PROFILE.
4293         (WITH_TRACE): Change default to -1.
4294         (MAX_NR_PROCESSORS): Always define.
4295         * sim-options.c: Move trace and profile support to
4296         sim-{trace,profile}.h.
4297         (sim_pre_argv_init): Moved to sim-model.c.
4298         (standard_install): New function.
4299         * sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
4300         (standard_install): Declare.
4301         * sim-trace.c: Tracing option handling moved here from sim-options.c.
4302         (trace_install, trace_uninstall): New functions.
4303         (trace_printf): Update reference to TRACE_FILE.
4304         * sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
4305         (TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
4306         (WITH_TRACE_FOO_P): Define.
4307         (trace_install): Declare.
4308         (TRACE_DATA): New struct.
4309
4310 Wed Apr 23 17:23:15 1997  Doug Evans  <dje@canuck.cygnus.com>
4311
4312         * run.c: Undo last exec_bfd patch.
4313         (main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
4314
4315 Wed Apr 23 17:54:27 1997  Mike Meissner  <meissner@cygnus.com>
4316
4317         * run.c (exec_bfd): Add back in.
4318         (main): Set exec_bfd.
4319
4320 Tue Apr 22 14:43:46 1997  Doug Evans  <dje@canuck.cygnus.com>
4321
4322         * sim-load.c (sim_load_file): #include <stdio.h> for NULL.
4323
4324 Wed Apr 23 02:55:54 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4325
4326         * sim-events.c (insert_sim_event): Call sim_io_error instead of
4327         less well defined engine_error.
4328         * sim-core.c: Ditto.
4329
4330 Tue Apr 22 08:48:16 1997  Stu Grossman  (grossman@critters.cygnus.com)
4331
4332         * Make-common.in:  Change clean targets to use :: so that other
4333         Makefiles can have their own clean targets.
4334         * sim-load.c (xprintf eprintf):  Use ANSI_PROTOTYPES instead of
4335         __STDC__ to control use of stdarg vs. varargs syntax.  Some
4336         systems can't use __STDC__, but require stdarg.
4337
4338 Fri Apr 18 11:14:43 1997  Doug Evans  <dje@canuck.cygnus.com>
4339
4340         * sim-options.c (standard_options): Add --endian.
4341         (standard_option_handler): Likewise.
4342
4343         * nrun.c: #include <signal.h>.
4344         (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
4345         handler that calls sim_stop ().
4346
4347 Fri Apr 18 13:11:36 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4348
4349         * run.c (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
4350         handler that calls sim_stop ().  Simulators may still be
4351         establishing their own handler.
4352
4353         * sim-events.c (sim_events_poll): Rename from
4354         sim_events_at_large_int.  Poll IO.
4355
4356         * sim-io.c (sim_io_poll_quit): New function - pass on a polling
4357         request.
4358
4359         * callback.c (os_poll_quit): New function poll for quit signal
4360         where needed.
4361         (default_callback): Include magic number.
4362
4363 Thu Apr 17 02:25:11 1997  Doug Evans  <dje@canuck.cygnus.com>
4364
4365         * aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
4366         Check for functions getrusage, time.
4367         * sim-basics.h (SIM_ELAPSED_TIME): New typedef.
4368         (sim_elapsed_time_get, sim_elapsed_time_since): Add prototypes.
4369         * sim-utils.c: #include time.h, sys/time.h, sys/resource.h if able.
4370         (sim_elapsed_time_get, sim_elapsed_time_since): New functions.
4371
4372         * sim-utils.c (sim_copy_argv, sim_analyze_program): New functions.
4373
4374         * sim-options.c, sim-options.h: New files.
4375         * sim-config.h (WITH_DEBUG): Provide default value of zero.
4376         * Make-common.in (nrun.o): Add rules for.
4377         * nrun.c: New file.
4378
4379         * run.c (main): Check return value of sim_open.
4380
4381         * Make-common.in (sim-options.o, sim-load.o, sim-trace.o): Add rules.
4382         (sim_main_headers): Add sim-trace.h.
4383         * run.c (exec_bfd, target_byte_order): Delete.
4384         (main): Pass -E <endian> to sim_open.  Delete code to load sections,
4385         call sim_load instead.  Check return code of sim_create_inferior.
4386         * sim-base.h (CURRENT_STATE): Define.
4387         (sim_state_base): Make typedef.  New members options, prog_argv,
4388         prog_bfd, text_{section,start,end}, start_addr, simcache_size,
4389         mem_size, memory [+ corresponding access macros].
4390         (sim_cpu_base): New typedef.
4391         * sim-trace.h: New file.
4392         * sim-trace.c: New file.
4393         * sim-basics.h: #include it.
4394         * sim-load.c: New file.
4395
4396 Tue Apr 15 15:10:13 1997  Ian Lance Taylor  <ian@cygnus.com>
4397
4398         * Make-common.in (INSTALL): Set to @INSTALL@.
4399         (INSTALL_XFORM, INSTALL_XFORM1): Remove.
4400         (install-common): Depend upon installdirs.  Use
4401         $(program_transform_name) directly, rather than using
4402         $(INSTALL_XFORM).
4403         (installdirs): New target.
4404         * Makefile.in (INSTALL): Set to @INSTALL@.
4405         (INSTALL_XFORM, INSTALL_XFORM1): Remove.
4406         (install-man): Depend upon installdirs.  Use
4407         $(program_transform_name) directly, rather than using
4408         $(INSTALL_XFORM).
4409         (installdirs): New target.
4410
4411 Tue Apr 15 15:08:12 1997  Andrew Cagney  <cagney@b1.cygnus.com>
4412
4413         * sim-assert.h (SIM_ASSERT, ASSERT): Allow these macros to
4414         be overriden.
4415
4416 Wed Apr  9 16:06:44 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4417
4418         * sim-basics.h: Only bring in config.h and tconfig.h if
4419         HAVE_CONFIG_H.
4420
4421 Mon Apr  7 11:39:45 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4422
4423         * sim-config.h (WITH_TARGET_WORD_MSB): New Macro. Define the bit
4424         numbering convention of the target.
4425         * sim-config.c (print_sim_config): Print WITH_TARGET_WORD_BITSIZE
4426         and WITH_TARGET_WORD_MSB.
4427         (sim_config): When possible, check for consistency with bitsize
4428         and msb.
4429
4430         * sim-bits.h: Allow MSB to be other than zero.
4431         * sim-bits.c: Ditto.
4432         * sim-n-bits.h: Ditto.
4433         
4434         * sim-bits.h (MSMASK*): New macros - converce to LSMASK*.
4435         * sim-n-bits.h (MSMASKEDn): Ditto.
4436
4437 Mon Apr 14 16:29:21 1997  Ian Lance Taylor  <ian@cygnus.com>
4438
4439         * Makefile.in (INSTALL): Change install.sh to install-sh.
4440
4441 Mon Apr  7 10:46:38 1997  Doug Evans  <dje@canuck.cygnus.com>
4442
4443         * sim-base.h (sim_state_base): Move `magic' to end of struct.
4444
4445 Mon Apr  7 15:53:21 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4446
4447         * run.c (main): Check that a program to run was specified.
4448
4449 Mon Apr  7 15:45:02 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4450
4451         * aclocal.m4 (AC_TYPE_SIGNAL): Add check.
4452
4453         * configure: Regenerated to track ../common/aclocal.m4 changes.
4454         * config.in: Ditto.
4455
4456 Wed Apr  2 15:06:28 1997  Doug Evans  <dje@canuck.cygnus.com>
4457
4458         * sim-endian.h: Move host {LITTLE,BIG}_ENDIAN support from here,
4459         * sim-config.h: To here.
4460
4461         * Make-common.in (SIM_EXTRA_DEPS): New config var.
4462         (sim_main_headers): Define.
4463         (sim-*.o): Depend on $(SIM_EXTRA_DEPS).
4464         (BUILT_SRC_FROM_COMMON): Move here from ../d30v/Makefile.in.
4465         (clean): Use it.
4466         (sim-utils.o): Add rule for.
4467         * sim-utils.o: New file.
4468         * sim-basics.h: #include sim-base.h.
4469         (zalloc): Make argument unsigned long.
4470         * sim-base.h: New file.
4471         * sim-inline.h (SIM_IO support): Delete.
4472         * sim-io.h: Delete inline support.
4473         * sim-io.c: Likewise.  sim-state.h renamed to sim-main.h.
4474         * sim-config.c: sim-state.h renamed to sim-main.h.
4475         * sim-core.c: Likewise.
4476         * sim-events.c: Likewise.
4477
4478         * run.c (main): Pass SIM_OPEN_STANDALONE to sim_open.
4479
4480         * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
4481         (sim-debug): Allow arguments.  Define WITH_DEBUG in addition to
4482         -DDEBUG.
4483         * configure: Regenerated to track ../common/aclocal.m4 changes.
4484
4485 Wed Apr  2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4486
4487         * configure: Regenerated to track ../common/aclocal.m4 changes.
4488
4489 Wed Apr  2 11:08:11 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4490
4491         * sim-config.h (WITH_ALIGNMENT, WITH_FLOATING_POINT,
4492         WITH_XOR_ENDIAN, WITH_SMP, WITH_RESERVED_BITS): Assume that these
4493         are defined by the configure.
4494
4495         * aclocal.m4 (sim-stdio): Add option stdio from ../ppc configure.
4496         
4497         * aclocal.m4 (floating-point, xor-endian, alignment, smp,
4498         reserved-bits): Always define.
4499         
4500         * sim-config.h, sim-config.c (sim_config): New function - and new
4501         file - co-ordinate the setting/checking of the common simulator
4502         configuration options.
4503
4504         * Make-common.in (sim-config.o): Add rule.
4505
4506 Fri Mar 28 15:32:00 1997  Mike Meissner  <meissner@cygnus.com>
4507
4508         * callback.c (os_{,e}vprintf_filtered): Change stdarg type to
4509         va_list from void *, since va_list might not be a pointer type.
4510
4511 Mon Mar 24 15:27:12 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4512
4513         * sim-n-endian.h (offset_N): Correct assertion - word and sub word
4514         in wrong order.
4515         (offset_N): Correct computation of LE offset.
4516
4517         * sim-io.c (sim_io_error): Include a new line when reporting
4518         errors.
4519
4520         * sim-assert.h (SIM_FILTER_PATH): Out by one when locating last
4521         `/'.
4522
4523 Thu Mar 20 22:31:06 1997  Jeffrey A Law  (law@cygnus.com)
4524
4525         * run.c: Include alloca-conf.h.
4526
4527         * callback.c (os_evprintf_filtered): Fix typo.
4528
4529 Fri Mar 21 13:36:20 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4530
4531         * run.c (string.h, strings.h, stdlib.h): Include.
4532
4533         * sim-events.c (sim_events_tick): Recent cleanup failed to return
4534         0 when nothing pending.
4535
4536         * run.c (sim_size, sim_trace): Plicate GCC - these two functions
4537         will soon be going away.
4538         (getopt): Plicate GCC.
4539
4540         * sim-endian.c (sim-io.h): Plicate GCC.
4541         * sim-bits.c (sim-io.h): Ditto.
4542         * sim-n-bits.h (ROTn): Ditto.
4543
4544         * sim-io.c (sim_io_error): Correct check for NULL.
4545
4546         * sim-assert.h (SIM_FILTER_PATH): Separate out the code filtering
4547         the __FILE__.
4548         * sim-events.c: Use SIM_FILTER_PATH to filter out the filename
4549         path.
4550
4551 Wed Mar 19 01:12:06 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4552
4553         * aclocal.m4 (SIM_AC_OPTION_*: Move so that they are outside of
4554         SIM_AC_COMMON - SIM_AC_COMMON was gobling arguments.
4555
4556 Tue Mar 18 20:48:12 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4557
4558         * sim-alu.h: Include sim-xcat.h.
4559         
4560 Tue Mar 18 13:58:18 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4561
4562         * Make-common.in (sim-bits.c, sim-core.c, sim-endian.c,
4563         sim-events.c, sim-inline.c, sim-io.c): Define rules for building
4564         these.
4565
4566         * sim-events.c (sim_events_at_large_int): New function.  Just
4567         schedules an event every large-int ticks.
4568         (sim_events_init): Call.
4569         (sim_events_tick, sim_events_process): Move async handing to
4570         sim_events_process.  Move timer decrement so that it occures after
4571         events have been processed.
4572         
4573         * sim-basics.h (struct _engine): Remove declaration.
4574
4575         * sim-events.h, sim-events.c: Rename type to sim_events.  Prefix
4576         everything with same.  Rename global struct to SIM_DESC.
4577         * sim-core.h, sim-core.c, sim-n-core.c: Ditto for sim_core.
4578         * sim-io.h, sim-io.c: Ditto.
4579         
4580         * sim-assert.h: New file. Optional assertion checking macros.
4581         * sim-io.c (sim_io_error): Make just this function tolerant to
4582         null pointers.
4583         
4584         * sim-xcat.h: New file. Define concatenate macros.
4585         * sim-basics.h (XCONCAT*): Move to sim-xcat.h.
4586         * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Explicitly include
4587         concat macros.
4588         
4589
4590 Tue Mar 18 12:44:55 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4591
4592         * sim-bits.h (LSMASK): New macro. Create mask of LS bits.
4593
4594 Mon Mar 17 18:10:05 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4595
4596         * sim-inline.h: Add definitions for sim-types.
4597         (ALL_BY_MODULE): New macro, encapsulate full inlining by the
4598         module.
4599
4600 Mon Mar 17 15:38:27 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4601         
4602         * sim-events.h: Remove defunct reference to callback struct.
4603
4604 Mon Mar 17 15:10:07 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4605
4606         * configure: Re-generate.
4607
4608 Mon Mar 17 15:04:47 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4609
4610         * Make-common.in (CSEARCH): Do not include the gdb directory in
4611         the search path.
4612
4613 Mon Mar 17 13:16:26 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4614
4615         * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
4616         SIM_WARNING): Drop, requiring the simulator specific Makefile.in
4617         to explicitly incorporate these.
4618
4619         * aclocal.m4 (--enable-sim-alignment); New option. Strongly
4620         specify the alignment restrictions of the target architecture -
4621         without this option all alignment restrictions are accomodated.
4622         (--enable-sim-assert): New option.  Conditionally compile in
4623         assertion statements.
4624         (--enable-sim-float): New option. Strongly specify the target's
4625         floating point support.
4626         (--enable-sim-hardware): New option.  Specify the hardware devices
4627         included in the simulation.
4628         (--enable-sim-packages): New option.  Specify the hardware
4629         packages included in the simulation.
4630         (--enable-sim-regparm): New option.  Specify that parameters be
4631         passed in registers instead of on the stack.
4632         (--enable-sim-reserved-bits): New option. Specify that reserved
4633         bits within an instruction are are correctly set.
4634         (--enable-sim-smp): New option. Specify the level of SMP support
4635         to be included in the simulator.
4636         (--enable-sim-stdcall): New option.  Specify an alternative
4637         function call convention.
4638         (--enable-sim-xor-endian): New option.  Configure xor-endian
4639         support used by some targets to implement bi-endian support.
4640         
4641 Fri Mar 14 19:51:21 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4642
4643         * aclocal.m4 (--enable-sim-hostendian): New option.  Allow the
4644         host endianness to be overridden.
4645         (--enable-sim-endian): Allow the target platform's byte order
4646         to be overridden.
4647         (--enable-sim-inline): Control the inlining of common components.
4648         (--enable-sim-bswap): For compatibility, also define WITH_BSWAP.
4649         (--enable-sim-warnings): Enable additional GCC compiler checks.
4650         * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
4651         SIM_WARNINGS): Add.
4652         
4653         * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Rename from
4654         sim-*-n.h so that the names are uniq on dos machines
4655         * sim-core.c, sim-bits.c, sim-endian.c: Update.
4656         
4657 Thu Mar 13 12:32:42 1997  Doug Evans  <dje@canuck.cygnus.com>
4658
4659         * run.c: #include "libiberty.h".
4660         (main): New locals sd,no_args,sim_argv.
4661         Run buildargv on -a option.  Pass argv to sim_open, argv[0]
4662         is program name.  Update call to sim_set_callbacks.
4663         Record result of sim_open, pass to other sim_foo routines.
4664
4665 Thu Mar 13 10:24:05 1997  Michael Meissner  <meissner@cygnus.com>
4666
4667         * callback.c (os_printf_filtered): Do not call exit(1) or print a
4668         final newline.
4669
4670 Thu Mar  6 15:50:28 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4671
4672         * callback.c: Add os_flush_stdout and vprintf_filtered callbacks.
4673         Route stdout through buffered IO.
4674
4675         * callback.c: Add os_flush_stderr, os_write_stderr,
4676         os_evprintf_filtered functions to route error output through
4677         stderr.
4678         
4679         * sim-io.h, sim-io.c (sim_io_flush_stderr, sim_io_flush_stdout):
4680         Correct return type - should be void.
4681
4682 Fri Mar  7 20:14:37 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4683
4684         * sim-basics.h: Clean up.  Many macro's moved to sim-inline.h.
4685
4686         * sim-config.h: Ditto.  For some options - eg WITH_DEVICES - do
4687         not provide a default value as undefined indicates disable code.
4688
4689 Thu Mar  6 15:50:28 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4690
4691         * sim-core.h, sim-core-n.h, sim-core.c: Borrow code from ppc
4692         directory.
4693         * sim-events.h, sim-events.c: Ditto.
4694         * sim-io.h, sim-io.c: Ditto.
4695         
4696 Tue Mar  4 09:35:56 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4697         
4698         * sim-alu.h (ALU_SUB_CA, ALU*_SUB_CA): New alu operation.
4699
4700         * sim-bits.h, sim-bits-n.h, sim-bits.c (LSMASKED*): New macro's
4701         extract the tail or least signifiant bits from an integer of the
4702         specified size.
4703         
4704         * sim-bits.h, sim-bits.c: Clean up conditionally compiled #if
4705         WITH_TARGET_BITSIZE so that the compilation will fail when an
4706         unsupported bitsize value is defined.
4707
4708         (INSERTED*): Convert to functions.
4709         (EXTRACTED*): Ditto.
4710         
4711         (SIGN_EXTEND, SEXT): Change to more terse name.
4712         
4713 Tue Mar  4 09:35:56 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4714
4715         * sim-inline.h: Allow explicit control over which .c files will be
4716         included by their header.
4717
4718         * sim-inline.h: Allow explicit control over which .c files use the
4719         alternative - REGPARM - parameter passing mechanism.
4720         
4721         * sim-inline.h, sim-inline.c: Don't attempt to include any of
4722         icache.c, idecode.c, semantics.c or support.c.  Those names are
4723         not generally applicable.
4724         
4725 Thu Feb 27 10:17:23 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4726
4727         * sim-bits.c, sim-bits-n.h (new): Split sim-bits.c into two parts
4728         in a fashion similar to sim-endian-n.
4729
4730         * sim-endian.h: (H_word, L_word, AL_*, VL_*): Extend to include
4731         both value and address macro's.
4732
4733 Tue Feb 25 18:51:57 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
4734
4735         * sim-alu.h (ALU16_BEGIN, ALU16_SET, ...): Fill in.
4736
4737         * sim-endian.h (L_word, H_word): Replace MS2W_4, LS2W_4 with more
4738         generic L_word, H_word macro's.
4739
4740 Thu Feb 20 18:36:55 1997  Andrew Cagney  <cagney@critters.cygnus.com>
4741
4742         * sim-basics.h: Borrow code from ppc directory.
4743         * sim-bits.c: Ditto.
4744         * sim-bits.h: Ditto.
4745         * sim-config.h: Ditto.
4746         * sim-endian-n.h: Ditto.
4747         * sim-endian.c: Ditto.
4748         * sim-endian.h: Ditto.
4749         * sim-inline.c: Ditto.
4750         * sim-inline.h: Ditto.
4751         * sim-types.h: Ditto.
4752
4753 Wed Feb 19 12:40:50 1997  Andrew Cagney  <cagney@critters.cygnus.com>
4754
4755         * sim-alu.h (ALU_SET16, ALU_SET32, ALU_SET64, etc): Make available
4756         all the ALU size alternatives and then auto-configure a default.
4757         
4758         * sim-alu.h: Copy ppc/idecode_expression.h.
4759
4760 Mon Feb 17 10:44:18 1997  Andrew Cagney  <cagney@critters.cygnus.com>
4761
4762         * bits.h, bits.c (SIGN_EXTEND32, SIGN_EXTEND64): New functions,
4763         sign extend a bit within a value.
4764
4765         * sim-endian.h, sim-endian-n.h (offset_N): New functions - return
4766         a pointer into the middle of a host word.
4767         * sim-endian.h (MS2W_4, LS2W_4): Use this function.
4768         
4769 Tue Feb 11 13:46:49 1997  Michael Meissner  <meissner@tiktok.cygnus.com>
4770
4771         * callback.c: If HAVE_CONFIG_H is defined, include config.h from
4772         autoconf.  If HAVE_UNISTD_H is defined, include unistd.h to get
4773         appropriate definitions of read, write, etc.  Add prototype for
4774         system.
4775
4776 Tue Feb  4 13:24:44 1997  Doug Evans  <dje@canuck.cygnus.com>
4777
4778         * Makefile.in (libcommon.a): Delete.
4779         (callback.o,targ-map.o): Delete, moved to Make-common.in.
4780         (gentmap,targ-vals.h,targ-map.c): Likewise.
4781         (run-autoconf): Delete.
4782         * aclocal.m4 (SIM_AC_OUTPUT): Redo creation of Makefile.
4783         (common makefile fragment): Moved back into ...
4784         * Make-common.in: Resurrect.
4785         * configure.in (AC_LINK_FILES): Delete, unnecessary now.
4786         * configure: Regenerated.
4787
4788 Fri Jan 31 07:16:49 1997  Doug Evans  <dje@canuck.cygnus.com>
4789
4790         * aclocal.m4 (SIM_AC_COMMON): Move COMMON_MAKEFILE_FRAG from here.
4791         (SIM_AC_OUTPUT): To here.
4792
4793 Fri Jan 24 10:37:17 1997  Stu Grossman  (grossman@critters.cygnus.com)
4794
4795         * aclocal.m4 (COMMON_MAKEFILE_FRAG):  Quote a couple of $'s in
4796         comments and single quotes.  Fixes a problem found on hpux.
4797
4798 Thu Jan 23 13:35:03 1997  Stu Grossman  (grossman@critters.cygnus.com)
4799
4800         * aclocal.m4:  Remove Make-common.in from dependencies.
4801         * (distclean):  Remove targ-vals.def.
4802
4803         * aclocal.m4 (SIM_AC_COMMON):  Move contents of Make-common.in
4804         into here.  Makes insertion into makefiles easier.  Also, change
4805         the way that callback.o, gentmap, targ-vals.h, targ-map.c,
4806         targ-map.o, and run are built.  They are now built in the
4807         individual simulator directories, taking sources from ../common as
4808         necessary.  This replaces the merging of libcommon.a into
4809         linsim.a, which was problematic for the WinGDB build process.
4810         * run.c:  Include config.h from . instead of ../common.
4811         * Make-common.in:  Remove.  It's no longer necessary.
4812
4813 Mon Dec 16 15:02:33 1996  Ian Lance Taylor  <ian@cygnus.com>
4814
4815         * Make-common.in (ALL_CLAGS): Put CFLAGS at the end.
4816         (.c.o): Put $(ALL_CFLAGS) before the file being compiled.
4817
4818 Wed Dec 11 11:30:58 1996  Jim Wilson  <wilson@cygnus.com>
4819
4820         * run.c (main): Set target_byte_order before call to sim_open.
4821
4822 Sun Dec  8 18:22:06 1996  Doug Evans  <dje@canuck.cygnus.com>
4823
4824         * callback.c: #include <stdlib.h>
4825         (os_error): New function.
4826         (default_callback): Add os_error.
4827
4828 Mon Nov 25 19:44:35 1996  Doug Evans  <dje@canuck.cygnus.com>
4829
4830         * Make-common.in (Makefile): Set CONFIG_HEADERS="".
4831         * aclocal.m4: Mark the fact that --enable-sim-bswap isn't host
4832         specific.
4833         (SIM_AC_OUTPUT): Don't build Makefile if CONFIG_FILES="".
4834
4835 Wed Nov 20 01:11:04 1996  Doug Evans  <dje@canuck.cygnus.com>
4836
4837         * run.c: #include ../common/config.h, tconfig.h.
4838         (myname): New static global.
4839         (main): Recognize new options -a, -c.  Also recognize -h if h8/300.
4840         Only process -c ifdef SIM_HAVE_SIMCACHE.
4841         Only process -p/-s ifdef SIM_HAVE_PROFILE.
4842         Parse program name from argv[0] and use in error messages.
4843         Pass sim_args to sim_open.  Pass prog_args to sim_create_inferior.
4844         Add support for incomplete h8/300 termination indicators.
4845         (usage): Make more verbose.
4846         * aclocal.m4,config.in,tconfig.in,configure.in,configure: New files.
4847         * Makefile.in,Make-common.in,callback.c: New files.
4848         * nltvals.def,gentmap.c,gentvals.sh: New files.
4849
4850 Tue Nov 12 13:34:00 1996  Dawn Perchik  <dawn@cygnus.com>   
4851
4852         * run.c: Include stdarg.h if __STDC__.
4853
4854 Tue Oct 15 11:16:31 1996  Jeffrey A Law  (law@cygnus.com)
4855
4856         * run.c (main): Don't print out anything if the signal
4857         number is zero (ie no signal).
4858
4859 Tue Oct 15 11:20:44 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
4860
4861         * run.c (main): Print out if the program raised a signal.
4862
4863 Wed Sep 18 09:52:14 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
4864
4865         * run.c (exec_bfd): Rename from sim_bfd, to use the gdb name.
4866         (main): Ditto.
4867
4868 Tue Sep 17 11:04:50 1996  James G. Smith  <jsmith@cygnus.co.uk>
4869
4870         * run.c (main): Explicitly cast malloc() parameter.
4871
4872 Thu Sep 12 11:27:21 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
4873
4874         * run.c (sim_bfd): New global to hold the bfd pointer for the
4875         executable.
4876         (main): Initialize sim_bfd.
4877
4878 Fri Dec 15 16:27:49 1995  Ian Lance Taylor  <ian@cygnus.com>
4879
4880         * run.c (main): Use new bfd_big_endian macro.
4881
4882 Wed Nov  8 15:49:49 1995  James G. Smith  <jsmith@pasanda.cygnus.co.uk>
4883
4884         * run.c (main): Removed SH specific comments, so source is
4885         generic. Also updated to only load relevant sections. Moved
4886         sim_open() to after callback attach (to match GDB).
4887
4888         * run.1: Removed SH specific comments.
4889
4890 Sat Oct 21 12:31:01 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
4891
4892         * run.c (main): Always return sigrc at end.
4893
4894 Tue Oct 10 12:03:13 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
4895
4896         * run.c (main): Print error diagnostic and exit if bfd_openr() or
4897         bfd_check_format() fails.
4898
4899 Thu Sep 28 15:40:36 1995  steve chamberlain  <sac@slash.cygnus.com>
4900
4901         * run.c, run.1: From sh directory.