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