3 * sim-watch.c (handle_watchpoint): Pass a char** index into the
4 interrupt_names array as the data.
5 (sim-watch.h): Document.
9 * sim-options.c (sim_print_help): When the doc string is to long
12 * sim-watch.c (sim_watchpoint_install): Use option.doc_name so
13 that only the first few the watch options are listed. Generate
14 meanginful usage messages.
16 * sim-options.h (struct OPTION): Clarify use of doc_name field
20 * sim-options.c (OPTION_ARCHITECTURE_INFO): New option.
21 (standard_option_handler): Handle --architecture-info.
25 * sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
26 illegal zero-sized array.
27 * sim-core.c (sim_core_xor_read_buffer): same.
31 * nltvals.def: Regenerate.
35 * sim-fpu.c (DP_FRACHIGH2): Define LL using SIGNED64.
39 * sim-bits.c (MASKED): Delete.
41 (LSEXTRACTED, MSEXTRACTED): New functions.
43 * sim-n-bits.h (MASKEDn): Delete, define as MSMASKED or LSMASKED.
44 (MSMASKEDn, LSMASKEDn): Add last argument.
47 * sim-bits.h (EXTEND8, EXTEND16): Define.
48 (EXTRACTED64): Define as 64 bit extract, not 32 bit.
50 * sim-run.c (sim_engine_run): Use CPU_CIA macro.
52 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use CPU_CIA to get at
53 current instruction address.
55 * sim-inline.h (*_ENGINE): Define.
59 * sim-core.c (sim_core_attach): Fix checks of modulo/mask.
61 * sim-watch.c (delete_watchpoint): Delete by ident and type.
62 (watch_option_handler): Call delete_watchpoint with ident or type.
63 (sim_watchpoint_install): Create interrupt specific watchpoint
65 (do_watchpoint_create): New function, create a watch point using
66 type/int-nr info encoded in the option nr.
67 (do_watchpoint_info): New function. List active watchpoints.
69 * sim-watch.h: Change data structure to a list.
71 * sim-memopt.c (memory_option_handler): Require explicit "all"
72 before deleting all memory regions.
74 * sim-utils.c (sim_do_commandf): New function, printf version of
77 * sim-basics.h (asprintf, vasprintf): Hack, define for CYGWIN32.
79 * sim-alu.h (ALU64_ADD): Use explicit MSEXTRACTED64, do not assume
81 (SIGNED64, UNSIGNED64): Delete.
82 (ALU64_ADD): Don't rely on bit endianness.
83 (ALU64_BEGIN): Define.
85 * sim-n-bits.h (MSEXTRACTEDn, LSEXTRACTED): New functions.
86 (EXTRACTEDn): Delete, define as either LSEXTRACTED or MSEXTRACTED.
88 * sim-types.h (SIGNED64, UNSIGNED64): New macros, attach relevant
89 suffix - u64, LL - to 64 bit constants.
93 * sim-config.c (sim_config): Add assert for SIM_MAGIC_NUMBER.
95 * sim-utils.h (NZALLOC): Define - zalloc * N.
97 * sim-hrw.c (sim_read, sim_write): New file. Provide generic
98 implementation of read/write functions.
100 * Make-common.in (sim-hrw.o): New target.
102 * sim-base.h (STATE_MEMOPT_P): Delete, simulators _always_ add
105 * sim-memopt.c (memory_option_handler): Implement memory-size
106 command. Implement memory-alias command. Let memory-delete delete
108 (add_memopt): New function. Add a memory region.
109 (do_memopt_delete): New function. Delete a memory region.
111 * sim-utils.c (sim_elapsed_time_get): Never return zero.
113 * sim-core.c (sim_core_detach): New function.
114 (sim_core_map_detach): New function. Perform the actual detach.
115 (sim_core_init): Move initialization code from here.
116 (sim_core_install): To here.
117 (sim_core_uninstall): And here.
119 * sim-module.c: Add memopt module.
121 * sim-base.h (STATE_MEMOPT, STATE_MEMOPT_P): Add memopt to
124 * Make-common.in (sim_main_headers): Add sim-memopt.h
125 (sim-memopt.o): New target.
127 * sim-core.c (sim_core_install): Add core_options to the option
130 * sim-watch.c (watch_options): Make --delete-watch a synonym for
133 * sim-config.h (WITH_MODULO_MEMORY): Define as 0. Update
136 * sim-core.h (struct _sim_core_mapping): Change nr_bytes to type
137 address_word, add mask member.
139 * sim-core.h, sim-core.c (sim_core_attach): Make nr_bytes of type
140 address_word, allow for 64bit targets in 32bit host. Add modulo
142 (sim_core_map_attach): Ditto.
143 (new_sim_core_mapping): Ditto.
144 (sim_core_translate): Mask address when modulo memory.
148 * sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
150 * gdbinit.in: New file.
151 * aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
152 * Make-common.in (distclean): Delete .gdbinit.
153 (.gdbinit): Add rule for.
154 * configure: Regenerated to track ../common/aclocal.m4 changes.
156 * Make-common.in (cgen-run.o): Add rule for.
160 * sim-resume.c (sim_resume): Suspend/resume the simulator.
162 * sim-events.c (sim_watch_valid): Compute total elapsed time from
163 both resumed and previous elapsed time.
164 (sim_events_init): Set initial_wallclock and current_wallclock to
166 (sim_events_install): Install sim_events_suspend and
168 (sim_events_watch_clock): Allow for suspended simulator when
169 computing the time of the clock event.
171 * sim-events.h (struct _sim_event): Add resume_wallclock, rename
172 initial_wallclock to elapsed_wallclock, set both to zero.
173 (sim_events_init, sim_events_uninstall): Delete prototypes.
175 * sim-module.h (MODULE_SUSPEND_FN, MODULE_RESUME_FN): Define types.
177 * sim-module.c(sim_module_resume, sim_module_suspend): New
182 * sim-core.c (sim_core_map_attach): Clarify memory overlap error
187 * Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
188 * Make-common.in (TAGS): Likewise.
189 * sim-n-bits.h: Add TAGS comments for all functions.
190 * sim-n-core.h: Likewise.
191 * sim-n-endian.h: Likewise.
195 * sim-utils.c (sim_state_alloc): Set CPU backlinks, callback and
198 * sim-base.h (sim_state_alloc): Add callback and kind arguments.
200 * sim-base.h (INVALID_INSTRUCTION_ADDRESS): Add default
205 * sim-fpu.c (DP_GARDMSB, ...): Make unsigned.
206 (DP_FRACHIGH, DP_FRACHIGH2, ..): Use MSMASK to avoid LL.
210 * sim-core.c (sim_core_map_attach): Cast attach enum to int.
211 (sim_core_xor_read_buffer, sim_core_xor_write_buffer): Make
212 nr_transfered and nr_this_transfer unsigned.
214 * sim-events.c (sim_events_tickn): N is signed, as limited to
217 * sim-n-endian.h (offset_N): Change size to unsigned.
219 * callback.c (os_poll_quit): Add prototypes for kbhit and getkey.
223 * sim-utils.c (sim_copy_argv): Delete, replaced by dupargv.
225 * sim-options.c (sim_parse_args): Use dupargv.
229 * sim-options.c (standard_option_handler): Use xstrdup, not strdup.
233 * sim-base.h (STATE_ARCHITECTURE, STATE_TARGET): Add to simulator
236 * sim-options.c (standard_options): Add --architecture=MACHINE and
237 --target=TARGET options.
238 (OPTION_ARCHITECTURE, OPTION_TARGET): Define.
239 (standard_option_handler): Handle architecture and target options.
242 * sim-utils.c (sim_analyze_program): Pass STATE_TARGET to
244 (sim_analyze_program): Set prog_bfd architecture from
245 STATE_ARCHITECTURE if known.
249 * configure: Regenerated to track ../common/aclocal.m4 changes.
254 * aclocal.m4 (enable-sim-warnings): Remove comment stating
255 that option does not apply to certain files.
259 * sim-bits.h (LSBIT8, LSBIT16, LSBIT32, LSBIT64, LSBIT, MSBIT8,
260 MSBIT16, MSBIT32, MSBIT64, MSBIT): New macros - single bit as
263 * sim-endian.h (A1_8, A2_8, A4_8, A1_4, A2_4, A1_2): New macro,
264 access address of sub word quantity of a hosts 16, 32, 64 bit word
266 (V1_2, V1_4, V2_4, V1_8, V2_8, V4_8): Ditto for values.
267 (U8_1, U8_2, U8_4, U4_1, U4_2, U2_1): Ditto for set of values.
268 (V2_H1, V2_L1, V4_H2, V4_L2, V8_L4, V8_H4): Given N byte argument,
269 return N*2 byte value with argument in Hi/Lo word. Renamed from
270 V1_H2, V1_L2, V2_H4, V2_L4, V4_H8, V4_L8.
272 * sim-alu.h (ALU32_HAD_OVERFLOW): Use 64 bit mask not 32bit.
273 (ALU16_HAD_CARRY, ALU32_HAD_CARRY, ALU16_HAD_OVERFLOW): Use MSBIT
274 so that bit offset is explicit.
278 * sim-utils.c (sim_analyze_program): Add prog_name argument.
279 Update STATE_PROG_BFD when needed with a dup'd copy of the
282 * sim-config.c (sim_config): Delete ABFD argument, use
283 STATE_PROG_BFD directly.
287 * run.c (main): Pass the open ABFD to sim_create_inferior.
289 * nrun.c (main): Determine prog_bfd. Pass to sim_create_inferior
293 * sim-hload.c (sim_load): New file. Implement generic sim_load for
294 hardware only simulator targets.
296 * Make-common.in (sim-hload.o): Add rule.
300 * sim-utils.c (sim_copy_argv): Rewrite to match malloc strategy
301 used by copyargv and freeargv.
303 * sim-options.c (sim_parse_args): Save a copy of PROG-ARGS in
304 STATE_PROG_ARGV, not just a pointer.
308 * configure: Regenerated to track ../common/aclocal.m4 changes.
313 * aclocal.m4 (sim-endian): Add second argument to
314 SIM_AC_OPTION_ENDIAN. First is hardwired endian, second is
315 default endian when not hardwired.
317 * sim-config.h (WITH_DEFAULT_TARGET_BYTE_ORDER): New macro, if all
318 else failes value for target byte order.
320 * sim-config.c (sim_config): Add abfd arguments. Set
321 STATE_PROG_BFD accordingly. Determine prefered_target_byte_order
323 (sim_config): Return SIM_RC, don't abort.
326 * run.c (main): Update call to sim_open - add ABFD argument.
327 * nrun.c (main): Add NULL ABFD argument.
331 * callback.c (os_poll_quit): Make static.
332 Call sim_cb_eprintf, not p->eprintf.
333 (sim_cb_printf, sim_cb_eprintf): New functions.
334 * sim-utils.h (sim_cb_printf, sim_cb_eprintf): Declare.
336 * sim-basics.h (zalloc,zfree,sim_add_commas,SIM_ELAPSED_TIME,
337 sim_elapsed_time_get,sim_elapsed_time_since): Move decls to
338 sim-utils.h. #include sim-utils.h.
339 * sim-utils.h: Above decls moved here.
340 (sim_analyze_program,sim_load_file): Use `struct _bfd', not `bfd'.
342 * sim-watch.c (action_watchpoint): Fix thinkos.
346 * sim-types.h: Fix defs of 64 bit data types for MSVC.
350 * sim-n-core.h (sim_core_write_unaligned_N): Add missing break
351 to FORCED_ALIGNMENT case.
355 * callback.c (target_to_host_open): Handle hosts with O_BINARY.
359 * Make-common.in (libsim.a): Fix typo.
363 * nrun.c (main): Verify the structure returned before using it.
367 * sim-config.h (WITH_ENGINE): Enable the sim-engine module by
370 * sim-engine.c (sim_engine_install): New function. Install the
371 engine init functions.
372 (sim_engine_init): [Re]initialize the simulator engine.
374 * sim-module.c: Add sim_engine to list of modules that always
379 * sim-watch.c (schedule_watchpoint): Use sim_unschedule_watchpoint
380 to remove the old watchpoint, not delete_watchpoint.
381 (watch_option_handler): Action the correct watchpoint, not just
386 * sim-n-core.h (sim_core_write_aligned_N): For 8byte reads, output
387 both low and high word.
388 (sim_core_write_aligned_N): Ditto.
390 * sim-trace.c (set_trace_options): Delete code explicitly setting
393 * sim-options.c (sim_print_help): Call the list commands if not a
394 standalone simulator.
395 (sim_print_help): Advise that some options may not be applicable.
397 * sim-trace.c (set_trace_options): Assume core present.
399 * sim-events.c (sim_events_schedule_after_signal): Overflow signal
400 buffer when full not almost full.
404 * sim-events.c (sim_events_process): Don't blat the event queue
405 when processing watchpoints.
407 * sim-watch.h: Make arg unsigned long - stop sign extension.
409 * sim-events.c (sim_watch_valid): rewrite so debugable.
411 * sim-config.h (WITH_XOR_ENDIAN): Default to zero.
413 * sim-watch.c (schedule_watchpoint): Add is_within option so that
414 inequality test is possible.
415 (handle_watchpoint): Re-pass is_within arg.
416 (watch_option_handler): When `!' prefix to pc-watchpoint arg pass
417 0 to schedule_watchpoint's is_within arg.
418 (sim_watchpoint_init): Re-pass is_within arg.
420 * sim-options.c (sim_print_help): Add is_command argument. Don't
421 include -- prefix when called from the command line interpreter.
423 * sim-watch.c (schedule_watchpoint): Pass true is_within argument.
425 * sim-events.c (sim_events_watch_sim): Add is_within argument,
426 zero indicates that the test should be reversed.
427 (sim_events_watch_core): Ditto.
428 (WATCH_CORE): Compare range against is_within.
433 * sim-events.c (WATCH_CORE): Pass NULL cpu argument to
434 sim_core_read_buffer. Check nr-bytes transfered.
436 * sim-core.h (sim_core_common): Define a new struct that contains
437 the common data. to sd and cpu structures.
438 * sim-core.c (sim_core_attach): Update.
439 (sim_core_init): Update. Remember to copy initialized data to each
441 (sim_core_find_mapping): Ditto.
443 * sim-core.c (sim_core_read_buffer): Add cpu argument.
444 (sim_core_write_buffer): Ditto.
446 * sim-n-core.h (sim_core_read_unaligned_N): When mis-aligned
447 transfer use xor version of read buffer.
448 (sim_core_write_unaligned_N): Ditto for write.
450 * sim-core.c (sim_core_xor_read_buffer): New function implement
451 xor-endian data read breaking transfer up into xor-endian sized
453 (sim_core_xor_write_buffer): Ditto for write.
454 (reverse_n): Reverse order of arbitrary number of bytes in buffer
455 - needed for xor-endian transfers.
459 * sim-inline.h: Review description.
461 * sim-core.h, sim-core.c: Reduce number of functions being inlined
462 to just those involved in data transfers and configuration.
464 * sim-xcat.h (XSTRING): New macro, map macro definition onto
466 * sim-n-core.h (sim_core_read_aligned_N): Use.
467 (sim_core_read_unaligned_N): Ditto.
468 (sim_core_read_unaligned_N): Ditto..
469 (sim_core_write_unaligned_N): Ditto.
471 * sim-core.h: Add xor endian bitmap to main structure. *
473 sim-n-core.h (sim_core_write_aligned_N): Add suport for xor
475 (sim_core_read_aligned_N): Ditto.
477 * sim-core.c (sim_core_set_xor_endian): New function.
478 (sim_core_attach): Don't overwrite the per-cpu xor map when
479 cloning the global core.
483 * sim-engine.h: Update below so that it is using an enumerated
488 * sim-engine.c (sim_engine_restart):
489 * sim-resume.c (sim_resume): Change longjmp param/setjmp
490 return value used for simulator restart from 0 to 2.
494 * cgen-scache.c (scache_option_handler): Add is_command arg.
496 * sim-model.c (model_option_handler): Add is_command argument.
498 * sim-profile.c (profile_option_handler): Add is_command arg.
500 * sim-events.c (sim_watch_valid): Use ub64, lb64 when 64bit value
503 * sim-module.c (sim_module_add_init_fn): Call init fn in the same
504 order that they are registered.
506 * sim-options.h (OPTION_HANDLER): Add argument to differentiate
507 between option and command line processing.
509 * sim-options.c: Include stdlib.h, ctype.h.
511 * Make-common.in (sim-watch.o): Add rule.
512 (sim_main_headers): Assume sim-assert.h included.
513 (sim-*.o): Simplify make rule.
515 * sim-module.c: Add sim_watch_install to module list.
519 * sim-base.h (STATE_LOADED_P): New predicate. Set once everything
522 * sim-trace.c (trace_install): Check magic. Include sim-assert.h.
523 * sim-events.c (sim_events_install): Ditto.
524 * sim-core.c (sim_core_install): Ditto.
525 * sim-model.c (model_install): Ditto.
526 * sim-options.c (standard_install): Ditto.
527 * sim-profile.c (profile_install): Ditto.
528 * sim-reason.c (sim_stop_reason): Ditto.
529 * sim-run.c (sim_engine_run): Ditto.
530 * sim-utils.c (sim_analyze_program): Ditto.
532 * sim-module.c (modules): Make profile_install and trace_install
535 * sim-base.h (STATE_MEM_BASE): Define for flat memory systems.
537 * sim-options.c (standard_option_handler): Set the byte order.
539 * sim-events.c (sim_events_process): Allow multi tick processing.
540 (sim_events_tickn): New function - multi cycle tick.
542 * sim-events.h (sim_events_tickn, sim_events_timewarp): Add
543 prototypes. Under development.
544 (sim_events): Replace processing with nr_ticks_to_process.
548 * nrun.c (main): Pass callbacks to sim_open instead of using
551 * run.c (main): Ditto.
555 * sim-events.c (sim_events_zalloc): Signal save memory allocator -
556 stop tk interrupting malloc calls.
557 (sim_events_zalloc): Converse.
559 * Make-common.in (sim_main_headers): Add sim-events.h.
561 * sim-events.c (sim_events_schedule_after_signal): Change return
562 type to void - signal events are strictly internal.
563 (sim_events_init): Allocate a finite buffer for signal events.
564 (sim_events_schedule_after_signal): Enter signal events into the
567 * sim-engine.c (sim_engine_halt): Check SIM_DESC magic.
568 (sim_engine_restart): Ditto.
569 (sim_engine_abort): Ditto.
570 * sim-stop.c (sim_stop): Ditto.
571 (control_c_simulation): Ditto.
572 * sim-resume.c (sim_resume): Ditto.
573 (has_stepped): Ditto.
574 * sim-abort.c (sim_engine_abort): Ditto.
576 * sim-basics.h (transfer_type): New type.
578 * sim-core.c (sim_core_signal): New function. Print core signal
580 (sim_core_find_mapping): Add transfer argument.
582 * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
583 SIM_CORE_SIGNAL if a recoverable abort.
584 * sim-core.c (sim_core_find_mapping): Ditto.
588 * sim-core.c (sim_core_find_mapping): Replace calls to
589 sim_io_error to more resiliant sim_engine_abort.
591 * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
592 (sim_core_write_unaligned_N): Ditto.
596 * sim-module.c: Add sim_events_install to list.
598 * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
600 (sim_events_init): Now returns SIG_RC.
602 * sim-run.c: New file. Generic sim_engine_run.
603 * sim-reason.c: New file. Generic sim_stop_reason.
604 * sim-stop.c: New file. Generic sim_stop.
605 * sim-resume.c: New file. Generic sim_resume.
607 * Make-common.in (sim-engine.o): Add rule.
608 (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
610 * sim-engine.h, sim-engine.c: New file. Provide generic
611 implementation of sim_engine_halt, sim_engine_error. et.al.
613 * sim-base.h (sim_state_base): Add member halt.
614 (sim-engine.h): Include.
616 * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
618 * sim-events.c (sim_events_poll): Update event handler.
622 * sim-events.h, sim-events.c (sim_events_watch_clock): New
624 (sim_events_watch_sim): New function.
625 (sim_events_watch_core): New function.
626 (sim_watch_valid): New function.
627 (sim_events_preprocess): New function.
628 (sim_events_process): Process the watchpoints as well as the timer
630 (sim_events_tick): Check WORK_PENDING instead of the hold queue.
631 (sim_events_deschedule): Check all the queues when removing an
633 (sim_events_init): Ditto for cleaning.
637 * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
641 * callback.c (os_open): Type of arg flags is int.
645 * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
646 just like normal numbers as per IEEE rules.
650 * callback.c (os_close): Mark the descriptor as being
651 available if the close succeeded.
652 (os_open): Pass 0644 as the mode of the file being created.
656 * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
659 * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
660 * sim-lnline.h: Update.
662 * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
663 conversion functions.
664 (sim_fpu_to{32,64}[iu]): New fp2int functions.
666 * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
667 compare functions. Replacing.
668 (sim_fpu_cmp): This. Delete.
672 * sim-core.c (sim_core_find_mapping): Call engine_error not
673 sim_io_error when possible.
677 * sim-endian.h (V1_H2): Add macro's to insert a word into a
678 high/low double word.
680 * sim-trace.h: Remove definition of attribute - defined in
685 * sim-options.h (struct OPTION): Add doc_opt as the documenting
686 name of the option - or family of options.
688 * sim-options.c (sim_args_command): Match command `a-b c' with
689 option `--a-b-c' from option table.
693 * sim-options.c (sim_print_help): For optional arguments, wrap
696 * sim-trace.c (set_trace_options): New function, handle optional
697 argument and multiple assignment.
698 (trace_option_handler): Update.
700 * sim-trace.c (trace_option_handler): Trace branch and not fpu
701 when branch tracing selected.
705 * sim-trace.c (trace_one_insn): Make a va-args function.
707 * sim-trace.c (trace_vprintf): New function, va-arg version of
712 * sim-trace.c (trace_uninstall): Don't close a file twice.
713 * sim-profile.c (profile_uninstall): Likewise.
717 * sim-trace.c (toplevel): Include bfd.h.
718 (trace_options): Note that --trace-linenum also turns on
719 --trace-insn. Add --trace-{branch,semantics}.
720 (trace_option_handler): If --trace-linenum, also turn on
721 --trace-insn. Add --trace-branch support. If --trace-semantics,
722 turn on ALU, FPU, branch, and memory tracing.
723 (trace_one_insn): New function to trace an instruction. Support
725 (OPTION_TRACE_*): Use an enum, rather than lots of defines.
727 * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
728 (MAX_TRACE_VALUES): Use 32, not 12 by default.
729 (TRACE_branch): Add new mask.
730 (TRACE_*_P): Define all possible trace_p macros.
731 (trace_one_insn): Declare function.
735 * sim-trace.h (__attribute__): Define as nothing if not GNU C or
736 GNU C doesn't support __attributes__.
737 ({trace,debug}_printf): Add attribute's so -Wformat can check the
742 * sim-config.h (FORCED_ALIGNMENT): New alignment option -
743 addresses are masked forcing them to be correctly aligned.
744 (WITH_ALIGNMENT): Make NONSTRICT_ALIGNMENT the default.
745 * sim-config.c (config_alignment_to_a): Update.
747 * sim-core.h (sim_cpu_core): New data type contains cpu specific
749 * sim-base.h (CPU_CORE): Add cpu specific core data to cpu base
751 * sim-core.c (sim_core_attach): Add CPU argument. Ready for
752 processor specific core maps.
753 (sim_core_map_attach): Copy the core map data to each of the
754 processor specific core data structures.
755 * sim-core.c (sim_core_find_mapping): Update.
757 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Rename.
758 (sim_core_write_aligned_N, sim_core_write_aligned_N): New names.
759 (sim_core_write_unaligned_N, sim_core_write_unaligned_N): New
760 alternatives that handle unaligned addresses.
761 (sim_core_{read,write}_{,un}aligned_N): Drop SIM_DESC arg, replace
763 * cgen-utils.c (sim_disassemble_insn): Update.
767 * sim-trace.h (TRACE_FPU_IDX): Add Floating-point specific
770 * sim-fpu.h, sim-fpu.c: New files - prototype for generic target
773 * sim-inline.h, sim-inline.c: Add support for SIM_FPU.
777 * sim-core.c (sim_core_map_to_str): New function ascii equivalent
780 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Use in trace
785 * cgen-trace.c: Prepend additional trace_printf argument.
787 * cgen-utils.c (sim_disassemble_insn): Add additional core
792 * nrun.c (main): Catch/report errorenous simulator states.
794 * sim-module.c: #include "libiberty.h" so that xmalloc is defined.
795 * sim-trace.c: #include string.h/strings.h so that memset is
797 * sim-utils.c: Ditto.
798 * sim-profile.c: Ditto. And stdlib.h.
799 (print_bar): Only define when used by instruction or memory profiler.
801 * sim-options.c (standard_option_handler): Make ul more local.
803 * sim-load.c (sim_load_file): Make the name constant.
804 (sim_load_file): Passify gcc.
806 * sim-utils.h: New file, pre-declare utilites in corresponding .c
808 * sim-utils.c, sim-load.c: Include sim-utils.h.
810 * sim-base.h (sim_cpu): Pre define here so available to all.
812 * sim-core.h (DECLARE_SIM_CORE_WRITE_N, DECLARE_SIM_CORE_READ_N):
813 Restore the sim_cpu and instruction_address arguments so that full
814 information is available to the abort function.
815 * sim-core.c (sim_core_find_mapping, sim_core_write_buffer): Ditto.
816 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
818 * sim-trace.h, sim-trace.c (trace_option_handler): Add interim
819 tracing support for sim-events and sim-core.
820 (trace_option_handler): Convert #if to if where possible so always
821 compiled/checked by C compiler.
822 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
824 * sim-base.h: Adjust comment documenting how to define the cpu
826 (sim_state_base): Add sim_core and sim_events to simulator base
829 * sim-trace.h, sim-trace.c (trace_printf): Add SIM_DESC argument.
830 * sim-core.c (sim_core_init, sim_core_attach,
831 sim_core_find_mapping): Update.
832 * sim-events.c (ETRACE, sim_events_init, sim_events_time,
833 update_time_from_event, insert_sim_event,
834 sim_events_schedule_after_signal, sim_events_deschedule,
835 sim_events_tick): Ditto.
837 * sim-basics.h (sim-module.h, sim-trace.h, sim-profile.h,
838 sim-model.h): Move #includes from here.
839 * sim-base.h: To here.
840 (sim-core.h, sim-events.h, sim-io.h): Include also
844 * callback.c (default_callback): Missing initialisers.
848 * sim-utils.c (sim_add_commas): New function.
849 * sim-basics.h (sim_add_commas): Add prototype.
850 * cgen-scache.c (scache_print_profile): Print commas in numbers.
851 * sim-profile.c (COMMAS): New macro.
852 (print_*): Use it to print commas in numbers.
854 * configure: Regenerated.
856 * cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
857 (cgen_state): New member run_fast_p.
858 (cgen_init): Add prototype.
859 (sim_disassemble_insn): New arg `cpu'.
860 * cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
861 * cgen-utils.c (cgen_init): New function.
862 (sim_disassemble_insn): New arg `cpu'. Rewrite fetching of insn.
863 * genmloop.sh: Call engine_halt if loop exits.
865 * Makefile.in (sim-options_h): Define.
866 (sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
867 (sim-model.o): Add new rule.
868 (cgen-{scache,trace,utils}.o): Add new rules.
869 * aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
870 * cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
871 Indent output by 2 spaces.
872 * cgen-scache.h (scache_print_profile): Update.
873 * cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
874 Use trace_printf, not fprintf.
875 (trace_extract): Use trace_printf, not cgen_trace_printf.
876 * genmloop.sh (!FAST case): Increment `insn_count'.
877 * sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
878 (sim_cpu_base): Rename member `sd' to `state' to be consistent with
880 * sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
881 Change return type to SIM_RC.
882 (sim_core_{install,uninstall}): New functions.
883 * sim-core.h (sim_core_{install,uninstall}): Declare.
884 (sim_core_init): Use EXTERN_SIM_CORE to define it.
885 Change return type to SIM_RC.
886 * sim-model.h (models,machs,model_install): Declare.
887 * sim-module.c (modules): Add scache_install, model_install.
888 (sim_post_argv_init): Set cpu->state backlinks.
889 * sim-options.c (standard_options): Delete --simcache-size,--max-insns.
890 (standard_option_handler): Likewise.
891 * sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
894 (profile_options): Delete --profile-simcache.
895 (profile_option_handler): Likewise.
896 (profile_print_insn): Change `sd' arg to `cpu'. Indent output 2
898 (profile_print_{memory,model}): Likewise.
899 (profile_print_simcache): Delete.
900 (profile_print_speed): New function.
901 (profile_print): Rewrite.
902 * sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
903 (WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
904 (PROFILE_DATA): Delete members simcache_{hits,misses}.
905 (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
906 (PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
907 (profile_print): Update prototype.
911 * cgen-scache.[ch], cgen-sim.h: New files.
912 * cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
913 * sim-model.c: New file.
915 * Make-common.in (clean targets): Undo patch of Apr. 22.
919 * sim-n-bits.h (signed): If we have a standard compiler, undef
920 signed, so that signedN is defined correctly.
924 * sim-module.h, sim-model.h, sim-profile.h: New files.
925 * sim-module.c, sim-profile.c: New files.
926 * Make-common.in (SIM_PROFILE): Define
927 (CONFIG_CFLAGS): Add $(SIM_PROFILE).
928 (sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
929 (sim_module.o,sim-profile.o): Add rules for.
930 * aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
931 (--enable-sim-profile): Add.
932 * configure: Regenerated.
933 * sim-base.h (sim_state_base): New members init_list, uninstall_list,
934 model. Move trace and profile support to sim-{trace,profile}.h.
935 New members trace_data, profile_data.
936 * sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
937 * sim-config.h: Provide default definition of WITH_PROFILE.
938 (WITH_TRACE): Change default to -1.
939 (MAX_NR_PROCESSORS): Always define.
940 * sim-options.c: Move trace and profile support to
941 sim-{trace,profile}.h.
942 (sim_pre_argv_init): Moved to sim-model.c.
943 (standard_install): New function.
944 * sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
945 (standard_install): Declare.
946 * sim-trace.c: Tracing option handling moved here from sim-options.c.
947 (trace_install, trace_uninstall): New functions.
948 (trace_printf): Update reference to TRACE_FILE.
949 * sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
950 (TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
951 (WITH_TRACE_FOO_P): Define.
952 (trace_install): Declare.
953 (TRACE_DATA): New struct.
957 * run.c: Undo last exec_bfd patch.
958 (main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
962 * run.c (exec_bfd): Add back in.
963 (main): Set exec_bfd.
967 * sim-load.c (sim_load_file): #include <stdio.h> for NULL.
971 * sim-events.c (insert_sim_event): Call sim_io_error instead of
972 less well defined engine_error.
977 * Make-common.in: Change clean targets to use :: so that other
978 Makefiles can have their own clean targets.
979 * sim-load.c (xprintf eprintf): Use ANSI_PROTOTYPES instead of
980 __STDC__ to control use of stdarg vs. varargs syntax. Some
981 systems can't use __STDC__, but require stdarg.
985 * sim-options.c (standard_options): Add --endian.
986 (standard_option_handler): Likewise.
988 * nrun.c: #include <signal.h>.
989 (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
990 handler that calls sim_stop ().
994 * run.c (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
995 handler that calls sim_stop (). Simulators may still be
996 establishing their own handler.
998 * sim-events.c (sim_events_poll): Rename from
999 sim_events_at_large_int. Poll IO.
1001 * sim-io.c (sim_io_poll_quit): New function - pass on a polling
1004 * callback.c (os_poll_quit): New function poll for quit signal
1006 (default_callback): Include magic number.
1010 * aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
1011 Check for functions getrusage, time.
1012 * sim-basics.h (SIM_ELAPSED_TIME): New typedef.
1013 (sim_elapsed_time_get, sim_elapsed_time_since): Add prototypes.
1014 * sim-utils.c: #include time.h, sys/time.h, sys/resource.h if able.
1015 (sim_elapsed_time_get, sim_elapsed_time_since): New functions.
1017 * sim-utils.c (sim_copy_argv, sim_analyze_program): New functions.
1019 * sim-options.c, sim-options.h: New files.
1020 * sim-config.h (WITH_DEBUG): Provide default value of zero.
1021 * Make-common.in (nrun.o): Add rules for.
1024 * run.c (main): Check return value of sim_open.
1026 * Make-common.in (sim-options.o, sim-load.o, sim-trace.o): Add rules.
1027 (sim_main_headers): Add sim-trace.h.
1028 * run.c (exec_bfd, target_byte_order): Delete.
1029 (main): Pass -E <endian> to sim_open. Delete code to load sections,
1030 call sim_load instead. Check return code of sim_create_inferior.
1031 * sim-base.h (CURRENT_STATE): Define.
1032 (sim_state_base): Make typedef. New members options, prog_argv,
1033 prog_bfd, text_{section,start,end}, start_addr, simcache_size,
1034 mem_size, memory [+ corresponding access macros].
1035 (sim_cpu_base): New typedef.
1036 * sim-trace.h: New file.
1037 * sim-trace.c: New file.
1038 * sim-basics.h: #include it.
1039 * sim-load.c: New file.
1043 * Make-common.in (INSTALL): Set to @INSTALL@.
1044 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1045 (install-common): Depend upon installdirs. Use
1046 $(program_transform_name) directly, rather than using
1048 (installdirs): New target.
1049 * Makefile.in (INSTALL): Set to @INSTALL@.
1050 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1051 (install-man): Depend upon installdirs. Use
1052 $(program_transform_name) directly, rather than using
1054 (installdirs): New target.
1058 * sim-assert.h (SIM_ASSERT, ASSERT): Allow these macros to
1063 * sim-basics.h: Only bring in config.h and tconfig.h if
1068 * sim-config.h (WITH_TARGET_WORD_MSB): New Macro. Define the bit
1069 numbering convention of the target.
1070 * sim-config.c (print_sim_config): Print WITH_TARGET_WORD_BITSIZE
1071 and WITH_TARGET_WORD_MSB.
1072 (sim_config): When possible, check for consistency with bitsize
1075 * sim-bits.h: Allow MSB to be other than zero.
1076 * sim-bits.c: Ditto.
1077 * sim-n-bits.h: Ditto.
1079 * sim-bits.h (MSMASK*): New macros - converce to LSMASK*.
1080 * sim-n-bits.h (MSMASKEDn): Ditto.
1084 * Makefile.in (INSTALL): Change install.sh to install-sh.
1088 * sim-base.h (sim_state_base): Move `magic' to end of struct.
1092 * run.c (main): Check that a program to run was specified.
1096 * aclocal.m4 (AC_TYPE_SIGNAL): Add check.
1098 * configure: Regenerated to track ../common/aclocal.m4 changes.
1103 * sim-endian.h: Move host {LITTLE,BIG}_ENDIAN support from here,
1104 * sim-config.h: To here.
1106 * Make-common.in (SIM_EXTRA_DEPS): New config var.
1107 (sim_main_headers): Define.
1108 (sim-*.o): Depend on $(SIM_EXTRA_DEPS).
1109 (BUILT_SRC_FROM_COMMON): Move here from ../d30v/Makefile.in.
1111 (sim-utils.o): Add rule for.
1112 * sim-utils.o: New file.
1113 * sim-basics.h: #include sim-base.h.
1114 (zalloc): Make argument unsigned long.
1115 * sim-base.h: New file.
1116 * sim-inline.h (SIM_IO support): Delete.
1117 * sim-io.h: Delete inline support.
1118 * sim-io.c: Likewise. sim-state.h renamed to sim-main.h.
1119 * sim-config.c: sim-state.h renamed to sim-main.h.
1120 * sim-core.c: Likewise.
1121 * sim-events.c: Likewise.
1123 * run.c (main): Pass SIM_OPEN_STANDALONE to sim_open.
1125 * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
1126 (sim-debug): Allow arguments. Define WITH_DEBUG in addition to
1128 * configure: Regenerated to track ../common/aclocal.m4 changes.
1132 * configure: Regenerated to track ../common/aclocal.m4 changes.
1136 * sim-config.h (WITH_ALIGNMENT, WITH_FLOATING_POINT,
1137 WITH_XOR_ENDIAN, WITH_SMP, WITH_RESERVED_BITS): Assume that these
1138 are defined by the configure.
1140 * aclocal.m4 (sim-stdio): Add option stdio from ../ppc configure.
1142 * aclocal.m4 (floating-point, xor-endian, alignment, smp,
1143 reserved-bits): Always define.
1145 * sim-config.h, sim-config.c (sim_config): New function - and new
1146 file - co-ordinate the setting/checking of the common simulator
1147 configuration options.
1149 * Make-common.in (sim-config.o): Add rule.
1153 * callback.c (os_{,e}vprintf_filtered): Change stdarg type to
1154 va_list from void *, since va_list might not be a pointer type.
1158 * sim-n-endian.h (offset_N): Correct assertion - word and sub word
1160 (offset_N): Correct computation of LE offset.
1162 * sim-io.c (sim_io_error): Include a new line when reporting
1165 * sim-assert.h (SIM_FILTER_PATH): Out by one when locating last
1170 * run.c: Include alloca-conf.h.
1172 * callback.c (os_evprintf_filtered): Fix typo.
1176 * run.c (string.h, strings.h, stdlib.h): Include.
1178 * sim-events.c (sim_events_tick): Recent cleanup failed to return
1179 0 when nothing pending.
1181 * run.c (sim_size, sim_trace): Plicate GCC - these two functions
1182 will soon be going away.
1183 (getopt): Plicate GCC.
1185 * sim-endian.c (sim-io.h): Plicate GCC.
1186 * sim-bits.c (sim-io.h): Ditto.
1187 * sim-n-bits.h (ROTn): Ditto.
1189 * sim-io.c (sim_io_error): Correct check for NULL.
1191 * sim-assert.h (SIM_FILTER_PATH): Separate out the code filtering
1193 * sim-events.c: Use SIM_FILTER_PATH to filter out the filename
1198 * aclocal.m4 (SIM_AC_OPTION_*: Move so that they are outside of
1199 SIM_AC_COMMON - SIM_AC_COMMON was gobling arguments.
1203 * sim-alu.h: Include sim-xcat.h.
1207 * Make-common.in (sim-bits.c, sim-core.c, sim-endian.c,
1208 sim-events.c, sim-inline.c, sim-io.c): Define rules for building
1211 * sim-events.c (sim_events_at_large_int): New function. Just
1212 schedules an event every large-int ticks.
1213 (sim_events_init): Call.
1214 (sim_events_tick, sim_events_process): Move async handing to
1215 sim_events_process. Move timer decrement so that it occures after
1216 events have been processed.
1218 * sim-basics.h (struct _engine): Remove declaration.
1220 * sim-events.h, sim-events.c: Rename type to sim_events. Prefix
1221 everything with same. Rename global struct to SIM_DESC.
1222 * sim-core.h, sim-core.c, sim-n-core.c: Ditto for sim_core.
1223 * sim-io.h, sim-io.c: Ditto.
1225 * sim-assert.h: New file. Optional assertion checking macros.
1226 * sim-io.c (sim_io_error): Make just this function tolerant to
1229 * sim-xcat.h: New file. Define concatenate macros.
1230 * sim-basics.h (XCONCAT*): Move to sim-xcat.h.
1231 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Explicitly include
1237 * sim-bits.h (LSMASK): New macro. Create mask of LS bits.
1241 * sim-inline.h: Add definitions for sim-types.
1242 (ALL_BY_MODULE): New macro, encapsulate full inlining by the
1247 * sim-events.h: Remove defunct reference to callback struct.
1251 * configure: Re-generate.
1255 * Make-common.in (CSEARCH): Do not include the gdb directory in
1260 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
1261 SIM_WARNING): Drop, requiring the simulator specific Makefile.in
1262 to explicitly incorporate these.
1264 * aclocal.m4 (--enable-sim-alignment); New option. Strongly
1265 specify the alignment restrictions of the target architecture -
1266 without this option all alignment restrictions are accomodated.
1267 (--enable-sim-assert): New option. Conditionally compile in
1268 assertion statements.
1269 (--enable-sim-float): New option. Strongly specify the target's
1270 floating point support.
1271 (--enable-sim-hardware): New option. Specify the hardware devices
1272 included in the simulation.
1273 (--enable-sim-packages): New option. Specify the hardware
1274 packages included in the simulation.
1275 (--enable-sim-regparm): New option. Specify that parameters be
1276 passed in registers instead of on the stack.
1277 (--enable-sim-reserved-bits): New option. Specify that reserved
1278 bits within an instruction are are correctly set.
1279 (--enable-sim-smp): New option. Specify the level of SMP support
1280 to be included in the simulator.
1281 (--enable-sim-stdcall): New option. Specify an alternative
1282 function call convention.
1283 (--enable-sim-xor-endian): New option. Configure xor-endian
1284 support used by some targets to implement bi-endian support.
1288 * aclocal.m4 (--enable-sim-hostendian): New option. Allow the
1289 host endianness to be overridden.
1290 (--enable-sim-endian): Allow the target platform's byte order
1292 (--enable-sim-inline): Control the inlining of common components.
1293 (--enable-sim-bswap): For compatibility, also define WITH_BSWAP.
1294 (--enable-sim-warnings): Enable additional GCC compiler checks.
1295 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
1298 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Rename from
1299 sim-*-n.h so that the names are uniq on dos machines
1300 * sim-core.c, sim-bits.c, sim-endian.c: Update.
1304 * run.c: #include "libiberty.h".
1305 (main): New locals sd,no_args,sim_argv.
1306 Run buildargv on -a option. Pass argv to sim_open, argv[0]
1307 is program name. Update call to sim_set_callbacks.
1308 Record result of sim_open, pass to other sim_foo routines.
1312 * callback.c (os_printf_filtered): Do not call exit(1) or print a
1317 * callback.c: Add os_flush_stdout and vprintf_filtered callbacks.
1318 Route stdout through buffered IO.
1320 * callback.c: Add os_flush_stderr, os_write_stderr,
1321 os_evprintf_filtered functions to route error output through
1324 * sim-io.h, sim-io.c (sim_io_flush_stderr, sim_io_flush_stdout):
1325 Correct return type - should be void.
1329 * sim-basics.h: Clean up. Many macro's moved to sim-inline.h.
1331 * sim-config.h: Ditto. For some options - eg WITH_DEVICES - do
1332 not provide a default value as undefined indicates disable code.
1336 * sim-core.h, sim-core-n.h, sim-core.c: Borrow code from ppc
1338 * sim-events.h, sim-events.c: Ditto.
1339 * sim-io.h, sim-io.c: Ditto.
1343 * sim-alu.h (ALU_SUB_CA, ALU*_SUB_CA): New alu operation.
1345 * sim-bits.h, sim-bits-n.h, sim-bits.c (LSMASKED*): New macro's
1346 extract the tail or least signifiant bits from an integer of the
1349 * sim-bits.h, sim-bits.c: Clean up conditionally compiled #if
1350 WITH_TARGET_BITSIZE so that the compilation will fail when an
1351 unsupported bitsize value is defined.
1353 (INSERTED*): Convert to functions.
1354 (EXTRACTED*): Ditto.
1356 (SIGN_EXTEND, SEXT): Change to more terse name.
1360 * sim-inline.h: Allow explicit control over which .c files will be
1361 included by their header.
1363 * sim-inline.h: Allow explicit control over which .c files use the
1364 alternative - REGPARM - parameter passing mechanism.
1366 * sim-inline.h, sim-inline.c: Don't attempt to include any of
1367 icache.c, idecode.c, semantics.c or support.c. Those names are
1368 not generally applicable.
1372 * sim-bits.c, sim-bits-n.h (new): Split sim-bits.c into two parts
1373 in a fashion similar to sim-endian-n.
1375 * sim-endian.h: (H_word, L_word, AL_*, VL_*): Extend to include
1376 both value and address macro's.
1380 * sim-alu.h (ALU16_BEGIN, ALU16_SET, ...): Fill in.
1382 * sim-endian.h (L_word, H_word): Replace MS2W_4, LS2W_4 with more
1383 generic L_word, H_word macro's.
1387 * sim-basics.h: Borrow code from ppc directory.
1388 * sim-bits.c: Ditto.
1389 * sim-bits.h: Ditto.
1390 * sim-config.h: Ditto.
1391 * sim-endian-n.h: Ditto.
1392 * sim-endian.c: Ditto.
1393 * sim-endian.h: Ditto.
1394 * sim-inline.c: Ditto.
1395 * sim-inline.h: Ditto.
1396 * sim-types.h: Ditto.
1400 * sim-alu.h (ALU_SET16, ALU_SET32, ALU_SET64, etc): Make available
1401 all the ALU size alternatives and then auto-configure a default.
1403 * sim-alu.h: Copy ppc/idecode_expression.h.
1407 * bits.h, bits.c (SIGN_EXTEND32, SIGN_EXTEND64): New functions,
1408 sign extend a bit within a value.
1410 * sim-endian.h, sim-endian-n.h (offset_N): New functions - return
1411 a pointer into the middle of a host word.
1412 * sim-endian.h (MS2W_4, LS2W_4): Use this function.
1416 * callback.c: If HAVE_CONFIG_H is defined, include config.h from
1417 autoconf. If HAVE_UNISTD_H is defined, include unistd.h to get
1418 appropriate definitions of read, write, etc. Add prototype for
1423 * Makefile.in (libcommon.a): Delete.
1424 (callback.o,targ-map.o): Delete, moved to Make-common.in.
1425 (gentmap,targ-vals.h,targ-map.c): Likewise.
1426 (run-autoconf): Delete.
1427 * aclocal.m4 (SIM_AC_OUTPUT): Redo creation of Makefile.
1428 (common makefile fragment): Moved back into ...
1429 * Make-common.in: Resurrect.
1430 * configure.in (AC_LINK_FILES): Delete, unnecessary now.
1431 * configure: Regenerated.
1435 * aclocal.m4 (SIM_AC_COMMON): Move COMMON_MAKEFILE_FRAG from here.
1436 (SIM_AC_OUTPUT): To here.
1440 * aclocal.m4 (COMMON_MAKEFILE_FRAG): Quote a couple of $'s in
1441 comments and single quotes. Fixes a problem found on hpux.
1445 * aclocal.m4: Remove Make-common.in from dependencies.
1446 * (distclean): Remove targ-vals.def.
1448 * aclocal.m4 (SIM_AC_COMMON): Move contents of Make-common.in
1449 into here. Makes insertion into makefiles easier. Also, change
1450 the way that callback.o, gentmap, targ-vals.h, targ-map.c,
1451 targ-map.o, and run are built. They are now built in the
1452 individual simulator directories, taking sources from ../common as
1453 necessary. This replaces the merging of libcommon.a into
1454 linsim.a, which was problematic for the WinGDB build process.
1455 * run.c: Include config.h from . instead of ../common.
1456 * Make-common.in: Remove. It's no longer necessary.
1460 * Make-common.in (ALL_CLAGS): Put CFLAGS at the end.
1461 (.c.o): Put $(ALL_CFLAGS) before the file being compiled.
1465 * run.c (main): Set target_byte_order before call to sim_open.
1469 * callback.c: #include <stdlib.h>
1470 (os_error): New function.
1471 (default_callback): Add os_error.
1475 * Make-common.in (Makefile): Set CONFIG_HEADERS="".
1476 * aclocal.m4: Mark the fact that --enable-sim-bswap isn't host
1478 (SIM_AC_OUTPUT): Don't build Makefile if CONFIG_FILES="".
1482 * run.c: #include ../common/config.h, tconfig.h.
1483 (myname): New static global.
1484 (main): Recognize new options -a, -c. Also recognize -h if h8/300.
1485 Only process -c ifdef SIM_HAVE_SIMCACHE.
1486 Only process -p/-s ifdef SIM_HAVE_PROFILE.
1487 Parse program name from argv[0] and use in error messages.
1488 Pass sim_args to sim_open. Pass prog_args to sim_create_inferior.
1489 Add support for incomplete h8/300 termination indicators.
1490 (usage): Make more verbose.
1491 * aclocal.m4,config.in,tconfig.in,configure.in,configure: New files.
1492 * Makefile.in,Make-common.in,callback.c: New files.
1493 * nltvals.def,gentmap.c,gentvals.sh: New files.
1497 * run.c: Include stdarg.h if __STDC__.
1501 * run.c (main): Don't print out anything if the signal
1502 number is zero (ie no signal).
1506 * run.c (main): Print out if the program raised a signal.
1510 * run.c (exec_bfd): Rename from sim_bfd, to use the gdb name.
1515 * run.c (main): Explicitly cast malloc() parameter.
1519 * run.c (sim_bfd): New global to hold the bfd pointer for the
1521 (main): Initialize sim_bfd.
1525 * run.c (main): Use new bfd_big_endian macro.
1529 * run.c (main): Removed SH specific comments, so source is
1530 generic. Also updated to only load relevant sections. Moved
1531 sim_open() to after callback attach (to match GDB).
1533 * run.1: Removed SH specific comments.
1537 * run.c (main): Always return sigrc at end.
1541 * run.c (main): Print error diagnostic and exit if bfd_openr() or
1542 bfd_check_format() fails.
1546 * run.c, run.1: From sh directory.