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