765cc69278fe9921e0b18c9bae72dab3f27ab026
[binutils-gdb.git] / sim / common / ChangeLog
1 Tue Feb 3 16:31:56 1998 Andrew Cagney <cagney@b1.cygnus.com>
2
3 * sim-run.c (sim_engine_run): Assume IMEM is 32 bit.
4
5 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
6
7 * configure: Regenerated to track ../common/aclocal.m4 changes.
8
9 Sun Feb 1 16:16:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
10
11 * sim-types.h (fp_word): New type, define according to
12 WITH_TARGET_FLOATING_POINT_BITSIZE.
13
14 * aclocal.m4 (default_sim_floating_point_bitsize): Add
15 configuration of size of floating point registers.
16
17 Sun Feb 1 14:02:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
18
19 * sim-profile.c (profile_print): Only print CPU <N> if other
20 output is going to appear.
21
22 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
23
24 * configure: Regenerated to track ../common/aclocal.m4 changes.
25
26 Sat Jan 31 18:03:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
27
28 * sim-types.h (address_word): Typedef according to
29 WITH_TARGET_ADDRESS_BITSIZE.
30 (signed_cell, unsigned_cell, natural_cell): Ditto using
31 WITH_TARGET_CELL_BITSIZE.
32
33 * sim-config.h (WITH_TARGET_ADDRESS_BITSIZE): Define.
34 (WITH_TARGET_CELL_BITSIZE): Define.
35 (WITH_HOST_WORD_BITSIZE): Delete.
36
37 * sim-config.c (print_sim_config): Update.
38
39 * aclocal.m4 (SIM_AC_OPTION_BITSIZE): Add support for
40 configuration of address and OpenFirmware cell sizes.
41
42 Fri Jan 30 09:36:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
43
44 * sim-engine.h (sim_engine_run): Add argument nr_cpus.
45 * sim-run.c (sim_engine_run): Update.
46
47 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use SET_CPU_CIA instead of
48 CPU_CIA.
49 * sim-run.c (sim_engine_run): Ditto.
50
51 * sim-resume.c (sim_resume): Obtain nr_cpus from sim_engine.
52 (sim_resume): Pass nr_cpus to sim_engine_run.
53
54 * sim-engine.h (struct _sim_engine): Add member nr_cpus.
55
56 * sim-engine.c (sim_engine_init): Hardwire nr_cpus to
57 MAX_NR_PROCESSORS.
58 (sim_engine_nr_cpus) sim-engine.c, sim-engine.h: New function
59
60 Thu Jan 29 12:13:01 1998 Doug Evans <devans@canuck.cygnus.com>
61
62 * cgen.sh: Portably read parms past $9.
63
64 Fri Jan 23 14:20:54 1998 Doug Evans <devans@seba.cygnus.com>
65
66 * Make-common.in (stamp-tvals): New rule.
67 (targ-vals.h,targ-map.c): Depend on it.
68 (clean): Remove stamp-tvals.
69
70 Tue Jan 20 21:35:13 1998 Michael Meissner <meissner@cygnus.com>
71
72 * sim-utils.c (sim_state_alloc): #if 0 variable that is only used
73 in code also #if 0'ed.
74
75 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
76
77 * configure: Regenerated to track ../common/aclocal.m4 changes.
78 * aclocal.m4: Recognize --enable-maintainer-mode.
79
80 Mon Jan 19 12:45:45 1998 Doug Evans <devans@seba.cygnus.com>
81
82 start-sanitize-cygnus
83 * Make-common.in (cgen-{arch,cpu,decode}): New targets.
84 * cgen.sh: New file.
85 end-sanitize-cygnus
86 * cgen-scache.h: Deleted.
87 * Make-common.in (cgen-run.o,cgen-scache.o): Delete cgen-scache.h dep.
88 (CGEN_CPU_SCM): Add sim-model.scm.
89 * cgen-scache.c: Only compile contents if WITH_SCACHE.
90 (scache_init): Use runtime computed size of SCACHE.
91 (scache_flush): Likewise.
92 * cgen-mem.h (GETIMEMU[QHSD]I): Declare.
93 ([GS]ETT{QI,UQI,HI,UHI,SI,USI,DI,UDI}): Declare.
94 * cgen-sim.h: Scache support moved here.
95 (PC): Redo definition.
96 (ARGBUF,SCACHE,PARALLEL_EXEC): Provide forward decls.
97 (DECODE): Add parallel execution support.
98 Only include semantic label members if using switch.
99 (SWITCH,CASE,BREAK,DEFAULT,ENDSWITCH): Portable computed goto support.
100 (CGEN_CPU): Delete members exec_state, halt_sigrc, halt_jmp_buf.
101 (IADDR,CIA,SEM_ARG,EX_FN_NAME,SEM_FN_NAME,RECORD_IADDR,SEM_ARGBUF,
102 SEM_NEXT_PC,SEM_BRANCH_VIA_{CACHE,ADDR},SEM_NEW_PC_ADDR): Moved here
103 from cgen-types.h.
104 (engine_{stop,run,resume,halt,signal}): Delete decls.
105 * cgen-types.h (CGEN_{XCAT3,CAT3}): Delete.
106 (argbuf,scache): Delete forward decls.
107 (STATE): Delete decl.
108 * cgen-utils.c: Don't include decode.h, mem-ops.h, sem-ops.h.
109 Include cgen-mem.h, cgen-ops.h.
110 (engine_halt,engine_signal): Delete.
111 ({ex,exc,sem,semc}_illegal): Delete.
112 (sim_disassemble_insn): Result of extract fn is in bits.
113 * genmloop.sh: Rewrite.
114
115 * cgen-trace.c (trace_insn): Set printed_result_p=0 if not tracing
116 line numbers.
117
118 * sim-base.h (sim_state_base): Delete member `model'.
119 (sim_cpu_base): Add member `model'.
120 * sim-model.h (IMP_PROPERTIES): New type.
121 (MACH): New members imp_props, models.
122 (models): Delete decl.
123 * sim-model.c (set_model): Update.
124 * sim-profile.c (profile_print_model): Update.
125
126 * sim-utils.c (sim_state_alloc): Delete setting of cpu backlink here.
127
128 Fri Jan 16 12:33:09 1998 Nick Clifton <nickc@cygnus.com>
129
130 * cgen-trace.c (trace_insn): Call CGEN_INSN_MNEMONIC() rather than
131 CGEN_INSN_SYNTAX().
132
133 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
134
135 * configure: Regenerated to track ../common/aclocal.m4 changes.
136 * config.in: Ditto.
137
138 Mon Dec 15 23:16:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
139
140 * aclocal.m4 (AR): Check for sigaction.
141
142 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
143
144 * Make-common.in (sim-core.o): Depend on $(sim_main_headers).
145
146 * sim-config.h (WITH_TREE_PROPERTIES): Define as 0.
147 * sim-config.c (sim_config): Replace WITH_DEVICES with
148 WITH_TREE_PROPERTIES.
149
150 * configure: Regenerated to track ../common/aclocal.m4 changes.
151
152 Wed Dec 3 17:56:02 1997 Doug Evans <devans@canuck.cygnus.com>
153
154 * Make-common.in (SIM_ENVIRONMENT): New variable.
155 (CONFIG_CFLAGS): Add it.
156 * aclocal.m4 (SIM_AC_OPTION_ENVIRONMENT): Handle
157 --enable-sim-environment option.
158 * configure: Regenerated.
159 * sim-config.h (environment support): Rewrite.
160 * sim-config.c (current_environment): Define as enum, unconditionally.
161 (current_alignment): Define unconditionally.
162 (config_environment_to_a): Update.
163 (config_alignment_to_a): Fix type of argument. Define unconditionally.
164 (sim_config): Handle environment and alignment determination
165 unconditionally. Delete sanity checks of current_environment,
166 unnecessary.
167 (print_sim_config): Update.
168 * sim-options.c (STANDARD_OPTIONS enum): Add OPTION_ENVIRONMENT.
169 (standard_options): Add --environment.
170 (standard_option_handler): Likewise.
171
172 Fri Nov 28 12:21:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
173
174 * sim-alu.h: Add notes on carry vs borrow for subtraction.
175 (ALU{,8,16,32,64}ADD): Redefine ADD macro as add overflowing.
176 (ALU{,8,16,32,64}ADDC): Define - add carrying.
177 (ALU{,8,16,32,64}SUB): Redefine SUB macro as subtract overflowing.
178 (ALU{,8,16,32,64}SUBB): Define - subtract borrowing.
179 (ALU{,8,16,32,64}SUBC): Define - tract carrying.
180 (ALU{,8,16,32,64}ADD_CA, ALU{,8,16,32,64}ADDC_C): Replace single
181 argument ADD_CA macro with two argument ADDC_C - add carrying with
182 carry in.
183 (ALU{,8,16,32,64}SUB_CA, ALU{,8,16,32,64}SUBC_X): Replace single
184 argument SUB_CA macro with two argument SUBC_X - subtract
185 carrying, extended.
186 (ALU{,8,16,32,64}SUBB_B): Define - subtract borrowing with
187 borrow-in.
188 (ALU{,8,16,32,64}NEGC, ALU{,8,16,32,64}NEGB): Define.
189
190 Sun Nov 30 17:40:57 1997 Michael Meissner <meissner@cygnus.com>
191
192 * sim-io.c (sim_io_{syscalls,getstring}): Delete. No longer used.
193 * sim-io.h (sim_io_syscalls): Delete.
194
195 Fri Nov 28 20:10:09 1997 Michael Meissner <meissner@cygnus.com>
196
197 * syscall.c (cb_syscall): Add missing else, so write to stdout
198 isn't doubled.
199
200 * sim-alu.h (ALU{,8,16,32,64}_SET_CARRY): Provide macros to import
201 the carry bit from the CPU's psw.
202
203 Fri Nov 28 11:15:05 1997 Doug Evans <devans@canuck.cygnus.com>
204
205 * gennltvals.sh: Redo syscall support.
206 * nltvals.def: Regenerated.
207
208 Wed Nov 26 16:49:38 1997 Michael Meissner <meissner@cygnus.com>
209
210 * syscall.c (cb_syscall): If writing to stdout or stderr, flush
211 the stream immediately.
212
213 Wed Nov 26 12:32:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
214
215 * sim-io.c (sim_io_getstring): Delete unused len2.
216 (sim_io_syscalls): Ditto for sys_errno.
217
218 Wed Nov 26 11:18:40 1997 Doug Evans <devans@canuck.cygnus.com>
219
220 * syscall.c (cb_syscall): Test CB_SYSCALL struct magic number.
221
222 * Make-common.in (run.o): Depend on remote-sim.h.
223 (nrun.o,sim-hload.o,sim-hrw.o): Likewise.
224 (sim-io.o,sim-reason.o,sim-resume.o): Likewise.
225
226 Tue Nov 25 20:12:46 1997 Michael Meissner <meissner@cygnus.com>
227
228 * sim-io.c (sim_io_syscalls): Disable lseek.
229
230 Tue Nov 25 00:12:38 1997 Doug Evans <devans@seba.cygnus.com>
231
232 start-sanitize-d30v
233 * gennltvals.sh: Generate syscall values for d30v.
234 end-sanitize-d30v
235 * gennltvals.sh: Use libgloss/syscall.h for sparc.
236 * nltvals.def: Regenerate.
237
238 * callback.c (os_stat): Make 3rd arg a host struct stat ptr.
239 (os_fstat): Likewise. Validate fd argument.
240 (cb_host_to_target_stat): Delete big_p arg. If HS arg is NULL,
241 just compute target stat struct length.
242 * syscall.c: #include "libiberty.h", <sys/types.h>, <sys/stat.h>.
243 (ENOSYS,ENAMETOOLONG): Provide definitions if missing.
244 (get_string): Return host errno values so they can be properly
245 translated later.
246 (cb_syscall): Likewise.
247 (cb_syscall, cases open,unlink): Use get_path instead of get_string.
248 (cb_syscall, case read): Use read_stdin for file descriptor 0.
249 (cb_syscall, case write): Use write_stderr for file descriptor 2.
250 (cb_syscall): Add cases for lseek, unlink, stat, fstat, time.
251 (get_path): New function.
252
253 Mon Nov 24 18:56:07 1997 Michael Meissner <meissner@cygnus.com>
254
255 * sim-io.c (sim_io_syscalls): New function to provide system call
256 emulation. Provide exit, open, close, read, write, lseek, and
257 unlink.
258 (sim_io_getstring): New function to return a string from a
259 simulated memory location.
260
261 * sim-io.h (sim_io_syscalls): Add declaration.
262
263 Mon Nov 24 12:09:59 1997 Doug Evans <devans@seba.cygnus.com>
264
265 * sim-core.c (sim_core_signal): Fix spelling error in message.
266
267 * sim-hrw.c (sim_read): Use read map, not write map.
268
269 * Make-common.in (all): Add .gdbinit.
270 * gdbinit.in: Add dump command.
271
272 * sim-model.c (model_options): Use '\0' for `shortopt'.
273
274 * sim-trace.c (trace_option_handler): Set state trace file
275 for --trace-file in addition to cpu's values.
276 (trace_vprintf): If cpu == NULL, try state's trace file.
277 (trace_options): Reorganize table, reword some descriptions.
278
279 Sun Nov 23 10:57:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
280
281 * sim-fpu.c (sim_fpu_abs, sim_fpu_neg, sim_fpu_inv), sim-fpu.h:
282 New functions.
283
284 Sat Nov 22 19:16:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
285
286 * sim-reason.c (sim_stop_reason): For sim_signalled, return the
287 signal untranslated, document problem with this.
288
289 * nrun.c (main): Check for a prog name of `*step'. If present,
290 step the simulator instead of allowing it to run free.
291
292 * sim-signal.c (SIGQUIT): Define on _MSC_VER hosts.
293
294 * Make-common.in (sim_main_headers): Add sim-signal.h.
295
296 Fri Nov 21 09:32:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
297
298 * sim-signal.c (sim_signal_to_host): Return 0 for SIM_SIGNONE.
299
300 Thu Nov 20 20:35:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
301
302 * sim-signal.h: Start simulator signals at 64 so that host signal
303 numbers can be detected and reported.
304
305 * sim-signal.h (SIM_SIGFPE), sim-signal.h: Add signal.
306
307 Wed Nov 19 12:02:41 1997 Doug Evans <devans@seba.cygnus.com>
308
309 * callback.c (cb_host_to_target_stat): Fix return values.
310
311 * cgen-sim.h (enum_signal_type): Delete.
312 (engine_signal): Update prototype.
313 * cgen-utils.c: Don't include <signal.h>.
314 (sim_signal_to_host): Delete, lives in sim-signal.c now.
315 (engine_signal): Update.
316
317 * sim-utils.c (sim_state_alloc): Call SIM_STATE_ALLOC if defined.
318 (sim_state_free): Call SIM_STATE_FREE if defined.
319
320 * sim-module.c (sim_module_install): Don't leave any modules
321 installed if one fails to install.
322
323 Wed Nov 19 13:25:48 1997 Michael Meissner <meissner@cygnus.com>
324
325 * sim-options.c: Don't include ../libiberty/alloca-conf.h any
326 more, since alloca is not used in this file.
327
328 * sim-alu.h (ALU{32,64}_*): Rewrite 32 and 64 bit ALU support to
329 correctly set the carry and overflow bits for those types.
330 (ALU{8,16,32,64}_{ADD,SUB}_CA): Take VAL argument to add along
331 with carry, so carry is correct after doing both adds.
332 (ALU*): Space out '\' to make it easier to read.
333
334 Tue Nov 18 15:53:45 1997 Doug Evans <devans@canuck.cygnus.com>
335
336 * sim-core.c (sim_core_signal): Use sim_stopped instead of
337 sim_signalled.
338
339 * sim-signal.c, sim-signal.h: New files.
340 * Make-common.in (sim-signal.o): Add rule for.
341 (SIM_NEW_COMMON_OBJS): Add sim-signal.o.
342 * sim-abort.c: Don't include <signal.h>.
343 * sim-basics.h: #include "sim-signal.h".
344 * sim-break.c: Don't include <signal.h>.
345 (sim_handle_breakpoint): Replace SIGTRAP with SIM_SIGTRAP.
346 * sim-core.c: Don't include <signal.h>.
347 (SIGBUS): Delete definition.
348 (sim_core_signal): Replace SIGSEGV,SIGBUS with SIM_SIGSEGV,SIM_SIGBUS.
349 * sim-engine.c: Don't include <signal.h>.
350 (sim_engine_abort): Replace SIGABRT with SIM_SIGABRT.
351 * sim-reason.c (sim_stop_reason): Call sim_signal_to_host.
352 * sim-resume.c: Don't include <signal.h>.
353 (SIGTRAP): Delete definition.
354 (has_stepped): Replace SIGTRAP with SIM_SIGTRAP.
355 * sim-stop.c: Don't include <signal.h>.
356 (control_c_simulation): Replace SIGINT with SIM_SIGINT.
357 * sim-watch.c: Don't include <signal.h>.
358 (handle_watchpoint): Replace SIGINT with SIM_SIGINT.
359
360 * Make-common.in (SIM_NEW_COMMON_OBJS): New variable.
361
362 * sim-base.h (CIA_ADDR): Provide default definition.
363 * sim-core.c (sim_core_signal): Use CIA_ADDR to fetch value.
364 * sim-break.c (sim_handle_breakpoint): Likewise.
365
366 Mon Nov 17 14:15:31 1997 Doug Evans <devans@seba.cygnus.com>
367
368 * Make-common.in (srccom): New variable.
369
370 * Make-common.in (DEP, COMMON_DEP_CFLAGS): Define.
371 (LIB_OBJS): Add syscall.o.
372 (gentmap): Pass $(NL_TARGET) to $(CC).
373 (syscall.o): Add rule for.
374 (sim_main_headers): Add $(SIM_EXTRA_DEPS).
375 (sim-bits.o): Depend on $(sim-n-bits_h).
376 (sim-load.o): Depend on callback.h.
377
378 * Make-common.in (cgen-*.o): Update dependencies, mem-ops.h renamed to
379 cgen-mem.h, sem-ops.h renamed to cgen-ops.h.
380 * cgen-mem.h, cgen-ops.h: New files.
381
382 * aclocal.m4 (--enable-sim-scache): Pass -DWITH_SCACHE=0 for "=no".
383
384 * Makefile.in (nltvals.def): Depend on gennltvals.sh.
385 Rewrite build rule.
386 * callback.c: #include string.h or strings.h.
387 #include sys/types.h and sys/stat.h.
388 (cb_init_syscall_map,cb_init_errno_map,cb_init_open_map): Declare.
389 (os_get_errno,os_open): Update.
390 (os_stat,os_fstat): New functions.
391 (os_init): Initialize syscall_map, errno_map, open_map.
392 (default_callback): Add entries for os_stat, os_fstat, syscall_map,
393 errno_map, open_map, signal_map, stat_map.
394 (cb_read_target_syscall_maps): New function.
395 (cb_target_to_host_syscall): New function.
396 (cb_host_to_target_errno): Renamed from host_to_target_errno.
397 (cb_target_to_host_open): Renamed from target_to_host_open.
398 (store): New function.
399 (cb_host_to_target_stat): New function.
400 * syscall.c: New file.
401 * gentmap.c (sys_tdefs): New global.
402 (gen_targ_vals_h): Output target syscall numbers.
403 (gen_targ_map_c): Update. Output target syscall translation map.
404 * gentvals.sh: New first argument `target'. Preface table with
405 #ifdef NL_TARGET_$target if non-null target passed.
406 * gennltvals.sh: New file.
407 * nltvals.def: Regenerated.
408
409 Fri Nov 14 11:33:34 1997 Andrew Cagney <cagney@b1.cygnus.com>
410
411 * sim-n-core.h (sim_core_read_unaligned_N): Return static
412 sim_core_dummy_M.
413 (sim_core_dummy_M): Declare.
414
415 Wed Nov 12 18:16:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
416
417 * sim-core.c (sim_core_signal): Print the address of the
418 instruction.
419
420 Thu Nov 13 11:49:41 1997 Doug Evans <devans@seba.cygnus.com>
421
422 * sim-base.h (sim_state_base): Move `magic' to end of struct.
423
424 * sim-base.h (sim_state_base): Add member trace_data.
425 (STATE_TRACE_DATA): New macro.
426 * sim-trace.h (TRACE_DEBUG_IDX,TRACE_debug): New macros.
427 ({WITH_,}TRACE_DEBUG_P): New macros.
428 (STATE_TRACE_FLAGS,STRACE_P,STRACE_DEBUG_P): New macros.
429 (_sim_cpu): Delete forward reference.
430 (debug_printf): Update.
431 * sim-trace.c (OPTION_TRACE_DEBUG): Define.
432 (trace_options): Add --trace-debug.
433 (set_trace_options): Handle it.
434 (trace_option_handler): Likewise.
435 (trace_install): Init state trace_data struct.
436 (trace_uninstall): Close state trace file.
437 * sim-events.c (ETRACE): Only print source file and line number if
438 --trace-debug.
439 * sim-n-core.h (sim_core_trace_M): Likewise.
440
441 * sim-core.c (sim_core_signal): Add missing "\n" in message.
442
443 1997-11-13 Felix Lee <flee@cygnus.com>
444
445 * sim-n-core.h (sim_core_read_unaligned_N): illegal empty
446 initializer.
447 * sim-types.h (unsigned128,signed128): fix typo for MSVC.
448
449 Wed Nov 12 12:18:08 1997 Doug Evans <devans@canuck.cygnus.com>
450
451 * aclocal.m4 (SIM_AC_OPTION_SCACHE): Fix typo.
452
453 * Make-common.in (BUILT_SRC_FROM_COMMON): Remove files no longer
454 built this way.
455 (sim-config.o): Remove non-existent $(sim-nconfig_h) dependency.
456 (clean): Don't delete $(BUILT_SRC_FROM_COMMON) if building in
457 source tree.
458
459 Tue Nov 11 13:28:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
460
461 * sim-events.c (sim_events_process): Re-compute the time -
462 update_time_from_event - as each event is processed. Reverses
463 previous change.
464
465 Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
466
467 * callback.c (os_poll_quit): Replace _WIN32 with _MSC_VER.
468
469 Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
470
471 * sim-events.c (sim_events_process): Delete redundant call to
472 update_time_from_event.
473 (sim_events_slip): Always decrement time_from_event.
474 (sim_events_tick, sim_events_deschedule, update_time_from_event):
475 Delete assertion that time_from_event >=0 when work in queue, no
476 longer applicable.
477
478 Thu Nov 6 12:06:46 1997 Andrew Cagney <cagney@b1.cygnus.com>
479
480 * sim-options.c (STANDARD_OPTIONS): Change OPTION_* to an enum.
481 (standard_option_handler): Update.
482
483 * sim-options.h: Clarify documentation.
484 (OPTION_LONG_ONLY_P): Delete definition.
485 (OPTION_VALID_P): Define.
486
487 * sim-options.c (sim_print_help): Allow short only options.
488 (sim_parse_args): Ditto.
489 (sim_args_command): Skip short only options.
490 (sim_parse_args): Allocate space for NUM_OPTS not just 256. Make
491 separate entries for short and long options in the HANDLERS and
492 ORIG_VAL tables.
493 (sim_parse_args): Disable argument permutation.
494
495 Wed Nov 5 13:40:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
496
497 * sim-core.h (DECLARE_SIM_CORE_WRITE_N. DECLARE_SIM_CORE_READ_N):
498 Add argument M, size of data type.
499 (sim_core_read_misaligned_3, sim_core_write_misaligned_3):
500 Declare, ditto for 5, 6 & 7 byte transfers.
501 (sim_core_write_unaligned_1, sim_core_write_unaligned_1): Define
502 as aligned variant.
503
504 * sim-n-core.h (sim_core_trace_M): Rename from
505 sim_core_trace_N. Add nr_bytes argument. Replace transfer argument
506 with transfer type. Print transfer direction. Handle 1 and 2 byte
507 transfers.
508 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Trace
509 unaligned accesses.
510 (unsigned_M, T2H_M, H2T_M): Rename from unsigned_N, T2H_N, H2T_N.
511 Update all functions.
512
513 * sim-core.c: Generate functions starting with 16 not 1.
514 (sim_core_read_unaligned_3): Generate. Ditto for 3 byte write and
515 all 5, 6 & 7 byte transfers.
516
517 * sim-n-core.h (sim_core_read_misaligned_N,
518 sim_core_write_misaligned_N): Implement.
519
520 Mon Nov 3 15:03:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
521
522 * sim-endian.h (U16_8): Implement
523
524 * sim-endian.c (sim_endian_split_16, sim_endian_join_16): New functions
525
526 * sim-endian.h (VL8_16, VH8_16): Implement.
527
528 * sim-memopt.c (memory_option_handler): Typecast 64bit value to
529 long in printf.
530 (memory_option_handler): Only zalloc modulo bytes when non-zero.
531 (memory_option_handler): Skip comma in alias address list
532
533 Fri Oct 31 13:03:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
534
535 * sim-memopt.c (do_memopt_add, do_memopt_delete): Add level and
536 space params.
537 (parse_size, parse_addr): New functions
538 (memory_option_handler, memory_options): Parse address & size
539 using new functions. Pass level, space, modulo to do_memopt_add &
540 do_memopt_del.
541
542 * sim-memopt.h (struct _sim_memopt): Add level & space fields.
543
544 * sim-core.h (sim_core_arrach, sim_core_detach): Replace
545 `attach_type attach' argument with `unsigned level' argument.
546 Document.
547
548 * sim-core.c (new_sim_core_mapping, sim_core_map_attach,
549 sim_core_attach): Replace argument attach with level. Update
550 verification of arguments.
551 (sim_core_map_detach, sim_core_detach): Replace argument attach
552 with level.
553
554 * sim-basics.h (enum _attach_type): Delete.
555
556 Thu Oct 30 13:45:00 1997 Doug Evans <devans@seba.cygnus.com>
557
558 * sim-core.h (sim_core_write_8): Define.
559
560 Tue Oct 28 12:29:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
561
562 * sim-bits.h: Document ROTn macro.
563
564 * sim-endian.h (H2T): Handle 16 byte variables.
565
566 * sim-n-core.h (sim_core_read_unaligned_N): Return a dummy when an
567 error.
568
569 * sim-core.c: Do not generate sim_core_*_word.
570
571 * sim-n-core.h (sim_core_trace_N): Add line_nr argument.
572 (sim_core_write_aligned_N, sim_core_read_aligned_N): Update.
573
574 * sim-core.h (sim_core_read_unaligned_word,
575 sim_core_read_aligned_word, sim_core_read_word,
576 sim_core_write_unaligned_word, sim_core_write_aligned_word,
577 sim_core_write_word): Change to macros that map onto sim_core_*_N.
578
579 Mon Oct 27 11:25:10 1997 Doug Evans <devans@canuck.cygnus.com>
580
581 * sim-n-endian.h: Add TAGS entrys for 16 byte versions.
582
583 * sim-endian.h: Disable 16 byte support.
584
585 Mon Oct 27 12:00:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
586
587 * sim-endian.c (_SWAP_16): Define. Generate 126 bit swap code.
588
589 * sim-n-core.h (sim_core_trace_N): New function.
590 (sim_core_read_aligned_N, sim_core_write_aligned_N): Use,
591 (sim_core_read_unaligned_N): Do not retyrn bogus value wden error.
592
593 * sim-endian.h: Add 128 bit variant.
594
595 * sim-core.h, sim-core.c: Add 128 bit variant.
596
597 * sim-types.h: Add signed128 and unsigned128 types using a struct.
598
599 Fri Oct 24 11:33:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
600
601 * sim-events.c (sim_events_process): Clear events->work_pending.
602 (sim_events_tickn, sim_events_tick): Accumulate, instead of
603 setting, nr_ticks_to_process.
604 (sim_events_preprocess): Allow nr_ticks_to_process to be non-zero
605 when the event queue isn't next.
606
607 * sim-events.h, sim-events.c (sim_events_slip): New function.
608
609 Wed Oct 22 14:18:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
610
611 * sim-hload.c (sim_load): Pass lma_p==0 and do_load=sim_load.
612
613 * sim-utils.h, sim-load.c (sim_load_file): Add lma_p and do_load
614 arguments.
615
616 Tue Oct 21 18:37:57 1997 Doug Evans <devans@canuck.cygnus.com>
617
618 * nrun.c (main): Remove useless test of name != NULL.
619 Exit if bfd_openr fails. Call bfd_check_format after bfd_openr.
620
621 Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
622
623 * sim-fpu.c (EXPMAX): Type is unsigned.
624 (MIN_INT, MAX_INT): Type is signed64.
625 (i2fpu): Type of val is signed64.
626
627 Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
628
629 * sim-profile.h (PROFILE_PC_BUCKET_SIZE): Treat a shift of zero as
630 a bucket size of zero.
631
632 * sim-profile.c (OPTION_PROFILE_PC_GRANULARITY,
633 OPTION_PROFILE_PC): Define.
634 (profile_option_handler): Add support for --profile-pc and
635 --profile-pc-granularity options.
636 (profile_pc_init): When possible, compute nr buckets from bucket
637 size.
638
639 * sim-profile.c (profile_pc_init): Align the profile-pc end
640 address with the profile-pc bucket size.
641
642 * sim-profile.h (PROFILE_PC_NR_BUCKETS): Rename PROFILE_PC_SIZE to
643 something less ambiguous.
644 (PROFILE_PC_BUCKET_SIZE): Ditto for PROFILE_PC_SAMPLE_SIZE.
645
646 * sim-profile.c (profile_pc_cleanup): New function. Move
647 profile_pc_uninstall code to here.
648 (profile_pc_uninstall): Call.
649 (profile_pc_init): Call.
650
651 Mon Oct 20 17:23:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
652
653 * sim-profile.c (profile_print_pc): Dump pc profile to dmon.out
654 file using BSD gprof format.
655
656 * sim-bits.h (LSBIT, MSBIT, BIT): Force result to type
657 unsigned_word.
658 (LSBIT8, LSBIT16, LSBIT32, LSBIT64, MSBIT8, MSBIT16, MSBIT32,
659 MSBIT64): Force result to unsignedN.
660
661 Thu Oct 16 11:38:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
662
663 * sim-alu.h (ALU16_BEGIN, ALU32_BEGIN, ALU64_BEGIN): Drop opening
664 brace from macro.
665 (ALU8_BEGIN, ALU8_SET, ALU8_ADD, ALU8_SUB, ALU8_NEGATE): Define.
666 (ALU16_ADD, ALU16_SUB, ALU16_NEGATE): Simplify arrithmetic.
667 (ALU32_ADD, ALU32_SUB, ALU32_NEGATE): Simplify arrithmetic.
668 (ALU64_ADD, ALU64_SUB, ALU64_NEGATE): Simplify arrithmetic.
669
670 Wed Oct 15 09:24:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
671
672 * sim-core.h (struct _sim_core_mapping): Change free_buffer to
673 type void*.
674
675 * sim-core.c (sim_core_uninstall, new_sim_core_mapping,
676 sim_core_map_attach, sim_core_map_detach): Change free_buffer to
677 type void*.
678 (sim_core_attach): Rename buffer_freed to free_buffer, type
679 void*. Ensure that allocated buffer is alligned according to
680 region's address.
681
682 Mon Oct 13 11:34:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
683
684 * sim-alu.h (ALU64_HAD_OVERFLOW): Define.
685 (ALU64_SUB): Define.
686
687 * Make-common.in (all): Build SIM_EXTRA_ALL first.
688 (.gdbinit): Remove dependencies, generate once per build.
689
690 Tue Oct 14 19:20:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
691
692 * sim-n-core.h (sim_core_read_aligned_N,
693 sim_core_write_aligned_N): Make xaddr param type address_word not
694 unsigned_word.
695
696 Fri Oct 3 09:49:18 1997 Andrew Cagney <cagney@b1.cygnus.com>
697
698 * sim-fpu.h, sim-fpu.c: Rewrite. Change sim_fpu object to an
699 unpacked floating point struct. Pass sim_fpu object by reference.
700 Add preliminary support for rounding modes.
701
702 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
703
704 * configure: Regenerated to track ../common/aclocal.m4 changes.
705
706 Thu Oct 2 19:43:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
707
708 * aclocal.m4 (sim-bitsize): Fix typo, WITH_TARGET_WORD_BITSIZE not
709 WITH_TARGET_BITSIZE.
710
711 Thu Sep 25 23:20:20 1997 Felix Lee <flee@yin.cygnus.com>
712
713 * sim-profile.c (profile_print_core): label needs empty statement.
714
715 Thu Sep 25 11:20:47 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
716
717 * sim-break.c (sim_set_breakpoint sim_clear_breakpoint): Use ZALLOC
718 and zfree instead of xmalloc and free. Prevents warnings.
719
720 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
721
722 * configure: Regenerated to track ../common/aclocal.m4 changes.
723
724 Wed Sep 24 17:23:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
725
726 * Make-common.in (SIM_BITSIZE): Assign from configured value.
727 (CONFIG_CFLAGS): Add SIM_BITSIZE.
728
729 * aclocal.m4 (--enable-sim-bitsize): Developer option for
730 controling the bitsize/msb of the target.
731
732 Wed Sep 24 17:41:40 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
733
734 * Make-common.in: New files sim-break.c, sim-break.h.
735 * sim-base.h: Add point to breakpoint list to sim_state_base.
736 * sim-break.c sim-break.h: New modules that implement intrinsic
737 breakpoint support.
738 * sim-module.c: Add breakpoint module.
739
740 Tue Sep 23 00:26:39 1997 Felix Lee <flee@yin.cygnus.com>
741
742 * sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
743 an hour.
744 * sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
745 if (0) { 1 % 0; }
746 * sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
747 (SIGBUS) define for Windows.
748 * sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
749 * sim-resume.c: define SIGTRAP for windows.
750 * sim-xcat.h: use token pasting if ALMOST_STDC.
751
752 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
753
754 * Make-common.in (SIM_SCACHE, SIM_DEFAULT_MODEL): Assign
755 configured values.
756 (CONFIG_CFLAGS): Add same.
757
758 Mon Sep 22 17:20:27 1997 Felix Lee <flee@cygnus.com>
759
760 * sim-types.h (SIGNED64): ##i64 when _MSC_VER, not _WIN32.
761 (SIGNED32): use ##i32.
762
763 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
764
765 * configure: Regenerated to track ../common/aclocal.m4 changes.
766
767 Tue Sep 23 10:07:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
768
769 * aclocal.m4 (sim-endian): Simplify logic determining [default]
770 endian of target.
771
772 * Make-common.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
773 SIM_HOSTENDIAN, SIM_RESERVED_BITS, SIM_ASSERT, SIM_FLOAT,
774 SIM_HARDWARE, SIM_INLINE, SIM_PACKAGES, SIM_REGPARM, SIM_SMP,
775 SIM_STDCALL, SIM_XOR_ENDIAN): Assign configured values.
776 (CONFIG_CFLAGS): Add same.
777
778 * aclocal.m4: Perform AC_SUBST on optional options.
779
780 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
781
782 * sim-config.h (WITH_DEFAULT_ALIGNMENT): Don't hardwire any alignment.
783
784 * sim-options.c (standard_option_handler): Typo in warning message.
785
786 * sim-base.h (STATE_MODEL): Make conditional on SIM_HAVE_MODEL.
787
788 * sim-profile.c (profile_print_insn): Check 0 .. MAX_INSN for any
789 insn count. Make count conditional on there being a valid
790 INSN_NAME.
791 (profile_pc_init): Make default PC profile frequency an arbitrary
792 256.
793
794 * sim-base.h: Ditto.
795
796 * sim-profile.h (WITH_PROFILE_MODEL_P): Only enable modeling when
797 SIM_HAVE_MODEL.
798
799 * sim-model.h (struct MACH): Depreciate, to be replaced by bfd
800 archure struct.
801
802 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
803
804 * configure: Regenerated to track ../common/aclocal.m4 changes.
805
806 Mon Sep 22 11:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
807
808 * aclocal.m4 (sim_alignment): Simplify logic for selecting the
809 configured alignment.
810
811 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
812
813 * configure: Regenerated to track ../common/aclocal.m4 changes.
814
815 Fri Sep 19 17:26:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
816
817 * sim-config.c (sim_config): Check for default alignment.
818
819 * sim-options.c (standard_option_handler): Add alignment option.
820
821 * aclocal.m4 (sim_alignment): Allow configuration of hardwired and
822 default alignment requirements on memory accesses.
823
824 Fri Sep 19 11:51:35 1997 Jeffrey A Law (law@cygnus.com)
825
826 * sim-load.c (sim_load_file): Return failure if the executable
827 had no loadable sections.
828
829 Wed Sep 17 13:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
830
831 * sim-events.c (ETRACE): Use trace_printf not sim_io_printf for
832 trace output.
833
834 * sim-core.c (sim_core_signal): When bad access halt simulator
835 SIGSEGV / SIGBUS instead of aborting.
836 (signal.h): Include.
837
838 * sim-watch.c (sim_watchpoint_install): Handler for watchpoint
839 options was missing.
840
841 * sim-bits.h (MOVED): Define
842
843 Wed Sep 17 10:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
844
845 * sim-alu.h (ALU32_HAD_OVERFLOW): Pacify GCC, Use MSBIT instead of
846 BIT.
847
848 * sim-bits.h (LSBIT, MSBIT): Check for overflow of shift value.
849
850 * sim-bits.c: Add 8 bit versions of bit macros.
851
852 * sim-bits.h: Ditto.
853
854 Tue Sep 16 16:15:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
855
856 * sim-bits.c (LSSEXT, MSSEXT): Replace SEXT.
857 (LSINSERTED, MSINSERTED): Ditto for INSERTED.
858
859 * sim-n-bits.h (MSSEXTn, LSSEXTn): Replace SEXTn.
860 (LSINSERTDn, MSINSERTEDN): Ditto for INSERTEDn.
861
862 * sim-bits.h (SEXT*): Define as MSEXT/LSEXT.
863 (INSERTED*): Ditto for LSINSERTED/MSINSERTED.
864
865 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
866
867 * aclocal.m4 (SIM_AC_COMMON): Add optional config.h file argument.
868 configure.in: Output to cconfig.h instead of config.h.
869
870 * configure: Regenerated to track ../common/aclocal.m4 changes.
871
872 Mon Sep 15 15:39:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
873
874 * sim-utils.c (sim_analyze_program): Set STATE_ARCHITECTURE from
875 BFD if known.
876
877 Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
878
879 * callback.c (os_write): divert stdout and stderr to their
880 respective hooks.
881
882 Thu Sep 11 10:08:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
883
884 * sim-profile.c (profile_print_speed): Call
885 sim_events_elapsed_time instead of PROFILE_EXEC_TIME for moment.
886
887 * sim-events.c (sim_events_elapsed_time): New function return nr
888 host MS consumed by the simulator.
889 (sim_watch_valid): Use.
890
891 * sim-module.c (modules): Install sim_events very very early.
892
893 * sim-profile.c (profile_print): Call profile_print_pc.
894 (print_bar):
895 (profile_pc_init): New function, set up processor for PC
896 profiling.
897 (profile_print_pc): New function, print a PC profile.
898 (profile_pc_event): New function, sample PC.
899
900 * sim-profile.h (PROFILE_PC_COUNT, PROFILE_PC_START,
901 PROFILE_PC_END, PROFILE_PC_SHIFT, PROFILE_PC_SAMPLE_SIZE): Add to
902 profile struct.
903
904 * sim-options.c (sim_print_help): Pacify GCC.
905
906 * sim-n-core.h (sim_core_read_aligned_N,
907 sim_core_write_aligned_N): Add un-conditional profile call.
908 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Add
909 profile call when aligned read/write isn't used.
910
911 * sim-base.h: Include sim-profile, sim-model after sim-core &
912 sim-events allow sim-core to define useful values.
913
914 * sim-profile.c (OPTION_PROFILE_CORE): Define.
915 (profile_option_handler, profile_options): Add support for
916 --profile-core option.
917 (print_bar): Include when core profiling.
918 (profile_print_core): New function, print core profile.
919
920 * sim-config.c (print_sim_config): Print profile status.
921
922 * sim-profile.h (PROFILE_NEXT_IDX, PROFILE_core,
923 WITH_PROFILE_PC_P): Define.
924 (PROFILE_CORE_COUNT): Count each core-map/size separatly.
925 (PROFILE_COUNT_CORE): Define.
926
927 Thu Sep 11 08:44:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
928
929 * sim-watch.c (handle_watchpoint): Pass a char** index into the
930 interrupt_names array as the data.
931 (sim-watch.h): Document.
932
933 Wed Sep 10 16:15:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
934
935 * sim-options.c (sim_print_help): When the doc string is to long
936 word wrap it.
937
938 * sim-watch.c (sim_watchpoint_install): Use option.doc_name so
939 that only the first few the watch options are listed. Generate
940 meanginful usage messages.
941
942 * sim-options.h (struct OPTION): Clarify use of doc_name field
943
944 Wed Sep 10 13:23:24 1997 Andrew Cagney <cagney@b1.cygnus.com>
945
946 * sim-options.c (OPTION_ARCHITECTURE_INFO): New option.
947 (standard_option_handler): Handle --architecture-info.
948
949 Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
950
951 * sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
952 illegal zero-sized array.
953 * sim-core.c (sim_core_xor_read_buffer): same.
954
955 Tue Sep 9 11:20:35 1997 Doug Evans <dje@canuck.cygnus.com>
956
957 * nltvals.def: Regenerate.
958
959 Tue Sep 9 02:10:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
960
961 * sim-fpu.c (DP_FRACHIGH2): Define LL using SIGNED64.
962
963 Mon Sep 8 12:22:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
964
965 * sim-bits.c (MASKED): Delete.
966 (EXTRACTED): Delete.
967 (LSEXTRACTED, MSEXTRACTED): New functions.
968
969 * sim-n-bits.h (MASKEDn): Delete, define as MSMASKED or LSMASKED.
970 (MSMASKEDn, LSMASKEDn): Add last argument.
971 (MSMASK*): Ditto.
972
973 * sim-bits.h (EXTEND8, EXTEND16): Define.
974 (EXTRACTED64): Define as 64 bit extract, not 32 bit.
975
976 * sim-run.c (sim_engine_run): Use CPU_CIA macro.
977
978 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use CPU_CIA to get at
979 current instruction address.
980
981 * sim-inline.h (*_ENGINE): Define.
982
983 Fri Sep 5 08:39:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
984
985 * sim-core.c (sim_core_attach): Fix checks of modulo/mask.
986
987 * sim-watch.c (delete_watchpoint): Delete by ident and type.
988 (watch_option_handler): Call delete_watchpoint with ident or type.
989 (sim_watchpoint_install): Create interrupt specific watchpoint
990 commands on the fly.
991 (do_watchpoint_create): New function, create a watch point using
992 type/int-nr info encoded in the option nr.
993 (do_watchpoint_info): New function. List active watchpoints.
994
995 * sim-watch.h: Change data structure to a list.
996
997 * sim-memopt.c (memory_option_handler): Require explicit "all"
998 before deleting all memory regions.
999
1000 * sim-utils.c (sim_do_commandf): New function, printf version of
1001 sim_do_command.
1002
1003 * sim-basics.h (asprintf, vasprintf): Hack, define for CYGWIN32.
1004
1005 * sim-alu.h (ALU64_ADD): Use explicit MSEXTRACTED64, do not assume
1006 bit endianness.
1007 (SIGNED64, UNSIGNED64): Delete.
1008 (ALU64_ADD): Don't rely on bit endianness.
1009 (ALU64_BEGIN): Define.
1010
1011 * sim-n-bits.h (MSEXTRACTEDn, LSEXTRACTED): New functions.
1012 (EXTRACTEDn): Delete, define as either LSEXTRACTED or MSEXTRACTED.
1013
1014 * sim-types.h (SIGNED64, UNSIGNED64): New macros, attach relevant
1015 suffix - u64, LL - to 64 bit constants.
1016
1017 Thu Sep 4 09:27:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
1018
1019 * sim-config.c (sim_config): Add assert for SIM_MAGIC_NUMBER.
1020
1021 * sim-utils.h (NZALLOC): Define - zalloc * N.
1022
1023 * sim-hrw.c (sim_read, sim_write): New file. Provide generic
1024 implementation of read/write functions.
1025
1026 * Make-common.in (sim-hrw.o): New target.
1027
1028 * sim-base.h (STATE_MEMOPT_P): Delete, simulators _always_ add
1029 memory.
1030
1031 * sim-memopt.c (memory_option_handler): Implement memory-size
1032 command. Implement memory-alias command. Let memory-delete delete
1033 all memory regions.
1034 (add_memopt): New function. Add a memory region.
1035 (do_memopt_delete): New function. Delete a memory region.
1036
1037 * sim-utils.c (sim_elapsed_time_get): Never return zero.
1038
1039 * sim-core.c (sim_core_detach): New function.
1040 (sim_core_map_detach): New function. Perform the actual detach.
1041 (sim_core_init): Move initialization code from here.
1042 (sim_core_install): To here.
1043 (sim_core_uninstall): And here.
1044
1045 * sim-module.c: Add memopt module.
1046
1047 * sim-base.h (STATE_MEMOPT, STATE_MEMOPT_P): Add memopt to
1048 simulator base type.
1049
1050 * Make-common.in (sim_main_headers): Add sim-memopt.h
1051 (sim-memopt.o): New target.
1052
1053 * sim-core.c (sim_core_install): Add core_options to the option
1054 table.
1055
1056 * sim-watch.c (watch_options): Make --delete-watch a synonym for
1057 --watch-delete.
1058
1059 * sim-config.h (WITH_MODULO_MEMORY): Define as 0. Update
1060 comments.
1061
1062 * sim-core.h (struct _sim_core_mapping): Change nr_bytes to type
1063 address_word, add mask member.
1064
1065 * sim-core.h, sim-core.c (sim_core_attach): Make nr_bytes of type
1066 address_word, allow for 64bit targets in 32bit host. Add modulo
1067 argument.
1068 (sim_core_map_attach): Ditto.
1069 (new_sim_core_mapping): Ditto.
1070 (sim_core_translate): Mask address when modulo memory.
1071
1072 Wed Sep 3 17:32:54 1997 Doug Evans <dje@seba.cygnus.com>
1073
1074 * sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
1075
1076 * gdbinit.in: New file.
1077 * aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
1078 * Make-common.in (distclean): Delete .gdbinit.
1079 (.gdbinit): Add rule for.
1080 * configure: Regenerated to track ../common/aclocal.m4 changes.
1081
1082 * Make-common.in (cgen-run.o): Add rule for.
1083
1084 Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
1085
1086 * sim-resume.c (sim_resume): Suspend/resume the simulator.
1087
1088 * sim-events.c (sim_watch_valid): Compute total elapsed time from
1089 both resumed and previous elapsed time.
1090 (sim_events_init): Set initial_wallclock and current_wallclock to
1091 zero.
1092 (sim_events_install): Install sim_events_suspend and
1093 sim_events_resume.
1094 (sim_events_watch_clock): Allow for suspended simulator when
1095 computing the time of the clock event.
1096
1097 * sim-events.h (struct _sim_event): Add resume_wallclock, rename
1098 initial_wallclock to elapsed_wallclock, set both to zero.
1099 (sim_events_init, sim_events_uninstall): Delete prototypes.
1100
1101 * sim-module.h (MODULE_SUSPEND_FN, MODULE_RESUME_FN): Define types.
1102
1103 * sim-module.c(sim_module_resume, sim_module_suspend): New
1104 functions.
1105
1106 Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
1107
1108 * sim-core.c (sim_core_map_attach): Clarify memory overlap error
1109 message.
1110
1111 Tue Sep 2 14:57:06 1997 Doug Evans <dje@canuck.cygnus.com>
1112
1113 * Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
1114 * Make-common.in (TAGS): Likewise.
1115 * sim-n-bits.h: Add TAGS comments for all functions.
1116 * sim-n-core.h: Likewise.
1117 * sim-n-endian.h: Likewise.
1118
1119 Mon Sep 1 10:50:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1120
1121 * sim-utils.c (sim_state_alloc): Set CPU backlinks, callback and
1122 kind.
1123
1124 * sim-base.h (sim_state_alloc): Add callback and kind arguments.
1125
1126 * sim-base.h (INVALID_INSTRUCTION_ADDRESS): Add default
1127 definition.
1128
1129 Sat Aug 30 09:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
1130
1131 * sim-fpu.c (DP_GARDMSB, ...): Make unsigned.
1132 (DP_FRACHIGH, DP_FRACHIGH2, ..): Use MSMASK to avoid LL.
1133
1134 Fri Aug 29 13:37:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
1135
1136 * sim-core.c (sim_core_map_attach): Cast attach enum to int.
1137 (sim_core_xor_read_buffer, sim_core_xor_write_buffer): Make
1138 nr_transfered and nr_this_transfer unsigned.
1139
1140 * sim-events.c (sim_events_tickn): N is signed, as limited to
1141 MAXINT.
1142
1143 * sim-n-endian.h (offset_N): Change size to unsigned.
1144
1145 * callback.c (os_poll_quit): Add prototypes for kbhit and getkey.
1146
1147 Fri Aug 29 10:10:53 1997 Andrew Cagney <cagney@b1.cygnus.com>
1148
1149 * sim-utils.c (sim_copy_argv): Delete, replaced by dupargv.
1150
1151 * sim-options.c (sim_parse_args): Use dupargv.
1152
1153 Thu Aug 28 10:36:34 1997 Doug Evans <dje@canuck.cygnus.com>
1154
1155 * sim-options.c (standard_option_handler): Use xstrdup, not strdup.
1156
1157 Thu Aug 28 12:09:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
1158
1159 * sim-base.h (STATE_ARCHITECTURE, STATE_TARGET): Add to simulator
1160 base type.
1161
1162 * sim-options.c (standard_options): Add --architecture=MACHINE and
1163 --target=TARGET options.
1164 (OPTION_ARCHITECTURE, OPTION_TARGET): Define.
1165 (standard_option_handler): Handle architecture and target options.
1166 (bfd.h): Include.
1167
1168 * sim-utils.c (sim_analyze_program): Pass STATE_TARGET to
1169 bfd_openr.
1170 (sim_analyze_program): Set prog_bfd architecture from
1171 STATE_ARCHITECTURE if known.
1172
1173 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1174
1175 * configure: Regenerated to track ../common/aclocal.m4 changes.
1176 * config.in: Ditto.
1177
1178 Wed Aug 27 18:11:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
1179
1180 * aclocal.m4 (enable-sim-warnings): Remove comment stating
1181 that option does not apply to certain files.
1182
1183 Wed Aug 27 15:13:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
1184
1185 * sim-bits.h (LSBIT8, LSBIT16, LSBIT32, LSBIT64, LSBIT, MSBIT8,
1186 MSBIT16, MSBIT32, MSBIT64, MSBIT): New macros - single bit as
1187 offset from MSB/LSB.
1188
1189 * sim-endian.h (A1_8, A2_8, A4_8, A1_4, A2_4, A1_2): New macro,
1190 access address of sub word quantity of a hosts 16, 32, 64 bit word
1191 type.
1192 (V1_2, V1_4, V2_4, V1_8, V2_8, V4_8): Ditto for values.
1193 (U8_1, U8_2, U8_4, U4_1, U4_2, U2_1): Ditto for set of values.
1194 (V2_H1, V2_L1, V4_H2, V4_L2, V8_L4, V8_H4): Given N byte argument,
1195 return N*2 byte value with argument in Hi/Lo word. Renamed from
1196 V1_H2, V1_L2, V2_H4, V2_L4, V4_H8, V4_L8.
1197
1198 * sim-alu.h (ALU32_HAD_OVERFLOW): Use 64 bit mask not 32bit.
1199 (ALU16_HAD_CARRY, ALU32_HAD_CARRY, ALU16_HAD_OVERFLOW): Use MSBIT
1200 so that bit offset is explicit.
1201
1202 Wed Aug 27 11:55:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
1203
1204 * sim-utils.c (sim_analyze_program): Add prog_name argument.
1205 Update STATE_PROG_BFD when needed with a dup'd copy of the
1206 program.
1207
1208 * sim-config.c (sim_config): Delete ABFD argument, use
1209 STATE_PROG_BFD directly.
1210
1211 Tue Aug 26 12:55:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
1212
1213 * run.c (main): Pass the open ABFD to sim_create_inferior.
1214
1215 * nrun.c (main): Determine prog_bfd. Pass to sim_create_inferior
1216 and sim_load.
1217 (bfd.h): Include.
1218
1219 * sim-hload.c (sim_load): New file. Implement generic sim_load for
1220 hardware only simulator targets.
1221
1222 * Make-common.in (sim-hload.o): Add rule.
1223
1224 Wed Aug 27 09:51:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
1225
1226 * sim-utils.c (sim_copy_argv): Rewrite to match malloc strategy
1227 used by copyargv and freeargv.
1228
1229 * sim-options.c (sim_parse_args): Save a copy of PROG-ARGS in
1230 STATE_PROG_ARGV, not just a pointer.
1231
1232 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1233
1234 * configure: Regenerated to track ../common/aclocal.m4 changes.
1235 * config.in: Ditto.
1236
1237 Mon Aug 25 12:11:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
1238
1239 * aclocal.m4 (sim-endian): Add second argument to
1240 SIM_AC_OPTION_ENDIAN. First is hardwired endian, second is
1241 default endian when not hardwired.
1242
1243 * sim-config.h (WITH_DEFAULT_TARGET_BYTE_ORDER): New macro, if all
1244 else failes value for target byte order.
1245
1246 * sim-config.c (sim_config): Add abfd arguments. Set
1247 STATE_PROG_BFD accordingly. Determine prefered_target_byte_order
1248 from same.
1249 (sim_config): Return SIM_RC, don't abort.
1250 (bfd.h): Include.
1251
1252 * run.c (main): Update call to sim_open - add ABFD argument.
1253 * nrun.c (main): Add NULL ABFD argument.
1254
1255 Thu Aug 14 12:48:57 1997 Doug Evans <dje@canuck.cygnus.com>
1256
1257 * callback.c (os_poll_quit): Make static.
1258 Call sim_cb_eprintf, not p->eprintf.
1259 (sim_cb_printf, sim_cb_eprintf): New functions.
1260 * sim-utils.h (sim_cb_printf, sim_cb_eprintf): Declare.
1261
1262 * sim-basics.h (zalloc,zfree,sim_add_commas,SIM_ELAPSED_TIME,
1263 sim_elapsed_time_get,sim_elapsed_time_since): Move decls to
1264 sim-utils.h. #include sim-utils.h.
1265 * sim-utils.h: Above decls moved here.
1266 (sim_analyze_program,sim_load_file): Use `struct _bfd', not `bfd'.
1267
1268 * sim-watch.c (action_watchpoint): Fix thinkos.
1269
1270 Thu Jul 24 08:48:05 1997 Stu Grossman (grossman@critters.cygnus.com)
1271
1272 * sim-types.h: Fix defs of 64 bit data types for MSVC.
1273
1274 Tue Jul 22 10:35:37 1997 Doug Evans <dje@canuck.cygnus.com>
1275
1276 * sim-n-core.h (sim_core_write_unaligned_N): Add missing break
1277 to FORCED_ALIGNMENT case.
1278
1279 Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
1280
1281 * callback.c (target_to_host_open): Handle hosts with O_BINARY.
1282
1283 Thu Jun 5 08:47:10 1997 Jeffrey A Law (law@cygnus.com)
1284
1285 * Make-common.in (libsim.a): Fix typo.
1286
1287 Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
1288
1289 * nrun.c (main): Verify the structure returned before using it.
1290
1291 Wed Jun 4 11:44:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
1292
1293 * sim-config.h (WITH_ENGINE): Enable the sim-engine module by
1294 default.
1295
1296 * sim-engine.c (sim_engine_install): New function. Install the
1297 engine init functions.
1298 (sim_engine_init): [Re]initialize the simulator engine.
1299
1300 * sim-module.c: Add sim_engine to list of modules that always
1301 install.
1302
1303 Tue Jun 3 04:52:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
1304
1305 * sim-watch.c (schedule_watchpoint): Use sim_unschedule_watchpoint
1306 to remove the old watchpoint, not delete_watchpoint.
1307 (watch_option_handler): Action the correct watchpoint, not just
1308 cycles.
1309
1310 Wed May 28 14:47:41 1997 Andrew Cagney <cagney@b1.cygnus.com>
1311
1312 * sim-n-core.h (sim_core_write_aligned_N): For 8byte reads, output
1313 both low and high word.
1314 (sim_core_write_aligned_N): Ditto.
1315
1316 * sim-trace.c (set_trace_options): Delete code explicitly setting
1317 core->trace.
1318
1319 * sim-options.c (sim_print_help): Call the list commands if not a
1320 standalone simulator.
1321 (sim_print_help): Advise that some options may not be applicable.
1322
1323 * sim-trace.c (set_trace_options): Assume core present.
1324
1325 * sim-events.c (sim_events_schedule_after_signal): Overflow signal
1326 buffer when full not almost full.
1327
1328 Tue May 27 14:32:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1329
1330 * sim-events.c (sim_events_process): Don't blat the event queue
1331 when processing watchpoints.
1332
1333 * sim-watch.h: Make arg unsigned long - stop sign extension.
1334
1335 * sim-events.c (sim_watch_valid): rewrite so debugable.
1336
1337 * sim-config.h (WITH_XOR_ENDIAN): Default to zero.
1338
1339 * sim-watch.c (schedule_watchpoint): Add is_within option so that
1340 inequality test is possible.
1341 (handle_watchpoint): Re-pass is_within arg.
1342 (watch_option_handler): When `!' prefix to pc-watchpoint arg pass
1343 0 to schedule_watchpoint's is_within arg.
1344 (sim_watchpoint_init): Re-pass is_within arg.
1345
1346 * sim-options.c (sim_print_help): Add is_command argument. Don't
1347 include -- prefix when called from the command line interpreter.
1348
1349 * sim-watch.c (schedule_watchpoint): Pass true is_within argument.
1350
1351 * sim-events.c (sim_events_watch_sim): Add is_within argument,
1352 zero indicates that the test should be reversed.
1353 (sim_events_watch_core): Ditto.
1354 (WATCH_CORE): Compare range against is_within.
1355 (WATCH_SIM): Ditto.
1356
1357 Tue May 27 12:48:03 1997 Andrew Cagney <cagney@b2.cygnus.com>
1358
1359 * sim-events.c (WATCH_CORE): Pass NULL cpu argument to
1360 sim_core_read_buffer. Check nr-bytes transfered.
1361
1362 * sim-core.h (sim_core_common): Define a new struct that contains
1363 the common data. to sd and cpu structures.
1364 * sim-core.c (sim_core_attach): Update.
1365 (sim_core_init): Update. Remember to copy initialized data to each
1366 cpu.
1367 (sim_core_find_mapping): Ditto.
1368
1369 * sim-core.c (sim_core_read_buffer): Add cpu argument.
1370 (sim_core_write_buffer): Ditto.
1371
1372 * sim-n-core.h (sim_core_read_unaligned_N): When mis-aligned
1373 transfer use xor version of read buffer.
1374 (sim_core_write_unaligned_N): Ditto for write.
1375
1376 * sim-core.c (sim_core_xor_read_buffer): New function implement
1377 xor-endian data read breaking transfer up into xor-endian sized
1378 blocks.
1379 (sim_core_xor_write_buffer): Ditto for write.
1380 (reverse_n): Reverse order of arbitrary number of bytes in buffer
1381 - needed for xor-endian transfers.
1382
1383 Fri May 23 14:24:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
1384
1385 * sim-inline.h: Review description.
1386
1387 * sim-core.h, sim-core.c: Reduce number of functions being inlined
1388 to just those involved in data transfers and configuration.
1389
1390 * sim-xcat.h (XSTRING): New macro, map macro definition onto
1391 string.
1392 * sim-n-core.h (sim_core_read_aligned_N): Use.
1393 (sim_core_read_unaligned_N): Ditto.
1394 (sim_core_read_unaligned_N): Ditto..
1395 (sim_core_write_unaligned_N): Ditto.
1396
1397 * sim-core.h: Add xor endian bitmap to main structure. *
1398
1399 sim-n-core.h (sim_core_write_aligned_N): Add suport for xor
1400 endian.
1401 (sim_core_read_aligned_N): Ditto.
1402
1403 * sim-core.c (sim_core_set_xor_endian): New function.
1404 (sim_core_attach): Don't overwrite the per-cpu xor map when
1405 cloning the global core.
1406
1407 Fri May 23 10:53:13 1997 Andrew Cagney <cagney@b1.cygnus.com>
1408
1409 * sim-engine.h: Update below so that it is using an enumerated
1410 type.
1411
1412 Thu May 22 09:12:16 1997 Gavin Koch <gavin@cygnus.com>
1413
1414 * sim-engine.c (sim_engine_restart):
1415 * sim-resume.c (sim_resume): Change longjmp param/setjmp
1416 return value used for simulator restart from 0 to 2.
1417
1418 Wed May 21 08:47:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
1419
1420 * cgen-scache.c (scache_option_handler): Add is_command arg.
1421
1422 * sim-model.c (model_option_handler): Add is_command argument.
1423
1424 * sim-profile.c (profile_option_handler): Add is_command arg.
1425
1426 * sim-events.c (sim_watch_valid): Use ub64, lb64 when 64bit value
1427 involved.
1428
1429 * sim-module.c (sim_module_add_init_fn): Call init fn in the same
1430 order that they are registered.
1431
1432 * sim-options.h (OPTION_HANDLER): Add argument to differentiate
1433 between option and command line processing.
1434
1435 * sim-options.c: Include stdlib.h, ctype.h.
1436
1437 * Make-common.in (sim-watch.o): Add rule.
1438 (sim_main_headers): Assume sim-assert.h included.
1439 (sim-*.o): Simplify make rule.
1440
1441 * sim-module.c: Add sim_watch_install to module list.
1442
1443 Tue May 20 14:15:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
1444
1445 * sim-base.h (STATE_LOADED_P): New predicate. Set once everything
1446 has been loaded.
1447
1448 * sim-trace.c (trace_install): Check magic. Include sim-assert.h.
1449 * sim-events.c (sim_events_install): Ditto.
1450 * sim-core.c (sim_core_install): Ditto.
1451 * sim-model.c (model_install): Ditto.
1452 * sim-options.c (standard_install): Ditto.
1453 * sim-profile.c (profile_install): Ditto.
1454 * sim-reason.c (sim_stop_reason): Ditto.
1455 * sim-run.c (sim_engine_run): Ditto.
1456 * sim-utils.c (sim_analyze_program): Ditto.
1457
1458 * sim-module.c (modules): Make profile_install and trace_install
1459 optional.
1460
1461 * sim-base.h (STATE_MEM_BASE): Define for flat memory systems.
1462
1463 * sim-options.c (standard_option_handler): Set the byte order.
1464
1465 * sim-events.c (sim_events_process): Allow multi tick processing.
1466 (sim_events_tickn): New function - multi cycle tick.
1467
1468 * sim-events.h (sim_events_tickn, sim_events_timewarp): Add
1469 prototypes. Under development.
1470 (sim_events): Replace processing with nr_ticks_to_process.
1471
1472 Tue May 20 09:39:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1473
1474 * nrun.c (main): Pass callbacks to sim_open instead of using
1475 sim_set_callbacks.
1476
1477 * run.c (main): Ditto.
1478
1479 Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1480
1481 * sim-events.c (sim_events_zalloc): Signal save memory allocator -
1482 stop tk interrupting malloc calls.
1483 (sim_events_zalloc): Converse.
1484
1485 * Make-common.in (sim_main_headers): Add sim-events.h.
1486
1487 * sim-events.c (sim_events_schedule_after_signal): Change return
1488 type to void - signal events are strictly internal.
1489 (sim_events_init): Allocate a finite buffer for signal events.
1490 (sim_events_schedule_after_signal): Enter signal events into the
1491 signal buffer.
1492
1493 * sim-engine.c (sim_engine_halt): Check SIM_DESC magic.
1494 (sim_engine_restart): Ditto.
1495 (sim_engine_abort): Ditto.
1496 * sim-stop.c (sim_stop): Ditto.
1497 (control_c_simulation): Ditto.
1498 * sim-resume.c (sim_resume): Ditto.
1499 (has_stepped): Ditto.
1500 * sim-abort.c (sim_engine_abort): Ditto.
1501
1502 * sim-basics.h (transfer_type): New type.
1503
1504 * sim-core.c (sim_core_signal): New function. Print core signal
1505 information.
1506 (sim_core_find_mapping): Add transfer argument.
1507
1508 * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
1509 SIM_CORE_SIGNAL if a recoverable abort.
1510 * sim-core.c (sim_core_find_mapping): Ditto.
1511
1512 Fri May 16 15:13:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
1513
1514 * sim-core.c (sim_core_find_mapping): Replace calls to
1515 sim_io_error to more resiliant sim_engine_abort.
1516
1517 * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
1518 (sim_core_write_unaligned_N): Ditto.
1519
1520 Tue May 13 13:50:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
1521
1522 * sim-module.c: Add sim_events_install to list.
1523
1524 * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
1525 from sim_core_*.
1526 (sim_events_init): Now returns SIG_RC.
1527
1528 * sim-run.c: New file. Generic sim_engine_run.
1529 * sim-reason.c: New file. Generic sim_stop_reason.
1530 * sim-stop.c: New file. Generic sim_stop.
1531 * sim-resume.c: New file. Generic sim_resume.
1532
1533 * Make-common.in (sim-engine.o): Add rule.
1534 (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
1535
1536 * sim-engine.h, sim-engine.c: New file. Provide generic
1537 implementation of sim_engine_halt, sim_engine_error. et.al.
1538
1539 * sim-base.h (sim_state_base): Add member halt.
1540 (sim-engine.h): Include.
1541
1542 * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
1543 handlers.
1544 * sim-events.c (sim_events_poll): Update event handler.
1545
1546 Tue May 13 09:57:49 1997 Andrew Cagney <cagney@b2.cygnus.com>
1547
1548 * sim-events.h, sim-events.c (sim_events_watch_clock): New
1549 function.
1550 (sim_events_watch_sim): New function.
1551 (sim_events_watch_core): New function.
1552 (sim_watch_valid): New function.
1553 (sim_events_preprocess): New function.
1554 (sim_events_process): Process the watchpoints as well as the timer
1555 queue.
1556 (sim_events_tick): Check WORK_PENDING instead of the hold queue.
1557 (sim_events_deschedule): Check all the queues when removing an
1558 event.
1559 (sim_events_init): Ditto for cleaning.
1560
1561 Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1562
1563 * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
1564
1565 Mon May 19 11:23:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
1566
1567 * callback.c (os_open): Type of arg flags is int.
1568
1569 Fri May 16 22:26:43 1997 Michael Meissner <meissner@cygnus.com>
1570
1571 * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
1572 just like normal numbers as per IEEE rules.
1573
1574 Wed May 14 21:20:38 1997 Bob Manson <manson@charmed.cygnus.com>
1575
1576 * callback.c (os_close): Mark the descriptor as being
1577 available if the close succeeded.
1578 (os_open): Pass 0644 as the mode of the file being created.
1579
1580 Thu May 15 10:58:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
1581
1582 * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
1583 float.
1584
1585 * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
1586 * sim-lnline.h: Update.
1587
1588 * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
1589 conversion functions.
1590 (sim_fpu_to{32,64}[iu]): New fp2int functions.
1591
1592 * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
1593 compare functions. Replacing.
1594 (sim_fpu_cmp): This. Delete.
1595
1596 Mon May 12 14:49:05 1997 Andrew Cagney <cagney@b1.cygnus.com>
1597
1598 * sim-core.c (sim_core_find_mapping): Call engine_error not
1599 sim_io_error when possible.
1600
1601 Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b2.cygnus.com>
1602
1603 * sim-endian.h (V1_H2): Add macro's to insert a word into a
1604 high/low double word.
1605
1606 * sim-trace.h: Remove definition of attribute - defined in
1607 sim_basics.h.
1608
1609 Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
1610
1611 * sim-options.h (struct OPTION): Add doc_opt as the documenting
1612 name of the option - or family of options.
1613
1614 * sim-options.c (sim_args_command): Match command `a-b c' with
1615 option `--a-b-c' from option table.
1616
1617 Thu May 8 12:40:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
1618
1619 * sim-options.c (sim_print_help): For optional arguments, wrap
1620 them in [].
1621
1622 * sim-trace.c (set_trace_options): New function, handle optional
1623 argument and multiple assignment.
1624 (trace_option_handler): Update.
1625
1626 * sim-trace.c (trace_option_handler): Trace branch and not fpu
1627 when branch tracing selected.
1628
1629 Wed May 7 15:19:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
1630
1631 * sim-trace.c (trace_one_insn): Make a va-args function.
1632
1633 * sim-trace.c (trace_vprintf): New function, va-arg version of
1634 trace_printf.
1635
1636 Tue May 6 16:38:16 1997 Doug Evans <dje@canuck.cygnus.com>
1637
1638 * sim-trace.c (trace_uninstall): Don't close a file twice.
1639 * sim-profile.c (profile_uninstall): Likewise.
1640
1641 Tue May 6 06:14:01 1997 Mike Meissner <meissner@cygnus.com>
1642
1643 * sim-trace.c (toplevel): Include bfd.h.
1644 (trace_options): Note that --trace-linenum also turns on
1645 --trace-insn. Add --trace-{branch,semantics}.
1646 (trace_option_handler): If --trace-linenum, also turn on
1647 --trace-insn. Add --trace-branch support. If --trace-semantics,
1648 turn on ALU, FPU, branch, and memory tracing.
1649 (trace_one_insn): New function to trace an instruction. Support
1650 --trace-linenum.
1651 (OPTION_TRACE_*): Use an enum, rather than lots of defines.
1652
1653 * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
1654 (MAX_TRACE_VALUES): Use 32, not 12 by default.
1655 (TRACE_branch): Add new mask.
1656 (TRACE_*_P): Define all possible trace_p macros.
1657 (trace_one_insn): Declare function.
1658
1659 Mon May 5 14:08:34 1997 Mike Meissner <meissner@cygnus.com>
1660
1661 * sim-trace.h (__attribute__): Define as nothing if not GNU C or
1662 GNU C doesn't support __attributes__.
1663 ({trace,debug}_printf): Add attribute's so -Wformat can check the
1664 format strings.
1665
1666 Mon May 5 11:16:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
1667
1668 * sim-config.h (FORCED_ALIGNMENT): New alignment option -
1669 addresses are masked forcing them to be correctly aligned.
1670 (WITH_ALIGNMENT): Make NONSTRICT_ALIGNMENT the default.
1671 * sim-config.c (config_alignment_to_a): Update.
1672
1673 * sim-core.h (sim_cpu_core): New data type contains cpu specific
1674 core data.
1675 * sim-base.h (CPU_CORE): Add cpu specific core data to cpu base
1676 type.
1677 * sim-core.c (sim_core_attach): Add CPU argument. Ready for
1678 processor specific core maps.
1679 (sim_core_map_attach): Copy the core map data to each of the
1680 processor specific core data structures.
1681 * sim-core.c (sim_core_find_mapping): Update.
1682
1683 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Rename.
1684 (sim_core_write_aligned_N, sim_core_write_aligned_N): New names.
1685 (sim_core_write_unaligned_N, sim_core_write_unaligned_N): New
1686 alternatives that handle unaligned addresses.
1687 (sim_core_{read,write}_{,un}aligned_N): Drop SIM_DESC arg, replace
1688 with just CPU arg.
1689 * cgen-utils.c (sim_disassemble_insn): Update.
1690
1691 Mon May 5 13:19:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
1692
1693 * sim-trace.h (TRACE_FPU_IDX): Add Floating-point specific
1694 tracing.
1695
1696 * sim-fpu.h, sim-fpu.c: New files - prototype for generic target
1697 fpu support.
1698
1699 * sim-inline.h, sim-inline.c: Add support for SIM_FPU.
1700
1701 Fri May 2 17:59:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
1702
1703 * sim-core.c (sim_core_map_to_str): New function ascii equivalent
1704 to map type.
1705
1706 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Use in trace
1707 statement.
1708
1709 Fri May 2 17:28:02 1997 Andrew Cagney <cagney@b2.cygnus.com>
1710
1711 * cgen-trace.c: Prepend additional trace_printf argument.
1712
1713 * cgen-utils.c (sim_disassemble_insn): Add additional core
1714 arguments.
1715
1716 Fri May 2 11:40:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
1717
1718 * nrun.c (main): Catch/report errorenous simulator states.
1719
1720 * sim-module.c: #include "libiberty.h" so that xmalloc is defined.
1721 * sim-trace.c: #include string.h/strings.h so that memset is
1722 defined.
1723 * sim-utils.c: Ditto.
1724 * sim-profile.c: Ditto. And stdlib.h.
1725 (print_bar): Only define when used by instruction or memory profiler.
1726
1727 * sim-options.c (standard_option_handler): Make ul more local.
1728
1729 * sim-load.c (sim_load_file): Make the name constant.
1730 (sim_load_file): Passify gcc.
1731
1732 * sim-utils.h: New file, pre-declare utilites in corresponding .c
1733 file.
1734 * sim-utils.c, sim-load.c: Include sim-utils.h.
1735
1736 * sim-base.h (sim_cpu): Pre define here so available to all.
1737
1738 * sim-core.h (DECLARE_SIM_CORE_WRITE_N, DECLARE_SIM_CORE_READ_N):
1739 Restore the sim_cpu and instruction_address arguments so that full
1740 information is available to the abort function.
1741 * sim-core.c (sim_core_find_mapping, sim_core_write_buffer): Ditto.
1742 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
1743
1744 * sim-trace.h, sim-trace.c (trace_option_handler): Add interim
1745 tracing support for sim-events and sim-core.
1746 (trace_option_handler): Convert #if to if where possible so always
1747 compiled/checked by C compiler.
1748 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
1749
1750 * sim-base.h: Adjust comment documenting how to define the cpu
1751 structure.
1752 (sim_state_base): Add sim_core and sim_events to simulator base
1753 object.
1754
1755 * sim-trace.h, sim-trace.c (trace_printf): Add SIM_DESC argument.
1756 * sim-core.c (sim_core_init, sim_core_attach,
1757 sim_core_find_mapping): Update.
1758 * sim-events.c (ETRACE, sim_events_init, sim_events_time,
1759 update_time_from_event, insert_sim_event,
1760 sim_events_schedule_after_signal, sim_events_deschedule,
1761 sim_events_tick): Ditto.
1762
1763 * sim-basics.h (sim-module.h, sim-trace.h, sim-profile.h,
1764 sim-model.h): Move #includes from here.
1765 * sim-base.h: To here.
1766 (sim-core.h, sim-events.h, sim-io.h): Include also
1767
1768 Wed Apr 30 15:37:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
1769
1770 * callback.c (default_callback): Missing initialisers.
1771
1772 Thu May 1 10:40:47 1997 Doug Evans <dje@canuck.cygnus.com>
1773
1774 * sim-utils.c (sim_add_commas): New function.
1775 * sim-basics.h (sim_add_commas): Add prototype.
1776 * cgen-scache.c (scache_print_profile): Print commas in numbers.
1777 * sim-profile.c (COMMAS): New macro.
1778 (print_*): Use it to print commas in numbers.
1779
1780 * configure: Regenerated.
1781
1782 * cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
1783 (cgen_state): New member run_fast_p.
1784 (cgen_init): Add prototype.
1785 (sim_disassemble_insn): New arg `cpu'.
1786 * cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
1787 * cgen-utils.c (cgen_init): New function.
1788 (sim_disassemble_insn): New arg `cpu'. Rewrite fetching of insn.
1789 * genmloop.sh: Call engine_halt if loop exits.
1790
1791 * Makefile.in (sim-options_h): Define.
1792 (sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
1793 (sim-model.o): Add new rule.
1794 (cgen-{scache,trace,utils}.o): Add new rules.
1795 * aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
1796 * cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
1797 Indent output by 2 spaces.
1798 * cgen-scache.h (scache_print_profile): Update.
1799 * cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
1800 Use trace_printf, not fprintf.
1801 (trace_extract): Use trace_printf, not cgen_trace_printf.
1802 * genmloop.sh (!FAST case): Increment `insn_count'.
1803 * sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
1804 (sim_cpu_base): Rename member `sd' to `state' to be consistent with
1805 access macro's name.
1806 * sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
1807 Change return type to SIM_RC.
1808 (sim_core_{install,uninstall}): New functions.
1809 * sim-core.h (sim_core_{install,uninstall}): Declare.
1810 (sim_core_init): Use EXTERN_SIM_CORE to define it.
1811 Change return type to SIM_RC.
1812 * sim-model.h (models,machs,model_install): Declare.
1813 * sim-module.c (modules): Add scache_install, model_install.
1814 (sim_post_argv_init): Set cpu->state backlinks.
1815 * sim-options.c (standard_options): Delete --simcache-size,--max-insns.
1816 (standard_option_handler): Likewise.
1817 * sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
1818 sim-profile.h.
1819 (*): Assume ANSI C.
1820 (profile_options): Delete --profile-simcache.
1821 (profile_option_handler): Likewise.
1822 (profile_print_insn): Change `sd' arg to `cpu'. Indent output 2
1823 spaces.
1824 (profile_print_{memory,model}): Likewise.
1825 (profile_print_simcache): Delete.
1826 (profile_print_speed): New function.
1827 (profile_print): Rewrite.
1828 * sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
1829 (WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
1830 (PROFILE_DATA): Delete members simcache_{hits,misses}.
1831 (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
1832 (PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
1833 (profile_print): Update prototype.
1834
1835 Wed Apr 30 11:34:14 1997 Doug Evans <dje@canuck.cygnus.com>
1836
1837 * cgen-scache.[ch], cgen-sim.h: New files.
1838 * cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
1839 * sim-model.c: New file.
1840
1841 * Make-common.in (clean targets): Undo patch of Apr. 22.
1842
1843 Fri Apr 25 15:28:32 1997 Mike Meissner <meissner@cygnus.com>
1844
1845 * sim-n-bits.h (signed): If we have a standard compiler, undef
1846 signed, so that signedN is defined correctly.
1847
1848 Thu Apr 24 00:00:07 1997 Doug Evans <dje@canuck.cygnus.com>
1849
1850 * sim-module.h, sim-model.h, sim-profile.h: New files.
1851 * sim-module.c, sim-profile.c: New files.
1852 * Make-common.in (SIM_PROFILE): Define
1853 (CONFIG_CFLAGS): Add $(SIM_PROFILE).
1854 (sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
1855 (sim_module.o,sim-profile.o): Add rules for.
1856 * aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
1857 (--enable-sim-profile): Add.
1858 * configure: Regenerated.
1859 * sim-base.h (sim_state_base): New members init_list, uninstall_list,
1860 model. Move trace and profile support to sim-{trace,profile}.h.
1861 New members trace_data, profile_data.
1862 * sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
1863 * sim-config.h: Provide default definition of WITH_PROFILE.
1864 (WITH_TRACE): Change default to -1.
1865 (MAX_NR_PROCESSORS): Always define.
1866 * sim-options.c: Move trace and profile support to
1867 sim-{trace,profile}.h.
1868 (sim_pre_argv_init): Moved to sim-model.c.
1869 (standard_install): New function.
1870 * sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
1871 (standard_install): Declare.
1872 * sim-trace.c: Tracing option handling moved here from sim-options.c.
1873 (trace_install, trace_uninstall): New functions.
1874 (trace_printf): Update reference to TRACE_FILE.
1875 * sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
1876 (TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
1877 (WITH_TRACE_FOO_P): Define.
1878 (trace_install): Declare.
1879 (TRACE_DATA): New struct.
1880
1881 Wed Apr 23 17:23:15 1997 Doug Evans <dje@canuck.cygnus.com>
1882
1883 * run.c: Undo last exec_bfd patch.
1884 (main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
1885
1886 Wed Apr 23 17:54:27 1997 Mike Meissner <meissner@cygnus.com>
1887
1888 * run.c (exec_bfd): Add back in.
1889 (main): Set exec_bfd.
1890
1891 Tue Apr 22 14:43:46 1997 Doug Evans <dje@canuck.cygnus.com>
1892
1893 * sim-load.c (sim_load_file): #include <stdio.h> for NULL.
1894
1895 Wed Apr 23 02:55:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
1896
1897 * sim-events.c (insert_sim_event): Call sim_io_error instead of
1898 less well defined engine_error.
1899 * sim-core.c: Ditto.
1900
1901 Tue Apr 22 08:48:16 1997 Stu Grossman (grossman@critters.cygnus.com)
1902
1903 * Make-common.in: Change clean targets to use :: so that other
1904 Makefiles can have their own clean targets.
1905 * sim-load.c (xprintf eprintf): Use ANSI_PROTOTYPES instead of
1906 __STDC__ to control use of stdarg vs. varargs syntax. Some
1907 systems can't use __STDC__, but require stdarg.
1908
1909 Fri Apr 18 11:14:43 1997 Doug Evans <dje@canuck.cygnus.com>
1910
1911 * sim-options.c (standard_options): Add --endian.
1912 (standard_option_handler): Likewise.
1913
1914 * nrun.c: #include <signal.h>.
1915 (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
1916 handler that calls sim_stop ().
1917
1918 Fri Apr 18 13:11:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
1919
1920 * run.c (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
1921 handler that calls sim_stop (). Simulators may still be
1922 establishing their own handler.
1923
1924 * sim-events.c (sim_events_poll): Rename from
1925 sim_events_at_large_int. Poll IO.
1926
1927 * sim-io.c (sim_io_poll_quit): New function - pass on a polling
1928 request.
1929
1930 * callback.c (os_poll_quit): New function poll for quit signal
1931 where needed.
1932 (default_callback): Include magic number.
1933
1934 Thu Apr 17 02:25:11 1997 Doug Evans <dje@canuck.cygnus.com>
1935
1936 * aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
1937 Check for functions getrusage, time.
1938 * sim-basics.h (SIM_ELAPSED_TIME): New typedef.
1939 (sim_elapsed_time_get, sim_elapsed_time_since): Add prototypes.
1940 * sim-utils.c: #include time.h, sys/time.h, sys/resource.h if able.
1941 (sim_elapsed_time_get, sim_elapsed_time_since): New functions.
1942
1943 * sim-utils.c (sim_copy_argv, sim_analyze_program): New functions.
1944
1945 * sim-options.c, sim-options.h: New files.
1946 * sim-config.h (WITH_DEBUG): Provide default value of zero.
1947 * Make-common.in (nrun.o): Add rules for.
1948 * nrun.c: New file.
1949
1950 * run.c (main): Check return value of sim_open.
1951
1952 * Make-common.in (sim-options.o, sim-load.o, sim-trace.o): Add rules.
1953 (sim_main_headers): Add sim-trace.h.
1954 * run.c (exec_bfd, target_byte_order): Delete.
1955 (main): Pass -E <endian> to sim_open. Delete code to load sections,
1956 call sim_load instead. Check return code of sim_create_inferior.
1957 * sim-base.h (CURRENT_STATE): Define.
1958 (sim_state_base): Make typedef. New members options, prog_argv,
1959 prog_bfd, text_{section,start,end}, start_addr, simcache_size,
1960 mem_size, memory [+ corresponding access macros].
1961 (sim_cpu_base): New typedef.
1962 * sim-trace.h: New file.
1963 * sim-trace.c: New file.
1964 * sim-basics.h: #include it.
1965 * sim-load.c: New file.
1966
1967 Tue Apr 15 15:10:13 1997 Ian Lance Taylor <ian@cygnus.com>
1968
1969 * Make-common.in (INSTALL): Set to @INSTALL@.
1970 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1971 (install-common): Depend upon installdirs. Use
1972 $(program_transform_name) directly, rather than using
1973 $(INSTALL_XFORM).
1974 (installdirs): New target.
1975 * Makefile.in (INSTALL): Set to @INSTALL@.
1976 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1977 (install-man): Depend upon installdirs. Use
1978 $(program_transform_name) directly, rather than using
1979 $(INSTALL_XFORM).
1980 (installdirs): New target.
1981
1982 Tue Apr 15 15:08:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
1983
1984 * sim-assert.h (SIM_ASSERT, ASSERT): Allow these macros to
1985 be overriden.
1986
1987 Wed Apr 9 16:06:44 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1988
1989 * sim-basics.h: Only bring in config.h and tconfig.h if
1990 HAVE_CONFIG_H.
1991
1992 Mon Apr 7 11:39:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1993
1994 * sim-config.h (WITH_TARGET_WORD_MSB): New Macro. Define the bit
1995 numbering convention of the target.
1996 * sim-config.c (print_sim_config): Print WITH_TARGET_WORD_BITSIZE
1997 and WITH_TARGET_WORD_MSB.
1998 (sim_config): When possible, check for consistency with bitsize
1999 and msb.
2000
2001 * sim-bits.h: Allow MSB to be other than zero.
2002 * sim-bits.c: Ditto.
2003 * sim-n-bits.h: Ditto.
2004
2005 * sim-bits.h (MSMASK*): New macros - converce to LSMASK*.
2006 * sim-n-bits.h (MSMASKEDn): Ditto.
2007
2008 Mon Apr 14 16:29:21 1997 Ian Lance Taylor <ian@cygnus.com>
2009
2010 * Makefile.in (INSTALL): Change install.sh to install-sh.
2011
2012 Mon Apr 7 10:46:38 1997 Doug Evans <dje@canuck.cygnus.com>
2013
2014 * sim-base.h (sim_state_base): Move `magic' to end of struct.
2015
2016 Mon Apr 7 15:53:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2017
2018 * run.c (main): Check that a program to run was specified.
2019
2020 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2021
2022 * aclocal.m4 (AC_TYPE_SIGNAL): Add check.
2023
2024 * configure: Regenerated to track ../common/aclocal.m4 changes.
2025 * config.in: Ditto.
2026
2027 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
2028
2029 * sim-endian.h: Move host {LITTLE,BIG}_ENDIAN support from here,
2030 * sim-config.h: To here.
2031
2032 * Make-common.in (SIM_EXTRA_DEPS): New config var.
2033 (sim_main_headers): Define.
2034 (sim-*.o): Depend on $(SIM_EXTRA_DEPS).
2035 start-sanitize-d30v
2036 (BUILT_SRC_FROM_COMMON): Move here from ../d30v/Makefile.in.
2037 end-sanitize-d30v
2038 (clean): Use it.
2039 (sim-utils.o): Add rule for.
2040 * sim-utils.o: New file.
2041 * sim-basics.h: #include sim-base.h.
2042 (zalloc): Make argument unsigned long.
2043 * sim-base.h: New file.
2044 * sim-inline.h (SIM_IO support): Delete.
2045 * sim-io.h: Delete inline support.
2046 * sim-io.c: Likewise. sim-state.h renamed to sim-main.h.
2047 * sim-config.c: sim-state.h renamed to sim-main.h.
2048 * sim-core.c: Likewise.
2049 * sim-events.c: Likewise.
2050
2051 * run.c (main): Pass SIM_OPEN_STANDALONE to sim_open.
2052
2053 * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
2054 (sim-debug): Allow arguments. Define WITH_DEBUG in addition to
2055 -DDEBUG.
2056 * configure: Regenerated to track ../common/aclocal.m4 changes.
2057
2058 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2059
2060 * configure: Regenerated to track ../common/aclocal.m4 changes.
2061
2062 Wed Apr 2 11:08:11 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2063
2064 * sim-config.h (WITH_ALIGNMENT, WITH_FLOATING_POINT,
2065 WITH_XOR_ENDIAN, WITH_SMP, WITH_RESERVED_BITS): Assume that these
2066 are defined by the configure.
2067
2068 * aclocal.m4 (sim-stdio): Add option stdio from ../ppc configure.
2069
2070 * aclocal.m4 (floating-point, xor-endian, alignment, smp,
2071 reserved-bits): Always define.
2072
2073 * sim-config.h, sim-config.c (sim_config): New function - and new
2074 file - co-ordinate the setting/checking of the common simulator
2075 configuration options.
2076
2077 * Make-common.in (sim-config.o): Add rule.
2078
2079 Fri Mar 28 15:32:00 1997 Mike Meissner <meissner@cygnus.com>
2080
2081 * callback.c (os_{,e}vprintf_filtered): Change stdarg type to
2082 va_list from void *, since va_list might not be a pointer type.
2083
2084 Mon Mar 24 15:27:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2085
2086 * sim-n-endian.h (offset_N): Correct assertion - word and sub word
2087 in wrong order.
2088 (offset_N): Correct computation of LE offset.
2089
2090 * sim-io.c (sim_io_error): Include a new line when reporting
2091 errors.
2092
2093 * sim-assert.h (SIM_FILTER_PATH): Out by one when locating last
2094 `/'.
2095
2096 Thu Mar 20 22:31:06 1997 Jeffrey A Law (law@cygnus.com)
2097
2098 * run.c: Include alloca-conf.h.
2099
2100 * callback.c (os_evprintf_filtered): Fix typo.
2101
2102 Fri Mar 21 13:36:20 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2103
2104 * run.c (string.h, strings.h, stdlib.h): Include.
2105
2106 * sim-events.c (sim_events_tick): Recent cleanup failed to return
2107 0 when nothing pending.
2108
2109 * run.c (sim_size, sim_trace): Plicate GCC - these two functions
2110 will soon be going away.
2111 (getopt): Plicate GCC.
2112
2113 * sim-endian.c (sim-io.h): Plicate GCC.
2114 * sim-bits.c (sim-io.h): Ditto.
2115 * sim-n-bits.h (ROTn): Ditto.
2116
2117 * sim-io.c (sim_io_error): Correct check for NULL.
2118
2119 * sim-assert.h (SIM_FILTER_PATH): Separate out the code filtering
2120 the __FILE__.
2121 * sim-events.c: Use SIM_FILTER_PATH to filter out the filename
2122 path.
2123
2124 Wed Mar 19 01:12:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2125
2126 * aclocal.m4 (SIM_AC_OPTION_*: Move so that they are outside of
2127 SIM_AC_COMMON - SIM_AC_COMMON was gobling arguments.
2128
2129 Tue Mar 18 20:48:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2130
2131 * sim-alu.h: Include sim-xcat.h.
2132
2133 Tue Mar 18 13:58:18 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2134
2135 * Make-common.in (sim-bits.c, sim-core.c, sim-endian.c,
2136 sim-events.c, sim-inline.c, sim-io.c): Define rules for building
2137 these.
2138
2139 * sim-events.c (sim_events_at_large_int): New function. Just
2140 schedules an event every large-int ticks.
2141 (sim_events_init): Call.
2142 (sim_events_tick, sim_events_process): Move async handing to
2143 sim_events_process. Move timer decrement so that it occures after
2144 events have been processed.
2145
2146 * sim-basics.h (struct _engine): Remove declaration.
2147
2148 * sim-events.h, sim-events.c: Rename type to sim_events. Prefix
2149 everything with same. Rename global struct to SIM_DESC.
2150 * sim-core.h, sim-core.c, sim-n-core.c: Ditto for sim_core.
2151 * sim-io.h, sim-io.c: Ditto.
2152
2153 * sim-assert.h: New file. Optional assertion checking macros.
2154 * sim-io.c (sim_io_error): Make just this function tolerant to
2155 null pointers.
2156
2157 * sim-xcat.h: New file. Define concatenate macros.
2158 * sim-basics.h (XCONCAT*): Move to sim-xcat.h.
2159 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Explicitly include
2160 concat macros.
2161
2162
2163 Tue Mar 18 12:44:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2164
2165 * sim-bits.h (LSMASK): New macro. Create mask of LS bits.
2166
2167 Mon Mar 17 18:10:05 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2168
2169 * sim-inline.h: Add definitions for sim-types.
2170 (ALL_BY_MODULE): New macro, encapsulate full inlining by the
2171 module.
2172
2173 Mon Mar 17 15:38:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2174
2175 * sim-events.h: Remove defunct reference to callback struct.
2176
2177 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2178
2179 * configure: Re-generate.
2180
2181 Mon Mar 17 15:04:47 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2182
2183 * Make-common.in (CSEARCH): Do not include the gdb directory in
2184 the search path.
2185
2186 Mon Mar 17 13:16:26 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2187
2188 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
2189 SIM_WARNING): Drop, requiring the simulator specific Makefile.in
2190 to explicitly incorporate these.
2191
2192 * aclocal.m4 (--enable-sim-alignment); New option. Strongly
2193 specify the alignment restrictions of the target architecture -
2194 without this option all alignment restrictions are accomodated.
2195 (--enable-sim-assert): New option. Conditionally compile in
2196 assertion statements.
2197 (--enable-sim-float): New option. Strongly specify the target's
2198 floating point support.
2199 (--enable-sim-hardware): New option. Specify the hardware devices
2200 included in the simulation.
2201 (--enable-sim-packages): New option. Specify the hardware
2202 packages included in the simulation.
2203 (--enable-sim-regparm): New option. Specify that parameters be
2204 passed in registers instead of on the stack.
2205 (--enable-sim-reserved-bits): New option. Specify that reserved
2206 bits within an instruction are are correctly set.
2207 (--enable-sim-smp): New option. Specify the level of SMP support
2208 to be included in the simulator.
2209 (--enable-sim-stdcall): New option. Specify an alternative
2210 function call convention.
2211 (--enable-sim-xor-endian): New option. Configure xor-endian
2212 support used by some targets to implement bi-endian support.
2213
2214 Fri Mar 14 19:51:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2215
2216 * aclocal.m4 (--enable-sim-hostendian): New option. Allow the
2217 host endianness to be overridden.
2218 (--enable-sim-endian): Allow the target platform's byte order
2219 to be overridden.
2220 (--enable-sim-inline): Control the inlining of common components.
2221 (--enable-sim-bswap): For compatibility, also define WITH_BSWAP.
2222 (--enable-sim-warnings): Enable additional GCC compiler checks.
2223 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
2224 SIM_WARNINGS): Add.
2225
2226 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Rename from
2227 sim-*-n.h so that the names are uniq on dos machines
2228 * sim-core.c, sim-bits.c, sim-endian.c: Update.
2229
2230 Thu Mar 13 12:32:42 1997 Doug Evans <dje@canuck.cygnus.com>
2231
2232 * run.c: #include "libiberty.h".
2233 (main): New locals sd,no_args,sim_argv.
2234 Run buildargv on -a option. Pass argv to sim_open, argv[0]
2235 is program name. Update call to sim_set_callbacks.
2236 Record result of sim_open, pass to other sim_foo routines.
2237
2238 Thu Mar 13 10:24:05 1997 Michael Meissner <meissner@cygnus.com>
2239
2240 * callback.c (os_printf_filtered): Do not call exit(1) or print a
2241 final newline.
2242
2243 Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2244
2245 * callback.c: Add os_flush_stdout and vprintf_filtered callbacks.
2246 Route stdout through buffered IO.
2247
2248 * callback.c: Add os_flush_stderr, os_write_stderr,
2249 os_evprintf_filtered functions to route error output through
2250 stderr.
2251
2252 * sim-io.h, sim-io.c (sim_io_flush_stderr, sim_io_flush_stdout):
2253 Correct return type - should be void.
2254
2255 Fri Mar 7 20:14:37 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2256
2257 * sim-basics.h: Clean up. Many macro's moved to sim-inline.h.
2258
2259 * sim-config.h: Ditto. For some options - eg WITH_DEVICES - do
2260 not provide a default value as undefined indicates disable code.
2261
2262 Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2263
2264 * sim-core.h, sim-core-n.h, sim-core.c: Borrow code from ppc
2265 directory.
2266 * sim-events.h, sim-events.c: Ditto.
2267 * sim-io.h, sim-io.c: Ditto.
2268
2269 Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2270
2271 * sim-alu.h (ALU_SUB_CA, ALU*_SUB_CA): New alu operation.
2272
2273 * sim-bits.h, sim-bits-n.h, sim-bits.c (LSMASKED*): New macro's
2274 extract the tail or least signifiant bits from an integer of the
2275 specified size.
2276
2277 * sim-bits.h, sim-bits.c: Clean up conditionally compiled #if
2278 WITH_TARGET_BITSIZE so that the compilation will fail when an
2279 unsupported bitsize value is defined.
2280
2281 (INSERTED*): Convert to functions.
2282 (EXTRACTED*): Ditto.
2283
2284 (SIGN_EXTEND, SEXT): Change to more terse name.
2285
2286 Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2287
2288 * sim-inline.h: Allow explicit control over which .c files will be
2289 included by their header.
2290
2291 * sim-inline.h: Allow explicit control over which .c files use the
2292 alternative - REGPARM - parameter passing mechanism.
2293
2294 * sim-inline.h, sim-inline.c: Don't attempt to include any of
2295 icache.c, idecode.c, semantics.c or support.c. Those names are
2296 not generally applicable.
2297
2298 Thu Feb 27 10:17:23 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2299
2300 * sim-bits.c, sim-bits-n.h (new): Split sim-bits.c into two parts
2301 in a fashion similar to sim-endian-n.
2302
2303 * sim-endian.h: (H_word, L_word, AL_*, VL_*): Extend to include
2304 both value and address macro's.
2305
2306 Tue Feb 25 18:51:57 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2307
2308 * sim-alu.h (ALU16_BEGIN, ALU16_SET, ...): Fill in.
2309
2310 * sim-endian.h (L_word, H_word): Replace MS2W_4, LS2W_4 with more
2311 generic L_word, H_word macro's.
2312
2313 Thu Feb 20 18:36:55 1997 Andrew Cagney <cagney@critters.cygnus.com>
2314
2315 * sim-basics.h: Borrow code from ppc directory.
2316 * sim-bits.c: Ditto.
2317 * sim-bits.h: Ditto.
2318 * sim-config.h: Ditto.
2319 * sim-endian-n.h: Ditto.
2320 * sim-endian.c: Ditto.
2321 * sim-endian.h: Ditto.
2322 * sim-inline.c: Ditto.
2323 * sim-inline.h: Ditto.
2324 * sim-types.h: Ditto.
2325
2326 Wed Feb 19 12:40:50 1997 Andrew Cagney <cagney@critters.cygnus.com>
2327
2328 * sim-alu.h (ALU_SET16, ALU_SET32, ALU_SET64, etc): Make available
2329 all the ALU size alternatives and then auto-configure a default.
2330
2331 * sim-alu.h: Copy ppc/idecode_expression.h.
2332
2333 Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com>
2334
2335 * bits.h, bits.c (SIGN_EXTEND32, SIGN_EXTEND64): New functions,
2336 sign extend a bit within a value.
2337
2338 * sim-endian.h, sim-endian-n.h (offset_N): New functions - return
2339 a pointer into the middle of a host word.
2340 * sim-endian.h (MS2W_4, LS2W_4): Use this function.
2341
2342 Tue Feb 11 13:46:49 1997 Michael Meissner <meissner@tiktok.cygnus.com>
2343
2344 * callback.c: If HAVE_CONFIG_H is defined, include config.h from
2345 autoconf. If HAVE_UNISTD_H is defined, include unistd.h to get
2346 appropriate definitions of read, write, etc. Add prototype for
2347 system.
2348
2349 Tue Feb 4 13:24:44 1997 Doug Evans <dje@canuck.cygnus.com>
2350
2351 * Makefile.in (libcommon.a): Delete.
2352 (callback.o,targ-map.o): Delete, moved to Make-common.in.
2353 (gentmap,targ-vals.h,targ-map.c): Likewise.
2354 (run-autoconf): Delete.
2355 * aclocal.m4 (SIM_AC_OUTPUT): Redo creation of Makefile.
2356 (common makefile fragment): Moved back into ...
2357 * Make-common.in: Resurrect.
2358 * configure.in (AC_LINK_FILES): Delete, unnecessary now.
2359 * configure: Regenerated.
2360
2361 Fri Jan 31 07:16:49 1997 Doug Evans <dje@canuck.cygnus.com>
2362
2363 * aclocal.m4 (SIM_AC_COMMON): Move COMMON_MAKEFILE_FRAG from here.
2364 (SIM_AC_OUTPUT): To here.
2365
2366 Fri Jan 24 10:37:17 1997 Stu Grossman (grossman@critters.cygnus.com)
2367
2368 * aclocal.m4 (COMMON_MAKEFILE_FRAG): Quote a couple of $'s in
2369 comments and single quotes. Fixes a problem found on hpux.
2370
2371 Thu Jan 23 13:35:03 1997 Stu Grossman (grossman@critters.cygnus.com)
2372
2373 * aclocal.m4: Remove Make-common.in from dependencies.
2374 * (distclean): Remove targ-vals.def.
2375
2376 * aclocal.m4 (SIM_AC_COMMON): Move contents of Make-common.in
2377 into here. Makes insertion into makefiles easier. Also, change
2378 the way that callback.o, gentmap, targ-vals.h, targ-map.c,
2379 targ-map.o, and run are built. They are now built in the
2380 individual simulator directories, taking sources from ../common as
2381 necessary. This replaces the merging of libcommon.a into
2382 linsim.a, which was problematic for the WinGDB build process.
2383 * run.c: Include config.h from . instead of ../common.
2384 * Make-common.in: Remove. It's no longer necessary.
2385
2386 Mon Dec 16 15:02:33 1996 Ian Lance Taylor <ian@cygnus.com>
2387
2388 * Make-common.in (ALL_CLAGS): Put CFLAGS at the end.
2389 (.c.o): Put $(ALL_CFLAGS) before the file being compiled.
2390
2391 Wed Dec 11 11:30:58 1996 Jim Wilson <wilson@cygnus.com>
2392
2393 * run.c (main): Set target_byte_order before call to sim_open.
2394
2395 Sun Dec 8 18:22:06 1996 Doug Evans <dje@canuck.cygnus.com>
2396
2397 * callback.c: #include <stdlib.h>
2398 (os_error): New function.
2399 (default_callback): Add os_error.
2400
2401 Mon Nov 25 19:44:35 1996 Doug Evans <dje@canuck.cygnus.com>
2402
2403 * Make-common.in (Makefile): Set CONFIG_HEADERS="".
2404 * aclocal.m4: Mark the fact that --enable-sim-bswap isn't host
2405 specific.
2406 (SIM_AC_OUTPUT): Don't build Makefile if CONFIG_FILES="".
2407
2408 Wed Nov 20 01:11:04 1996 Doug Evans <dje@canuck.cygnus.com>
2409
2410 * run.c: #include ../common/config.h, tconfig.h.
2411 (myname): New static global.
2412 (main): Recognize new options -a, -c. Also recognize -h if h8/300.
2413 Only process -c ifdef SIM_HAVE_SIMCACHE.
2414 Only process -p/-s ifdef SIM_HAVE_PROFILE.
2415 Parse program name from argv[0] and use in error messages.
2416 Pass sim_args to sim_open. Pass prog_args to sim_create_inferior.
2417 Add support for incomplete h8/300 termination indicators.
2418 (usage): Make more verbose.
2419 * aclocal.m4,config.in,tconfig.in,configure.in,configure: New files.
2420 * Makefile.in,Make-common.in,callback.c: New files.
2421 * nltvals.def,gentmap.c,gentvals.sh: New files.
2422
2423 Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
2424
2425 * run.c: Include stdarg.h if __STDC__.
2426
2427 Tue Oct 15 11:16:31 1996 Jeffrey A Law (law@cygnus.com)
2428
2429 * run.c (main): Don't print out anything if the signal
2430 number is zero (ie no signal).
2431
2432 Tue Oct 15 11:20:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2433
2434 * run.c (main): Print out if the program raised a signal.
2435
2436 Wed Sep 18 09:52:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2437
2438 * run.c (exec_bfd): Rename from sim_bfd, to use the gdb name.
2439 (main): Ditto.
2440
2441 Tue Sep 17 11:04:50 1996 James G. Smith <jsmith@cygnus.co.uk>
2442
2443 * run.c (main): Explicitly cast malloc() parameter.
2444
2445 Thu Sep 12 11:27:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2446
2447 * run.c (sim_bfd): New global to hold the bfd pointer for the
2448 executable.
2449 (main): Initialize sim_bfd.
2450
2451 Fri Dec 15 16:27:49 1995 Ian Lance Taylor <ian@cygnus.com>
2452
2453 * run.c (main): Use new bfd_big_endian macro.
2454
2455 Wed Nov 8 15:49:49 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
2456
2457 * run.c (main): Removed SH specific comments, so source is
2458 generic. Also updated to only load relevant sections. Moved
2459 sim_open() to after callback attach (to match GDB).
2460
2461 * run.1: Removed SH specific comments.
2462
2463 Sat Oct 21 12:31:01 1995 Jim Wilson <wilson@chestnut.cygnus.com>
2464
2465 * run.c (main): Always return sigrc at end.
2466
2467 Tue Oct 10 12:03:13 1995 J.T. Conklin <jtc@rtl.cygnus.com>
2468
2469 * run.c (main): Print error diagnostic and exit if bfd_openr() or
2470 bfd_check_format() fails.
2471
2472 Thu Sep 28 15:40:36 1995 steve chamberlain <sac@slash.cygnus.com>
2473
2474 * run.c, run.1: From sh directory.
2475
2476