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