OSDN Git Service

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