OSDN Git Service

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