Memory corruption problems - hw-event list wasn't correct
[deliverable/binutils-gdb.git] / sim / common / ChangeLog
1 Thu Jun 4 13:53:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
2
3 * hw-events.c (create_hw_event, delete_hw_event): Delete.
4 (hw_event_queue_schedule, hw_event_queue_deschedule,
5 bounce_hw_event): Fix hw-event memory corruptions found by Joyce
6 Janczyn.
7
8 * hw-alloc.h (HW_NZALLOC): Define.
9
10 * Make-common.in (test-hw-events): Add target for testing the
11 hw-event code.
12
13 Mon May 25 21:11:26 1998 Andrew Cagney <cagney@b1.cygnus.com>
14
15 * Make-common.in (SIM_COMMON_HW_OBJS): Add hw-handles.o and
16 hw-instances.o.
17 hw-handles.c, hw-instances.c, hw-handles.h, hw-instances.h: New
18 files.
19 * hw-main.h: Include hw-handles.h, hw-instances.h.
20 * hw-base.h ({create,delete}_hw_{handles,instances}_data): Declare
21 * hw-base.c (hw_create, hw_delete): Call same.
22
23 Mon May 25 18:55:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
24
25 * dv-core.c: Include hw-main.h and sim-main.h.
26 * dv-pal.c: Include hw-main.h and sim-io.h.
27 * dv-glue.c: Include hw-main.h.
28
29 * hw-main.h: New file. Move list of includes to here.
30 * hw-base.h: From here.
31 * Make-common.in (hw_base_headers): Rename to hw_main_headers.
32 (hw-*.o, dv-*.o): Update.
33 * hw-tree.c, hw-base.c, hw-properties.c, hw-ports.c, hw-device.c,
34 hw-events.c, hw-alloc.c, sim-hw.c: Include hw-main.h instead of
35 sim-main.h.
36
37 * hw-base.h (do_hw_attach_regs, do_hw_poll_read_method,
38 do_hw_poll_read): Move declarations from here.
39 * hw-main.h: To here.
40
41 * hw-base.h (struct hw_device_descriptor, hw_finish_callback):
42 Move from here.
43 * hw-main.h (struct hw_descriptor, hw_finish_method): To here,
44 rename.
45 * Make-common.in (hw-config.h): Update
46 * hw-base.c, dv-pal.c, dv-glue.c: Update
47
48 * dv-glue.c, hw-device.h, hw-base.h, hw-ports.c: Rename
49 `*_callback' to `*_method.
50
51 Mon May 25 18:41:18 1998 Andrew Cagney <cagney@b1.cygnus.com>
52
53 * hw-base.h (set_*): Move set method macros from here.
54 * hw-device.h: To here.
55
56 Mon May 25 18:21:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
57
58 * hw-base.h (create_hw_property_data, delete_hw_property_data):
59 Declare.
60
61 * hw-base.c (hw_create, hw_delete): Call
62 * hw-properties.c (create_hw_property_data,
63 delete_hw_property_data): Define.
64
65 Mon May 25 17:40:46 1998 Andrew Cagney <cagney@b1.cygnus.com>
66
67 * hw-device.c, hw-properties.c: Include hw-base.h
68
69 * hw-alloc.h, hw-alloc.c: New files. Move alloc code to here.
70 * hw-device.c: From here.
71 * hw-base.h: Include "hw-events.h".
72
73 * hw-base.h (create_hw_alloc_data, delete_hw_alloc_data): Declare.
74 * hw-base.c (hw_create, hw_delete): Call.
75 * hw-alloc.c (create_hw_alloc_data, delete_hw_alloc_data): Define.
76
77 * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-alloc.o.
78 (hw-alloc.o): New target.
79
80 Mon May 25 17:14:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
81
82 * hw-events.h, hw-events.c: New files. Move event code to here.
83 * sim-hw.c: From here.
84 * hw-base.h: Include "hw-events.h".
85 * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-events.o.
86 (hw-events.o): New target.
87
88 * hw-device.h (struct hw): Add struct hw_event_data events_of_hw.
89 * hw-events.h (struct hw_event): Replace typedef hw_event.
90
91 * hw-base.h (create_hw_event_data, delete_hw_event_data): Declare.
92 * hw-base.c (hw_create, hw_delete): Call.
93 * hw-events.c (create_hw_event_data, delete_hw_event_data): Define.
94
95 * dv-pal.c: Update.
96
97 Mon May 25 16:55:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
98
99 * hw-base.c (panic_hw_port_event, empty_hw_ports): Move from here.
100 * hw-ports.c: To here.
101
102 * hw-base.h, hw-ports.c (create_hw_port_data,
103 delete_hw_port_data): New functions.
104 * hw-base.c (hw_delete, hw_create): Call same.
105
106 * hw-base.h (set_hw_ports, set_hw_port_event): Move set functions
107 from here.
108 * hw-ports.h: To here.
109
110 Mon May 25 16:42:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
111
112 * hw-device.c (hw_ioctl), hw-device.h (hw_ioctl_callback): Drop
113 PROCESSOR and CIA arguments.
114
115 Fri May 22 12:16:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
116
117 * aclocal.m4 (SIM_AC_OPTION_HW): Add enable / disable argument.
118 Move common object files from here.
119 * Make-common.in (SIM_COMMON_HW_OBJS): To here.
120
121 Thu May 21 17:57:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
122
123 * sim-hw.c: Include ctype.h.
124 (do_hw_poll_read): Do not assume EAGAIN.
125
126 Wed May 20 04:37:57 1998 Doug Evans <devans@seba.cygnus.com>
127
128 * cgen-trace.c (first_insn_p): New static local.
129 (trace_insn_init): Set it.
130 (trace_insn_fini): Use TRACE_PREFIX.
131 (trace_insn): Rewrite to use trace_prefix.
132 * sim-trace.c (trace_prefix): Don't print filename arg if NULL.
133 Adjust width accordingly.
134
135 * sim-profile.h (PROFILE_DATA): New member profile_any_p.
136 (PROFILE_ANY_P,PROFILE_INSN_P,PROFILE_MEMORY): New macros.
137 (PROFILE_SCACHE_P,PROFILE_PC_P,PROFILE_CORE_P): New macros.
138 (PROFILE_COUNT_INSN,PROFILE_COUNT_READ,PROFILE_COUNT_WRITE): Simplify.
139 (PROFILE_COUNT_CORE): Simplify.
140 * sim-profile.c (profile_option_handler): Compute profile_any_p.
141
142 Tue May 19 23:55:30 1998 Doug Evans <devans@seba.cygnus.com>
143
144 * cgen-ops.h (ADDCFSI): Fix typo.
145
146 Sat May 16 12:44:52 1998 Doug Evans <devans@seba.cygnus.com>
147
148 * cgen-sim.h (CGEN_CPU): New members idesc_{read,sem}_init_p.
149 * genmloop.sh: Use them rather than static locals.
150
151 * sim-engine.c (sim_engine_set_run_state): New function.
152 * sim-engine.h (sim_engine_set_run_state): Declare.
153 * genmloop.sh (pending_reason,pending_sigrc): New static locals.
154 (@cpu@_engine_stop): New args reason,sigrc. All callers updated.
155 (engine_resume): Reorganize. Allow synchronous exit from main loop.
156
157 Fri May 15 16:06:05 1998 Doug Evans <devans@seba.cygnus.com>
158
159 * cgen-trace.c (trace_insn_init): New arg first_p.
160 All callers updated.
161 (trace_insn_fini): New arg last_p. All callers updated.
162 * cgen-trace.h (trace_insn_init,trace_insn_fini): Update.
163 (TRACE_INSN_INIT,TRACE_INSN_FINI): Update.
164 * genmloop.sh (engine_resume): Update.
165
166 Fri May 15 15:59:00 1998 Joyce Janczyn <janczyn@cygnus.com>
167
168 * Make-common.in (install-common): Run ranlib on installed copy of
169 libsim.a.
170
171 Fri May 15 15:03:00 1998 Joyce Janczyn <janczyn@cygnus.com>
172
173 * Make-common.in (install-common): Rename and install libsim.a.
174
175 Tue May 12 15:23:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
176
177 * sim-io.c (unistd.h): Include.
178
179 Wed May 6 16:04:18 1998 Doug Evans <devans@seba.cygnus.com>
180
181 * Make-common (sim_main_headers): Sort.
182 (cgen-*.o): Add cgen-sim.h dependency.
183
184 * cgen-scache.c (scache_init): Only allocate space if scache element
185 size is non-zero.
186 (scache_flush,scache_print_profile): Check if scache in use first.
187
188 * cgen-sim.h (IDESC): Provide forward declaration.
189 (DECODE): Delete.
190 (CGEN_CPU): Always define scache member. New members idesc,opcode.
191 (cgen_cpu_max_extra_bytes): Declare.
192 * cgen-utils.c (cgen_cpu_max_extra_bytes): New function.
193
194 * cgen.sh: s/@arch@/${arch}/ for cpu files.
195
196 * sim-cpu.h: New file. sim_cpu_base moved here.
197 Move sim_cpu_lookup decl here.
198 * sim-base.h: #include "sim-cpu.h".
199 * sim-cpu.c: New file.
200 * Make-common (sim_main_headers): Add sim-cpu.h.
201 (sim-cpu.o): Add rule for.
202
203 * sim-model.c (set_model): Delete.
204 (sim_model_set,model_set): New functions.
205 (sim_model_install): Renamed from model_install.
206 Don't set default model here.
207 (model_option_handler): Rewrite --model processing.
208 (sim_model_lookup,sim_mach_lookup): New functions.
209 * sim-model.h (MAX_MODELS,MAX_INSNS): Delete.
210 (insn_timing): Delete.
211 (INSN_TIMING): New member `num'.
212 (IMP_PROPERTIES): Always define scache_elm_size member.
213 (MACH): New member init_cpu.
214 (sim_machs): Renamed from machs.
215 (sim_model_install): Renamed from model_install.
216 (sim_model_set,sim_model_lookup,sim_mach_lookup): Declare.
217 * sim-module.c (modules): Update.
218
219 * sim-profile.c (profile_print_insn): Add cpu arg to INSN_NAME macro.
220
221 * sim-io.c: #include <errno.h>.
222
223 Wed May 6 12:39:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
224
225 * dv-pal.c (struct hw_pal_device): Add reader.
226 (hw_pal_finish): Initialize reader.
227 (scan_hw_pal): Use reader.
228
229 * hw-base.h, sim-hw.c (do_hw_poll_read): New function.
230 (HW_IO_EOF, HW_IO_NOT_READY): Define.
231 * dv-pal.c: Use.
232
233 * sim-io.h, sim-io.c (sim_io_poll_read): New function. Copy from
234 ../ppc/main.c sim_io_read_stdin.
235
236 Fri May 1 12:11:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
237
238 * hw-tree.h (hw_tree_print): Paramaterize with print and file
239 arguments.
240 * hw-tree.c: Update.
241
242 * hw-base.h (hw_port_event_callback): Delete CPU/CIA args.
243 * hw-device.h (hw_io_read_buffer, hw_io_write_buffer): Delete
244 CPU/CIA args.
245 * hw-ports.h (hw_port_event): Ditto.
246 * hw-ports.c (hw_port_event): Update.
247 * hw-base.c (panic_hw_io_read_buffer, panic_hw_io_write_buffer):
248 Update.
249 * dv-pal.c (hw_pal_io_read_buffer, hw_pal_io_write_buffer):
250 Update.
251 (hw_pal_io_write_buffer): Call hw_halt not sim_engine_halt.
252 (do_counter_event): Update.
253 * dv-glue.c (hw_glue_io_read_buffer): Update.
254 (hw_glue_port_event): Update.
255
256 * hw-device.h (SIM_DESC): Replace with struct sim_state.
257 * hw-base.h (hw_create): Ditto.
258 * hw-base.c (hw_create): Ditto.
259
260 * hw-device.c (hw_abort, hw_trace, hw_hw_event_queue_schedule,
261 hw_event_queue_deschedule, hw_event_queue_time): Delete, moved
262 from here to.
263 * sim-hw.c: Here.
264 * hw-device.h (hw_system_cpu): Declare.
265 * sim-hw.c (hw_system_cpu): New function.
266
267 * sim-core.c (sim_core_map_attach, sim_core_attach): Call
268 sim_hw_abort not hw_abort.
269 (sim-hw.h): Include.
270 (sim_core_read_buffer, sim_core_write_buffer): Call
271 sim_hw_io_read_buffer and sim_hw_io_write_buffer. Do not pass CPU
272 argument.
273 (sim_core_set_xor): Do not pass CPU when aborting.
274
275 * sim-n-core.h (sim_core_read_aligned_N,
276 sim_core_write_aligned_N): Call sim_hw_abort not hw_abort.
277 (sim_core_read_aligned_N, sim_core_write_aligned_N): Call
278 sim_cpu_hw_io_read_buffer and sim_cpu_hw_io_write_buffer. Does not
279 return length.
280
281 * sim-hw.h: Declare sim_hw_io_{read,write}_buffer. Declare
282 sim_hw_print.
283 * sim-hw.c (sim_hw_io_read_buffer, sim_hw_io_write_buffer,
284 sim_cpu_hw_io_read_buffer, sim_cpu_hw_io_write_buffer): New
285 functions.
286 (sim_hw_print): New function.
287
288 * sim-engine.h (sim_engine_vabort): Declare.
289 * sim-engine.c (sim_engine_vabort): New function.
290
291 Wed Apr 29 23:58:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
292
293 * sim-trace.c (print_data): For floating-point numbers trace raw
294 hex value.
295 (trace_result_fp2): New function.
296 * sim-trace.h (trace_result_fp2): New declaration.
297 (TRACE_FP_RESULT2): New macro.
298
299 Tue Apr 28 18:28:58 1998 Geoffrey Noer <noer@cygnus.com>
300
301 * common/aclocal.m4: call AM_EXEEXT in SIM_AC_COMMON, define
302 AM_CYGWIN32 and AM_EXEEXT.
303 * common/Make-common.in: set EXEEXT, add missing EXEEXTs
304 to run and install-common rules.
305 * common/configure: regenerate
306
307 Sat Apr 25 17:45:01 1998 Andrew Cagney <cagney@b1.cygnus.com>
308
309 * sim-types.h (cell_word): New type.
310 (natural_cell): Delete type.
311
312 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
313
314 * configure: Regenerated to track ../common/aclocal.m4 changes.
315 * config.in: Ditto.
316
317 Sun Apr 26 15:25:07 1998 Tom Tromey <tromey@cygnus.com>
318
319 * acconfig.h (NEED_DECLARATION_PRINTF): Removed.
320
321 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
322
323 * configure: Regenerated to track ../common/aclocal.m4 changes.
324 * config.in: Ditto.
325
326 Fri Apr 24 11:38:08 1998 Tom Tromey <tromey@cygnus.com>
327
328 * acconfig.h: New file.
329 * Make-common.in (top_builddir): New macro.
330 (INTL_LIB): Removed.
331 (INTLLIBS): New macro.
332 (INTLDEPS): Likewise.
333 (LIBDEPS): Use INTLDEPS.
334 (EXTRA_LIBS): Use INTLLIBS.
335 * aclocal.m4 (SIM_AC_COMMON): Call CY_GNU_GETTEXT.
336 (CY_WITH_NLS, CY_GNU_GETTEXT, AM_PATH_PROG_WITH_TEST,
337 AM_LC_MESSAGES): New macros from GNU gettext.
338
339 Fri Apr 24 19:57:59 1998 Andrew Cagney <cagney@b1.cygnus.com>
340
341 * sim-config.h: Discard leading _ from macros.
342 * sim-types.h: Ditto.
343
344 Wed Apr 22 14:14:19 1998 Michael Meissner <meissner@cygnus.com>
345
346 * Make-common.in (CSEARCH): Add -I to intl directories.
347 (INTL_LIB): Point to libintl.a.
348 (LIBDEPS): Add $(INTL_LIB).
349 (EXTRA_LIBS): Ditto.
350
351 Tue Apr 21 12:44:27 1998 Doug Evans <devans@canuck.cygnus.com>
352
353 * cgen-types.h (GETHIDI,MAKEDI): Tweak.
354
355 * cgen-ops.h (ADDCFSI): Fix.
356 (SUBCFSI): Tweak.
357
358 Tue Apr 21 13:18:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
359
360 * sim-types.h (signed_address, unsigned_address): Define.
361
362 Mon Apr 20 21:47:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
363
364 * sim-fpu.c (sim_fpu_2d): Don't return an SNaN, convert it into a
365 QNaN.
366
367 Thu Apr 16 10:30:14 1998 Andrew Cagney <cagney@b1.cygnus.com>
368
369 * sim-fpu.c, sim-fpu.h (sim_fpu_fractionto, sim_fpu_tofraction):
370 New functions, pack / unpack sim_fpu struct using raw values.
371 (sim_fpu_is): Differentiate between negative and positive
372 infinity.
373
374 Tue Apr 14 18:49:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
375
376 * sim-bits.h (EXTEND4): Define.
377 (EXTEND4, EXTEND15, EXTEND11): Ditto.
378
379 Tue Apr 14 16:31:35 1998 John Metzler <jmetzler@cygnus.com>
380
381 * sim-memopt.c (parse_addr): Sunos 4.5 does not hane strtol
382 declared so we need this cast to prevent long long addresses
383 from being misconfigures. Results in access to unmapped memory.
384
385 Tue Apr 14 13:19:14 1998 Doug Evans <devans@canuck.cygnus.com>
386
387 * Make-common.in (RUNTESTFLAGS): Define.
388 (check): Pass RUNTESTFLAGS to recursive make.
389
390 Tue Apr 14 15:09:19 1998 Andrew Cagney <cagney@b1.cygnus.com>
391
392 * sim-info.c (sim_info): Be verbose when either VERBOSE or
393 STATE_VERBOSE_P.
394
395 Sat Apr 4 23:24:17 1998 Andrew Cagney <cagney@b1.cygnus.com>
396
397 * aclocal.m4 (sim-inline): By default, disable sim-inline when
398 cross compiling.
399
400 Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
401
402 * aclocal.m4 (sim-cflags): Add -fomit-frame-pointer to defaults.
403 (sim-inline): Update to match sim-inline.[hc]
404 * configure: Regenerated to track ../common/aclocal.m4 changes.
405
406 * Make-common.in (sim_main_headers): Add sim-inline.h
407
408 * sim-bits.h (sim-bits.c): Include when H_REVEALS_MODULE_P.
409 selected.
410 * sim-endian.h (sim-endian.c): Ditto.
411
412 * sim-events.h (_SIM_EVENTS_H_): Replace with SIM_EVENTS_H.
413 (sim_events_set_trace): Delete unused prototype.
414
415 * sim-core.h (_SIM_CORE_H_): Replace with SIM_CORE_H.
416 * sim-core.c (_SIM_CORE_C_): Ditto for SIM_CORE_C.
417
418 * sim-fpu.h (sim-fpu.c): Include when H_REVEALS_MODULE_P.
419 (sim_fpu_to232i, sim_fpu_to232u, sim_fpu_i232to, sim_fpu_u232to):
420 Comment out, not yet implemented in sim-fpu.c.
421 (sim_fpu_zero, sim_fpu_one, sim_fpu_two, sim_fpu_qnan,
422 sim_fpu_max32, sim_fpu_max64): Mark as EXTERN_SIM_FPU.
423
424 * sim-inline.h: Rewrite description.
425 (H_REVEALS_MODULE_P, C_REVEALS_MODULE_P): Define.
426 (SIM_MAIN_INLINE): Add inline option.
427
428 * sim-inline.c (semantics.c, idecode.c, engine.c, ...): Do not
429 include generated files. Handled by generator directly.
430
431 Sat Apr 4 01:07:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
432
433 * sim-trace.c (set_trace_option_mask): Keep TRACE_ANY_P
434 up-to-date.
435
436 * sim-trace.h (TRACE_ANY_P): Define.
437 (struct _trace_data): Add trace_any_p.
438
439 Mon Mar 30 17:11:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
440
441 * run.c (main): Handle all alternatives of enum sim_stop.
442 (main): Delete unused `asection *s'.
443
444 Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
445
446 * hw-tree.h, hw-tree.c (hw_tree_vparse): New function
447
448 * configure: Regenerated to track ../common/aclocal.m4 changes.
449
450 * sim-hw.c: New file.
451 * sim-hw.h (sim_hw_parse): Declare function.
452 (hw-tree.h): Do not include.
453
454 * sim-base.h (STATE_HW): Define.
455 (struct sim_state_base): Add member struct *hw.
456
457 * sim-module.c (sim-hw.h): Include.
458 (modules): Add sim_hw_install.
459
460 * aclocal.m4 (sim_hw_obj): Add sim-hw.o
461
462 Fri Mar 27 14:55:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
463
464 * sim-base.h (CPU_INDEX): Define.
465
466 * sim-utils.c (sim_state_alloc): Initialize.
467 * sim-module.c (sim_post_argv_init): Ditto.
468
469 Thu Mar 26 10:07:57 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
470
471 * aclocal.m4 (sim_hw_obj): Fix sed expression to generate
472 properly formatted lists.
473
474 Thu Mar 26 10:37:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
475
476 * dv-pal.c (enum hw_pal_address_mask): From Stu Grossman, was
477 0x2f needs to be 0x3f.
478
479 Thu Mar 26 09:10:56 1998 Andrew Cagney <cagney@b1.cygnus.com>
480
481 * hw-tree.c (hw_tree_find_property): Return NULL when device is
482 not found.
483 (hw_tree_find_*_property): Clean up error message when property is
484 not found.
485
486 * dv-pal.c (hw_pal_io_read_buffer): Check the smp property is
487 present before looking for it.
488
489 Wed Mar 25 16:17:38 1998 Ian Carmichael <iancarm@cygnus.com>
490
491 * aclocal.m4 (AC_CHECK_HEADERS): Add check for fpu_control.h.
492 (AC_CHECK_FUNCS): Add check for __setfpucw.
493 * configure: Regenerated.
494
495 Wed Mar 25 09:18:34 1998 Andrew Cagney <cagney@b1.cygnus.com>
496
497 * dv-pal.c (hw_pal_countdown, hw_pal_countdown_value,
498 hw_pal_timer, hw_pal_timer_value): Define.
499 (hw_pal_io_read_buffer, hw_pal_io_write_buffer): Add timer support
500 (do_counter_event, do_counter_read, do_counter_value,
501 do_counter_write): new functions.
502
503 Tue Mar 24 12:24:24 1998 Andrew Cagney <cagney@b1.cygnus.com>
504
505 * hw-tree.c (hw_printf): Send tree dump to stderr, same as other
506 trace output.
507
508 * hw-base.c (hw_create): Stop searching for a device when one is
509 found.
510
511 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
512
513 * configure: Regenerated to track ../common/aclocal.m4 changes.
514
515 Mon Mar 23 10:25:08 1998 Andrew Cagney <cagney@b1.cygnus.com>
516
517 * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Add second argument,
518 appends extra devices.
519 (SIM_AC_OPTION_HARDWARE): Substute sim_hw, a non-duplicate list of
520 the device names.
521
522 * Make-common.in (hw-config.h): New target, create hw-config.h
523 file.
524 (SIM_HW): Definition from @sim_hw@.
525 (hw-base.o): Depend on hw-config.h
526
527 Tue Mar 24 17:41:35 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
528
529 * Make-common.in: Get SHELL from configure.
530 * (stamp-tvals sim-inline.c): Use $(SHELL) when invoking
531 move-if-change. Fixes NT native build problem.
532 * Makefile.in (nltvals.def): Use $(SHELL) when invoking
533 move-if-change. Fixes NT native build problem.
534 * configure: Regenerate with autoconf 2.12.1 to fix shell issues for
535 NT native builds.
536
537 Sun Mar 22 16:54:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
538
539 * hw-device.h, hw-device.c (hw_strdup): New function.
540
541 * hw-base.c (hw_create): Use hw_strdup when saving a copy of the
542 strings name, family and args.
543 (full_name_of_hw): Use hw_strdup when returning the full path.
544
545 * hw-properties.c: Clean up property not found / wrong type error
546 messages.
547
548 * hw-tree.c (hw_tree_parse): Finish a devices initialization
549 before attaching any ports.
550
551 * hw-base.c (hw-config.): Include. Replace hardwired table.
552
553 * dv-glue.c: Copy over ../ppc/hw_glue.c. Update to new framework.
554
555 * Make-common.in: Add rule for dv-glue.o.
556
557 Sun Mar 22 16:45:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
558
559 * hw-base.c (hw_finish): Move setting of trace level to here.
560 (hw_create): From here.
561
562 * hw-base.h, hw-base.c (do_hw_attach_regs): Copy function from
563 ../ppc/device_table.c.
564
565 * dv-pal.c (hw_pal_finish): Attach PAL device to parent bus.
566
567 * hw-tree.c (print_properties): Supress path when printing
568 properties of root node.
569
570 Sun Mar 22 16:21:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
571
572 * hw-device.h (HW_TRACE): Define.
573 (hw_trace): Declare.
574 * hw-device.c (hw_trace): Implement function.
575
576 * hw-base.c (hw_create): Set hw trace level from "trace?"
577 property.
578
579 * dv-core.c (dv_core_attach_address_callback): Add trace.
580
581 * dv-pal.c: Replace DTRACE with HW_TRACE.
582
583 Sun Mar 22 15:23:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
584
585 * hw-device.h (HW_ZALLOC, HW_MALLOC): New macros.
586 (hw_alloc_data): Delcare.
587 (struct hw): Add member alloc_of_hw.
588
589 * hw-device.c (hw_zalloc, hw_malloc, hw_free, hw_free_all): New
590 functions. Assocate memory with a device.
591 (stdlib.h): Include.
592
593 * hw-base.h (set_hw_delete): Define.
594 (hw_delete_callback): Declare.
595 (hw_delete): Declare.
596
597 * hw-base.c (hw_delete): Implement function.
598 (struct hw_base_data): Add member to_delete.
599 (ignore_hw_delete): New function, does nothing.
600 (hw_create): Set the hw_delete method.
601 (hw_create): Allocate the base type using HW_ZALLOC before setting
602 any methods.
603
604 * hw-tree.h, hw-tree.c (hw_tree_delete): New function.
605
606 * hw-properties.c: Replace zalloc/zfree with hw_zalloc/hw_free.
607
608 * hw-ports.c: Replace zalloc/zfree with hw_zalloc/hw_free.
609 (attach_hw_port_edge): Add struct hw argument
610
611 * dv-pal.c (hw_pal_finish): Replace zalloc/zfree with
612 hw_zalloc/hw_free.
613
614 Sun Mar 22 15:09:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
615
616 * hw-device.h (hw_attach_address_callback,
617 hw_detach_address_callback): Attach to a single space not a space
618 mask. Clarify interpretation of SPACE:ADDR parameters.
619
620 * hw-base.c (passthrough_hw_attach_address,
621 passthrough_hw_detach_address): Update.
622 * dv-core.c (dv_core_attach_address_callback): Ditto.
623 * dv-pal.c (hw_pal_attach_address): Ditto.
624
625 Thu Mar 19 00:41:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
626
627 * sim-options.h: Document additional CPU arg to OPTION_HANDLER.
628
629 Wed Mar 18 14:13:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
630
631 * Make-common.in (SIM_HW_OBJS, SIM_HW_SRC, SIM_DV_OBJS): Define.
632 (hw-base_h, hw-device_h, hw-handles_h, hw-instances_h, hw_ports_h,
633 hw-properties_h, hw-tree_h): Define, point at corresponding
634 header.
635 (hw_base_headers): Define list of headers included by hw-base.h
636 (hw-base.o, hw-device.o, hw-instances.o, hw-handles.o, hw-ports.o,
637 hw-properties.o, hw-tree.o): Specify dependencies.
638 (dv-core.o, dv-pal.o): Ditto.
639
640 * sim-hw.h: New file.
641
642 * hw-device.h, hw-device.c, hw-properties.h, hw-properties.c,
643 hw-ports.h, hw-ports.c: New files. Copied from ../ppc/device.[ch].
644
645 * hw-tree.h, hw-tree.c: New files. Copied from ../ppc/tree.[hc].
646
647 * hw-base.h, hw-base.c: new files. Copied from
648 ../ppc/device_table.[hc].
649
650 * dv-core.c, dv-pal.c: New files. Copied from
651 ../ppc/hw_{core,pal}.c
652
653 * sim-basics.h (struct hw): Declare.
654 (enum port_direction, enum object_disposition): Declare.
655
656 Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
657
658 * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Set sim_hw_obj, sim_dv_obj,
659 sim_dv_src in Makefile. Take list of devices as parameter to m4
660 macro..
661
662 * configure: Regenerated to track ../common/aclocal.m4 changes.
663
664 Mon Mar 16 12:37:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
665
666 * sim-trace.h, sim-trace.c (trace_prefix): Pass in sim_cia so that
667 trace_prefix can abort cleanly.
668
669 Sat Mar 14 18:36:12 1998 Doug Evans <devans@seba.cygnus.com>
670
671 * dv-sockser.c, dv-sockser.h: New files.
672 * Make-common.in (dv-sockser.o): Add rule for.
673 * aclocal.m4: Check for fcntl.h.
674 * config.h: Add HAVE_FCNTL_H.
675
676 * sim-break.c (remove_breakpoint): Fix thinko.
677
678 * sim-hload.c (sim_load): Provide default value of SIM_HANDLES_LMA.
679 Use SIM_HANDLES_LMA for lma_p arg to sim_load_file.
680
681 1998-03-13 Fred Fish <fnf@cygnus.com>
682
683 * sim-base.h (struct sim_state_base): Add prog_syms and
684 define macro STATE_PROG_SYMS.
685 * sim-trace.c (trace_prefix): Add variables abfd, symsize,
686 symbol_count, and asymbols. Call bfd_get_symtab_upper_bound
687 and bfd_canonicalize_symtab, to get symbol table on first use
688 and preserve it via STATE_PROG_SYMS for future calls to
689 bfd_find_nearest_line.
690
691 Wed Mar 11 14:02:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
692
693 * sim-core.h, sim-core.c (sim_core_map_to_str): Delete.
694
695 * sim-core.c (sim_core_attach): Handle a generic number of maps -
696 up to nr_maps, not just access_* maps.
697
698 * sim-profile.h (struct PROFILE_DATA): Track nr_maps different
699 maps.
700
701 * sim-profile.c (profile_print_core): Make map unsigned. Iterate
702 over nr_maps not sim_core_nr_maps.
703
704 * sim-events.h, sim-events.c (sim_events_watch_core): Change
705 core_map argument to unsigned.
706 (struct _sim_core): Ditto for struct member core_map.
707
708 * sim-core.h (nr_sim_core_maps, sim_core_*_map): Delete
709
710 * sim-basics.h (access_io, access_*_io): Define.
711 (map_read, map_write, map_exec, map_io): Define.
712
713 * sim-core.c, sim-core.h (sim_core_attach): Replace argument
714 attach with more generic mapmask.
715 (sim_core_{read,write}_*): Change map argument to unsigned.
716
717 * sim-core.c (sim_core_uninstall, sim_core_attach,
718 sim_core_detach): Iterate over nr_maps instead of
719 sim_core_nr_maps.
720
721 * sim-break.c (insert_breakpoint): Write breakpoints to exec_map
722 instead of the write_map.
723 (remove_breakpoint): Ditto.
724
725 * genmloop.sh (engine_resume_full): Replace sim_core_*_map
726 with read_map, write_map, exec_map resp.
727
728 * cgen-mem.h (DECLARE_GETMEM, DECLARE_SETMEM, DECLARE_GETIMEM):
729 Ditto.
730
731 * cgen-utils.c (sim_disassemble_insn): Ditto.
732
733 * sim-hrw.c (sim_write, sim_write): Ditto.
734
735 * sim-utils.h, sim-utils.c (access_to_str, map_to_str,
736 transfer_to_str): New functions.
737
738 Mon Mar 9 12:50:59 1998 Doug Evans <devans@seba.cygnus.com>
739
740 * sim-base.h (sim_state_base): New member environment.
741 (STATE_ENVIRONMENT): New macro.
742 * sim-config.c (current_environment): Delete.
743 (sim_config_default): New function.
744 (sim_config): Set STATE_ENVIRONMENT, not current_environment.
745 * sim-config.h (current_environment,CURRENT_ENVIRONMENT): Delete.
746 (sim_config_default): Add prototype.
747 * sim-module.c (sim_pre_argv_init): Call sim_config_default.
748 * sim-options.c (standard_option_handler, case OPTION_ENVIRONMENT):
749 Set STATE_ENVIRONMENT, not current_environment.
750
751 Mon Mar 9 11:59:03 1998 Jim Wilson <wilson@cygnus.com>
752
753 * sim-fpu.c (NR_GUARDS64): Change NR_PAD32 to NR_PAD64.
754
755 Tue Mar 3 10:53:05 1998 Andrew Cagney <cagney@b1.cygnus.com>
756
757 * sim-types.h (SIGNED32, SIGNED64): Pacify GCC.
758
759 * sim-alu.h (ALU64_BEGIN): Make alu64_r unsigned.
760
761 Mon Mar 2 10:20:06 1998 Doug Evans <devans@seba.cygnus.com>
762
763 * Make-common.in (TAGS): Make smarter.
764 * Makefile.in (TAGS): Ditto.
765
766 Fri Feb 27 19:09:57 1998 Doug Evans <devans@canuck.cygnus.com>
767
768 * sim-module.c (*): Fix typos in assertion tests.
769
770 Sat Feb 28 13:54:10 1998 Andrew Cagney <cagney@b1.cygnus.com>
771
772 * sim-module.c (sim_pre_argv_init): String passed to asprintf
773 can't be constant.
774
775 * sim-options.c (sim_parse_args): Ditto.
776 (sim_args_command): Return OK, instead of nothing, for an empty
777 command.
778
779 Fri Feb 27 13:29:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
780
781 * sim-profile.c (profile_info): Rename from profile_print. Drop
782 misc and misc_cpu callback arguments. Use
783 PROFILE_INFO_CPU_CALLBACK and STATE_PROFILE_INFO_CALLBACK instead.
784 (profile_install): Install profile_info function.
785
786 * sim-profile.h (PROFILE_INFO_CPU_CALLBACK,
787 STATE_PROFILE_INFO_CALLBACK): Define.
788 (struct PROFILE_DATA): Add field info_cpu_callback.
789 (profile_print): Delete function.
790
791 * sim-base.h (STATE_MODULES): Define. Replace individual
792 STATE_*_LIST with single struct module_list.
793
794 * sim-module.h (MODULE_INFO_FN, MODULE_INFO_LIST): Declare.
795 (struct module_list): Declare.
796
797 * sim-module.h, sim-module.c (sim_module_add_info_fn,
798 sim_module_info): New functions.
799 (sim_module_install): Clean up module data structures.
800
801 * sim-info.c (sim_info): New file. New function. Call
802 sim_module_info.
803
804 * Make-common.in (sim-info.o): Define rule.
805 (SIM_NEW_COMMON_OBJS): Add sim-info.o.
806
807
808 Fri Feb 27 18:26:16 1998 Doug Evans <devans@canuck.cygnus.com>
809
810 * sim-base.h (sim_cpu_base): New members name, options.
811 (sim_cpu_lookup): Add prototype.
812 * sim-module.c (sim_pre_argv_init): Provide default names for cpus.
813 * sim-options.h (DECLARE_OPTION_HANDLER): New argument `cpu'.
814 (sim_add_option_table): Update prototype.
815 * sim-options.c (sim_add_option_table): New argument `cpu'.
816 (standard_option_handler,standard_install): Update.
817 (sim_parse_args): Handle cpu specific options.
818 (print_help): New static function.
819 (sim_print_help): Call it. Print cpu specific options.
820 (find_match): New static function.
821 (sim_args_command): Call it. Handle cpu specific options.
822 * sim-utils.c (sim_cpu_lookup): New function.
823 * sim-memopt.c (memory_option_handler): Update.
824 (sim_memopt_install): Update.
825 * sim-model.c (model_option_handler): Update.
826 (model_install): Update.
827 * sim-profile.c (profile_option_handler): Update.
828 (profile_install): Update.
829 * sim-trace.c (trace_option_handler): Update.
830 (trace_install): Update.
831 * sim-watch.c (watchpoint_option_handler): Update.
832 (sim_watchpoint_install): Update.
833 * cgen-scache.c (scache_option_handler): Update.
834 (scache_install): Update.
835
836 Wed Feb 25 11:00:26 1998 Doug Evans <devans@canuck.cygnus.com>
837
838 * Make-common.in (check): Run `make check' in testsuite dir.
839
840 Wed Feb 25 14:40:24 1998 Andrew Cagney <cagney@b1.cygnus.com>
841
842 * sim-trace.c (trace_result0): New function.
843
844 * sim-trace.h (TRACE_FP_*, TRACE_FPU_*): Rename TRACE_FPU_*
845 macro's to TRACE_FP_*. TRACE_FPU_* should be defined and used when
846 tracing sim_fpu variables.
847 (TRACE_ALU_RESULT0): Define.
848 (TRACE_FP_RESULT_WORD): Define.
849 (TRACE_FP_INPUT_WORD1): Define.
850
851 * sim-fpu.c, sim-fpu.h (sim_fpu_max32, sim_fpu_max64, sim_fpu_one,
852 sim_fpu_two): New constants.
853 (sim_fpu_op1, sim_fpu_op2): New types.
854 (struct _sim_fpu): Delete member result. Re-order other members.
855 (sim_fpu_sign, sim_fpu_exp): New functions.
856 (sim_fpu_max, sim_fpu_min): new functions.
857 (EXPMAX32, EXPMAX64, NR_PAD32, NR_PAD64, NR_GUARDS32, NR_GUARDS64,
858 NORMAL_EXPMAX32, NORMAL_EXPMAX64): Define.
859
860 Tue Feb 24 22:45:39 1998 Doug Evans <devans@seba.cygnus.com>
861
862 * sim-profile.c (profile_print): Delete duplicate test of
863 PROFILE_INSN_IDX.
864 (profile_print_pc): Exit early if data collection not set up.
865 (profile_print_core): Simplify by calling sim_core_map_to_str.
866 * sim-core.h (sim_core_map_to_str): Declare.
867 * sim-core.c (sim_core_map_to_str): Make non-static.
868
869 * genmloop.sh (engine_resume): Update insn_count before exiting.
870 (engine_resume_full): Keep accurate core profile data.
871
872 * cgen-utils.c (sim_disassemble_insn): Don't use
873 sim_core_read_aligned_N, it messes up profiling results.
874
875 Mon Feb 23 20:45:57 1998 Mark Alexander <marka@cygnus.com>
876
877 * nltvals.def: Regenerate with MN10300 additions.
878
879 Tue Feb 24 13:18:42 1998 Andrew Cagney <cagney@b1.cygnus.com>
880
881 * sim-trace.h (TRACE_ALU_RESULT2): Define.
882
883 * sim-trace.h, sim-trace.c (trace_result_word2,
884 trace_input_word4, trace_result_word4): New function.
885
886 Mon Feb 23 13:08:35 1998 Doug Evans <devans@canuck.cygnus.com>
887
888 * cgen-sim.h (SEM_NEXT_PC): New arg `len'.
889
890 * sim-xcat.h: Delete.
891 * cgen-mem.h: Delete inclusion of sim-xcat.h.
892 * cgen-sim.h: Ditto.
893 * sim-alu.h: Replace sim-xcat.h with symcat.h.
894 * sim-n-bits.h: Ditto.
895 * sim-n-core.h: Ditto.
896 * sim-n-endian.h: Ditto.
897
898 Mon Feb 23 13:19:58 1998 Michael Meissner <meissner@cygnus.com>
899
900 * syscall.c (cb_syscall): Handle short reads, and EOF.
901
902 Tue Feb 24 00:29:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
903
904 * sim-trace.c (print_data): case trace_fmt_fp missing break. Use
905 sim_fpu to safely print fp_word values.
906 (print_data): Add trace_fmt_bool and trace_fmt_addr.
907 (trace_result_bool1, trace_result_addr1): New functions.
908 (trace_input_bool1, trace_input_addr1): New functions.
909
910 * sim-trace.h (TRACE_FPU_*): Define.
911
912 Mon Feb 23 13:24:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
913
914 * sim-fpu.h (enum sim_fpu_class): Add sim_fpu_class_denorm.
915 (sim_fpu_fpto, sim_fpu_tofp): Define.
916
917 Fri Feb 20 18:08:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
918
919 * sim-fpu.c (sim_fpu_cmp): New function.
920
921 Wed Feb 18 16:29:21 1998 Doug Evans <devans@canuck.cygnus.com>
922
923 * cgen-utils.h (sim_disassemble_insn): Use CGEN_INSN_BITSIZE
924 instead of abuf->length.
925 * sim-trace.c (trace_options): Have -t only trace a few useful things.
926 (set_trace_option_mask): Renamed from set_trace_options.
927 (set_trace_option): New function.
928 (trace_option_handler): Update calls to set_trace_option{,_mask}.
929 * sim-trace.h (TRACE_USEFUL_MASK): New macro.
930
931 Wed Feb 18 12:42:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
932
933 * sim-basics.h: Declare struct _sim_fpu.
934
935 Tue Feb 17 16:27:46 1998 Andrew Cagney <cagney@b1.cygnus.com>
936
937 * sim-trace.h (TRACE_ALU_INPUT*, TRACE_ALU_RESULT): Define.
938 (trace_prefix, trace_input*, trace_result*): Declare.
939 (trace_one_insn): Change declaration, assume trace_prefix called.
940 (trace_generic): Like trace_one_insn.
941 (TRACE_ALU_IDX, TRACE_*_IDX): Change #define's to enum.
942 (TRACE_alu, TRACE_[a-z]*): Update.
943
944 * sim-trace.c (trace_prefix, trace_input*, trace_result*,
945 trace_insn, save_data, trace_idx_to_str, print_data): New
946 functions.
947 (trace_one_insn): Rewrite.
948 (trace_generic): New function.
949
950 Tue Feb 17 17:27:30 1998 Doug Evans <devans@seba.cygnus.com>
951
952 * Make-common.in (CGEN_MAIN_SCM): Update.
953 * aclocal.m4 (USE_MAINTAINER_MODE): New variable.
954
955 * cgen-sim.h (SEMANTIC_CACHE_FN): Delete.
956 (SEMANTIC_FN): Rewrite declaration.
957 (DECODE): Update type of semantic_fast member.
958 ({EX,SEM}_FN_NAME): Have only one version.
959 * cgen.sh: Support building cpu.c.
960 * sim-base.h (sim_state_base): Delete conditionals surrounding
961 member scache_size.
962
963 Tue Feb 10 18:31:49 1998 Andrew Cagney <cagney@b1.cygnus.com>
964
965 * sim-load.c (sim_load_file): Print LMA/VMA according to value
966 used.
967
968 Tue Feb 10 14:56:23 1998 Ian Carmichael <iancarm@cygnus.com>
969
970 * sim-core.c: Add missing prototypes for WITH_DEVICES.
971 Add missing parameters to device_io calls.
972 * sim-core.h: Add missing parameters to device_io calls.
973
974 Mon Feb 9 14:48:37 1998 Doug Evans <devans@canuck.cygnus.com>
975
976 * cgen-sim.h (DECODE): Always use switch for `read' for now.
977 (PAREXEC): Renamed from PARALLEL_EXEC. All uses updated.
978 (SEMANTIC{,_CACHE}_FN): Fix return type.
979 * cgen.sh (decode): Add s/@arch@/$arch/.
980 * genmloop.sh (@cpu@_engine_run): Delete `current_state'.
981 (engine_resume): Likewise. Make `engine' volatile. Save copy
982 of cpu pointer in volatile object. Initialize read switch if
983 -parallel.
984
985 Thu Feb 5 13:27:04 1998 Doug Evans <devans@seba.cygnus.com>
986
987 * cgen-sim.h (EX_FN_NAME): _exc_ -> _ex_.
988 (SEM_INSN): New macro.
989
990 Tue Feb 3 16:31:56 1998 Andrew Cagney <cagney@b1.cygnus.com>
991
992 * sim-run.c (sim_engine_run): Assume IMEM is 32 bit.
993
994 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
995
996 * configure: Regenerated to track ../common/aclocal.m4 changes.
997
998 Sun Feb 1 16:16:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
999
1000 * sim-types.h (fp_word): New type, define according to
1001 WITH_TARGET_FLOATING_POINT_BITSIZE.
1002
1003 * aclocal.m4 (default_sim_floating_point_bitsize): Add
1004 configuration of size of floating point registers.
1005
1006 Sun Feb 1 14:02:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
1007
1008 * sim-profile.c (profile_print): Only print CPU <N> if other
1009 output is going to appear.
1010
1011 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
1012
1013 * configure: Regenerated to track ../common/aclocal.m4 changes.
1014
1015 Sat Jan 31 18:03:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
1016
1017 * sim-types.h (address_word): Typedef according to
1018 WITH_TARGET_ADDRESS_BITSIZE.
1019 (signed_cell, unsigned_cell, natural_cell): Ditto using
1020 WITH_TARGET_CELL_BITSIZE.
1021
1022 * sim-config.h (WITH_TARGET_ADDRESS_BITSIZE): Define.
1023 (WITH_TARGET_CELL_BITSIZE): Define.
1024 (WITH_HOST_WORD_BITSIZE): Delete.
1025
1026 * sim-config.c (print_sim_config): Update.
1027
1028 * aclocal.m4 (SIM_AC_OPTION_BITSIZE): Add support for
1029 configuration of address and OpenFirmware cell sizes.
1030
1031 Fri Jan 30 09:36:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
1032
1033 * sim-engine.h (sim_engine_run): Add argument nr_cpus.
1034 * sim-run.c (sim_engine_run): Update.
1035
1036 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use SET_CPU_CIA instead of
1037 CPU_CIA.
1038 * sim-run.c (sim_engine_run): Ditto.
1039
1040 * sim-resume.c (sim_resume): Obtain nr_cpus from sim_engine.
1041 (sim_resume): Pass nr_cpus to sim_engine_run.
1042
1043 * sim-engine.h (struct _sim_engine): Add member nr_cpus.
1044
1045 * sim-engine.c (sim_engine_init): Hardwire nr_cpus to
1046 MAX_NR_PROCESSORS.
1047 (sim_engine_nr_cpus) sim-engine.c, sim-engine.h: New function
1048
1049 Thu Jan 29 12:13:01 1998 Doug Evans <devans@canuck.cygnus.com>
1050
1051 * cgen.sh: Portably read parms past $9.
1052
1053 Fri Jan 23 14:20:54 1998 Doug Evans <devans@seba.cygnus.com>
1054
1055 * Make-common.in (stamp-tvals): New rule.
1056 (targ-vals.h,targ-map.c): Depend on it.
1057 (clean): Remove stamp-tvals.
1058
1059 Tue Jan 20 21:35:13 1998 Michael Meissner <meissner@cygnus.com>
1060
1061 * sim-utils.c (sim_state_alloc): #if 0 variable that is only used
1062 in code also #if 0'ed.
1063
1064 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
1065
1066 * configure: Regenerated to track ../common/aclocal.m4 changes.
1067 * aclocal.m4: Recognize --enable-maintainer-mode.
1068
1069 Mon Jan 19 12:45:45 1998 Doug Evans <devans@seba.cygnus.com>
1070
1071 start-sanitize-cygnus
1072 * Make-common.in (cgen-{arch,cpu,decode}): New targets.
1073 * cgen.sh: New file.
1074 end-sanitize-cygnus
1075 * cgen-scache.h: Deleted.
1076 * Make-common.in (cgen-run.o,cgen-scache.o): Delete cgen-scache.h dep.
1077 (CGEN_CPU_SCM): Add sim-model.scm.
1078 * cgen-scache.c: Only compile contents if WITH_SCACHE.
1079 (scache_init): Use runtime computed size of SCACHE.
1080 (scache_flush): Likewise.
1081 * cgen-mem.h (GETIMEMU[QHSD]I): Declare.
1082 ([GS]ETT{QI,UQI,HI,UHI,SI,USI,DI,UDI}): Declare.
1083 * cgen-sim.h: Scache support moved here.
1084 (PC): Redo definition.
1085 (ARGBUF,SCACHE,PARALLEL_EXEC): Provide forward decls.
1086 (DECODE): Add parallel execution support.
1087 Only include semantic label members if using switch.
1088 (SWITCH,CASE,BREAK,DEFAULT,ENDSWITCH): Portable computed goto support.
1089 (CGEN_CPU): Delete members exec_state, halt_sigrc, halt_jmp_buf.
1090 (IADDR,CIA,SEM_ARG,EX_FN_NAME,SEM_FN_NAME,RECORD_IADDR,SEM_ARGBUF,
1091 SEM_NEXT_PC,SEM_BRANCH_VIA_{CACHE,ADDR},SEM_NEW_PC_ADDR): Moved here
1092 from cgen-types.h.
1093 (engine_{stop,run,resume,halt,signal}): Delete decls.
1094 * cgen-types.h (CGEN_{XCAT3,CAT3}): Delete.
1095 (argbuf,scache): Delete forward decls.
1096 (STATE): Delete decl.
1097 * cgen-utils.c: Don't include decode.h, mem-ops.h, sem-ops.h.
1098 Include cgen-mem.h, cgen-ops.h.
1099 (engine_halt,engine_signal): Delete.
1100 ({ex,exc,sem,semc}_illegal): Delete.
1101 (sim_disassemble_insn): Result of extract fn is in bits.
1102 * genmloop.sh: Rewrite.
1103
1104 * cgen-trace.c (trace_insn): Set printed_result_p=0 if not tracing
1105 line numbers.
1106
1107 * sim-base.h (sim_state_base): Delete member `model'.
1108 (sim_cpu_base): Add member `model'.
1109 * sim-model.h (IMP_PROPERTIES): New type.
1110 (MACH): New members imp_props, models.
1111 (models): Delete decl.
1112 * sim-model.c (set_model): Update.
1113 * sim-profile.c (profile_print_model): Update.
1114
1115 * sim-utils.c (sim_state_alloc): Delete setting of cpu backlink here.
1116
1117 Fri Jan 16 12:33:09 1998 Nick Clifton <nickc@cygnus.com>
1118
1119 * cgen-trace.c (trace_insn): Call CGEN_INSN_MNEMONIC() rather than
1120 CGEN_INSN_SYNTAX().
1121
1122 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1123
1124 * configure: Regenerated to track ../common/aclocal.m4 changes.
1125 * config.in: Ditto.
1126
1127 Mon Dec 15 23:16:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
1128
1129 * aclocal.m4 (AR): Check for sigaction.
1130
1131 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
1132
1133 * Make-common.in (sim-core.o): Depend on $(sim_main_headers).
1134
1135 * sim-config.h (WITH_TREE_PROPERTIES): Define as 0.
1136 * sim-config.c (sim_config): Replace WITH_DEVICES with
1137 WITH_TREE_PROPERTIES.
1138
1139 * configure: Regenerated to track ../common/aclocal.m4 changes.
1140
1141 Wed Dec 3 17:56:02 1997 Doug Evans <devans@canuck.cygnus.com>
1142
1143 * Make-common.in (SIM_ENVIRONMENT): New variable.
1144 (CONFIG_CFLAGS): Add it.
1145 * aclocal.m4 (SIM_AC_OPTION_ENVIRONMENT): Handle
1146 --enable-sim-environment option.
1147 * configure: Regenerated.
1148 * sim-config.h (environment support): Rewrite.
1149 * sim-config.c (current_environment): Define as enum, unconditionally.
1150 (current_alignment): Define unconditionally.
1151 (config_environment_to_a): Update.
1152 (config_alignment_to_a): Fix type of argument. Define unconditionally.
1153 (sim_config): Handle environment and alignment determination
1154 unconditionally. Delete sanity checks of current_environment,
1155 unnecessary.
1156 (print_sim_config): Update.
1157 * sim-options.c (STANDARD_OPTIONS enum): Add OPTION_ENVIRONMENT.
1158 (standard_options): Add --environment.
1159 (standard_option_handler): Likewise.
1160
1161 Fri Nov 28 12:21:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
1162
1163 * sim-alu.h: Add notes on carry vs borrow for subtraction.
1164 (ALU{,8,16,32,64}ADD): Redefine ADD macro as add overflowing.
1165 (ALU{,8,16,32,64}ADDC): Define - add carrying.
1166 (ALU{,8,16,32,64}SUB): Redefine SUB macro as subtract overflowing.
1167 (ALU{,8,16,32,64}SUBB): Define - subtract borrowing.
1168 (ALU{,8,16,32,64}SUBC): Define - tract carrying.
1169 (ALU{,8,16,32,64}ADD_CA, ALU{,8,16,32,64}ADDC_C): Replace single
1170 argument ADD_CA macro with two argument ADDC_C - add carrying with
1171 carry in.
1172 (ALU{,8,16,32,64}SUB_CA, ALU{,8,16,32,64}SUBC_X): Replace single
1173 argument SUB_CA macro with two argument SUBC_X - subtract
1174 carrying, extended.
1175 (ALU{,8,16,32,64}SUBB_B): Define - subtract borrowing with
1176 borrow-in.
1177 (ALU{,8,16,32,64}NEGC, ALU{,8,16,32,64}NEGB): Define.
1178
1179 Sun Nov 30 17:40:57 1997 Michael Meissner <meissner@cygnus.com>
1180
1181 * sim-io.c (sim_io_{syscalls,getstring}): Delete. No longer used.
1182 * sim-io.h (sim_io_syscalls): Delete.
1183
1184 Fri Nov 28 20:10:09 1997 Michael Meissner <meissner@cygnus.com>
1185
1186 * syscall.c (cb_syscall): Add missing else, so write to stdout
1187 isn't doubled.
1188
1189 * sim-alu.h (ALU{,8,16,32,64}_SET_CARRY): Provide macros to import
1190 the carry bit from the CPU's psw.
1191
1192 Fri Nov 28 11:15:05 1997 Doug Evans <devans@canuck.cygnus.com>
1193
1194 * gennltvals.sh: Redo syscall support.
1195 * nltvals.def: Regenerated.
1196
1197 Wed Nov 26 16:49:38 1997 Michael Meissner <meissner@cygnus.com>
1198
1199 * syscall.c (cb_syscall): If writing to stdout or stderr, flush
1200 the stream immediately.
1201
1202 Wed Nov 26 12:32:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1203
1204 * sim-io.c (sim_io_getstring): Delete unused len2.
1205 (sim_io_syscalls): Ditto for sys_errno.
1206
1207 Wed Nov 26 11:18:40 1997 Doug Evans <devans@canuck.cygnus.com>
1208
1209 * syscall.c (cb_syscall): Test CB_SYSCALL struct magic number.
1210
1211 * Make-common.in (run.o): Depend on remote-sim.h.
1212 (nrun.o,sim-hload.o,sim-hrw.o): Likewise.
1213 (sim-io.o,sim-reason.o,sim-resume.o): Likewise.
1214
1215 Tue Nov 25 20:12:46 1997 Michael Meissner <meissner@cygnus.com>
1216
1217 * sim-io.c (sim_io_syscalls): Disable lseek.
1218
1219 Tue Nov 25 00:12:38 1997 Doug Evans <devans@seba.cygnus.com>
1220
1221 start-sanitize-d30v
1222 * gennltvals.sh: Generate syscall values for d30v.
1223 end-sanitize-d30v
1224 * gennltvals.sh: Use libgloss/syscall.h for sparc.
1225 * nltvals.def: Regenerate.
1226
1227 * callback.c (os_stat): Make 3rd arg a host struct stat ptr.
1228 (os_fstat): Likewise. Validate fd argument.
1229 (cb_host_to_target_stat): Delete big_p arg. If HS arg is NULL,
1230 just compute target stat struct length.
1231 * syscall.c: #include "libiberty.h", <sys/types.h>, <sys/stat.h>.
1232 (ENOSYS,ENAMETOOLONG): Provide definitions if missing.
1233 (get_string): Return host errno values so they can be properly
1234 translated later.
1235 (cb_syscall): Likewise.
1236 (cb_syscall, cases open,unlink): Use get_path instead of get_string.
1237 (cb_syscall, case read): Use read_stdin for file descriptor 0.
1238 (cb_syscall, case write): Use write_stderr for file descriptor 2.
1239 (cb_syscall): Add cases for lseek, unlink, stat, fstat, time.
1240 (get_path): New function.
1241
1242 Mon Nov 24 18:56:07 1997 Michael Meissner <meissner@cygnus.com>
1243
1244 * sim-io.c (sim_io_syscalls): New function to provide system call
1245 emulation. Provide exit, open, close, read, write, lseek, and
1246 unlink.
1247 (sim_io_getstring): New function to return a string from a
1248 simulated memory location.
1249
1250 * sim-io.h (sim_io_syscalls): Add declaration.
1251
1252 Mon Nov 24 12:09:59 1997 Doug Evans <devans@seba.cygnus.com>
1253
1254 * sim-core.c (sim_core_signal): Fix spelling error in message.
1255
1256 * sim-hrw.c (sim_read): Use read map, not write map.
1257
1258 * Make-common.in (all): Add .gdbinit.
1259 * gdbinit.in: Add dump command.
1260
1261 * sim-model.c (model_options): Use '\0' for `shortopt'.
1262
1263 * sim-trace.c (trace_option_handler): Set state trace file
1264 for --trace-file in addition to cpu's values.
1265 (trace_vprintf): If cpu == NULL, try state's trace file.
1266 (trace_options): Reorganize table, reword some descriptions.
1267
1268 Sun Nov 23 10:57:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1269
1270 * sim-fpu.c (sim_fpu_abs, sim_fpu_neg, sim_fpu_inv), sim-fpu.h:
1271 New functions.
1272
1273 Sat Nov 22 19:16:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
1274
1275 * sim-reason.c (sim_stop_reason): For sim_signalled, return the
1276 signal untranslated, document problem with this.
1277
1278 * nrun.c (main): Check for a prog name of `*step'. If present,
1279 step the simulator instead of allowing it to run free.
1280
1281 * sim-signal.c (SIGQUIT): Define on _MSC_VER hosts.
1282
1283 * Make-common.in (sim_main_headers): Add sim-signal.h.
1284
1285 Fri Nov 21 09:32:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
1286
1287 * sim-signal.c (sim_signal_to_host): Return 0 for SIM_SIGNONE.
1288
1289 Thu Nov 20 20:35:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1290
1291 * sim-signal.h: Start simulator signals at 64 so that host signal
1292 numbers can be detected and reported.
1293
1294 * sim-signal.h (SIM_SIGFPE), sim-signal.h: Add signal.
1295
1296 Wed Nov 19 12:02:41 1997 Doug Evans <devans@seba.cygnus.com>
1297
1298 * callback.c (cb_host_to_target_stat): Fix return values.
1299
1300 * cgen-sim.h (enum_signal_type): Delete.
1301 (engine_signal): Update prototype.
1302 * cgen-utils.c: Don't include <signal.h>.
1303 (sim_signal_to_host): Delete, lives in sim-signal.c now.
1304 (engine_signal): Update.
1305
1306 * sim-utils.c (sim_state_alloc): Call SIM_STATE_ALLOC if defined.
1307 (sim_state_free): Call SIM_STATE_FREE if defined.
1308
1309 * sim-module.c (sim_module_install): Don't leave any modules
1310 installed if one fails to install.
1311
1312 Wed Nov 19 13:25:48 1997 Michael Meissner <meissner@cygnus.com>
1313
1314 * sim-options.c: Don't include ../libiberty/alloca-conf.h any
1315 more, since alloca is not used in this file.
1316
1317 * sim-alu.h (ALU{32,64}_*): Rewrite 32 and 64 bit ALU support to
1318 correctly set the carry and overflow bits for those types.
1319 (ALU{8,16,32,64}_{ADD,SUB}_CA): Take VAL argument to add along
1320 with carry, so carry is correct after doing both adds.
1321 (ALU*): Space out '\' to make it easier to read.
1322
1323 Tue Nov 18 15:53:45 1997 Doug Evans <devans@canuck.cygnus.com>
1324
1325 * sim-core.c (sim_core_signal): Use sim_stopped instead of
1326 sim_signalled.
1327
1328 * sim-signal.c, sim-signal.h: New files.
1329 * Make-common.in (sim-signal.o): Add rule for.
1330 (SIM_NEW_COMMON_OBJS): Add sim-signal.o.
1331 * sim-abort.c: Don't include <signal.h>.
1332 * sim-basics.h: #include "sim-signal.h".
1333 * sim-break.c: Don't include <signal.h>.
1334 (sim_handle_breakpoint): Replace SIGTRAP with SIM_SIGTRAP.
1335 * sim-core.c: Don't include <signal.h>.
1336 (SIGBUS): Delete definition.
1337 (sim_core_signal): Replace SIGSEGV,SIGBUS with SIM_SIGSEGV,SIM_SIGBUS.
1338 * sim-engine.c: Don't include <signal.h>.
1339 (sim_engine_abort): Replace SIGABRT with SIM_SIGABRT.
1340 * sim-reason.c (sim_stop_reason): Call sim_signal_to_host.
1341 * sim-resume.c: Don't include <signal.h>.
1342 (SIGTRAP): Delete definition.
1343 (has_stepped): Replace SIGTRAP with SIM_SIGTRAP.
1344 * sim-stop.c: Don't include <signal.h>.
1345 (control_c_simulation): Replace SIGINT with SIM_SIGINT.
1346 * sim-watch.c: Don't include <signal.h>.
1347 (handle_watchpoint): Replace SIGINT with SIM_SIGINT.
1348
1349 * Make-common.in (SIM_NEW_COMMON_OBJS): New variable.
1350
1351 * sim-base.h (CIA_ADDR): Provide default definition.
1352 * sim-core.c (sim_core_signal): Use CIA_ADDR to fetch value.
1353 * sim-break.c (sim_handle_breakpoint): Likewise.
1354
1355 Mon Nov 17 14:15:31 1997 Doug Evans <devans@seba.cygnus.com>
1356
1357 * Make-common.in (srccom): New variable.
1358
1359 * Make-common.in (DEP, COMMON_DEP_CFLAGS): Define.
1360 (LIB_OBJS): Add syscall.o.
1361 (gentmap): Pass $(NL_TARGET) to $(CC).
1362 (syscall.o): Add rule for.
1363 (sim_main_headers): Add $(SIM_EXTRA_DEPS).
1364 (sim-bits.o): Depend on $(sim-n-bits_h).
1365 (sim-load.o): Depend on callback.h.
1366
1367 * Make-common.in (cgen-*.o): Update dependencies, mem-ops.h renamed to
1368 cgen-mem.h, sem-ops.h renamed to cgen-ops.h.
1369 * cgen-mem.h, cgen-ops.h: New files.
1370
1371 * aclocal.m4 (--enable-sim-scache): Pass -DWITH_SCACHE=0 for "=no".
1372
1373 * Makefile.in (nltvals.def): Depend on gennltvals.sh.
1374 Rewrite build rule.
1375 * callback.c: #include string.h or strings.h.
1376 #include sys/types.h and sys/stat.h.
1377 (cb_init_syscall_map,cb_init_errno_map,cb_init_open_map): Declare.
1378 (os_get_errno,os_open): Update.
1379 (os_stat,os_fstat): New functions.
1380 (os_init): Initialize syscall_map, errno_map, open_map.
1381 (default_callback): Add entries for os_stat, os_fstat, syscall_map,
1382 errno_map, open_map, signal_map, stat_map.
1383 (cb_read_target_syscall_maps): New function.
1384 (cb_target_to_host_syscall): New function.
1385 (cb_host_to_target_errno): Renamed from host_to_target_errno.
1386 (cb_target_to_host_open): Renamed from target_to_host_open.
1387 (store): New function.
1388 (cb_host_to_target_stat): New function.
1389 * syscall.c: New file.
1390 * gentmap.c (sys_tdefs): New global.
1391 (gen_targ_vals_h): Output target syscall numbers.
1392 (gen_targ_map_c): Update. Output target syscall translation map.
1393 * gentvals.sh: New first argument `target'. Preface table with
1394 #ifdef NL_TARGET_$target if non-null target passed.
1395 * gennltvals.sh: New file.
1396 * nltvals.def: Regenerated.
1397
1398 Fri Nov 14 11:33:34 1997 Andrew Cagney <cagney@b1.cygnus.com>
1399
1400 * sim-n-core.h (sim_core_read_unaligned_N): Return static
1401 sim_core_dummy_M.
1402 (sim_core_dummy_M): Declare.
1403
1404 Wed Nov 12 18:16:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
1405
1406 * sim-core.c (sim_core_signal): Print the address of the
1407 instruction.
1408
1409 Thu Nov 13 11:49:41 1997 Doug Evans <devans@seba.cygnus.com>
1410
1411 * sim-base.h (sim_state_base): Move `magic' to end of struct.
1412
1413 * sim-base.h (sim_state_base): Add member trace_data.
1414 (STATE_TRACE_DATA): New macro.
1415 * sim-trace.h (TRACE_DEBUG_IDX,TRACE_debug): New macros.
1416 ({WITH_,}TRACE_DEBUG_P): New macros.
1417 (STATE_TRACE_FLAGS,STRACE_P,STRACE_DEBUG_P): New macros.
1418 (_sim_cpu): Delete forward reference.
1419 (debug_printf): Update.
1420 * sim-trace.c (OPTION_TRACE_DEBUG): Define.
1421 (trace_options): Add --trace-debug.
1422 (set_trace_options): Handle it.
1423 (trace_option_handler): Likewise.
1424 (trace_install): Init state trace_data struct.
1425 (trace_uninstall): Close state trace file.
1426 * sim-events.c (ETRACE): Only print source file and line number if
1427 --trace-debug.
1428 * sim-n-core.h (sim_core_trace_M): Likewise.
1429
1430 * sim-core.c (sim_core_signal): Add missing "\n" in message.
1431
1432 1997-11-13 Felix Lee <flee@cygnus.com>
1433
1434 * sim-n-core.h (sim_core_read_unaligned_N): illegal empty
1435 initializer.
1436 * sim-types.h (unsigned128,signed128): fix typo for MSVC.
1437
1438 Wed Nov 12 12:18:08 1997 Doug Evans <devans@canuck.cygnus.com>
1439
1440 * aclocal.m4 (SIM_AC_OPTION_SCACHE): Fix typo.
1441
1442 * Make-common.in (BUILT_SRC_FROM_COMMON): Remove files no longer
1443 built this way.
1444 (sim-config.o): Remove non-existent $(sim-nconfig_h) dependency.
1445 (clean): Don't delete $(BUILT_SRC_FROM_COMMON) if building in
1446 source tree.
1447
1448 Tue Nov 11 13:28:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
1449
1450 * sim-events.c (sim_events_process): Re-compute the time -
1451 update_time_from_event - as each event is processed. Reverses
1452 previous change.
1453
1454 Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
1455
1456 * callback.c (os_poll_quit): Replace _WIN32 with _MSC_VER.
1457
1458 Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
1459
1460 * sim-events.c (sim_events_process): Delete redundant call to
1461 update_time_from_event.
1462 (sim_events_slip): Always decrement time_from_event.
1463 (sim_events_tick, sim_events_deschedule, update_time_from_event):
1464 Delete assertion that time_from_event >=0 when work in queue, no
1465 longer applicable.
1466
1467 Thu Nov 6 12:06:46 1997 Andrew Cagney <cagney@b1.cygnus.com>
1468
1469 * sim-options.c (STANDARD_OPTIONS): Change OPTION_* to an enum.
1470 (standard_option_handler): Update.
1471
1472 * sim-options.h: Clarify documentation.
1473 (OPTION_LONG_ONLY_P): Delete definition.
1474 (OPTION_VALID_P): Define.
1475
1476 * sim-options.c (sim_print_help): Allow short only options.
1477 (sim_parse_args): Ditto.
1478 (sim_args_command): Skip short only options.
1479 (sim_parse_args): Allocate space for NUM_OPTS not just 256. Make
1480 separate entries for short and long options in the HANDLERS and
1481 ORIG_VAL tables.
1482 (sim_parse_args): Disable argument permutation.
1483
1484 Wed Nov 5 13:40:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
1485
1486 * sim-core.h (DECLARE_SIM_CORE_WRITE_N. DECLARE_SIM_CORE_READ_N):
1487 Add argument M, size of data type.
1488 (sim_core_read_misaligned_3, sim_core_write_misaligned_3):
1489 Declare, ditto for 5, 6 & 7 byte transfers.
1490 (sim_core_write_unaligned_1, sim_core_write_unaligned_1): Define
1491 as aligned variant.
1492
1493 * sim-n-core.h (sim_core_trace_M): Rename from
1494 sim_core_trace_N. Add nr_bytes argument. Replace transfer argument
1495 with transfer type. Print transfer direction. Handle 1 and 2 byte
1496 transfers.
1497 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Trace
1498 unaligned accesses.
1499 (unsigned_M, T2H_M, H2T_M): Rename from unsigned_N, T2H_N, H2T_N.
1500 Update all functions.
1501
1502 * sim-core.c: Generate functions starting with 16 not 1.
1503 (sim_core_read_unaligned_3): Generate. Ditto for 3 byte write and
1504 all 5, 6 & 7 byte transfers.
1505
1506 * sim-n-core.h (sim_core_read_misaligned_N,
1507 sim_core_write_misaligned_N): Implement.
1508
1509 Mon Nov 3 15:03:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
1510
1511 * sim-endian.h (U16_8): Implement
1512
1513 * sim-endian.c (sim_endian_split_16, sim_endian_join_16): New functions
1514
1515 * sim-endian.h (VL8_16, VH8_16): Implement.
1516
1517 * sim-memopt.c (memory_option_handler): Typecast 64bit value to
1518 long in printf.
1519 (memory_option_handler): Only zalloc modulo bytes when non-zero.
1520 (memory_option_handler): Skip comma in alias address list
1521
1522 Fri Oct 31 13:03:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
1523
1524 * sim-memopt.c (do_memopt_add, do_memopt_delete): Add level and
1525 space params.
1526 (parse_size, parse_addr): New functions
1527 (memory_option_handler, memory_options): Parse address & size
1528 using new functions. Pass level, space, modulo to do_memopt_add &
1529 do_memopt_del.
1530
1531 * sim-memopt.h (struct _sim_memopt): Add level & space fields.
1532
1533 * sim-core.h (sim_core_arrach, sim_core_detach): Replace
1534 `attach_type attach' argument with `unsigned level' argument.
1535 Document.
1536
1537 * sim-core.c (new_sim_core_mapping, sim_core_map_attach,
1538 sim_core_attach): Replace argument attach with level. Update
1539 verification of arguments.
1540 (sim_core_map_detach, sim_core_detach): Replace argument attach
1541 with level.
1542
1543 * sim-basics.h (enum _attach_type): Delete.
1544
1545 Thu Oct 30 13:45:00 1997 Doug Evans <devans@seba.cygnus.com>
1546
1547 * sim-core.h (sim_core_write_8): Define.
1548
1549 Tue Oct 28 12:29:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1550
1551 * sim-bits.h: Document ROTn macro.
1552
1553 * sim-endian.h (H2T): Handle 16 byte variables.
1554
1555 * sim-n-core.h (sim_core_read_unaligned_N): Return a dummy when an
1556 error.
1557
1558 * sim-core.c: Do not generate sim_core_*_word.
1559
1560 * sim-n-core.h (sim_core_trace_N): Add line_nr argument.
1561 (sim_core_write_aligned_N, sim_core_read_aligned_N): Update.
1562
1563 * sim-core.h (sim_core_read_unaligned_word,
1564 sim_core_read_aligned_word, sim_core_read_word,
1565 sim_core_write_unaligned_word, sim_core_write_aligned_word,
1566 sim_core_write_word): Change to macros that map onto sim_core_*_N.
1567
1568 Mon Oct 27 11:25:10 1997 Doug Evans <devans@canuck.cygnus.com>
1569
1570 * sim-n-endian.h: Add TAGS entrys for 16 byte versions.
1571
1572 * sim-endian.h: Disable 16 byte support.
1573
1574 Mon Oct 27 12:00:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
1575
1576 * sim-endian.c (_SWAP_16): Define. Generate 126 bit swap code.
1577
1578 * sim-n-core.h (sim_core_trace_N): New function.
1579 (sim_core_read_aligned_N, sim_core_write_aligned_N): Use,
1580 (sim_core_read_unaligned_N): Do not retyrn bogus value wden error.
1581
1582 * sim-endian.h: Add 128 bit variant.
1583
1584 * sim-core.h, sim-core.c: Add 128 bit variant.
1585
1586 * sim-types.h: Add signed128 and unsigned128 types using a struct.
1587
1588 Fri Oct 24 11:33:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
1589
1590 * sim-events.c (sim_events_process): Clear events->work_pending.
1591 (sim_events_tickn, sim_events_tick): Accumulate, instead of
1592 setting, nr_ticks_to_process.
1593 (sim_events_preprocess): Allow nr_ticks_to_process to be non-zero
1594 when the event queue isn't next.
1595
1596 * sim-events.h, sim-events.c (sim_events_slip): New function.
1597
1598 Wed Oct 22 14:18:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1599
1600 * sim-hload.c (sim_load): Pass lma_p==0 and do_load=sim_load.
1601
1602 * sim-utils.h, sim-load.c (sim_load_file): Add lma_p and do_load
1603 arguments.
1604
1605 Tue Oct 21 18:37:57 1997 Doug Evans <devans@canuck.cygnus.com>
1606
1607 * nrun.c (main): Remove useless test of name != NULL.
1608 Exit if bfd_openr fails. Call bfd_check_format after bfd_openr.
1609
1610 Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1611
1612 * sim-fpu.c (EXPMAX): Type is unsigned.
1613 (MIN_INT, MAX_INT): Type is signed64.
1614 (i2fpu): Type of val is signed64.
1615
1616 Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1617
1618 * sim-profile.h (PROFILE_PC_BUCKET_SIZE): Treat a shift of zero as
1619 a bucket size of zero.
1620
1621 * sim-profile.c (OPTION_PROFILE_PC_GRANULARITY,
1622 OPTION_PROFILE_PC): Define.
1623 (profile_option_handler): Add support for --profile-pc and
1624 --profile-pc-granularity options.
1625 (profile_pc_init): When possible, compute nr buckets from bucket
1626 size.
1627
1628 * sim-profile.c (profile_pc_init): Align the profile-pc end
1629 address with the profile-pc bucket size.
1630
1631 * sim-profile.h (PROFILE_PC_NR_BUCKETS): Rename PROFILE_PC_SIZE to
1632 something less ambiguous.
1633 (PROFILE_PC_BUCKET_SIZE): Ditto for PROFILE_PC_SAMPLE_SIZE.
1634
1635 * sim-profile.c (profile_pc_cleanup): New function. Move
1636 profile_pc_uninstall code to here.
1637 (profile_pc_uninstall): Call.
1638 (profile_pc_init): Call.
1639
1640 Mon Oct 20 17:23:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
1641
1642 * sim-profile.c (profile_print_pc): Dump pc profile to dmon.out
1643 file using BSD gprof format.
1644
1645 * sim-bits.h (LSBIT, MSBIT, BIT): Force result to type
1646 unsigned_word.
1647 (LSBIT8, LSBIT16, LSBIT32, LSBIT64, MSBIT8, MSBIT16, MSBIT32,
1648 MSBIT64): Force result to unsignedN.
1649
1650 Thu Oct 16 11:38:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
1651
1652 * sim-alu.h (ALU16_BEGIN, ALU32_BEGIN, ALU64_BEGIN): Drop opening
1653 brace from macro.
1654 (ALU8_BEGIN, ALU8_SET, ALU8_ADD, ALU8_SUB, ALU8_NEGATE): Define.
1655 (ALU16_ADD, ALU16_SUB, ALU16_NEGATE): Simplify arrithmetic.
1656 (ALU32_ADD, ALU32_SUB, ALU32_NEGATE): Simplify arrithmetic.
1657 (ALU64_ADD, ALU64_SUB, ALU64_NEGATE): Simplify arrithmetic.
1658
1659 Wed Oct 15 09:24:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
1660
1661 * sim-core.h (struct _sim_core_mapping): Change free_buffer to
1662 type void*.
1663
1664 * sim-core.c (sim_core_uninstall, new_sim_core_mapping,
1665 sim_core_map_attach, sim_core_map_detach): Change free_buffer to
1666 type void*.
1667 (sim_core_attach): Rename buffer_freed to free_buffer, type
1668 void*. Ensure that allocated buffer is alligned according to
1669 region's address.
1670
1671 Mon Oct 13 11:34:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
1672
1673 * sim-alu.h (ALU64_HAD_OVERFLOW): Define.
1674 (ALU64_SUB): Define.
1675
1676 * Make-common.in (all): Build SIM_EXTRA_ALL first.
1677 (.gdbinit): Remove dependencies, generate once per build.
1678
1679 Tue Oct 14 19:20:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
1680
1681 * sim-n-core.h (sim_core_read_aligned_N,
1682 sim_core_write_aligned_N): Make xaddr param type address_word not
1683 unsigned_word.
1684
1685 Fri Oct 3 09:49:18 1997 Andrew Cagney <cagney@b1.cygnus.com>
1686
1687 * sim-fpu.h, sim-fpu.c: Rewrite. Change sim_fpu object to an
1688 unpacked floating point struct. Pass sim_fpu object by reference.
1689 Add preliminary support for rounding modes.
1690
1691 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1692
1693 * configure: Regenerated to track ../common/aclocal.m4 changes.
1694
1695 Thu Oct 2 19:43:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
1696
1697 * aclocal.m4 (sim-bitsize): Fix typo, WITH_TARGET_WORD_BITSIZE not
1698 WITH_TARGET_BITSIZE.
1699
1700 Thu Sep 25 23:20:20 1997 Felix Lee <flee@yin.cygnus.com>
1701
1702 * sim-profile.c (profile_print_core): label needs empty statement.
1703
1704 Thu Sep 25 11:20:47 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
1705
1706 * sim-break.c (sim_set_breakpoint sim_clear_breakpoint): Use ZALLOC
1707 and zfree instead of xmalloc and free. Prevents warnings.
1708
1709 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
1710
1711 * configure: Regenerated to track ../common/aclocal.m4 changes.
1712
1713 Wed Sep 24 17:23:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
1714
1715 * Make-common.in (SIM_BITSIZE): Assign from configured value.
1716 (CONFIG_CFLAGS): Add SIM_BITSIZE.
1717
1718 * aclocal.m4 (--enable-sim-bitsize): Developer option for
1719 controling the bitsize/msb of the target.
1720
1721 Wed Sep 24 17:41:40 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
1722
1723 * Make-common.in: New files sim-break.c, sim-break.h.
1724 * sim-base.h: Add point to breakpoint list to sim_state_base.
1725 * sim-break.c sim-break.h: New modules that implement intrinsic
1726 breakpoint support.
1727 * sim-module.c: Add breakpoint module.
1728
1729 Tue Sep 23 00:26:39 1997 Felix Lee <flee@yin.cygnus.com>
1730
1731 * sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
1732 an hour.
1733 * sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
1734 if (0) { 1 % 0; }
1735 * sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
1736 (SIGBUS) define for Windows.
1737 * sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
1738 * sim-resume.c: define SIGTRAP for windows.
1739 * sim-xcat.h: use token pasting if ALMOST_STDC.
1740
1741 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1742
1743 * Make-common.in (SIM_SCACHE, SIM_DEFAULT_MODEL): Assign
1744 configured values.
1745 (CONFIG_CFLAGS): Add same.
1746
1747 Mon Sep 22 17:20:27 1997 Felix Lee <flee@cygnus.com>
1748
1749 * sim-types.h (SIGNED64): ##i64 when _MSC_VER, not _WIN32.
1750 (SIGNED32): use ##i32.
1751
1752 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1753
1754 * configure: Regenerated to track ../common/aclocal.m4 changes.
1755
1756 Tue Sep 23 10:07:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
1757
1758 * aclocal.m4 (sim-endian): Simplify logic determining [default]
1759 endian of target.
1760
1761 * Make-common.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
1762 SIM_HOSTENDIAN, SIM_RESERVED_BITS, SIM_ASSERT, SIM_FLOAT,
1763 SIM_HARDWARE, SIM_INLINE, SIM_PACKAGES, SIM_REGPARM, SIM_SMP,
1764 SIM_STDCALL, SIM_XOR_ENDIAN): Assign configured values.
1765 (CONFIG_CFLAGS): Add same.
1766
1767 * aclocal.m4: Perform AC_SUBST on optional options.
1768
1769 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1770
1771 * sim-config.h (WITH_DEFAULT_ALIGNMENT): Don't hardwire any alignment.
1772
1773 * sim-options.c (standard_option_handler): Typo in warning message.
1774
1775 * sim-base.h (STATE_MODEL): Make conditional on SIM_HAVE_MODEL.
1776
1777 * sim-profile.c (profile_print_insn): Check 0 .. MAX_INSN for any
1778 insn count. Make count conditional on there being a valid
1779 INSN_NAME.
1780 (profile_pc_init): Make default PC profile frequency an arbitrary
1781 256.
1782
1783 * sim-base.h: Ditto.
1784
1785 * sim-profile.h (WITH_PROFILE_MODEL_P): Only enable modeling when
1786 SIM_HAVE_MODEL.
1787
1788 * sim-model.h (struct MACH): Depreciate, to be replaced by bfd
1789 archure struct.
1790
1791 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1792
1793 * configure: Regenerated to track ../common/aclocal.m4 changes.
1794
1795 Mon Sep 22 11:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1796
1797 * aclocal.m4 (sim_alignment): Simplify logic for selecting the
1798 configured alignment.
1799
1800 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
1801
1802 * configure: Regenerated to track ../common/aclocal.m4 changes.
1803
1804 Fri Sep 19 17:26:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
1805
1806 * sim-config.c (sim_config): Check for default alignment.
1807
1808 * sim-options.c (standard_option_handler): Add alignment option.
1809
1810 * aclocal.m4 (sim_alignment): Allow configuration of hardwired and
1811 default alignment requirements on memory accesses.
1812
1813 Fri Sep 19 11:51:35 1997 Jeffrey A Law (law@cygnus.com)
1814
1815 * sim-load.c (sim_load_file): Return failure if the executable
1816 had no loadable sections.
1817
1818 Wed Sep 17 13:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1819
1820 * sim-events.c (ETRACE): Use trace_printf not sim_io_printf for
1821 trace output.
1822
1823 * sim-core.c (sim_core_signal): When bad access halt simulator
1824 SIGSEGV / SIGBUS instead of aborting.
1825 (signal.h): Include.
1826
1827 * sim-watch.c (sim_watchpoint_install): Handler for watchpoint
1828 options was missing.
1829
1830 * sim-bits.h (MOVED): Define
1831
1832 Wed Sep 17 10:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1833
1834 * sim-alu.h (ALU32_HAD_OVERFLOW): Pacify GCC, Use MSBIT instead of
1835 BIT.
1836
1837 * sim-bits.h (LSBIT, MSBIT): Check for overflow of shift value.
1838
1839 * sim-bits.c: Add 8 bit versions of bit macros.
1840
1841 * sim-bits.h: Ditto.
1842
1843 Tue Sep 16 16:15:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
1844
1845 * sim-bits.c (LSSEXT, MSSEXT): Replace SEXT.
1846 (LSINSERTED, MSINSERTED): Ditto for INSERTED.
1847
1848 * sim-n-bits.h (MSSEXTn, LSSEXTn): Replace SEXTn.
1849 (LSINSERTDn, MSINSERTEDN): Ditto for INSERTEDn.
1850
1851 * sim-bits.h (SEXT*): Define as MSEXT/LSEXT.
1852 (INSERTED*): Ditto for LSINSERTED/MSINSERTED.
1853
1854 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
1855
1856 * aclocal.m4 (SIM_AC_COMMON): Add optional config.h file argument.
1857 configure.in: Output to cconfig.h instead of config.h.
1858
1859 * configure: Regenerated to track ../common/aclocal.m4 changes.
1860
1861 Mon Sep 15 15:39:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1862
1863 * sim-utils.c (sim_analyze_program): Set STATE_ARCHITECTURE from
1864 BFD if known.
1865
1866 Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
1867
1868 * callback.c (os_write): divert stdout and stderr to their
1869 respective hooks.
1870
1871 Thu Sep 11 10:08:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
1872
1873 * sim-profile.c (profile_print_speed): Call
1874 sim_events_elapsed_time instead of PROFILE_EXEC_TIME for moment.
1875
1876 * sim-events.c (sim_events_elapsed_time): New function return nr
1877 host MS consumed by the simulator.
1878 (sim_watch_valid): Use.
1879
1880 * sim-module.c (modules): Install sim_events very very early.
1881
1882 * sim-profile.c (profile_print): Call profile_print_pc.
1883 (print_bar):
1884 (profile_pc_init): New function, set up processor for PC
1885 profiling.
1886 (profile_print_pc): New function, print a PC profile.
1887 (profile_pc_event): New function, sample PC.
1888
1889 * sim-profile.h (PROFILE_PC_COUNT, PROFILE_PC_START,
1890 PROFILE_PC_END, PROFILE_PC_SHIFT, PROFILE_PC_SAMPLE_SIZE): Add to
1891 profile struct.
1892
1893 * sim-options.c (sim_print_help): Pacify GCC.
1894
1895 * sim-n-core.h (sim_core_read_aligned_N,
1896 sim_core_write_aligned_N): Add un-conditional profile call.
1897 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Add
1898 profile call when aligned read/write isn't used.
1899
1900 * sim-base.h: Include sim-profile, sim-model after sim-core &
1901 sim-events allow sim-core to define useful values.
1902
1903 * sim-profile.c (OPTION_PROFILE_CORE): Define.
1904 (profile_option_handler, profile_options): Add support for
1905 --profile-core option.
1906 (print_bar): Include when core profiling.
1907 (profile_print_core): New function, print core profile.
1908
1909 * sim-config.c (print_sim_config): Print profile status.
1910
1911 * sim-profile.h (PROFILE_NEXT_IDX, PROFILE_core,
1912 WITH_PROFILE_PC_P): Define.
1913 (PROFILE_CORE_COUNT): Count each core-map/size separatly.
1914 (PROFILE_COUNT_CORE): Define.
1915
1916 Thu Sep 11 08:44:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
1917
1918 * sim-watch.c (handle_watchpoint): Pass a char** index into the
1919 interrupt_names array as the data.
1920 (sim-watch.h): Document.
1921
1922 Wed Sep 10 16:15:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1923
1924 * sim-options.c (sim_print_help): When the doc string is to long
1925 word wrap it.
1926
1927 * sim-watch.c (sim_watchpoint_install): Use option.doc_name so
1928 that only the first few the watch options are listed. Generate
1929 meanginful usage messages.
1930
1931 * sim-options.h (struct OPTION): Clarify use of doc_name field
1932
1933 Wed Sep 10 13:23:24 1997 Andrew Cagney <cagney@b1.cygnus.com>
1934
1935 * sim-options.c (OPTION_ARCHITECTURE_INFO): New option.
1936 (standard_option_handler): Handle --architecture-info.
1937
1938 Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
1939
1940 * sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
1941 illegal zero-sized array.
1942 * sim-core.c (sim_core_xor_read_buffer): same.
1943
1944 Tue Sep 9 11:20:35 1997 Doug Evans <dje@canuck.cygnus.com>
1945
1946 * nltvals.def: Regenerate.
1947
1948 Tue Sep 9 02:10:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
1949
1950 * sim-fpu.c (DP_FRACHIGH2): Define LL using SIGNED64.
1951
1952 Mon Sep 8 12:22:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1953
1954 * sim-bits.c (MASKED): Delete.
1955 (EXTRACTED): Delete.
1956 (LSEXTRACTED, MSEXTRACTED): New functions.
1957
1958 * sim-n-bits.h (MASKEDn): Delete, define as MSMASKED or LSMASKED.
1959 (MSMASKEDn, LSMASKEDn): Add last argument.
1960 (MSMASK*): Ditto.
1961
1962 * sim-bits.h (EXTEND8, EXTEND16): Define.
1963 (EXTRACTED64): Define as 64 bit extract, not 32 bit.
1964
1965 * sim-run.c (sim_engine_run): Use CPU_CIA macro.
1966
1967 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use CPU_CIA to get at
1968 current instruction address.
1969
1970 * sim-inline.h (*_ENGINE): Define.
1971
1972 Fri Sep 5 08:39:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
1973
1974 * sim-core.c (sim_core_attach): Fix checks of modulo/mask.
1975
1976 * sim-watch.c (delete_watchpoint): Delete by ident and type.
1977 (watch_option_handler): Call delete_watchpoint with ident or type.
1978 (sim_watchpoint_install): Create interrupt specific watchpoint
1979 commands on the fly.
1980 (do_watchpoint_create): New function, create a watch point using
1981 type/int-nr info encoded in the option nr.
1982 (do_watchpoint_info): New function. List active watchpoints.
1983
1984 * sim-watch.h: Change data structure to a list.
1985
1986 * sim-memopt.c (memory_option_handler): Require explicit "all"
1987 before deleting all memory regions.
1988
1989 * sim-utils.c (sim_do_commandf): New function, printf version of
1990 sim_do_command.
1991
1992 * sim-basics.h (asprintf, vasprintf): Hack, define for CYGWIN32.
1993
1994 * sim-alu.h (ALU64_ADD): Use explicit MSEXTRACTED64, do not assume
1995 bit endianness.
1996 (SIGNED64, UNSIGNED64): Delete.
1997 (ALU64_ADD): Don't rely on bit endianness.
1998 (ALU64_BEGIN): Define.
1999
2000 * sim-n-bits.h (MSEXTRACTEDn, LSEXTRACTED): New functions.
2001 (EXTRACTEDn): Delete, define as either LSEXTRACTED or MSEXTRACTED.
2002
2003 * sim-types.h (SIGNED64, UNSIGNED64): New macros, attach relevant
2004 suffix - u64, LL - to 64 bit constants.
2005
2006 Thu Sep 4 09:27:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2007
2008 * sim-config.c (sim_config): Add assert for SIM_MAGIC_NUMBER.
2009
2010 * sim-utils.h (NZALLOC): Define - zalloc * N.
2011
2012 * sim-hrw.c (sim_read, sim_write): New file. Provide generic
2013 implementation of read/write functions.
2014
2015 * Make-common.in (sim-hrw.o): New target.
2016
2017 * sim-base.h (STATE_MEMOPT_P): Delete, simulators _always_ add
2018 memory.
2019
2020 * sim-memopt.c (memory_option_handler): Implement memory-size
2021 command. Implement memory-alias command. Let memory-delete delete
2022 all memory regions.
2023 (add_memopt): New function. Add a memory region.
2024 (do_memopt_delete): New function. Delete a memory region.
2025
2026 * sim-utils.c (sim_elapsed_time_get): Never return zero.
2027
2028 * sim-core.c (sim_core_detach): New function.
2029 (sim_core_map_detach): New function. Perform the actual detach.
2030 (sim_core_init): Move initialization code from here.
2031 (sim_core_install): To here.
2032 (sim_core_uninstall): And here.
2033
2034 * sim-module.c: Add memopt module.
2035
2036 * sim-base.h (STATE_MEMOPT, STATE_MEMOPT_P): Add memopt to
2037 simulator base type.
2038
2039 * Make-common.in (sim_main_headers): Add sim-memopt.h
2040 (sim-memopt.o): New target.
2041
2042 * sim-core.c (sim_core_install): Add core_options to the option
2043 table.
2044
2045 * sim-watch.c (watch_options): Make --delete-watch a synonym for
2046 --watch-delete.
2047
2048 * sim-config.h (WITH_MODULO_MEMORY): Define as 0. Update
2049 comments.
2050
2051 * sim-core.h (struct _sim_core_mapping): Change nr_bytes to type
2052 address_word, add mask member.
2053
2054 * sim-core.h, sim-core.c (sim_core_attach): Make nr_bytes of type
2055 address_word, allow for 64bit targets in 32bit host. Add modulo
2056 argument.
2057 (sim_core_map_attach): Ditto.
2058 (new_sim_core_mapping): Ditto.
2059 (sim_core_translate): Mask address when modulo memory.
2060
2061 Wed Sep 3 17:32:54 1997 Doug Evans <dje@seba.cygnus.com>
2062
2063 * sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
2064
2065 * gdbinit.in: New file.
2066 * aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
2067 * Make-common.in (distclean): Delete .gdbinit.
2068 (.gdbinit): Add rule for.
2069 * configure: Regenerated to track ../common/aclocal.m4 changes.
2070
2071 * Make-common.in (cgen-run.o): Add rule for.
2072
2073 Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2074
2075 * sim-resume.c (sim_resume): Suspend/resume the simulator.
2076
2077 * sim-events.c (sim_watch_valid): Compute total elapsed time from
2078 both resumed and previous elapsed time.
2079 (sim_events_init): Set initial_wallclock and current_wallclock to
2080 zero.
2081 (sim_events_install): Install sim_events_suspend and
2082 sim_events_resume.
2083 (sim_events_watch_clock): Allow for suspended simulator when
2084 computing the time of the clock event.
2085
2086 * sim-events.h (struct _sim_event): Add resume_wallclock, rename
2087 initial_wallclock to elapsed_wallclock, set both to zero.
2088 (sim_events_init, sim_events_uninstall): Delete prototypes.
2089
2090 * sim-module.h (MODULE_SUSPEND_FN, MODULE_RESUME_FN): Define types.
2091
2092 * sim-module.c(sim_module_resume, sim_module_suspend): New
2093 functions.
2094
2095 Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2096
2097 * sim-core.c (sim_core_map_attach): Clarify memory overlap error
2098 message.
2099
2100 Tue Sep 2 14:57:06 1997 Doug Evans <dje@canuck.cygnus.com>
2101
2102 * Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
2103 * Make-common.in (TAGS): Likewise.
2104 * sim-n-bits.h: Add TAGS comments for all functions.
2105 * sim-n-core.h: Likewise.
2106 * sim-n-endian.h: Likewise.
2107
2108 Mon Sep 1 10:50:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
2109
2110 * sim-utils.c (sim_state_alloc): Set CPU backlinks, callback and
2111 kind.
2112
2113 * sim-base.h (sim_state_alloc): Add callback and kind arguments.
2114
2115 * sim-base.h (INVALID_INSTRUCTION_ADDRESS): Add default
2116 definition.
2117
2118 Sat Aug 30 09:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2119
2120 * sim-fpu.c (DP_GARDMSB, ...): Make unsigned.
2121 (DP_FRACHIGH, DP_FRACHIGH2, ..): Use MSMASK to avoid LL.
2122
2123 Fri Aug 29 13:37:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
2124
2125 * sim-core.c (sim_core_map_attach): Cast attach enum to int.
2126 (sim_core_xor_read_buffer, sim_core_xor_write_buffer): Make
2127 nr_transfered and nr_this_transfer unsigned.
2128
2129 * sim-events.c (sim_events_tickn): N is signed, as limited to
2130 MAXINT.
2131
2132 * sim-n-endian.h (offset_N): Change size to unsigned.
2133
2134 * callback.c (os_poll_quit): Add prototypes for kbhit and getkey.
2135
2136 Fri Aug 29 10:10:53 1997 Andrew Cagney <cagney@b1.cygnus.com>
2137
2138 * sim-utils.c (sim_copy_argv): Delete, replaced by dupargv.
2139
2140 * sim-options.c (sim_parse_args): Use dupargv.
2141
2142 Thu Aug 28 10:36:34 1997 Doug Evans <dje@canuck.cygnus.com>
2143
2144 * sim-options.c (standard_option_handler): Use xstrdup, not strdup.
2145
2146 Thu Aug 28 12:09:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
2147
2148 * sim-base.h (STATE_ARCHITECTURE, STATE_TARGET): Add to simulator
2149 base type.
2150
2151 * sim-options.c (standard_options): Add --architecture=MACHINE and
2152 --target=TARGET options.
2153 (OPTION_ARCHITECTURE, OPTION_TARGET): Define.
2154 (standard_option_handler): Handle architecture and target options.
2155 (bfd.h): Include.
2156
2157 * sim-utils.c (sim_analyze_program): Pass STATE_TARGET to
2158 bfd_openr.
2159 (sim_analyze_program): Set prog_bfd architecture from
2160 STATE_ARCHITECTURE if known.
2161
2162 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2163
2164 * configure: Regenerated to track ../common/aclocal.m4 changes.
2165 * config.in: Ditto.
2166
2167 Wed Aug 27 18:11:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
2168
2169 * aclocal.m4 (enable-sim-warnings): Remove comment stating
2170 that option does not apply to certain files.
2171
2172 Wed Aug 27 15:13:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
2173
2174 * sim-bits.h (LSBIT8, LSBIT16, LSBIT32, LSBIT64, LSBIT, MSBIT8,
2175 MSBIT16, MSBIT32, MSBIT64, MSBIT): New macros - single bit as
2176 offset from MSB/LSB.
2177
2178 * sim-endian.h (A1_8, A2_8, A4_8, A1_4, A2_4, A1_2): New macro,
2179 access address of sub word quantity of a hosts 16, 32, 64 bit word
2180 type.
2181 (V1_2, V1_4, V2_4, V1_8, V2_8, V4_8): Ditto for values.
2182 (U8_1, U8_2, U8_4, U4_1, U4_2, U2_1): Ditto for set of values.
2183 (V2_H1, V2_L1, V4_H2, V4_L2, V8_L4, V8_H4): Given N byte argument,
2184 return N*2 byte value with argument in Hi/Lo word. Renamed from
2185 V1_H2, V1_L2, V2_H4, V2_L4, V4_H8, V4_L8.
2186
2187 * sim-alu.h (ALU32_HAD_OVERFLOW): Use 64 bit mask not 32bit.
2188 (ALU16_HAD_CARRY, ALU32_HAD_CARRY, ALU16_HAD_OVERFLOW): Use MSBIT
2189 so that bit offset is explicit.
2190
2191 Wed Aug 27 11:55:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
2192
2193 * sim-utils.c (sim_analyze_program): Add prog_name argument.
2194 Update STATE_PROG_BFD when needed with a dup'd copy of the
2195 program.
2196
2197 * sim-config.c (sim_config): Delete ABFD argument, use
2198 STATE_PROG_BFD directly.
2199
2200 Tue Aug 26 12:55:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
2201
2202 * run.c (main): Pass the open ABFD to sim_create_inferior.
2203
2204 * nrun.c (main): Determine prog_bfd. Pass to sim_create_inferior
2205 and sim_load.
2206 (bfd.h): Include.
2207
2208 * sim-hload.c (sim_load): New file. Implement generic sim_load for
2209 hardware only simulator targets.
2210
2211 * Make-common.in (sim-hload.o): Add rule.
2212
2213 Wed Aug 27 09:51:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
2214
2215 * sim-utils.c (sim_copy_argv): Rewrite to match malloc strategy
2216 used by copyargv and freeargv.
2217
2218 * sim-options.c (sim_parse_args): Save a copy of PROG-ARGS in
2219 STATE_PROG_ARGV, not just a pointer.
2220
2221 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2222
2223 * configure: Regenerated to track ../common/aclocal.m4 changes.
2224 * config.in: Ditto.
2225
2226 Mon Aug 25 12:11:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
2227
2228 * aclocal.m4 (sim-endian): Add second argument to
2229 SIM_AC_OPTION_ENDIAN. First is hardwired endian, second is
2230 default endian when not hardwired.
2231
2232 * sim-config.h (WITH_DEFAULT_TARGET_BYTE_ORDER): New macro, if all
2233 else failes value for target byte order.
2234
2235 * sim-config.c (sim_config): Add abfd arguments. Set
2236 STATE_PROG_BFD accordingly. Determine prefered_target_byte_order
2237 from same.
2238 (sim_config): Return SIM_RC, don't abort.
2239 (bfd.h): Include.
2240
2241 * run.c (main): Update call to sim_open - add ABFD argument.
2242 * nrun.c (main): Add NULL ABFD argument.
2243
2244 Thu Aug 14 12:48:57 1997 Doug Evans <dje@canuck.cygnus.com>
2245
2246 * callback.c (os_poll_quit): Make static.
2247 Call sim_cb_eprintf, not p->eprintf.
2248 (sim_cb_printf, sim_cb_eprintf): New functions.
2249 * sim-utils.h (sim_cb_printf, sim_cb_eprintf): Declare.
2250
2251 * sim-basics.h (zalloc,zfree,sim_add_commas,SIM_ELAPSED_TIME,
2252 sim_elapsed_time_get,sim_elapsed_time_since): Move decls to
2253 sim-utils.h. #include sim-utils.h.
2254 * sim-utils.h: Above decls moved here.
2255 (sim_analyze_program,sim_load_file): Use `struct _bfd', not `bfd'.
2256
2257 * sim-watch.c (action_watchpoint): Fix thinkos.
2258
2259 Thu Jul 24 08:48:05 1997 Stu Grossman (grossman@critters.cygnus.com)
2260
2261 * sim-types.h: Fix defs of 64 bit data types for MSVC.
2262
2263 Tue Jul 22 10:35:37 1997 Doug Evans <dje@canuck.cygnus.com>
2264
2265 * sim-n-core.h (sim_core_write_unaligned_N): Add missing break
2266 to FORCED_ALIGNMENT case.
2267
2268 Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
2269
2270 * callback.c (target_to_host_open): Handle hosts with O_BINARY.
2271
2272 Thu Jun 5 08:47:10 1997 Jeffrey A Law (law@cygnus.com)
2273
2274 * Make-common.in (libsim.a): Fix typo.
2275
2276 Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
2277
2278 * nrun.c (main): Verify the structure returned before using it.
2279
2280 Wed Jun 4 11:44:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
2281
2282 * sim-config.h (WITH_ENGINE): Enable the sim-engine module by
2283 default.
2284
2285 * sim-engine.c (sim_engine_install): New function. Install the
2286 engine init functions.
2287 (sim_engine_init): [Re]initialize the simulator engine.
2288
2289 * sim-module.c: Add sim_engine to list of modules that always
2290 install.
2291
2292 Tue Jun 3 04:52:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
2293
2294 * sim-watch.c (schedule_watchpoint): Use sim_unschedule_watchpoint
2295 to remove the old watchpoint, not delete_watchpoint.
2296 (watch_option_handler): Action the correct watchpoint, not just
2297 cycles.
2298
2299 Wed May 28 14:47:41 1997 Andrew Cagney <cagney@b1.cygnus.com>
2300
2301 * sim-n-core.h (sim_core_write_aligned_N): For 8byte reads, output
2302 both low and high word.
2303 (sim_core_write_aligned_N): Ditto.
2304
2305 * sim-trace.c (set_trace_options): Delete code explicitly setting
2306 core->trace.
2307
2308 * sim-options.c (sim_print_help): Call the list commands if not a
2309 standalone simulator.
2310 (sim_print_help): Advise that some options may not be applicable.
2311
2312 * sim-trace.c (set_trace_options): Assume core present.
2313
2314 * sim-events.c (sim_events_schedule_after_signal): Overflow signal
2315 buffer when full not almost full.
2316
2317 Tue May 27 14:32:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
2318
2319 * sim-events.c (sim_events_process): Don't blat the event queue
2320 when processing watchpoints.
2321
2322 * sim-watch.h: Make arg unsigned long - stop sign extension.
2323
2324 * sim-events.c (sim_watch_valid): rewrite so debugable.
2325
2326 * sim-config.h (WITH_XOR_ENDIAN): Default to zero.
2327
2328 * sim-watch.c (schedule_watchpoint): Add is_within option so that
2329 inequality test is possible.
2330 (handle_watchpoint): Re-pass is_within arg.
2331 (watch_option_handler): When `!' prefix to pc-watchpoint arg pass
2332 0 to schedule_watchpoint's is_within arg.
2333 (sim_watchpoint_init): Re-pass is_within arg.
2334
2335 * sim-options.c (sim_print_help): Add is_command argument. Don't
2336 include -- prefix when called from the command line interpreter.
2337
2338 * sim-watch.c (schedule_watchpoint): Pass true is_within argument.
2339
2340 * sim-events.c (sim_events_watch_sim): Add is_within argument,
2341 zero indicates that the test should be reversed.
2342 (sim_events_watch_core): Ditto.
2343 (WATCH_CORE): Compare range against is_within.
2344 (WATCH_SIM): Ditto.
2345
2346 Tue May 27 12:48:03 1997 Andrew Cagney <cagney@b2.cygnus.com>
2347
2348 * sim-events.c (WATCH_CORE): Pass NULL cpu argument to
2349 sim_core_read_buffer. Check nr-bytes transfered.
2350
2351 * sim-core.h (sim_core_common): Define a new struct that contains
2352 the common data. to sd and cpu structures.
2353 * sim-core.c (sim_core_attach): Update.
2354 (sim_core_init): Update. Remember to copy initialized data to each
2355 cpu.
2356 (sim_core_find_mapping): Ditto.
2357
2358 * sim-core.c (sim_core_read_buffer): Add cpu argument.
2359 (sim_core_write_buffer): Ditto.
2360
2361 * sim-n-core.h (sim_core_read_unaligned_N): When mis-aligned
2362 transfer use xor version of read buffer.
2363 (sim_core_write_unaligned_N): Ditto for write.
2364
2365 * sim-core.c (sim_core_xor_read_buffer): New function implement
2366 xor-endian data read breaking transfer up into xor-endian sized
2367 blocks.
2368 (sim_core_xor_write_buffer): Ditto for write.
2369 (reverse_n): Reverse order of arbitrary number of bytes in buffer
2370 - needed for xor-endian transfers.
2371
2372 Fri May 23 14:24:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
2373
2374 * sim-inline.h: Review description.
2375
2376 * sim-core.h, sim-core.c: Reduce number of functions being inlined
2377 to just those involved in data transfers and configuration.
2378
2379 * sim-xcat.h (XSTRING): New macro, map macro definition onto
2380 string.
2381 * sim-n-core.h (sim_core_read_aligned_N): Use.
2382 (sim_core_read_unaligned_N): Ditto.
2383 (sim_core_read_unaligned_N): Ditto..
2384 (sim_core_write_unaligned_N): Ditto.
2385
2386 * sim-core.h: Add xor endian bitmap to main structure. *
2387
2388 sim-n-core.h (sim_core_write_aligned_N): Add suport for xor
2389 endian.
2390 (sim_core_read_aligned_N): Ditto.
2391
2392 * sim-core.c (sim_core_set_xor_endian): New function.
2393 (sim_core_attach): Don't overwrite the per-cpu xor map when
2394 cloning the global core.
2395
2396 Fri May 23 10:53:13 1997 Andrew Cagney <cagney@b1.cygnus.com>
2397
2398 * sim-engine.h: Update below so that it is using an enumerated
2399 type.
2400
2401 Thu May 22 09:12:16 1997 Gavin Koch <gavin@cygnus.com>
2402
2403 * sim-engine.c (sim_engine_restart):
2404 * sim-resume.c (sim_resume): Change longjmp param/setjmp
2405 return value used for simulator restart from 0 to 2.
2406
2407 Wed May 21 08:47:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
2408
2409 * cgen-scache.c (scache_option_handler): Add is_command arg.
2410
2411 * sim-model.c (model_option_handler): Add is_command argument.
2412
2413 * sim-profile.c (profile_option_handler): Add is_command arg.
2414
2415 * sim-events.c (sim_watch_valid): Use ub64, lb64 when 64bit value
2416 involved.
2417
2418 * sim-module.c (sim_module_add_init_fn): Call init fn in the same
2419 order that they are registered.
2420
2421 * sim-options.h (OPTION_HANDLER): Add argument to differentiate
2422 between option and command line processing.
2423
2424 * sim-options.c: Include stdlib.h, ctype.h.
2425
2426 * Make-common.in (sim-watch.o): Add rule.
2427 (sim_main_headers): Assume sim-assert.h included.
2428 (sim-*.o): Simplify make rule.
2429
2430 * sim-module.c: Add sim_watch_install to module list.
2431
2432 Tue May 20 14:15:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
2433
2434 * sim-base.h (STATE_LOADED_P): New predicate. Set once everything
2435 has been loaded.
2436
2437 * sim-trace.c (trace_install): Check magic. Include sim-assert.h.
2438 * sim-events.c (sim_events_install): Ditto.
2439 * sim-core.c (sim_core_install): Ditto.
2440 * sim-model.c (model_install): Ditto.
2441 * sim-options.c (standard_install): Ditto.
2442 * sim-profile.c (profile_install): Ditto.
2443 * sim-reason.c (sim_stop_reason): Ditto.
2444 * sim-run.c (sim_engine_run): Ditto.
2445 * sim-utils.c (sim_analyze_program): Ditto.
2446
2447 * sim-module.c (modules): Make profile_install and trace_install
2448 optional.
2449
2450 * sim-base.h (STATE_MEM_BASE): Define for flat memory systems.
2451
2452 * sim-options.c (standard_option_handler): Set the byte order.
2453
2454 * sim-events.c (sim_events_process): Allow multi tick processing.
2455 (sim_events_tickn): New function - multi cycle tick.
2456
2457 * sim-events.h (sim_events_tickn, sim_events_timewarp): Add
2458 prototypes. Under development.
2459 (sim_events): Replace processing with nr_ticks_to_process.
2460
2461 Tue May 20 09:39:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2462
2463 * nrun.c (main): Pass callbacks to sim_open instead of using
2464 sim_set_callbacks.
2465
2466 * run.c (main): Ditto.
2467
2468 Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2469
2470 * sim-events.c (sim_events_zalloc): Signal save memory allocator -
2471 stop tk interrupting malloc calls.
2472 (sim_events_zalloc): Converse.
2473
2474 * Make-common.in (sim_main_headers): Add sim-events.h.
2475
2476 * sim-events.c (sim_events_schedule_after_signal): Change return
2477 type to void - signal events are strictly internal.
2478 (sim_events_init): Allocate a finite buffer for signal events.
2479 (sim_events_schedule_after_signal): Enter signal events into the
2480 signal buffer.
2481
2482 * sim-engine.c (sim_engine_halt): Check SIM_DESC magic.
2483 (sim_engine_restart): Ditto.
2484 (sim_engine_abort): Ditto.
2485 * sim-stop.c (sim_stop): Ditto.
2486 (control_c_simulation): Ditto.
2487 * sim-resume.c (sim_resume): Ditto.
2488 (has_stepped): Ditto.
2489 * sim-abort.c (sim_engine_abort): Ditto.
2490
2491 * sim-basics.h (transfer_type): New type.
2492
2493 * sim-core.c (sim_core_signal): New function. Print core signal
2494 information.
2495 (sim_core_find_mapping): Add transfer argument.
2496
2497 * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
2498 SIM_CORE_SIGNAL if a recoverable abort.
2499 * sim-core.c (sim_core_find_mapping): Ditto.
2500
2501 Fri May 16 15:13:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2502
2503 * sim-core.c (sim_core_find_mapping): Replace calls to
2504 sim_io_error to more resiliant sim_engine_abort.
2505
2506 * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
2507 (sim_core_write_unaligned_N): Ditto.
2508
2509 Tue May 13 13:50:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
2510
2511 * sim-module.c: Add sim_events_install to list.
2512
2513 * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
2514 from sim_core_*.
2515 (sim_events_init): Now returns SIG_RC.
2516
2517 * sim-run.c: New file. Generic sim_engine_run.
2518 * sim-reason.c: New file. Generic sim_stop_reason.
2519 * sim-stop.c: New file. Generic sim_stop.
2520 * sim-resume.c: New file. Generic sim_resume.
2521
2522 * Make-common.in (sim-engine.o): Add rule.
2523 (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
2524
2525 * sim-engine.h, sim-engine.c: New file. Provide generic
2526 implementation of sim_engine_halt, sim_engine_error. et.al.
2527
2528 * sim-base.h (sim_state_base): Add member halt.
2529 (sim-engine.h): Include.
2530
2531 * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
2532 handlers.
2533 * sim-events.c (sim_events_poll): Update event handler.
2534
2535 Tue May 13 09:57:49 1997 Andrew Cagney <cagney@b2.cygnus.com>
2536
2537 * sim-events.h, sim-events.c (sim_events_watch_clock): New
2538 function.
2539 (sim_events_watch_sim): New function.
2540 (sim_events_watch_core): New function.
2541 (sim_watch_valid): New function.
2542 (sim_events_preprocess): New function.
2543 (sim_events_process): Process the watchpoints as well as the timer
2544 queue.
2545 (sim_events_tick): Check WORK_PENDING instead of the hold queue.
2546 (sim_events_deschedule): Check all the queues when removing an
2547 event.
2548 (sim_events_init): Ditto for cleaning.
2549
2550 Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2551
2552 * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
2553
2554 Mon May 19 11:23:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
2555
2556 * callback.c (os_open): Type of arg flags is int.
2557
2558 Fri May 16 22:26:43 1997 Michael Meissner <meissner@cygnus.com>
2559
2560 * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
2561 just like normal numbers as per IEEE rules.
2562
2563 Wed May 14 21:20:38 1997 Bob Manson <manson@charmed.cygnus.com>
2564
2565 * callback.c (os_close): Mark the descriptor as being
2566 available if the close succeeded.
2567 (os_open): Pass 0644 as the mode of the file being created.
2568
2569 Thu May 15 10:58:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
2570
2571 * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
2572 float.
2573
2574 * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
2575 * sim-lnline.h: Update.
2576
2577 * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
2578 conversion functions.
2579 (sim_fpu_to{32,64}[iu]): New fp2int functions.
2580
2581 * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
2582 compare functions. Replacing.
2583 (sim_fpu_cmp): This. Delete.
2584
2585 Mon May 12 14:49:05 1997 Andrew Cagney <cagney@b1.cygnus.com>
2586
2587 * sim-core.c (sim_core_find_mapping): Call engine_error not
2588 sim_io_error when possible.
2589
2590 Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b2.cygnus.com>
2591
2592 * sim-endian.h (V1_H2): Add macro's to insert a word into a
2593 high/low double word.
2594
2595 * sim-trace.h: Remove definition of attribute - defined in
2596 sim_basics.h.
2597
2598 Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
2599
2600 * sim-options.h (struct OPTION): Add doc_opt as the documenting
2601 name of the option - or family of options.
2602
2603 * sim-options.c (sim_args_command): Match command `a-b c' with
2604 option `--a-b-c' from option table.
2605
2606 Thu May 8 12:40:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
2607
2608 * sim-options.c (sim_print_help): For optional arguments, wrap
2609 them in [].
2610
2611 * sim-trace.c (set_trace_options): New function, handle optional
2612 argument and multiple assignment.
2613 (trace_option_handler): Update.
2614
2615 * sim-trace.c (trace_option_handler): Trace branch and not fpu
2616 when branch tracing selected.
2617
2618 Wed May 7 15:19:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
2619
2620 * sim-trace.c (trace_one_insn): Make a va-args function.
2621
2622 * sim-trace.c (trace_vprintf): New function, va-arg version of
2623 trace_printf.
2624
2625 Tue May 6 16:38:16 1997 Doug Evans <dje@canuck.cygnus.com>
2626
2627 * sim-trace.c (trace_uninstall): Don't close a file twice.
2628 * sim-profile.c (profile_uninstall): Likewise.
2629
2630 Tue May 6 06:14:01 1997 Mike Meissner <meissner@cygnus.com>
2631
2632 * sim-trace.c (toplevel): Include bfd.h.
2633 (trace_options): Note that --trace-linenum also turns on
2634 --trace-insn. Add --trace-{branch,semantics}.
2635 (trace_option_handler): If --trace-linenum, also turn on
2636 --trace-insn. Add --trace-branch support. If --trace-semantics,
2637 turn on ALU, FPU, branch, and memory tracing.
2638 (trace_one_insn): New function to trace an instruction. Support
2639 --trace-linenum.
2640 (OPTION_TRACE_*): Use an enum, rather than lots of defines.
2641
2642 * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
2643 (MAX_TRACE_VALUES): Use 32, not 12 by default.
2644 (TRACE_branch): Add new mask.
2645 (TRACE_*_P): Define all possible trace_p macros.
2646 (trace_one_insn): Declare function.
2647
2648 Mon May 5 14:08:34 1997 Mike Meissner <meissner@cygnus.com>
2649
2650 * sim-trace.h (__attribute__): Define as nothing if not GNU C or
2651 GNU C doesn't support __attributes__.
2652 ({trace,debug}_printf): Add attribute's so -Wformat can check the
2653 format strings.
2654
2655 Mon May 5 11:16:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
2656
2657 * sim-config.h (FORCED_ALIGNMENT): New alignment option -
2658 addresses are masked forcing them to be correctly aligned.
2659 (WITH_ALIGNMENT): Make NONSTRICT_ALIGNMENT the default.
2660 * sim-config.c (config_alignment_to_a): Update.
2661
2662 * sim-core.h (sim_cpu_core): New data type contains cpu specific
2663 core data.
2664 * sim-base.h (CPU_CORE): Add cpu specific core data to cpu base
2665 type.
2666 * sim-core.c (sim_core_attach): Add CPU argument. Ready for
2667 processor specific core maps.
2668 (sim_core_map_attach): Copy the core map data to each of the
2669 processor specific core data structures.
2670 * sim-core.c (sim_core_find_mapping): Update.
2671
2672 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Rename.
2673 (sim_core_write_aligned_N, sim_core_write_aligned_N): New names.
2674 (sim_core_write_unaligned_N, sim_core_write_unaligned_N): New
2675 alternatives that handle unaligned addresses.
2676 (sim_core_{read,write}_{,un}aligned_N): Drop SIM_DESC arg, replace
2677 with just CPU arg.
2678 * cgen-utils.c (sim_disassemble_insn): Update.
2679
2680 Mon May 5 13:19:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
2681
2682 * sim-trace.h (TRACE_FPU_IDX): Add Floating-point specific
2683 tracing.
2684
2685 * sim-fpu.h, sim-fpu.c: New files - prototype for generic target
2686 fpu support.
2687
2688 * sim-inline.h, sim-inline.c: Add support for SIM_FPU.
2689
2690 Fri May 2 17:59:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
2691
2692 * sim-core.c (sim_core_map_to_str): New function ascii equivalent
2693 to map type.
2694
2695 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Use in trace
2696 statement.
2697
2698 Fri May 2 17:28:02 1997 Andrew Cagney <cagney@b2.cygnus.com>
2699
2700 * cgen-trace.c: Prepend additional trace_printf argument.
2701
2702 * cgen-utils.c (sim_disassemble_insn): Add additional core
2703 arguments.
2704
2705 Fri May 2 11:40:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
2706
2707 * nrun.c (main): Catch/report errorenous simulator states.
2708
2709 * sim-module.c: #include "libiberty.h" so that xmalloc is defined.
2710 * sim-trace.c: #include string.h/strings.h so that memset is
2711 defined.
2712 * sim-utils.c: Ditto.
2713 * sim-profile.c: Ditto. And stdlib.h.
2714 (print_bar): Only define when used by instruction or memory profiler.
2715
2716 * sim-options.c (standard_option_handler): Make ul more local.
2717
2718 * sim-load.c (sim_load_file): Make the name constant.
2719 (sim_load_file): Passify gcc.
2720
2721 * sim-utils.h: New file, pre-declare utilites in corresponding .c
2722 file.
2723 * sim-utils.c, sim-load.c: Include sim-utils.h.
2724
2725 * sim-base.h (sim_cpu): Pre define here so available to all.
2726
2727 * sim-core.h (DECLARE_SIM_CORE_WRITE_N, DECLARE_SIM_CORE_READ_N):
2728 Restore the sim_cpu and instruction_address arguments so that full
2729 information is available to the abort function.
2730 * sim-core.c (sim_core_find_mapping, sim_core_write_buffer): Ditto.
2731 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
2732
2733 * sim-trace.h, sim-trace.c (trace_option_handler): Add interim
2734 tracing support for sim-events and sim-core.
2735 (trace_option_handler): Convert #if to if where possible so always
2736 compiled/checked by C compiler.
2737 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
2738
2739 * sim-base.h: Adjust comment documenting how to define the cpu
2740 structure.
2741 (sim_state_base): Add sim_core and sim_events to simulator base
2742 object.
2743
2744 * sim-trace.h, sim-trace.c (trace_printf): Add SIM_DESC argument.
2745 * sim-core.c (sim_core_init, sim_core_attach,
2746 sim_core_find_mapping): Update.
2747 * sim-events.c (ETRACE, sim_events_init, sim_events_time,
2748 update_time_from_event, insert_sim_event,
2749 sim_events_schedule_after_signal, sim_events_deschedule,
2750 sim_events_tick): Ditto.
2751
2752 * sim-basics.h (sim-module.h, sim-trace.h, sim-profile.h,
2753 sim-model.h): Move #includes from here.
2754 * sim-base.h: To here.
2755 (sim-core.h, sim-events.h, sim-io.h): Include also
2756
2757 Wed Apr 30 15:37:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2758
2759 * callback.c (default_callback): Missing initialisers.
2760
2761 Thu May 1 10:40:47 1997 Doug Evans <dje@canuck.cygnus.com>
2762
2763 * sim-utils.c (sim_add_commas): New function.
2764 * sim-basics.h (sim_add_commas): Add prototype.
2765 * cgen-scache.c (scache_print_profile): Print commas in numbers.
2766 * sim-profile.c (COMMAS): New macro.
2767 (print_*): Use it to print commas in numbers.
2768
2769 * configure: Regenerated.
2770
2771 * cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
2772 (cgen_state): New member run_fast_p.
2773 (cgen_init): Add prototype.
2774 (sim_disassemble_insn): New arg `cpu'.
2775 * cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
2776 * cgen-utils.c (cgen_init): New function.
2777 (sim_disassemble_insn): New arg `cpu'. Rewrite fetching of insn.
2778 * genmloop.sh: Call engine_halt if loop exits.
2779
2780 * Makefile.in (sim-options_h): Define.
2781 (sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
2782 (sim-model.o): Add new rule.
2783 (cgen-{scache,trace,utils}.o): Add new rules.
2784 * aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
2785 * cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
2786 Indent output by 2 spaces.
2787 * cgen-scache.h (scache_print_profile): Update.
2788 * cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
2789 Use trace_printf, not fprintf.
2790 (trace_extract): Use trace_printf, not cgen_trace_printf.
2791 * genmloop.sh (!FAST case): Increment `insn_count'.
2792 * sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
2793 (sim_cpu_base): Rename member `sd' to `state' to be consistent with
2794 access macro's name.
2795 * sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
2796 Change return type to SIM_RC.
2797 (sim_core_{install,uninstall}): New functions.
2798 * sim-core.h (sim_core_{install,uninstall}): Declare.
2799 (sim_core_init): Use EXTERN_SIM_CORE to define it.
2800 Change return type to SIM_RC.
2801 * sim-model.h (models,machs,model_install): Declare.
2802 * sim-module.c (modules): Add scache_install, model_install.
2803 (sim_post_argv_init): Set cpu->state backlinks.
2804 * sim-options.c (standard_options): Delete --simcache-size,--max-insns.
2805 (standard_option_handler): Likewise.
2806 * sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
2807 sim-profile.h.
2808 (*): Assume ANSI C.
2809 (profile_options): Delete --profile-simcache.
2810 (profile_option_handler): Likewise.
2811 (profile_print_insn): Change `sd' arg to `cpu'. Indent output 2
2812 spaces.
2813 (profile_print_{memory,model}): Likewise.
2814 (profile_print_simcache): Delete.
2815 (profile_print_speed): New function.
2816 (profile_print): Rewrite.
2817 * sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
2818 (WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
2819 (PROFILE_DATA): Delete members simcache_{hits,misses}.
2820 (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
2821 (PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
2822 (profile_print): Update prototype.
2823
2824 Wed Apr 30 11:34:14 1997 Doug Evans <dje@canuck.cygnus.com>
2825
2826 * cgen-scache.[ch], cgen-sim.h: New files.
2827 * cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
2828 * sim-model.c: New file.
2829
2830 * Make-common.in (clean targets): Undo patch of Apr. 22.
2831
2832 Fri Apr 25 15:28:32 1997 Mike Meissner <meissner@cygnus.com>
2833
2834 * sim-n-bits.h (signed): If we have a standard compiler, undef
2835 signed, so that signedN is defined correctly.
2836
2837 Thu Apr 24 00:00:07 1997 Doug Evans <dje@canuck.cygnus.com>
2838
2839 * sim-module.h, sim-model.h, sim-profile.h: New files.
2840 * sim-module.c, sim-profile.c: New files.
2841 * Make-common.in (SIM_PROFILE): Define
2842 (CONFIG_CFLAGS): Add $(SIM_PROFILE).
2843 (sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
2844 (sim_module.o,sim-profile.o): Add rules for.
2845 * aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
2846 (--enable-sim-profile): Add.
2847 * configure: Regenerated.
2848 * sim-base.h (sim_state_base): New members init_list, uninstall_list,
2849 model. Move trace and profile support to sim-{trace,profile}.h.
2850 New members trace_data, profile_data.
2851 * sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
2852 * sim-config.h: Provide default definition of WITH_PROFILE.
2853 (WITH_TRACE): Change default to -1.
2854 (MAX_NR_PROCESSORS): Always define.
2855 * sim-options.c: Move trace and profile support to
2856 sim-{trace,profile}.h.
2857 (sim_pre_argv_init): Moved to sim-model.c.
2858 (standard_install): New function.
2859 * sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
2860 (standard_install): Declare.
2861 * sim-trace.c: Tracing option handling moved here from sim-options.c.
2862 (trace_install, trace_uninstall): New functions.
2863 (trace_printf): Update reference to TRACE_FILE.
2864 * sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
2865 (TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
2866 (WITH_TRACE_FOO_P): Define.
2867 (trace_install): Declare.
2868 (TRACE_DATA): New struct.
2869
2870 Wed Apr 23 17:23:15 1997 Doug Evans <dje@canuck.cygnus.com>
2871
2872 * run.c: Undo last exec_bfd patch.
2873 (main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
2874
2875 Wed Apr 23 17:54:27 1997 Mike Meissner <meissner@cygnus.com>
2876
2877 * run.c (exec_bfd): Add back in.
2878 (main): Set exec_bfd.
2879
2880 Tue Apr 22 14:43:46 1997 Doug Evans <dje@canuck.cygnus.com>
2881
2882 * sim-load.c (sim_load_file): #include <stdio.h> for NULL.
2883
2884 Wed Apr 23 02:55:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2885
2886 * sim-events.c (insert_sim_event): Call sim_io_error instead of
2887 less well defined engine_error.
2888 * sim-core.c: Ditto.
2889
2890 Tue Apr 22 08:48:16 1997 Stu Grossman (grossman@critters.cygnus.com)
2891
2892 * Make-common.in: Change clean targets to use :: so that other
2893 Makefiles can have their own clean targets.
2894 * sim-load.c (xprintf eprintf): Use ANSI_PROTOTYPES instead of
2895 __STDC__ to control use of stdarg vs. varargs syntax. Some
2896 systems can't use __STDC__, but require stdarg.
2897
2898 Fri Apr 18 11:14:43 1997 Doug Evans <dje@canuck.cygnus.com>
2899
2900 * sim-options.c (standard_options): Add --endian.
2901 (standard_option_handler): Likewise.
2902
2903 * nrun.c: #include <signal.h>.
2904 (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
2905 handler that calls sim_stop ().
2906
2907 Fri Apr 18 13:11:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
2908
2909 * run.c (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
2910 handler that calls sim_stop (). Simulators may still be
2911 establishing their own handler.
2912
2913 * sim-events.c (sim_events_poll): Rename from
2914 sim_events_at_large_int. Poll IO.
2915
2916 * sim-io.c (sim_io_poll_quit): New function - pass on a polling
2917 request.
2918
2919 * callback.c (os_poll_quit): New function poll for quit signal
2920 where needed.
2921 (default_callback): Include magic number.
2922
2923 Thu Apr 17 02:25:11 1997 Doug Evans <dje@canuck.cygnus.com>
2924
2925 * aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
2926 Check for functions getrusage, time.
2927 * sim-basics.h (SIM_ELAPSED_TIME): New typedef.
2928 (sim_elapsed_time_get, sim_elapsed_time_since): Add prototypes.
2929 * sim-utils.c: #include time.h, sys/time.h, sys/resource.h if able.
2930 (sim_elapsed_time_get, sim_elapsed_time_since): New functions.
2931
2932 * sim-utils.c (sim_copy_argv, sim_analyze_program): New functions.
2933
2934 * sim-options.c, sim-options.h: New files.
2935 * sim-config.h (WITH_DEBUG): Provide default value of zero.
2936 * Make-common.in (nrun.o): Add rules for.
2937 * nrun.c: New file.
2938
2939 * run.c (main): Check return value of sim_open.
2940
2941 * Make-common.in (sim-options.o, sim-load.o, sim-trace.o): Add rules.
2942 (sim_main_headers): Add sim-trace.h.
2943 * run.c (exec_bfd, target_byte_order): Delete.
2944 (main): Pass -E <endian> to sim_open. Delete code to load sections,
2945 call sim_load instead. Check return code of sim_create_inferior.
2946 * sim-base.h (CURRENT_STATE): Define.
2947 (sim_state_base): Make typedef. New members options, prog_argv,
2948 prog_bfd, text_{section,start,end}, start_addr, simcache_size,
2949 mem_size, memory [+ corresponding access macros].
2950 (sim_cpu_base): New typedef.
2951 * sim-trace.h: New file.
2952 * sim-trace.c: New file.
2953 * sim-basics.h: #include it.
2954 * sim-load.c: New file.
2955
2956 Tue Apr 15 15:10:13 1997 Ian Lance Taylor <ian@cygnus.com>
2957
2958 * Make-common.in (INSTALL): Set to @INSTALL@.
2959 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
2960 (install-common): Depend upon installdirs. Use
2961 $(program_transform_name) directly, rather than using
2962 $(INSTALL_XFORM).
2963 (installdirs): New target.
2964 * Makefile.in (INSTALL): Set to @INSTALL@.
2965 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
2966 (install-man): Depend upon installdirs. Use
2967 $(program_transform_name) directly, rather than using
2968 $(INSTALL_XFORM).
2969 (installdirs): New target.
2970
2971 Tue Apr 15 15:08:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
2972
2973 * sim-assert.h (SIM_ASSERT, ASSERT): Allow these macros to
2974 be overriden.
2975
2976 Wed Apr 9 16:06:44 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2977
2978 * sim-basics.h: Only bring in config.h and tconfig.h if
2979 HAVE_CONFIG_H.
2980
2981 Mon Apr 7 11:39:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
2982
2983 * sim-config.h (WITH_TARGET_WORD_MSB): New Macro. Define the bit
2984 numbering convention of the target.
2985 * sim-config.c (print_sim_config): Print WITH_TARGET_WORD_BITSIZE
2986 and WITH_TARGET_WORD_MSB.
2987 (sim_config): When possible, check for consistency with bitsize
2988 and msb.
2989
2990 * sim-bits.h: Allow MSB to be other than zero.
2991 * sim-bits.c: Ditto.
2992 * sim-n-bits.h: Ditto.
2993
2994 * sim-bits.h (MSMASK*): New macros - converce to LSMASK*.
2995 * sim-n-bits.h (MSMASKEDn): Ditto.
2996
2997 Mon Apr 14 16:29:21 1997 Ian Lance Taylor <ian@cygnus.com>
2998
2999 * Makefile.in (INSTALL): Change install.sh to install-sh.
3000
3001 Mon Apr 7 10:46:38 1997 Doug Evans <dje@canuck.cygnus.com>
3002
3003 * sim-base.h (sim_state_base): Move `magic' to end of struct.
3004
3005 Mon Apr 7 15:53:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3006
3007 * run.c (main): Check that a program to run was specified.
3008
3009 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3010
3011 * aclocal.m4 (AC_TYPE_SIGNAL): Add check.
3012
3013 * configure: Regenerated to track ../common/aclocal.m4 changes.
3014 * config.in: Ditto.
3015
3016 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
3017
3018 * sim-endian.h: Move host {LITTLE,BIG}_ENDIAN support from here,
3019 * sim-config.h: To here.
3020
3021 * Make-common.in (SIM_EXTRA_DEPS): New config var.
3022 (sim_main_headers): Define.
3023 (sim-*.o): Depend on $(SIM_EXTRA_DEPS).
3024 start-sanitize-d30v
3025 (BUILT_SRC_FROM_COMMON): Move here from ../d30v/Makefile.in.
3026 end-sanitize-d30v
3027 (clean): Use it.
3028 (sim-utils.o): Add rule for.
3029 * sim-utils.o: New file.
3030 * sim-basics.h: #include sim-base.h.
3031 (zalloc): Make argument unsigned long.
3032 * sim-base.h: New file.
3033 * sim-inline.h (SIM_IO support): Delete.
3034 * sim-io.h: Delete inline support.
3035 * sim-io.c: Likewise. sim-state.h renamed to sim-main.h.
3036 * sim-config.c: sim-state.h renamed to sim-main.h.
3037 * sim-core.c: Likewise.
3038 * sim-events.c: Likewise.
3039
3040 * run.c (main): Pass SIM_OPEN_STANDALONE to sim_open.
3041
3042 * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
3043 (sim-debug): Allow arguments. Define WITH_DEBUG in addition to
3044 -DDEBUG.
3045 * configure: Regenerated to track ../common/aclocal.m4 changes.
3046
3047 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3048
3049 * configure: Regenerated to track ../common/aclocal.m4 changes.
3050
3051 Wed Apr 2 11:08:11 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3052
3053 * sim-config.h (WITH_ALIGNMENT, WITH_FLOATING_POINT,
3054 WITH_XOR_ENDIAN, WITH_SMP, WITH_RESERVED_BITS): Assume that these
3055 are defined by the configure.
3056
3057 * aclocal.m4 (sim-stdio): Add option stdio from ../ppc configure.
3058
3059 * aclocal.m4 (floating-point, xor-endian, alignment, smp,
3060 reserved-bits): Always define.
3061
3062 * sim-config.h, sim-config.c (sim_config): New function - and new
3063 file - co-ordinate the setting/checking of the common simulator
3064 configuration options.
3065
3066 * Make-common.in (sim-config.o): Add rule.
3067
3068 Fri Mar 28 15:32:00 1997 Mike Meissner <meissner@cygnus.com>
3069
3070 * callback.c (os_{,e}vprintf_filtered): Change stdarg type to
3071 va_list from void *, since va_list might not be a pointer type.
3072
3073 Mon Mar 24 15:27:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3074
3075 * sim-n-endian.h (offset_N): Correct assertion - word and sub word
3076 in wrong order.
3077 (offset_N): Correct computation of LE offset.
3078
3079 * sim-io.c (sim_io_error): Include a new line when reporting
3080 errors.
3081
3082 * sim-assert.h (SIM_FILTER_PATH): Out by one when locating last
3083 `/'.
3084
3085 Thu Mar 20 22:31:06 1997 Jeffrey A Law (law@cygnus.com)
3086
3087 * run.c: Include alloca-conf.h.
3088
3089 * callback.c (os_evprintf_filtered): Fix typo.
3090
3091 Fri Mar 21 13:36:20 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3092
3093 * run.c (string.h, strings.h, stdlib.h): Include.
3094
3095 * sim-events.c (sim_events_tick): Recent cleanup failed to return
3096 0 when nothing pending.
3097
3098 * run.c (sim_size, sim_trace): Plicate GCC - these two functions
3099 will soon be going away.
3100 (getopt): Plicate GCC.
3101
3102 * sim-endian.c (sim-io.h): Plicate GCC.
3103 * sim-bits.c (sim-io.h): Ditto.
3104 * sim-n-bits.h (ROTn): Ditto.
3105
3106 * sim-io.c (sim_io_error): Correct check for NULL.
3107
3108 * sim-assert.h (SIM_FILTER_PATH): Separate out the code filtering
3109 the __FILE__.
3110 * sim-events.c: Use SIM_FILTER_PATH to filter out the filename
3111 path.
3112
3113 Wed Mar 19 01:12:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3114
3115 * aclocal.m4 (SIM_AC_OPTION_*: Move so that they are outside of
3116 SIM_AC_COMMON - SIM_AC_COMMON was gobling arguments.
3117
3118 Tue Mar 18 20:48:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3119
3120 * sim-alu.h: Include sim-xcat.h.
3121
3122 Tue Mar 18 13:58:18 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3123
3124 * Make-common.in (sim-bits.c, sim-core.c, sim-endian.c,
3125 sim-events.c, sim-inline.c, sim-io.c): Define rules for building
3126 these.
3127
3128 * sim-events.c (sim_events_at_large_int): New function. Just
3129 schedules an event every large-int ticks.
3130 (sim_events_init): Call.
3131 (sim_events_tick, sim_events_process): Move async handing to
3132 sim_events_process. Move timer decrement so that it occures after
3133 events have been processed.
3134
3135 * sim-basics.h (struct _engine): Remove declaration.
3136
3137 * sim-events.h, sim-events.c: Rename type to sim_events. Prefix
3138 everything with same. Rename global struct to SIM_DESC.
3139 * sim-core.h, sim-core.c, sim-n-core.c: Ditto for sim_core.
3140 * sim-io.h, sim-io.c: Ditto.
3141
3142 * sim-assert.h: New file. Optional assertion checking macros.
3143 * sim-io.c (sim_io_error): Make just this function tolerant to
3144 null pointers.
3145
3146 * sim-xcat.h: New file. Define concatenate macros.
3147 * sim-basics.h (XCONCAT*): Move to sim-xcat.h.
3148 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Explicitly include
3149 concat macros.
3150
3151
3152 Tue Mar 18 12:44:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3153
3154 * sim-bits.h (LSMASK): New macro. Create mask of LS bits.
3155
3156 Mon Mar 17 18:10:05 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3157
3158 * sim-inline.h: Add definitions for sim-types.
3159 (ALL_BY_MODULE): New macro, encapsulate full inlining by the
3160 module.
3161
3162 Mon Mar 17 15:38:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3163
3164 * sim-events.h: Remove defunct reference to callback struct.
3165
3166 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3167
3168 * configure: Re-generate.
3169
3170 Mon Mar 17 15:04:47 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3171
3172 * Make-common.in (CSEARCH): Do not include the gdb directory in
3173 the search path.
3174
3175 Mon Mar 17 13:16:26 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3176
3177 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
3178 SIM_WARNING): Drop, requiring the simulator specific Makefile.in
3179 to explicitly incorporate these.
3180
3181 * aclocal.m4 (--enable-sim-alignment); New option. Strongly
3182 specify the alignment restrictions of the target architecture -
3183 without this option all alignment restrictions are accomodated.
3184 (--enable-sim-assert): New option. Conditionally compile in
3185 assertion statements.
3186 (--enable-sim-float): New option. Strongly specify the target's
3187 floating point support.
3188 (--enable-sim-hardware): New option. Specify the hardware devices
3189 included in the simulation.
3190 (--enable-sim-packages): New option. Specify the hardware
3191 packages included in the simulation.
3192 (--enable-sim-regparm): New option. Specify that parameters be
3193 passed in registers instead of on the stack.
3194 (--enable-sim-reserved-bits): New option. Specify that reserved
3195 bits within an instruction are are correctly set.
3196 (--enable-sim-smp): New option. Specify the level of SMP support
3197 to be included in the simulator.
3198 (--enable-sim-stdcall): New option. Specify an alternative
3199 function call convention.
3200 (--enable-sim-xor-endian): New option. Configure xor-endian
3201 support used by some targets to implement bi-endian support.
3202
3203 Fri Mar 14 19:51:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3204
3205 * aclocal.m4 (--enable-sim-hostendian): New option. Allow the
3206 host endianness to be overridden.
3207 (--enable-sim-endian): Allow the target platform's byte order
3208 to be overridden.
3209 (--enable-sim-inline): Control the inlining of common components.
3210 (--enable-sim-bswap): For compatibility, also define WITH_BSWAP.
3211 (--enable-sim-warnings): Enable additional GCC compiler checks.
3212 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
3213 SIM_WARNINGS): Add.
3214
3215 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Rename from
3216 sim-*-n.h so that the names are uniq on dos machines
3217 * sim-core.c, sim-bits.c, sim-endian.c: Update.
3218
3219 Thu Mar 13 12:32:42 1997 Doug Evans <dje@canuck.cygnus.com>
3220
3221 * run.c: #include "libiberty.h".
3222 (main): New locals sd,no_args,sim_argv.
3223 Run buildargv on -a option. Pass argv to sim_open, argv[0]
3224 is program name. Update call to sim_set_callbacks.
3225 Record result of sim_open, pass to other sim_foo routines.
3226
3227 Thu Mar 13 10:24:05 1997 Michael Meissner <meissner@cygnus.com>
3228
3229 * callback.c (os_printf_filtered): Do not call exit(1) or print a
3230 final newline.
3231
3232 Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3233
3234 * callback.c: Add os_flush_stdout and vprintf_filtered callbacks.
3235 Route stdout through buffered IO.
3236
3237 * callback.c: Add os_flush_stderr, os_write_stderr,
3238 os_evprintf_filtered functions to route error output through
3239 stderr.
3240
3241 * sim-io.h, sim-io.c (sim_io_flush_stderr, sim_io_flush_stdout):
3242 Correct return type - should be void.
3243
3244 Fri Mar 7 20:14:37 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3245
3246 * sim-basics.h: Clean up. Many macro's moved to sim-inline.h.
3247
3248 * sim-config.h: Ditto. For some options - eg WITH_DEVICES - do
3249 not provide a default value as undefined indicates disable code.
3250
3251 Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3252
3253 * sim-core.h, sim-core-n.h, sim-core.c: Borrow code from ppc
3254 directory.
3255 * sim-events.h, sim-events.c: Ditto.
3256 * sim-io.h, sim-io.c: Ditto.
3257
3258 Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3259
3260 * sim-alu.h (ALU_SUB_CA, ALU*_SUB_CA): New alu operation.
3261
3262 * sim-bits.h, sim-bits-n.h, sim-bits.c (LSMASKED*): New macro's
3263 extract the tail or least signifiant bits from an integer of the
3264 specified size.
3265
3266 * sim-bits.h, sim-bits.c: Clean up conditionally compiled #if
3267 WITH_TARGET_BITSIZE so that the compilation will fail when an
3268 unsupported bitsize value is defined.
3269
3270 (INSERTED*): Convert to functions.
3271 (EXTRACTED*): Ditto.
3272
3273 (SIGN_EXTEND, SEXT): Change to more terse name.
3274
3275 Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3276
3277 * sim-inline.h: Allow explicit control over which .c files will be
3278 included by their header.
3279
3280 * sim-inline.h: Allow explicit control over which .c files use the
3281 alternative - REGPARM - parameter passing mechanism.
3282
3283 * sim-inline.h, sim-inline.c: Don't attempt to include any of
3284 icache.c, idecode.c, semantics.c or support.c. Those names are
3285 not generally applicable.
3286
3287 Thu Feb 27 10:17:23 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3288
3289 * sim-bits.c, sim-bits-n.h (new): Split sim-bits.c into two parts
3290 in a fashion similar to sim-endian-n.
3291
3292 * sim-endian.h: (H_word, L_word, AL_*, VL_*): Extend to include
3293 both value and address macro's.
3294
3295 Tue Feb 25 18:51:57 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3296
3297 * sim-alu.h (ALU16_BEGIN, ALU16_SET, ...): Fill in.
3298
3299 * sim-endian.h (L_word, H_word): Replace MS2W_4, LS2W_4 with more
3300 generic L_word, H_word macro's.
3301
3302 Thu Feb 20 18:36:55 1997 Andrew Cagney <cagney@critters.cygnus.com>
3303
3304 * sim-basics.h: Borrow code from ppc directory.
3305 * sim-bits.c: Ditto.
3306 * sim-bits.h: Ditto.
3307 * sim-config.h: Ditto.
3308 * sim-endian-n.h: Ditto.
3309 * sim-endian.c: Ditto.
3310 * sim-endian.h: Ditto.
3311 * sim-inline.c: Ditto.
3312 * sim-inline.h: Ditto.
3313 * sim-types.h: Ditto.
3314
3315 Wed Feb 19 12:40:50 1997 Andrew Cagney <cagney@critters.cygnus.com>
3316
3317 * sim-alu.h (ALU_SET16, ALU_SET32, ALU_SET64, etc): Make available
3318 all the ALU size alternatives and then auto-configure a default.
3319
3320 * sim-alu.h: Copy ppc/idecode_expression.h.
3321
3322 Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com>
3323
3324 * bits.h, bits.c (SIGN_EXTEND32, SIGN_EXTEND64): New functions,
3325 sign extend a bit within a value.
3326
3327 * sim-endian.h, sim-endian-n.h (offset_N): New functions - return
3328 a pointer into the middle of a host word.
3329 * sim-endian.h (MS2W_4, LS2W_4): Use this function.
3330
3331 Tue Feb 11 13:46:49 1997 Michael Meissner <meissner@tiktok.cygnus.com>
3332
3333 * callback.c: If HAVE_CONFIG_H is defined, include config.h from
3334 autoconf. If HAVE_UNISTD_H is defined, include unistd.h to get
3335 appropriate definitions of read, write, etc. Add prototype for
3336 system.
3337
3338 Tue Feb 4 13:24:44 1997 Doug Evans <dje@canuck.cygnus.com>
3339
3340 * Makefile.in (libcommon.a): Delete.
3341 (callback.o,targ-map.o): Delete, moved to Make-common.in.
3342 (gentmap,targ-vals.h,targ-map.c): Likewise.
3343 (run-autoconf): Delete.
3344 * aclocal.m4 (SIM_AC_OUTPUT): Redo creation of Makefile.
3345 (common makefile fragment): Moved back into ...
3346 * Make-common.in: Resurrect.
3347 * configure.in (AC_LINK_FILES): Delete, unnecessary now.
3348 * configure: Regenerated.
3349
3350 Fri Jan 31 07:16:49 1997 Doug Evans <dje@canuck.cygnus.com>
3351
3352 * aclocal.m4 (SIM_AC_COMMON): Move COMMON_MAKEFILE_FRAG from here.
3353 (SIM_AC_OUTPUT): To here.
3354
3355 Fri Jan 24 10:37:17 1997 Stu Grossman (grossman@critters.cygnus.com)
3356
3357 * aclocal.m4 (COMMON_MAKEFILE_FRAG): Quote a couple of $'s in
3358 comments and single quotes. Fixes a problem found on hpux.
3359
3360 Thu Jan 23 13:35:03 1997 Stu Grossman (grossman@critters.cygnus.com)
3361
3362 * aclocal.m4: Remove Make-common.in from dependencies.
3363 * (distclean): Remove targ-vals.def.
3364
3365 * aclocal.m4 (SIM_AC_COMMON): Move contents of Make-common.in
3366 into here. Makes insertion into makefiles easier. Also, change
3367 the way that callback.o, gentmap, targ-vals.h, targ-map.c,
3368 targ-map.o, and run are built. They are now built in the
3369 individual simulator directories, taking sources from ../common as
3370 necessary. This replaces the merging of libcommon.a into
3371 linsim.a, which was problematic for the WinGDB build process.
3372 * run.c: Include config.h from . instead of ../common.
3373 * Make-common.in: Remove. It's no longer necessary.
3374
3375 Mon Dec 16 15:02:33 1996 Ian Lance Taylor <ian@cygnus.com>
3376
3377 * Make-common.in (ALL_CLAGS): Put CFLAGS at the end.
3378 (.c.o): Put $(ALL_CFLAGS) before the file being compiled.
3379
3380 Wed Dec 11 11:30:58 1996 Jim Wilson <wilson@cygnus.com>
3381
3382 * run.c (main): Set target_byte_order before call to sim_open.
3383
3384 Sun Dec 8 18:22:06 1996 Doug Evans <dje@canuck.cygnus.com>
3385
3386 * callback.c: #include <stdlib.h>
3387 (os_error): New function.
3388 (default_callback): Add os_error.
3389
3390 Mon Nov 25 19:44:35 1996 Doug Evans <dje@canuck.cygnus.com>
3391
3392 * Make-common.in (Makefile): Set CONFIG_HEADERS="".
3393 * aclocal.m4: Mark the fact that --enable-sim-bswap isn't host
3394 specific.
3395 (SIM_AC_OUTPUT): Don't build Makefile if CONFIG_FILES="".
3396
3397 Wed Nov 20 01:11:04 1996 Doug Evans <dje@canuck.cygnus.com>
3398
3399 * run.c: #include ../common/config.h, tconfig.h.
3400 (myname): New static global.
3401 (main): Recognize new options -a, -c. Also recognize -h if h8/300.
3402 Only process -c ifdef SIM_HAVE_SIMCACHE.
3403 Only process -p/-s ifdef SIM_HAVE_PROFILE.
3404 Parse program name from argv[0] and use in error messages.
3405 Pass sim_args to sim_open. Pass prog_args to sim_create_inferior.
3406 Add support for incomplete h8/300 termination indicators.
3407 (usage): Make more verbose.
3408 * aclocal.m4,config.in,tconfig.in,configure.in,configure: New files.
3409 * Makefile.in,Make-common.in,callback.c: New files.
3410 * nltvals.def,gentmap.c,gentvals.sh: New files.
3411
3412 Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
3413
3414 * run.c: Include stdarg.h if __STDC__.
3415
3416 Tue Oct 15 11:16:31 1996 Jeffrey A Law (law@cygnus.com)
3417
3418 * run.c (main): Don't print out anything if the signal
3419 number is zero (ie no signal).
3420
3421 Tue Oct 15 11:20:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3422
3423 * run.c (main): Print out if the program raised a signal.
3424
3425 Wed Sep 18 09:52:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3426
3427 * run.c (exec_bfd): Rename from sim_bfd, to use the gdb name.
3428 (main): Ditto.
3429
3430 Tue Sep 17 11:04:50 1996 James G. Smith <jsmith@cygnus.co.uk>
3431
3432 * run.c (main): Explicitly cast malloc() parameter.
3433
3434 Thu Sep 12 11:27:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3435
3436 * run.c (sim_bfd): New global to hold the bfd pointer for the
3437 executable.
3438 (main): Initialize sim_bfd.
3439
3440 Fri Dec 15 16:27:49 1995 Ian Lance Taylor <ian@cygnus.com>
3441
3442 * run.c (main): Use new bfd_big_endian macro.
3443
3444 Wed Nov 8 15:49:49 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
3445
3446 * run.c (main): Removed SH specific comments, so source is
3447 generic. Also updated to only load relevant sections. Moved
3448 sim_open() to after callback attach (to match GDB).
3449
3450 * run.1: Removed SH specific comments.
3451
3452 Sat Oct 21 12:31:01 1995 Jim Wilson <wilson@chestnut.cygnus.com>
3453
3454 * run.c (main): Always return sigrc at end.
3455
3456 Tue Oct 10 12:03:13 1995 J.T. Conklin <jtc@rtl.cygnus.com>
3457
3458 * run.c (main): Print error diagnostic and exit if bfd_openr() or
3459 bfd_check_format() fails.
3460
3461 Thu Sep 28 15:40:36 1995 steve chamberlain <sac@slash.cygnus.com>
3462
3463 * run.c, run.1: From sh directory.
3464
3465
This page took 0.154462 seconds and 5 git commands to generate.