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