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