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