o Implement generic halt/restart/abort module.
[platform/upstream/binutils.git] / sim / common / ChangeLog
1 Mon May 19 12:07:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
2
3         * sim-basics.h (transfer_type): New type.
4
5         * sim-core.c (sim_core_signal): New function. Print core signal
6         information.
7         (sim_core_find_mapping): Add transfer argument.
8
9         * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
10         SIM_CORE_SIGNAL if a recoverable abort.
11         * sim-core.c (sim_core_find_mapping): Ditto.
12
13 Fri May 16 15:13:21 1997  Andrew Cagney  <cagney@b1.cygnus.com>
14
15         * sim-core.c (sim_core_find_mapping): Replace calls to
16         sim_io_error to more resiliant sim_engine_abort.
17
18         * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
19         (sim_core_write_unaligned_N): Ditto.
20
21 Tue May 13 13:50:06 1997  Andrew Cagney  <cagney@b1.cygnus.com>
22
23         * sim-module.c: Add sim_events_install to list.
24         
25         * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
26         from sim_core_*.
27         (sim_events_init): Now returns SIG_RC.
28
29         * sim-run.c: New file. Generic sim_engine_run.
30         * sim-reason.c: New file. Generic sim_stop_reason.
31         * sim-stop.c: New file. Generic sim_stop.
32         * sim-resume.c: New file. Generic sim_resume.
33         
34         * Make-common.in (sim-engine.o): Add rule.
35         (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
36         
37         * sim-engine.h, sim-engine.c: New file. Provide generic
38         implementation of sim_engine_halt, sim_engine_error. et.al.
39
40         * sim-base.h (sim_state_base): Add member halt.
41         (sim-engine.h): Include.
42
43         * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
44         handlers.
45         * sim-events.c (sim_events_poll): Update event handler.
46
47 Tue May 13 09:57:49 1997  Andrew Cagney  <cagney@b2.cygnus.com>
48
49         * sim-events.h, sim-events.c (sim_events_watch_clock): New
50         function.
51         (sim_events_watch_sim): New function.
52         (sim_events_watch_core): New function.
53         (sim_watch_valid): New function.
54         (sim_events_preprocess): New function.
55         (sim_events_process): Process the watchpoints as well as the timer
56         queue.
57         (sim_events_tick): Check WORK_PENDING instead of the hold queue.
58         (sim_events_deschedule): Check all the queues when removing an
59         event.
60         (sim_events_init): Ditto for cleaning.
61
62 Mon May 19 12:07:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
63
64         * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
65
66 Mon May 19 11:23:03 1997  Andrew Cagney  <cagney@b1.cygnus.com>
67
68         * callback.c (os_open): Type of arg flags is int.
69
70 Fri May 16 22:26:43 1997  Michael Meissner  <meissner@cygnus.com>
71
72         * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
73         just like normal numbers as per IEEE rules.
74
75 Wed May 14 21:20:38 1997  Bob Manson  <manson@charmed.cygnus.com>
76
77         * callback.c (os_close): Mark the descriptor as being
78         available if the close succeeded.
79         (os_open): Pass 0644 as the mode of the file being created.
80
81 Thu May 15 10:58:52 1997  Andrew Cagney  <cagney@b1.cygnus.com>
82
83         * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
84         float.
85
86         * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
87         * sim-lnline.h: Update.
88
89         * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
90         conversion functions.
91         (sim_fpu_to{32,64}[iu]): New fp2int functions.
92         
93         * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
94         compare functions.  Replacing.
95         (sim_fpu_cmp): This. Delete.
96         
97 Mon May 12 14:49:05 1997  Andrew Cagney  <cagney@b1.cygnus.com>
98
99         * sim-core.c (sim_core_find_mapping): Call engine_error not
100         sim_io_error when possible.
101
102 Mon May 12 08:55:07 1997  Andrew Cagney  <cagney@b2.cygnus.com>
103
104         * sim-endian.h (V1_H2): Add macro's to insert a word into a
105         high/low double word.
106
107         * sim-trace.h: Remove definition of attribute - defined in
108         sim_basics.h.
109
110 Mon May 12 08:55:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
111
112         * sim-options.h (struct OPTION): Add doc_opt as the documenting
113         name of the option - or family of options.
114
115         * sim-options.c (sim_args_command): Match command `a-b c' with
116         option `--a-b-c' from option table.
117
118 Thu May  8 12:40:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
119
120         * sim-options.c (sim_print_help): For optional arguments, wrap
121         them in [].
122
123         * sim-trace.c (set_trace_options): New function, handle optional
124         argument and multiple assignment.
125         (trace_option_handler): Update.
126
127         * sim-trace.c (trace_option_handler): Trace branch and not fpu
128         when branch tracing selected.
129
130 Wed May  7 15:19:58 1997  Andrew Cagney  <cagney@b1.cygnus.com>
131
132         * sim-trace.c (trace_one_insn): Make a va-args function.
133
134         * sim-trace.c (trace_vprintf): New function, va-arg version of
135         trace_printf.
136
137 Tue May  6 16:38:16 1997  Doug Evans  <dje@canuck.cygnus.com>
138
139         * sim-trace.c (trace_uninstall): Don't close a file twice.
140         * sim-profile.c (profile_uninstall): Likewise.
141
142 Tue May  6 06:14:01 1997  Mike Meissner  <meissner@cygnus.com>
143
144         * sim-trace.c (toplevel): Include bfd.h.
145         (trace_options): Note that --trace-linenum also turns on
146         --trace-insn.  Add --trace-{branch,semantics}.
147         (trace_option_handler): If --trace-linenum, also turn on
148         --trace-insn.  Add --trace-branch support.  If --trace-semantics,
149         turn on ALU, FPU, branch, and memory tracing.
150         (trace_one_insn): New function to trace an instruction.  Support
151         --trace-linenum.
152         (OPTION_TRACE_*): Use an enum, rather than lots of defines.
153
154         * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
155         (MAX_TRACE_VALUES): Use 32, not 12 by default.
156         (TRACE_branch): Add new mask.
157         (TRACE_*_P): Define all possible trace_p macros.
158         (trace_one_insn): Declare function.
159
160 Mon May  5 14:08:34 1997  Mike Meissner  <meissner@cygnus.com>
161
162         * sim-trace.h (__attribute__): Define as nothing if not GNU C or
163         GNU C doesn't support __attributes__.
164         ({trace,debug}_printf): Add attribute's so -Wformat can check the
165         format strings.
166
167 Mon May  5 11:16:12 1997  Andrew Cagney  <cagney@b1.cygnus.com>
168
169         * sim-config.h (FORCED_ALIGNMENT): New alignment option -
170         addresses are masked forcing them to be correctly aligned.
171         (WITH_ALIGNMENT): Make NONSTRICT_ALIGNMENT the default.
172         * sim-config.c (config_alignment_to_a): Update.
173
174         * sim-core.h (sim_cpu_core): New data type contains cpu specific
175         core data.
176         * sim-base.h (CPU_CORE): Add cpu specific core data to cpu base
177         type.
178         * sim-core.c (sim_core_attach): Add CPU argument.  Ready for
179         processor specific core maps.
180         (sim_core_map_attach): Copy the core map data to each of the
181         processor specific core data structures.
182         * sim-core.c (sim_core_find_mapping): Update.
183
184         * sim-n-core.h (sim_core_read_N, sim_core_write_N): Rename.
185         (sim_core_write_aligned_N, sim_core_write_aligned_N): New names.
186         (sim_core_write_unaligned_N, sim_core_write_unaligned_N): New
187         alternatives that handle unaligned addresses.
188         (sim_core_{read,write}_{,un}aligned_N): Drop SIM_DESC arg, replace
189         with just CPU arg.
190         * cgen-utils.c (sim_disassemble_insn): Update.
191
192 Mon May  5 13:19:16 1997  Andrew Cagney  <cagney@b1.cygnus.com>
193
194         * sim-trace.h (TRACE_FPU_IDX): Add Floating-point specific
195         tracing.
196
197         * sim-fpu.h, sim-fpu.c: New files - prototype for generic target
198         fpu support.
199
200         * sim-inline.h, sim-inline.c: Add support for SIM_FPU.
201
202 Fri May  2 17:59:42 1997  Andrew Cagney  <cagney@b1.cygnus.com>
203
204         * sim-core.c (sim_core_map_to_str): New function ascii equivalent
205         to map type.
206         
207         * sim-n-core.h (sim_core_read_N, sim_core_write_N): Use in trace
208         statement.
209
210 Fri May  2 17:28:02 1997  Andrew Cagney  <cagney@b2.cygnus.com>
211
212         * cgen-trace.c: Prepend additional trace_printf argument.
213
214         * cgen-utils.c (sim_disassemble_insn): Add additional core
215         arguments.
216
217 Fri May  2 11:40:23 1997  Andrew Cagney  <cagney@b1.cygnus.com>
218
219         * nrun.c (main): Catch/report errorenous simulator states.
220
221         * sim-module.c: #include "libiberty.h" so that xmalloc is defined.
222         * sim-trace.c: #include string.h/strings.h so that memset is
223         defined.
224         * sim-utils.c: Ditto.
225         * sim-profile.c: Ditto. And stdlib.h.
226         (print_bar): Only define when used by instruction or memory profiler.
227
228         * sim-options.c (standard_option_handler): Make ul more local.
229         
230         * sim-load.c (sim_load_file): Make the name constant.
231         (sim_load_file): Passify gcc.
232
233         * sim-utils.h: New file, pre-declare utilites in corresponding .c
234         file.
235         * sim-utils.c, sim-load.c: Include sim-utils.h.
236         
237         * sim-base.h (sim_cpu): Pre define here so available to all.
238
239         * sim-core.h (DECLARE_SIM_CORE_WRITE_N, DECLARE_SIM_CORE_READ_N):
240         Restore the sim_cpu and instruction_address arguments so that full
241         information is available to the abort function.
242         * sim-core.c (sim_core_find_mapping, sim_core_write_buffer): Ditto.
243         * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
244
245         * sim-trace.h, sim-trace.c (trace_option_handler): Add interim
246         tracing support for sim-events and sim-core.
247         (trace_option_handler): Convert #if to if where possible so always
248         compiled/checked by C compiler.
249         * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
250         
251         * sim-base.h: Adjust comment documenting how to define the cpu
252         structure.
253         (sim_state_base): Add sim_core and sim_events to simulator base
254         object.
255
256         * sim-trace.h, sim-trace.c (trace_printf): Add SIM_DESC argument.
257         * sim-core.c (sim_core_init, sim_core_attach,
258         sim_core_find_mapping): Update.
259         * sim-events.c (ETRACE, sim_events_init, sim_events_time,
260         update_time_from_event, insert_sim_event,
261         sim_events_schedule_after_signal, sim_events_deschedule,
262         sim_events_tick): Ditto.
263         
264         * sim-basics.h (sim-module.h, sim-trace.h, sim-profile.h,
265         sim-model.h): Move #includes from here.
266         * sim-base.h: To here.
267         (sim-core.h, sim-events.h, sim-io.h): Include also
268         
269 Wed Apr 30 15:37:54 1997  Andrew Cagney  <cagney@b1.cygnus.com>
270
271         * callback.c (default_callback): Missing initialisers.
272
273 Thu May  1 10:40:47 1997  Doug Evans  <dje@canuck.cygnus.com>
274
275         * sim-utils.c (sim_add_commas): New function.
276         * sim-basics.h (sim_add_commas): Add prototype.
277         * cgen-scache.c (scache_print_profile): Print commas in numbers.
278         * sim-profile.c (COMMAS): New macro.
279         (print_*): Use it to print commas in numbers.
280
281         * configure: Regenerated.
282
283         * cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
284         (cgen_state): New member run_fast_p.
285         (cgen_init): Add prototype.
286         (sim_disassemble_insn): New arg `cpu'.
287         * cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
288         * cgen-utils.c (cgen_init): New function.
289         (sim_disassemble_insn): New arg `cpu'.  Rewrite fetching of insn.
290         * genmloop.sh: Call engine_halt if loop exits.
291
292         * Makefile.in (sim-options_h): Define.
293         (sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
294         (sim-model.o): Add new rule.
295         (cgen-{scache,trace,utils}.o): Add new rules.
296         * aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
297         * cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
298         Indent output by 2 spaces.
299         * cgen-scache.h (scache_print_profile): Update.
300         * cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
301         Use trace_printf, not fprintf.
302         (trace_extract): Use trace_printf, not cgen_trace_printf.
303         * genmloop.sh (!FAST case): Increment `insn_count'.
304         * sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
305         (sim_cpu_base): Rename member `sd' to `state' to be consistent with
306         access macro's name.
307         * sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
308         Change return type to SIM_RC.
309         (sim_core_{install,uninstall}): New functions.
310         * sim-core.h (sim_core_{install,uninstall}): Declare.
311         (sim_core_init): Use EXTERN_SIM_CORE to define it.
312         Change return type to SIM_RC.
313         * sim-model.h (models,machs,model_install): Declare.
314         * sim-module.c (modules): Add scache_install, model_install.
315         (sim_post_argv_init): Set cpu->state backlinks.
316         * sim-options.c (standard_options): Delete --simcache-size,--max-insns.
317         (standard_option_handler): Likewise.
318         * sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
319         sim-profile.h.
320         (*): Assume ANSI C.
321         (profile_options): Delete --profile-simcache.
322         (profile_option_handler): Likewise.
323         (profile_print_insn): Change `sd' arg to `cpu'.  Indent output 2
324         spaces.
325         (profile_print_{memory,model}): Likewise.
326         (profile_print_simcache): Delete.
327         (profile_print_speed): New function.
328         (profile_print): Rewrite.
329         * sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
330         (WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
331         (PROFILE_DATA): Delete members simcache_{hits,misses}.
332         (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
333         (PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
334         (profile_print): Update prototype.
335
336 Wed Apr 30 11:34:14 1997  Doug Evans  <dje@canuck.cygnus.com>
337
338         * cgen-scache.[ch], cgen-sim.h: New files.
339         * cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
340         * sim-model.c: New file.
341
342         * Make-common.in (clean targets): Undo patch of Apr. 22.
343
344 Fri Apr 25 15:28:32 1997  Mike Meissner  <meissner@cygnus.com>
345
346         * sim-n-bits.h (signed): If we have a standard compiler, undef
347         signed, so that signedN is defined correctly.
348
349 Thu Apr 24 00:00:07 1997  Doug Evans  <dje@canuck.cygnus.com>
350
351         * sim-module.h, sim-model.h, sim-profile.h: New files.
352         * sim-module.c, sim-profile.c: New files.
353         * Make-common.in (SIM_PROFILE): Define
354         (CONFIG_CFLAGS): Add $(SIM_PROFILE).
355         (sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
356         (sim_module.o,sim-profile.o): Add rules for.
357         * aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
358         (--enable-sim-profile): Add.
359         * configure: Regenerated.
360         * sim-base.h (sim_state_base): New members init_list, uninstall_list,
361         model.  Move trace and profile support to sim-{trace,profile}.h.
362         New members trace_data, profile_data.
363         * sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
364         * sim-config.h: Provide default definition of WITH_PROFILE.
365         (WITH_TRACE): Change default to -1.
366         (MAX_NR_PROCESSORS): Always define.
367         * sim-options.c: Move trace and profile support to
368         sim-{trace,profile}.h.
369         (sim_pre_argv_init): Moved to sim-model.c.
370         (standard_install): New function.
371         * sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
372         (standard_install): Declare.
373         * sim-trace.c: Tracing option handling moved here from sim-options.c.
374         (trace_install, trace_uninstall): New functions.
375         (trace_printf): Update reference to TRACE_FILE.
376         * sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
377         (TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
378         (WITH_TRACE_FOO_P): Define.
379         (trace_install): Declare.
380         (TRACE_DATA): New struct.
381
382 Wed Apr 23 17:23:15 1997  Doug Evans  <dje@canuck.cygnus.com>
383
384         * run.c: Undo last exec_bfd patch.
385         (main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
386
387 Wed Apr 23 17:54:27 1997  Mike Meissner  <meissner@cygnus.com>
388
389         * run.c (exec_bfd): Add back in.
390         (main): Set exec_bfd.
391
392 Tue Apr 22 14:43:46 1997  Doug Evans  <dje@canuck.cygnus.com>
393
394         * sim-load.c (sim_load_file): #include <stdio.h> for NULL.
395
396 Wed Apr 23 02:55:54 1997  Andrew Cagney  <cagney@b1.cygnus.com>
397
398         * sim-events.c (insert_sim_event): Call sim_io_error instead of
399         less well defined engine_error.
400         * sim-core.c: Ditto.
401
402 Tue Apr 22 08:48:16 1997  Stu Grossman  (grossman@critters.cygnus.com)
403
404         * Make-common.in:  Change clean targets to use :: so that other
405         Makefiles can have their own clean targets.
406         * sim-load.c (xprintf eprintf):  Use ANSI_PROTOTYPES instead of
407         __STDC__ to control use of stdarg vs. varargs syntax.  Some
408         systems can't use __STDC__, but require stdarg.
409
410 Fri Apr 18 11:14:43 1997  Doug Evans  <dje@canuck.cygnus.com>
411
412         * sim-options.c (standard_options): Add --endian.
413         (standard_option_handler): Likewise.
414
415         * nrun.c: #include <signal.h>.
416         (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
417         handler that calls sim_stop ().
418
419 Fri Apr 18 13:11:36 1997  Andrew Cagney  <cagney@b1.cygnus.com>
420
421         * run.c (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
422         handler that calls sim_stop ().  Simulators may still be
423         establishing their own handler.
424
425         * sim-events.c (sim_events_poll): Rename from
426         sim_events_at_large_int.  Poll IO.
427
428         * sim-io.c (sim_io_poll_quit): New function - pass on a polling
429         request.
430
431         * callback.c (os_poll_quit): New function poll for quit signal
432         where needed.
433         (default_callback): Include magic number.
434
435 Thu Apr 17 02:25:11 1997  Doug Evans  <dje@canuck.cygnus.com>
436
437         * aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
438         Check for functions getrusage, time.
439         * sim-basics.h (SIM_ELAPSED_TIME): New typedef.
440         (sim_elapsed_time_get, sim_elapsed_time_since): Add prototypes.
441         * sim-utils.c: #include time.h, sys/time.h, sys/resource.h if able.
442         (sim_elapsed_time_get, sim_elapsed_time_since): New functions.
443
444         * sim-utils.c (sim_copy_argv, sim_analyze_program): New functions.
445
446         * sim-options.c, sim-options.h: New files.
447         * sim-config.h (WITH_DEBUG): Provide default value of zero.
448         * Make-common.in (nrun.o): Add rules for.
449         * nrun.c: New file.
450
451         * run.c (main): Check return value of sim_open.
452
453         * Make-common.in (sim-options.o, sim-load.o, sim-trace.o): Add rules.
454         (sim_main_headers): Add sim-trace.h.
455         * run.c (exec_bfd, target_byte_order): Delete.
456         (main): Pass -E <endian> to sim_open.  Delete code to load sections,
457         call sim_load instead.  Check return code of sim_create_inferior.
458         * sim-base.h (CURRENT_STATE): Define.
459         (sim_state_base): Make typedef.  New members options, prog_argv,
460         prog_bfd, text_{section,start,end}, start_addr, simcache_size,
461         mem_size, memory [+ corresponding access macros].
462         (sim_cpu_base): New typedef.
463         * sim-trace.h: New file.
464         * sim-trace.c: New file.
465         * sim-basics.h: #include it.
466         * sim-load.c: New file.
467
468 Tue Apr 15 15:10:13 1997  Ian Lance Taylor  <ian@cygnus.com>
469
470         * Make-common.in (INSTALL): Set to @INSTALL@.
471         (INSTALL_XFORM, INSTALL_XFORM1): Remove.
472         (install-common): Depend upon installdirs.  Use
473         $(program_transform_name) directly, rather than using
474         $(INSTALL_XFORM).
475         (installdirs): New target.
476         * Makefile.in (INSTALL): Set to @INSTALL@.
477         (INSTALL_XFORM, INSTALL_XFORM1): Remove.
478         (install-man): Depend upon installdirs.  Use
479         $(program_transform_name) directly, rather than using
480         $(INSTALL_XFORM).
481         (installdirs): New target.
482
483 Tue Apr 15 15:08:12 1997  Andrew Cagney  <cagney@b1.cygnus.com>
484
485         * sim-assert.h (SIM_ASSERT, ASSERT): Allow these macros to
486         be overriden.
487
488 Wed Apr  9 16:06:44 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
489
490         * sim-basics.h: Only bring in config.h and tconfig.h if
491         HAVE_CONFIG_H.
492
493 Mon Apr  7 11:39:45 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
494
495         * sim-config.h (WITH_TARGET_WORD_MSB): New Macro. Define the bit
496         numbering convention of the target.
497         * sim-config.c (print_sim_config): Print WITH_TARGET_WORD_BITSIZE
498         and WITH_TARGET_WORD_MSB.
499         (sim_config): When possible, check for consistency with bitsize
500         and msb.
501
502         * sim-bits.h: Allow MSB to be other than zero.
503         * sim-bits.c: Ditto.
504         * sim-n-bits.h: Ditto.
505         
506         * sim-bits.h (MSMASK*): New macros - converce to LSMASK*.
507         * sim-n-bits.h (MSMASKEDn): Ditto.
508
509 Mon Apr 14 16:29:21 1997  Ian Lance Taylor  <ian@cygnus.com>
510
511         * Makefile.in (INSTALL): Change install.sh to install-sh.
512
513 Mon Apr  7 10:46:38 1997  Doug Evans  <dje@canuck.cygnus.com>
514
515         * sim-base.h (sim_state_base): Move `magic' to end of struct.
516
517 Mon Apr  7 15:53:21 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
518
519         * run.c (main): Check that a program to run was specified.
520
521 Mon Apr  7 15:45:02 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
522
523         * aclocal.m4 (AC_TYPE_SIGNAL): Add check.
524
525         * configure: Regenerated to track ../common/aclocal.m4 changes.
526         * config.in: Ditto.
527
528 Wed Apr  2 15:06:28 1997  Doug Evans  <dje@canuck.cygnus.com>
529
530         * sim-endian.h: Move host {LITTLE,BIG}_ENDIAN support from here,
531         * sim-config.h: To here.
532
533         * Make-common.in (SIM_EXTRA_DEPS): New config var.
534         (sim_main_headers): Define.
535         (sim-*.o): Depend on $(SIM_EXTRA_DEPS).
536         (BUILT_SRC_FROM_COMMON): Move here from ../d30v/Makefile.in.
537         (clean): Use it.
538         (sim-utils.o): Add rule for.
539         * sim-utils.o: New file.
540         * sim-basics.h: #include sim-base.h.
541         (zalloc): Make argument unsigned long.
542         * sim-base.h: New file.
543         * sim-inline.h (SIM_IO support): Delete.
544         * sim-io.h: Delete inline support.
545         * sim-io.c: Likewise.  sim-state.h renamed to sim-main.h.
546         * sim-config.c: sim-state.h renamed to sim-main.h.
547         * sim-core.c: Likewise.
548         * sim-events.c: Likewise.
549
550         * run.c (main): Pass SIM_OPEN_STANDALONE to sim_open.
551
552         * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
553         (sim-debug): Allow arguments.  Define WITH_DEBUG in addition to
554         -DDEBUG.
555         * configure: Regenerated to track ../common/aclocal.m4 changes.
556
557 Wed Apr  2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
558
559         * configure: Regenerated to track ../common/aclocal.m4 changes.
560
561 Wed Apr  2 11:08:11 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
562
563         * sim-config.h (WITH_ALIGNMENT, WITH_FLOATING_POINT,
564         WITH_XOR_ENDIAN, WITH_SMP, WITH_RESERVED_BITS): Assume that these
565         are defined by the configure.
566
567         * aclocal.m4 (sim-stdio): Add option stdio from ../ppc configure.
568         
569         * aclocal.m4 (floating-point, xor-endian, alignment, smp,
570         reserved-bits): Always define.
571         
572         * sim-config.h, sim-config.c (sim_config): New function - and new
573         file - co-ordinate the setting/checking of the common simulator
574         configuration options.
575
576         * Make-common.in (sim-config.o): Add rule.
577
578 Fri Mar 28 15:32:00 1997  Mike Meissner  <meissner@cygnus.com>
579
580         * callback.c (os_{,e}vprintf_filtered): Change stdarg type to
581         va_list from void *, since va_list might not be a pointer type.
582
583 Mon Mar 24 15:27:12 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
584
585         * sim-n-endian.h (offset_N): Correct assertion - word and sub word
586         in wrong order.
587         (offset_N): Correct computation of LE offset.
588
589         * sim-io.c (sim_io_error): Include a new line when reporting
590         errors.
591
592         * sim-assert.h (SIM_FILTER_PATH): Out by one when locating last
593         `/'.
594
595 Thu Mar 20 22:31:06 1997  Jeffrey A Law  (law@cygnus.com)
596
597         * run.c: Include alloca-conf.h.
598
599         * callback.c (os_evprintf_filtered): Fix typo.
600
601 Fri Mar 21 13:36:20 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
602
603         * run.c (string.h, strings.h, stdlib.h): Include.
604
605         * sim-events.c (sim_events_tick): Recent cleanup failed to return
606         0 when nothing pending.
607
608         * run.c (sim_size, sim_trace): Plicate GCC - these two functions
609         will soon be going away.
610         (getopt): Plicate GCC.
611
612         * sim-endian.c (sim-io.h): Plicate GCC.
613         * sim-bits.c (sim-io.h): Ditto.
614         * sim-n-bits.h (ROTn): Ditto.
615
616         * sim-io.c (sim_io_error): Correct check for NULL.
617
618         * sim-assert.h (SIM_FILTER_PATH): Separate out the code filtering
619         the __FILE__.
620         * sim-events.c: Use SIM_FILTER_PATH to filter out the filename
621         path.
622
623 Wed Mar 19 01:12:06 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
624
625         * aclocal.m4 (SIM_AC_OPTION_*: Move so that they are outside of
626         SIM_AC_COMMON - SIM_AC_COMMON was gobling arguments.
627
628 Tue Mar 18 20:48:12 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
629
630         * sim-alu.h: Include sim-xcat.h.
631         
632 Tue Mar 18 13:58:18 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
633
634         * Make-common.in (sim-bits.c, sim-core.c, sim-endian.c,
635         sim-events.c, sim-inline.c, sim-io.c): Define rules for building
636         these.
637
638         * sim-events.c (sim_events_at_large_int): New function.  Just
639         schedules an event every large-int ticks.
640         (sim_events_init): Call.
641         (sim_events_tick, sim_events_process): Move async handing to
642         sim_events_process.  Move timer decrement so that it occures after
643         events have been processed.
644         
645         * sim-basics.h (struct _engine): Remove declaration.
646
647         * sim-events.h, sim-events.c: Rename type to sim_events.  Prefix
648         everything with same.  Rename global struct to SIM_DESC.
649         * sim-core.h, sim-core.c, sim-n-core.c: Ditto for sim_core.
650         * sim-io.h, sim-io.c: Ditto.
651         
652         * sim-assert.h: New file. Optional assertion checking macros.
653         * sim-io.c (sim_io_error): Make just this function tolerant to
654         null pointers.
655         
656         * sim-xcat.h: New file. Define concatenate macros.
657         * sim-basics.h (XCONCAT*): Move to sim-xcat.h.
658         * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Explicitly include
659         concat macros.
660         
661
662 Tue Mar 18 12:44:55 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
663
664         * sim-bits.h (LSMASK): New macro. Create mask of LS bits.
665
666 Mon Mar 17 18:10:05 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
667
668         * sim-inline.h: Add definitions for sim-types.
669         (ALL_BY_MODULE): New macro, encapsulate full inlining by the
670         module.
671
672 Mon Mar 17 15:38:27 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
673         
674         * sim-events.h: Remove defunct reference to callback struct.
675
676 Mon Mar 17 15:10:07 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
677
678         * configure: Re-generate.
679
680 Mon Mar 17 15:04:47 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
681
682         * Make-common.in (CSEARCH): Do not include the gdb directory in
683         the search path.
684
685 Mon Mar 17 13:16:26 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
686
687         * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
688         SIM_WARNING): Drop, requiring the simulator specific Makefile.in
689         to explicitly incorporate these.
690
691         * aclocal.m4 (--enable-sim-alignment); New option. Strongly
692         specify the alignment restrictions of the target architecture -
693         without this option all alignment restrictions are accomodated.
694         (--enable-sim-assert): New option.  Conditionally compile in
695         assertion statements.
696         (--enable-sim-float): New option. Strongly specify the target's
697         floating point support.
698         (--enable-sim-hardware): New option.  Specify the hardware devices
699         included in the simulation.
700         (--enable-sim-packages): New option.  Specify the hardware
701         packages included in the simulation.
702         (--enable-sim-regparm): New option.  Specify that parameters be
703         passed in registers instead of on the stack.
704         (--enable-sim-reserved-bits): New option. Specify that reserved
705         bits within an instruction are are correctly set.
706         (--enable-sim-smp): New option. Specify the level of SMP support
707         to be included in the simulator.
708         (--enable-sim-stdcall): New option.  Specify an alternative
709         function call convention.
710         (--enable-sim-xor-endian): New option.  Configure xor-endian
711         support used by some targets to implement bi-endian support.
712         
713 Fri Mar 14 19:51:21 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
714
715         * aclocal.m4 (--enable-sim-hostendian): New option.  Allow the
716         host endianness to be overridden.
717         (--enable-sim-endian): Allow the target platform's byte order
718         to be overridden.
719         (--enable-sim-inline): Control the inlining of common components.
720         (--enable-sim-bswap): For compatibility, also define WITH_BSWAP.
721         (--enable-sim-warnings): Enable additional GCC compiler checks.
722         * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
723         SIM_WARNINGS): Add.
724         
725         * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Rename from
726         sim-*-n.h so that the names are uniq on dos machines
727         * sim-core.c, sim-bits.c, sim-endian.c: Update.
728         
729 Thu Mar 13 12:32:42 1997  Doug Evans  <dje@canuck.cygnus.com>
730
731         * run.c: #include "libiberty.h".
732         (main): New locals sd,no_args,sim_argv.
733         Run buildargv on -a option.  Pass argv to sim_open, argv[0]
734         is program name.  Update call to sim_set_callbacks.
735         Record result of sim_open, pass to other sim_foo routines.
736
737 Thu Mar 13 10:24:05 1997  Michael Meissner  <meissner@cygnus.com>
738
739         * callback.c (os_printf_filtered): Do not call exit(1) or print a
740         final newline.
741
742 Thu Mar  6 15:50:28 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
743
744         * callback.c: Add os_flush_stdout and vprintf_filtered callbacks.
745         Route stdout through buffered IO.
746
747         * callback.c: Add os_flush_stderr, os_write_stderr,
748         os_evprintf_filtered functions to route error output through
749         stderr.
750         
751         * sim-io.h, sim-io.c (sim_io_flush_stderr, sim_io_flush_stdout):
752         Correct return type - should be void.
753
754 Fri Mar  7 20:14:37 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
755
756         * sim-basics.h: Clean up.  Many macro's moved to sim-inline.h.
757
758         * sim-config.h: Ditto.  For some options - eg WITH_DEVICES - do
759         not provide a default value as undefined indicates disable code.
760
761 Thu Mar  6 15:50:28 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
762
763         * sim-core.h, sim-core-n.h, sim-core.c: Borrow code from ppc
764         directory.
765         * sim-events.h, sim-events.c: Ditto.
766         * sim-io.h, sim-io.c: Ditto.
767         
768 Tue Mar  4 09:35:56 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
769         
770         * sim-alu.h (ALU_SUB_CA, ALU*_SUB_CA): New alu operation.
771
772         * sim-bits.h, sim-bits-n.h, sim-bits.c (LSMASKED*): New macro's
773         extract the tail or least signifiant bits from an integer of the
774         specified size.
775         
776         * sim-bits.h, sim-bits.c: Clean up conditionally compiled #if
777         WITH_TARGET_BITSIZE so that the compilation will fail when an
778         unsupported bitsize value is defined.
779
780         (INSERTED*): Convert to functions.
781         (EXTRACTED*): Ditto.
782         
783         (SIGN_EXTEND, SEXT): Change to more terse name.
784         
785 Tue Mar  4 09:35:56 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
786
787         * sim-inline.h: Allow explicit control over which .c files will be
788         included by their header.
789
790         * sim-inline.h: Allow explicit control over which .c files use the
791         alternative - REGPARM - parameter passing mechanism.
792         
793         * sim-inline.h, sim-inline.c: Don't attempt to include any of
794         icache.c, idecode.c, semantics.c or support.c.  Those names are
795         not generally applicable.
796         
797 Thu Feb 27 10:17:23 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
798
799         * sim-bits.c, sim-bits-n.h (new): Split sim-bits.c into two parts
800         in a fashion similar to sim-endian-n.
801
802         * sim-endian.h: (H_word, L_word, AL_*, VL_*): Extend to include
803         both value and address macro's.
804
805 Tue Feb 25 18:51:57 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
806
807         * sim-alu.h (ALU16_BEGIN, ALU16_SET, ...): Fill in.
808
809         * sim-endian.h (L_word, H_word): Replace MS2W_4, LS2W_4 with more
810         generic L_word, H_word macro's.
811
812 Thu Feb 20 18:36:55 1997  Andrew Cagney  <cagney@critters.cygnus.com>
813
814         * sim-basics.h: Borrow code from ppc directory.
815         * sim-bits.c: Ditto.
816         * sim-bits.h: Ditto.
817         * sim-config.h: Ditto.
818         * sim-endian-n.h: Ditto.
819         * sim-endian.c: Ditto.
820         * sim-endian.h: Ditto.
821         * sim-inline.c: Ditto.
822         * sim-inline.h: Ditto.
823         * sim-types.h: Ditto.
824
825 Wed Feb 19 12:40:50 1997  Andrew Cagney  <cagney@critters.cygnus.com>
826
827         * sim-alu.h (ALU_SET16, ALU_SET32, ALU_SET64, etc): Make available
828         all the ALU size alternatives and then auto-configure a default.
829         
830         * sim-alu.h: Copy ppc/idecode_expression.h.
831
832 Mon Feb 17 10:44:18 1997  Andrew Cagney  <cagney@critters.cygnus.com>
833
834         * bits.h, bits.c (SIGN_EXTEND32, SIGN_EXTEND64): New functions,
835         sign extend a bit within a value.
836
837         * sim-endian.h, sim-endian-n.h (offset_N): New functions - return
838         a pointer into the middle of a host word.
839         * sim-endian.h (MS2W_4, LS2W_4): Use this function.
840         
841 Tue Feb 11 13:46:49 1997  Michael Meissner  <meissner@tiktok.cygnus.com>
842
843         * callback.c: If HAVE_CONFIG_H is defined, include config.h from
844         autoconf.  If HAVE_UNISTD_H is defined, include unistd.h to get
845         appropriate definitions of read, write, etc.  Add prototype for
846         system.
847
848 Tue Feb  4 13:24:44 1997  Doug Evans  <dje@canuck.cygnus.com>
849
850         * Makefile.in (libcommon.a): Delete.
851         (callback.o,targ-map.o): Delete, moved to Make-common.in.
852         (gentmap,targ-vals.h,targ-map.c): Likewise.
853         (run-autoconf): Delete.
854         * aclocal.m4 (SIM_AC_OUTPUT): Redo creation of Makefile.
855         (common makefile fragment): Moved back into ...
856         * Make-common.in: Resurrect.
857         * configure.in (AC_LINK_FILES): Delete, unnecessary now.
858         * configure: Regenerated.
859
860 Fri Jan 31 07:16:49 1997  Doug Evans  <dje@canuck.cygnus.com>
861
862         * aclocal.m4 (SIM_AC_COMMON): Move COMMON_MAKEFILE_FRAG from here.
863         (SIM_AC_OUTPUT): To here.
864
865 Fri Jan 24 10:37:17 1997  Stu Grossman  (grossman@critters.cygnus.com)
866
867         * aclocal.m4 (COMMON_MAKEFILE_FRAG):  Quote a couple of $'s in
868         comments and single quotes.  Fixes a problem found on hpux.
869
870 Thu Jan 23 13:35:03 1997  Stu Grossman  (grossman@critters.cygnus.com)
871
872         * aclocal.m4:  Remove Make-common.in from dependencies.
873         * (distclean):  Remove targ-vals.def.
874
875         * aclocal.m4 (SIM_AC_COMMON):  Move contents of Make-common.in
876         into here.  Makes insertion into makefiles easier.  Also, change
877         the way that callback.o, gentmap, targ-vals.h, targ-map.c,
878         targ-map.o, and run are built.  They are now built in the
879         individual simulator directories, taking sources from ../common as
880         necessary.  This replaces the merging of libcommon.a into
881         linsim.a, which was problematic for the WinGDB build process.
882         * run.c:  Include config.h from . instead of ../common.
883         * Make-common.in:  Remove.  It's no longer necessary.
884
885 Mon Dec 16 15:02:33 1996  Ian Lance Taylor  <ian@cygnus.com>
886
887         * Make-common.in (ALL_CLAGS): Put CFLAGS at the end.
888         (.c.o): Put $(ALL_CFLAGS) before the file being compiled.
889
890 Wed Dec 11 11:30:58 1996  Jim Wilson  <wilson@cygnus.com>
891
892         * run.c (main): Set target_byte_order before call to sim_open.
893
894 Sun Dec  8 18:22:06 1996  Doug Evans  <dje@canuck.cygnus.com>
895
896         * callback.c: #include <stdlib.h>
897         (os_error): New function.
898         (default_callback): Add os_error.
899
900 Mon Nov 25 19:44:35 1996  Doug Evans  <dje@canuck.cygnus.com>
901
902         * Make-common.in (Makefile): Set CONFIG_HEADERS="".
903         * aclocal.m4: Mark the fact that --enable-sim-bswap isn't host
904         specific.
905         (SIM_AC_OUTPUT): Don't build Makefile if CONFIG_FILES="".
906
907 Wed Nov 20 01:11:04 1996  Doug Evans  <dje@canuck.cygnus.com>
908
909         * run.c: #include ../common/config.h, tconfig.h.
910         (myname): New static global.
911         (main): Recognize new options -a, -c.  Also recognize -h if h8/300.
912         Only process -c ifdef SIM_HAVE_SIMCACHE.
913         Only process -p/-s ifdef SIM_HAVE_PROFILE.
914         Parse program name from argv[0] and use in error messages.
915         Pass sim_args to sim_open.  Pass prog_args to sim_create_inferior.
916         Add support for incomplete h8/300 termination indicators.
917         (usage): Make more verbose.
918         * aclocal.m4,config.in,tconfig.in,configure.in,configure: New files.
919         * Makefile.in,Make-common.in,callback.c: New files.
920         * nltvals.def,gentmap.c,gentvals.sh: New files.
921
922 Tue Nov 12 13:34:00 1996  Dawn Perchik  <dawn@cygnus.com>   
923
924         * run.c: Include stdarg.h if __STDC__.
925
926 Tue Oct 15 11:16:31 1996  Jeffrey A Law  (law@cygnus.com)
927
928         * run.c (main): Don't print out anything if the signal
929         number is zero (ie no signal).
930
931 Tue Oct 15 11:20:44 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
932
933         * run.c (main): Print out if the program raised a signal.
934
935 Wed Sep 18 09:52:14 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
936
937         * run.c (exec_bfd): Rename from sim_bfd, to use the gdb name.
938         (main): Ditto.
939
940 Tue Sep 17 11:04:50 1996  James G. Smith  <jsmith@cygnus.co.uk>
941
942         * run.c (main): Explicitly cast malloc() parameter.
943
944 Thu Sep 12 11:27:21 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
945
946         * run.c (sim_bfd): New global to hold the bfd pointer for the
947         executable.
948         (main): Initialize sim_bfd.
949
950 Fri Dec 15 16:27:49 1995  Ian Lance Taylor  <ian@cygnus.com>
951
952         * run.c (main): Use new bfd_big_endian macro.
953
954 Wed Nov  8 15:49:49 1995  James G. Smith  <jsmith@pasanda.cygnus.co.uk>
955
956         * run.c (main): Removed SH specific comments, so source is
957         generic. Also updated to only load relevant sections. Moved
958         sim_open() to after callback attach (to match GDB).
959
960         * run.1: Removed SH specific comments.
961
962 Sat Oct 21 12:31:01 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
963
964         * run.c (main): Always return sigrc at end.
965
966 Tue Oct 10 12:03:13 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
967
968         * run.c (main): Print error diagnostic and exit if bfd_openr() or
969         bfd_check_format() fails.
970
971 Thu Sep 28 15:40:36 1995  steve chamberlain  <sac@slash.cygnus.com>
972
973         * run.c, run.1: From sh directory.
974
975