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