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