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