4f54f77273bd15d2b45a1492dc94b77f741fa7a1
[deliverable/binutils-gdb.git] / sim / ppc / ChangeLog
1 2021-06-16 Mike Frysinger <vapier@gentoo.org>
2
3 * basics.h (UNUSED): Delete.
4 * gen-icache.c (print_icache_extraction): Change UNUSED to
5 ATTRIBUTE_UNUSED.
6 * idecode_expression.h: Likewise. Include ansidecl.h.
7 * inline.h: Likewise.
8
9 2021-06-16 Mike Frysinger <vapier@gentoo.org>
10
11 * basics.h: Delete CONCAT* and XCONCAT* macros.
12 * corefile.c: Include symcat.h.
13 * idecode_fields.h: Likewise.
14 * sim-endian.c: Likewise.
15 * vm.c: Likewise.
16
17 2021-06-16 Mike Frysinger <vapier@gentoo.org>
18
19 * device.h (device_add_boolean_property): Rename bool arg to boolean.
20
21 2021-06-16 Mike Frysinger <vapier@gentoo.org>
22
23 * Makefile.in (HOSTENDIAN_CFLAGS): Delete.
24 * configure.ac: Delete sim-hostendian logic.
25 * altivec_registers.h (WITH_HOST_BYTE_ORDER): Rename to ...
26 (HOST_BYTE_ORDER): ... this.
27 * options.c: Likewise.
28 * sim-endian.c: Likewise.
29 * psim.c (current_host_byte_order): Delete.
30 (CURRENT_HOST_BYTE_ORDER): Rename to ...
31 (HOST_BYTE_ORDER): ... this.
32 * sim-endian-n.h: Likewise.
33 * sim-endian.h: Delete all custom endian include & define logic.
34 * std-config.h (WITH_HOST_BYTE_ORDER): Delete.
35 (LITTLE_ENDIAN): Define fallback.
36 (BIG_ENDIAN): Likewise.
37 (HOST_BYTE_ORDER): Define based on WORDS_BIGENDIAN.
38 (current_host_byte_order, CURRENT_HOST_BYTE_ORDER): Delete.
39 * config.in, configure: Regenerate.
40
41 2021-06-13 Mike Frysinger <vapier@gentoo.org>
42
43 * Makefile.in (COMMON_OBJS_NAMES, +COMMON_OBJS): New variables.
44 (LIB_OBJ): Replace version.o with $(COMMON_OBJS).
45 (version.c, version.o): Delete rules.
46
47 2021-06-12 Mike Frysinger <vapier@gentoo.org>
48
49 * Makefile.in: Add $(EXEEXT) to run and psim.
50
51 2021-06-12 Mike Frysinger <vapier@gentoo.org>
52
53 * Makefile.in: Delete ALIGNMENT_CFLAGS.
54 * configure.ac: Delete sim-alignment.
55 * configure: Regenerate.
56
57 2021-06-12 Mike Frysinger <vapier@gentoo.org>
58
59 * configure.ac: Delete calls to ACX_PKGVERSION & ACX_BUGURL.
60 * aclocal.m4, config.in, configure: Regenerate.
61
62 2021-06-12 Mike Frysinger <vapier@gentoo.org>
63
64 * configure.ac: Delete sim-stdio & sim-trace.
65 * debug.h: Define TRACE_* defines.
66 * config.in, configure: Regenerate.
67
68 2021-06-12 Mike Frysinger <vapier@gentoo.org>
69
70 * configure.ac: Delete AC_STRUCT_*, AC_TYPE_*, AC_CHECK_FUNCS,
71 AC_CHECK_HEADERS, and AC_HEADER_DIRENT calls.
72 * config.in, configure: Regenerate.
73
74 2021-06-12 Mike Frysinger <vapier@gentoo.org>
75
76 * configure.ac: Delete sim-env configure option.
77 * defs.h: Include ../config.h. Undefine PACKAGE* defines.
78 * std-config.h (ALL_ENVIRONMENT): Define.
79 * config.in, configure: Regenerate.
80
81 2021-06-09 Mike Frysinger <vapier@gentoo.org>
82
83 * basics.h (NULL): Delete.
84 * gen-itable.c (NULL): Likewise.
85 * gen-model.c (NULL): Likewise.
86 * ld-cache.c (NULL): Likewise.
87 * ld-decode.c (NULL): Likewise.
88
89 2021-05-29 Mike Frysinger <vapier@gentoo.org>
90
91 * configure.ac (WERROR_CFLAGS): Add -Wno-format for mingw32 hosts.
92 * configure: Regenerate.
93
94 2021-05-29 Mike Frysinger <vapier@gentoo.org>
95
96 * emul_generic.c (emul_write_status): Rename errno to err.
97 (emul_write2_status): Likewise.
98 * emul_generic.h (emul_write_status, emul_write2_status): Likewise.
99 * emul_netbsd.c (errno): Delete.
100 * emul_unix.c (errno): Delete.
101
102 2021-05-29 Mike Frysinger <vapier@gentoo.org>
103
104 * Makefile.in (INCLUDES): Add -I../..
105
106 2021-05-16 Mike Frysinger <vapier@gentoo.org>
107
108 * Makefile.in (gentmap): Pass -DUSE_CONFIG_H.
109 * basics.h, debug.c, filter_filename.c, inline.c, sim-endian.c,
110 words.h: Replace config.h include with defs.h.
111 * defs.h: New file.
112
113 2021-05-15 Mike Frysinger <vapier@gentoo.org>
114
115 * Makefile.in (WERROR_CFLAGS): Define.
116 (STD_CFLAGS): Add $(WERROR_CFLAGS).
117 * configure.ac: Add --enable-werror.
118 * device.c (device_full_name): Delete full_name variable.
119 (device_clean): Delete system variable.
120 * emul_chirp.c (chirp_emul_getprop): Cast vars to unsigned long.
121 (chirp_emul_seek): Likewise.
122 * hw_glue.c (hw_glue_init_address): Use %zu format.
123 * hw_ide.c (hw_ide_io_read_buffer): Cast vars to unsigned long.
124 (hw_ide_io_write_buffer): Likewise.
125 * hw_init.c (update_for_binary_section): Cast vars to unsigned long.
126 * hw_phb.c (hw_phb_dma_read_buffer): Likewise.
127 (hw_phb_dma_write_buffer): Likewise.
128 * hw_shm.c (hw_shm_init_data): Delete d variable.
129 (hw_shm_attach_address_callback): Delete shm variable.
130 * igen.c (gen_semantics_c): Include tree.h.
131 * interrupts.c (alignment_interrupt): Cast vars to unsigned long.
132 * ld-insn.c (dump_insn_field): Cast vars to unsigned long.
133 * main.c (main): Add const to argv.
134 * options.c (print_options): Cast var to int.
135 * ppc-instructions: Add %s to format. Delete shifted variable. Add
136 parenthesis to binary operations.
137 * psim.c (find_arg): Add const to return and argv.
138 (is_num): Add const to string.
139 (psim_options): Add const to return and argv, and p & param.
140 (psim_command): Add const to argv, device, and media.
141 (psim_stack): Add const to argv and envp.
142 * psim.h: Add const to psim_options, psim_command, and psim_stack.
143 * tree.c (parse_reg_property): Delete & from sizeof.
144 * vm.c (om_virtual_to_real): Const vars to long.
145 * vm_n.h (vm_data_map_read_N): Change format to %zu.
146 (vm_data_map_write_N): Likewise.
147 * configure: Regenerate.
148
149 2021-05-14 Mike Frysinger <vapier@gentoo.org>
150
151 * Makefile.in: Update path.
152 * gdb-sim.c: Update include path.
153 * main.c: Likewise.
154 * psim.h: Likewise.
155 * sim_calls.c: Likewise.
156
157 2021-04-22 Tom Tromey <tom@tromey.com>
158
159 * mon.c: Update includes.
160 * emul_unix.c: Update includes.
161 (do_unix_gettimeofday): Update condition.
162
163 2021-04-22 Tom Tromey <tom@tromey.com>
164
165 * Makefile.in (stamp-vals, stamp-map): New targets.
166 (targ-vals.h, targ-map.c): Update.
167 (clean): Remove files.
168
169 2021-04-08 Tom Tromey <tom@tromey.com>
170
171 * emul_unix.c: Include time.h.
172
173 2021-04-08 Simon Marchi <simon.marchi@polymtl.ca>
174
175 * Makefile.in: Set ASAN_OPTIONS when running igen.
176
177 2021-04-03 Mike Frysinger <vapier@gentoo.org>
178
179 * Makefile.in (install): Install as run-ppc when not the primary arch.
180 (install-strip): Likewise.
181
182 2021-03-13 Mike Frysinger <vapier@gentoo.org>
183
184 * Makefile.in (BUILD_LDFLAGS): Rename to ...
185 (LDFLAGS_FOR_BUILD): ... this.
186 (LINK_FOR_BUILD): Change BUILD_LDFLAGS to LDFLAGS_FOR_BUILD.
187
188 2021-03-13 Mike Frysinger <vapier@gentoo.org>
189
190 * Makefile.in (COMPILE_FOR_BUILD, LINK_FOR_BUILD): Define.
191 Change $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(BUILD_LDFLAGS) to
192 $(LINK_FOR_BUILD). Change $(CC_FOR_BUILD) $(BUILD_CFLAGS) to
193 $(COMPILE_FOR_BUILD).
194
195 2021-03-08 Mike Frysinger <vapier@gentoo.org>
196
197 * Makefile.in (gentmap, dgen, igen, tmp-filter, tmp-ld-decode,
198 tmp-ld-cache, tmp-ld-insn): Delete $(BUILD_LIBS).
199
200 2021-03-07 Mike Frysinger <vapier@gentoo.org>
201
202 * Makefile.in (check): Define.
203
204 2021-02-13 Mike Frysinger <vapier@gentoo.org>
205
206 * configure.ac: Replace sinclude with AC_CONFIG_MACRO_DIRS.
207 * aclocal.m4, configure: Regenerate.
208
209 2021-02-06 Mike Frysinger <vapier@gentoo.org>
210
211 * Makefile.in (STD_CFLAGS): Delete $(HDEFINES) $(TDEFINES).
212 (NOWARN_CFLAGS): Likewise.
213 (HDEFINES, TDEFINES): Delete.
214 * configure.ac: Delete AC_SUBST(HDEFINES) and bfd/configure.host
215 sourcing.
216 * configure: Regenerate.
217
218 2021-01-19 Mike Frysinger <vapier@gentoo.org>
219
220 * Makefile.in (version.c): Simplifiy args and call move-if-change.
221
222 2021-01-11 Mike Frysinger <vapier@gentoo.org>
223
224 * configure.ac: Delete checks for stdlib.h, string.h,
225 strings.h, and time.h.
226 * config.in, configure: Regenerate.
227 * cpu.c, debug.c, device.c, device_table.c, device_table.h,
228 dgen.c, emul_bugapi.c, emul_chirp.c, emul_netbsd.c, emul_unix.c,
229 filter.c, hw_com.c, hw_eeprom.c, hw_nvram.c, hw_opic.c, hw_pal.c,
230 hw_phb.c, hw_sem.c, hw_shm.c, lf.c, main.c, misc.c, misc.h,
231 mon.c, pk_disklabel.c, psim.c, registers.c, sim_calls.c, table.c,
232 tree.c: Delete HAVE_ERRNO_H, HAVE_STDLIB_H, HAVE_STRING_H,
233 HAVE_STRINGS_H, HAVE_LIMITS_H, HAVE_TIME_H, and strings.h include.
234 * hw_nvram.c: Likewise.
235 (_hw_nvram_device): Always define host_time as time_t.
236 (hw_nvram_update_clock): Delete error fallback.
237 * gen-model.c (gen_model_c): Delete HAVE_STDLIB_H output.
238
239
240 2021-01-09 Mike Frysinger <vapier@gentoo.org>
241
242 * configure: Regenerate.
243
244 2021-01-08 Mike Frysinger <vapier@gentoo.org>
245
246 * sim_calls.c (sim_memory_map): Define.
247
248 2021-01-04 Mike Frysinger <vapier@gentoo.org>
249
250 * gen-icache.c, igen.c: Include stdlib.h.
251
252 2021-01-04 Mike Frysinger <vapier@gentoo.org>
253
254 * acinclude.m4 (ACX_BUGURL): Change http:// to https://.
255 * configure: Regenerate.
256
257 2020-10-20 Dr. David Alan Gilbert <dgilbert@redhat.com>
258
259 * emul_netbsd.c (do_sigprocmask): Fix printf format.
260
261 2020-07-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
262
263 * ld-insn.h (last_model, last_model_data, last_model_function,
264 last_model_internal, last_model_macro, last_model_static):
265 Delete.
266 (max_model_fields_len, model_data, model_functions,
267 model_internal, model_macros, model_static, models): Declare, but do not
268 define.
269 * ld-insn.c (last_model, last_model_data, last_model_function,
270 last_model_internal, last_model_macro, last_model_static,
271 max_model_fields_len, model_data, model_functions,
272 model_internal, model_macros, model_static, models): Define.
273
274 2020-03-12 Kamil Rytarowski <n54@gmx.com>
275
276 * emul_netbsd.c (netbsd_signal_names): Sync with NetBSD 9.99.49.
277
278 2020-03-12 Kamil Rytarowski <n54@gmx.com>
279
280 * emul_netbsd.c (netbsd_error_names): Sync with NetBSD 9.99.49.
281
282 2019-12-19 Tom Tromey <tromey@adacore.com>
283
284 PR build/24572:
285 * Makefile.in (install-strip): New target.
286
287 2019-09-20 Alan Modra <amodra@gmail.com>
288
289 * emul_generic.c (emul_add_tree_options): Delete old bfd code.
290
291 2019-01-26 Tom Tromey <tom@tromey.com>
292
293 * Makefile.in (version.c): Use sim's create-version.sh.
294
295 2018-05-09 Sebastian Rasmussen <sebras@gmail.com>
296
297 * e500_registers.h: Comment typo fix.
298 * ppc-instructions (ppc_insn_mfcr): Likewise.
299
300 2017-09-05 John Baldwin <jhb@FreeBSD.org>
301
302 PR sim/20863
303 * sim_calls.c (error): New function.
304
305 2017-02-13 Mike Frysinger <vapier@gentoo.org>
306
307 * cpu.h: Include libiberty.h.
308 * emul_bugapi.c (emul_bugapi_instruction_name): Use ARRAY_SIZE.
309 * emul_generic.h: Include libiberty.h.
310 * emul_netbsd.c (emul_netbsd_syscalls): Use ARRAY_SIZE.
311 * emul_unix.c (convert_to_solaris_stat): Likewise.
312 (emul_solaris_syscalls): Likewise.
313 (emul_linux_syscalls): Likewise.
314 * options.c (print_options): Likewise.
315 * ppc-instructions: Likewise.
316
317 2016-01-10 Mike Frysinger <vapier@gentoo.org>
318
319 * configure.ac (sim-assert): Call AC_MSG_CHECKING,
320 AC_DEFINE_UNQUOTED, and AC_MSG_RESULT
321 (sim-env, sim-stdio, sim-trace): Delete.
322 * config.in, configure: Regenerate.
323 * Make-common.in (ENV_CFLAGS, TRACE_CFLAGS, ASSERT_CFLAGS,
324 STDIO_CFLAGS): Delete.
325 (CONFIG_CFLAGS): Delete $(ENV_CFLAGS), $(TRACE_CFLAGS),
326 $(ASSERT_CFLAGS), and $(STDIO_CFLAGS).
327 * std-config.h (WITH_ENVIRONMENT, WITH_TRACE, WITH_ASSERT,
328 WITH_STDIO): Delete.
329
330 2016-01-10 Mike Frysinger <vapier@gentoo.org>
331
332 * configure: Regenerate.
333
334 2016-01-10 Mike Frysinger <vapier@gentoo.org>
335
336 * configure: Regenerate.
337
338 2016-01-10 Mike Frysinger <vapier@gentoo.org>
339
340 * configure.ac: Delete --enable-sim-regparm and sim_regparm,
341 and --enable-sim-stdcall and sim_stdcall.
342 * configure: Regenerate.
343 * Makefile.in (REGPARM_CFLAGS, STDCALL_CFLAGS): Delete.
344 (CONFIG_CFLAGS): Delete $(REGPARM_CFLAGS) and $(STDCALL_CFLAGS).
345 * inline.h: Delete REGPARM everywhere.
346 * options.c (print_options): Delete WITH_REGPARM and
347 WITH_STDCALL.
348 * std-config.h (WITH_REGPARM, WITH_STDCALL, REGPARM): Delete.
349
350 2016-01-10 Mike Frysinger <vapier@gentoo.org>
351
352 * configure.ac: Delete --enable-sim-cflags and sim_cflags.
353 * configure: Regenerate.
354 * INSTALL: Delete all mention of --enable-sim-cflags.
355 * Makefile.in (SIM_CFLAGS): Delete.
356 (STD_CFLAGS, NOWARN_CFLAGS): Delete $(SIM_CFLAGS).
357 (psim): Likewise.
358
359 2016-01-06 Mike Frysinger <vapier@gentoo.org>
360
361 * sim_calls.c (sim_open): Mark argv const.
362 (sim_create_inferior): Mark argv and env const.
363
364 2016-01-04 Mike Frysinger <vapier@gentoo.org>
365
366 * configure.ac (sim-bswap): Delete.
367 * configure: Regenerate.
368 * INSTALL: Delete --enable-sim-bswap docs.
369 * Makefile.in (BSWAP_CFLAGS): Delete.
370 (CONFIG_CFLAGS): Delete $(BSWAP_CFLAGS).
371 * options.c (print_options): Delete WITH_BSWAP.
372 * sim-endian.h (htonl, ntohl): Delete.
373 * std-config.h (WITH_BSWAP): Delete.
374
375 2016-01-02 Mike Frysinger <vapier@gentoo.org>
376
377 * main.c (main): Pass SIM_OPEN_STANDALONE to psim_options and
378 psim_usage.
379 * psim.c (psim_usage): Add new kind arg. Only show bug URL and
380 exit when kind is SIM_OPEN_STANDALONE.
381 (psim_options): Add new kind arg. Pass kind down to all psim_usage
382 calls. Replace error/break calls after psim_usage with return NULL.
383 Only exit with version case when kind is SIM_OPEN_STANDALONE.
384 * psim.h: Include gdb/remote-sim.h.
385 (psim_options): Add new kind arg.
386 (psim_usage): Likewise.
387 * sim_calls.c (sim_open): Pass kind to psim_options. Return NULL
388 when it returns NULL.
389
390 2015-12-29 Kevin Buettner <kevinb@redhat.com>
391
392 * emul_netbsd.c (fd_closed): New static array.
393 (fdbad): New function.
394 (do_read, do_write, do_close, do_dup, do_ioctl, do_dup2, do_fcntl)
395 (do_fstatfs, do_fstat, do_lseek): Call `fdbad'.
396 (emul_netbsd_init): Initialize `fd_closed'.
397 * emul_unix.c (fd_closed): New static array.
398 (fdbad): New function.
399 (do_unix_read, do_unix_write, do_unix_close, do_unix_dup)
400 (do_unix_dup2, do_unix_lseek, do_solaris_fstat, do_solaris_ioctl)
401 (do_linux_fstat, do_linux_ioctl): Call `fdbad'.
402 (emul_solaris_init, emul_linux_init): Initialize `fd_closed'.
403
404 2015-12-26 Mike Frysinger <vapier@gentoo.org>
405
406 * Makefile.in (TCONFIG_H): Delete.
407 (sim-fpu.o): Delete $(TCONFIG_H).
408 (tconfig.h): Delete rule.
409
410 2015-11-21 Mike Frysinger <vapier@gentoo.org>
411
412 PR sim/13834
413 * Makefile.in (gentmap): Change $< to $(srcdir)/../common/gentmap.c.
414 (callback.o): Change $< to $(srcdir)/../common/callback.c.
415 (options.o): Change $< to $(srcdir)/options.c.
416
417 2015-11-17 Pedro Alves <palves@redhat.com>
418
419 * debug.h (TRACE, ITRACE, DTRACE, DITRACE, PTRACE): Call
420 sim_io_printf_filtered instead of printf_filtered.
421
422 2015-06-12 Mike Frysinger <vapier@gentoo.org>
423
424 * configure: Regenerate.
425
426 2015-04-29 Nick Clifton <nickc@redhat.com>
427
428 PR 18273
429 * hw_htab.c (htab_map_binary): Fix overlap check.
430
431 2015-04-13 Mike Frysinger <vapier@gentoo.org>
432
433 * Makefile.in (version.o): Change to using create-version.sh from gdb.
434 (create-version.sh): Delete.
435
436 2015-03-31 Mike Frysinger <vapier@gentoo.org>
437
438 * config.in, configure: Regenerate.
439 * Makefile.in (INCLUDES): Add $(ZLIBINC).
440 (ZLIB, ZLIBINC): Define.
441 (BFD_LIB): Add $(ZLIB).
442
443 2014-11-23 Joel Sherrill <joel.sherrill@oarcorp.com>
444
445 * ChangeLog, ChangeLog.00, hw_com.c, ld-cache.h, ppc-instructions:
446 Change immediatly to immediately.
447
448 2014-08-27 Joel Sherrill <joel.sherrill@oarcorp.com>
449
450 * basics.h, device.c, device.h, hw_htab.c, hw_memory.c:
451 Correct spelling in comments.
452
453 2014-08-19 Alan Modra <amodra@gmail.com>
454
455 * configure.ac: Invoke AC_PLUGINS.
456 * configure: Regenerate.
457 * config.in: Regenerate.
458
459 2014-03-10 Mike Frysinger <vapier@gentoo.org>
460
461 * sim_calls.c (sim_do_command): Add const to cmd.
462
463 2014-03-05 Mike Frysinger <vapier@gentoo.org>
464
465 * sim_calls.c (sim_load): Add const to prog.
466
467 2014-02-17 Aaro Koskinen <aaro.koskinen@iki.fi>
468
469 PR gdb/12202
470 * Makefile.in (psim): Delete $(LIBS) from dependency.
471
472 2013-10-15 Hans-Peter Nilsson <hp@axis.com>
473
474 * Makefile.in (srcsim): New variable.
475 (version.c): Adjust call to $(srccom)/create-version.sh as per change.
476
477 2013-06-28 Tom Tromey <tromey@redhat.com>
478
479 * Make-common.in (version.c): Use version.in, not
480 common/version.in.
481
482 2013-06-24 Joel Brobecker <brobecker@adacore.com>
483
484 * Makefile.in (srccom): New variable.
485 (version.c): Update rule dependencies, and re-implement using
486 sim/common/create-version.sh.
487
488 2013-05-03 Hafiz Abid Qadeer <abidh@codesourcery.com>
489
490 revert:
491 2013-04-19 Nathan Froyd <froydnj@codesourcery.com>
492 * ppc-instructions (isel): New instruction.
493
494 2013-04-19 Nathan Froyd <froydnj@codesourcery.com>
495
496 * ppc-instructions (isel): New instruction.
497
498 2012-12-19 Joel Brobecker <brobecker@adacore.com>
499
500 * COPYING: Update to GPL version 3.
501
502 2012-06-15 Joel Brobecker <brobecker@adacore.com>
503
504 * configure: Regenerate.
505
506 2012-05-24 Pedro Alves <palves@redhat.com>
507
508 PR gdb/7205
509 * Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
510
511 2012-03-14 Michael Haubenwallner <michael.haubenwallner@salomon.at>
512
513 * emul_unix.c (st_pad1, st_pad2, st_pad3): Undefine.
514
515 2012-01-02 Joel Brobecker <brobecker@adacore.com>
516
517 * dp-bit.c: Reformat copyright header.
518
519 2011-02-11 Ben Golding <ben_golding@yahoo.co.uk>
520
521 * events.c: add #include <stdlib.h> for free(). Fix PR build/13372.
522
523 2011-10-17 Mike Frysinger <vapier@gentoo.org>
524
525 * configure.ac: Change include to common/acinclude.m4.
526
527 2011-10-17 Mike Frysinger <vapier@gentoo.org>
528
529 * configure.ac: Change AC_PREREQ to 2.64. Delete AC_CONFIG_HEADER
530 call. Replace common.m4 include with SIM_AC_COMMON.
531 * configure: Regenerate.
532
533 2011-06-09 Joel Brobecker <brobecker@adacore.com>
534
535 * psim.c (psim_options): Fix length of comparison when checking
536 for --sysroot= option.
537
538 2011-06-08 Joel Brobecker <brobecker@adacore.com>
539
540 * psim.c (psim_options): Add option that cause the error
541 in invalid-option error messages. Print the usage when
542 detecting an invalid long-name option.
543
544 2011-06-08 Joel Brobecker <brobecker@adacore.com>
545
546 * psim.c (psim_options): Accept and ignore `--sysroot=...'.
547
548 2011-06-03 Joel Brobecker <brobecker@adacore.com> (obvious fix)
549
550 From Stephen Kitt <steve@sk2.org>
551 * vm.c (vm_synchronize_context): Spelling fix in function
552 documentation.
553
554 2011-04-16 Mike Frysinger <vapier@gentoo.org>
555
556 * sim_calls.c (sim_complete_command): New stub function.
557
558 2011-02-14 Mike Frysinger <vapier@gentoo.org>
559
560 * cap.c (cap_remove): Change zfree to free.
561 * corefile.c (core_init): Likewise.
562 * device.c (detach_device_interrupt_edge): Likewise.
563 (clean_device_interrupt_edges): Likewise.
564 (device_instance_delete): Likewise.
565 (device_set_property): Likewise.
566 (clean_device_properties): Likewise.
567 (device_add_range_array_property): Likewise.
568 (device_add_reg_array_property): Likewise.
569 * emul_bugapi.c (emul_bugapi_do_read): Likewise.
570 (emul_bugapi_do_write)
571 * emul_netbsd.c (write_direntries): Likewise.
572 (do_read): Likewise.
573 (do_write): Likewise.
574 (do_getdirentries): Likewise.
575 * emul_unix.c (do_unix_read): Likewise.
576 (do_unix_write): Likewise.
577 * events.c (event_queue_init): Likewise.
578 (event_queue_deschedule): Likewise.
579 (event_queue_process): Likewise.
580 * hw_disk.c (open_disk_image): Likewise.
581 (hw_disk_instance_delete): Likewise.
582 * hw_eeprom.c (hw_eeprom_instance_delete): Likewise.
583 * hw_htab.c (htab_dma_binary): Likewise.
584 * hw_init.c (update_for_binary_section): Likewise.
585 * hw_memory.c (hw_memory_set_available): Likewise.
586 (hw_memory_init_address): Likewise.
587 (hw_memory_instance_release): Likewise.
588 * pk_disklabel.c (disklabel_delete): Likewise.
589 * table.c (table_push): Likewise.
590 * tree.c (parse_reg_property): Likewise.
591 (parse_ranges_property): Likewise.
592 (parse_string_property): Likewise.
593 * main.c (zfree): Delete.
594 * sim_calls.c (zfree): Likewise.
595 * sim_callbacks.h (zfree): Likewise.
596
597 2011-01-11 Andrew Burgess <aburgess@broadcom.com>
598
599 * gdb-sim.c (sim_store_register): Update return value to
600 match new API.
601
602 2011-01-05 Joel Brobecker <brobecker@adacore.com>
603
604 * psim.texinfo: Copyright year update.
605
606 2010-04-14 Mike Frysinger <vapier@gentoo.org>
607
608 * sim_calls.c (sim_write): Add const to buf arg.
609
610 2010-02-14 Andreas Schwab <schwab@linux-m68k.org>
611
612 * ppc-instructions: Fix missing assignment in last change.
613
614 2010-02-05 Andreas Schwab <schwab@linux-m68k.org>
615
616 * ppc-instructions: Fix aliasing bugs when calling
617 invalid_arithemetic_operation.
618
619 2009-11-13 Nathan Froyd <froydnj@codesourcery.com>
620
621 * configure.ac: If build != host, create a separate build-config.h
622 file desecribing the build machine.
623 * configure: Regenerate.
624 * lf.c: Include build-config.h instead of config.h.
625 * dgen.c: Likewise.
626 * igen.c: Likewise.
627 * misc.c: Likewise.
628 * misc.h: Likewise.
629 * filter.c: Likewise.
630 * table.c: Likewise.
631
632 2009-10-15 Joel Sherrill <joel.sherrill@oarcorp.com>
633
634 * std-config.h: Fix spelling error.
635
636 2009-09-22 Joel Sherrill <joel.sherrill@oarcorp.com>
637
638 * main.c: Fix spelling error.
639
640 2009-09-15 Andreas Tobler <andreast-list@fgznet.ch>
641 Doug Evans <dje@google.com>
642
643 * configure.ac (sim_hwflags): Use AC_DEFINE to define HAVE_UNION_SEMUN.
644 * configure: Regenerate.
645 * config.in: Regenerate.
646 * hw_sem.c: (HAVE_UNION_SEMUN): Renamed from HAS_UNION_SEMUN.
647
648 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
649
650 * config.in: Regenerate.
651 * configure: Likewise.
652
653 * configure: Regenerate.
654
655 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
656
657 * Makefile.in (datarootdir): New variable.
658
659 2009-01-12 Nathan Froyd <froydnj@codesourcery.com>
660
661 * ppc-instructions (sync): Add L field.
662
663 2008-12-15 Joel Sherrill <joel.sherrill@oarcorp.com>
664
665 * ppc-instructions, ppc-spr-table: Add ability
666 to read tbrl and tbru special registers.
667
668 2008-11-18 Joel Sherrill <joel.sherrill@oarcorp.com>
669
670 * configure: Regenerated.
671 * configure.ac: Add test for System V shared memory and semaphore.
672 * debug.c, debug.h: Add trace support for new devices.
673 * hw_sem.c, hw_shm.c: New files.
674 * Makefile.in: Add hw_sem.c and hw_shm.c.
675
676 2008-07-11 Hans-Peter Nilsson <hp@axis.com>
677
678 * configure.ac: Add test for libz and zlib.h.
679 * Makefile.in (LIBS): Set from @LIBS@.
680 * configure: Regenerate.
681 * config.in: Ditto.
682
683 2008-06-06 Vladimir Prus <vladimir@codesourcery.com>
684 Daniel Jacobowitz <dan@codesourcery.com>
685 Joseph Myers <joseph@codesourcery.com>
686
687 * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
688 * configure, config.in: Regenerated.
689 * Makefile.in (LIB_OBJ): Add version.o.
690 (version.c, version.o): New rules.
691 * psim.c (psim_usage): Add help parameter. Print the bug URL.
692 Exit with code 0 for help.
693 (psim_options): Update calls to psim_usage. Handle --help and
694 --version.
695 * psim.h (psim_usage): Update prototype.
696 * main.c (main): Update psim_usage call.
697
698 2008-03-14 Nick Hudson <nick.hudson@dsl.pipex.com
699
700 * configure.ac: Pass ../../intl to ZW_GNU_GETTEXT_SISTER_DIR.
701 * configure: Regenerate.
702
703 2007-10-15 Daniel Jacobowitz <dan@codesourcery.com>
704
705 * gdb-sim.c (regnum2spr): Rename to...
706 (sim_spr_register_name): ... this. Make global.
707
708 2007-09-04 Jerome Guitton <guitton@adacore.com>
709
710 * sim/ppc/emul_bugapi.c (emul_bugapi_create): quote the file
711 name property before parsing it.
712
713 2006-12-21 Hans-Peter Nilsson <hp@axis.com>
714
715 * acconfig.h: Remove.
716 * config.in: Regenerate.
717
718 2006-11-22 Tom Marn <tom.marn@telargo.com>
719
720 Committed by Andrew Cagney.
721 * ppc-instructions: Implement optional PowerPC stfiwx instruction.
722
723 2006-07-12 Fred Fish <fnf@specifix.com>
724
725 * sim-endian.h (asm/byteorder.h): Don't include private kernel
726 header.
727
728 2006-06-13 Richard Earnshaw <rearnsha@arm.com>
729
730 * configure: Regenerated.
731
732 2006-05-31 Daniel Jacobowitz <dan@codesourcery.com>
733
734 * Makefile.in: Replace INTLLIBS and INTLDEPS with LIBINTL
735 and LIBINTL_DEP everywhere.
736 (INTL_DIR, INTL_SRC): Remove.
737 (INTL_CFLAGS): Use INCINTL.
738 * configure.ac: Use ZW_GNU_GETTEXT_SISTER_DIR.
739 * configure: Regenerated.
740
741 2006-05-05 Andreas Schwab <schwab@suse.de>
742
743 * configure.ac (CFLAGS_FOR_BUILD): Set and substitute.
744 * configure: Regenerate.
745
746 * Makefile.in (CFLAGS_FOR_BUILD): Define.
747 (BUILD_CFLAGS): Use it instead of hardcoding "-g -O".
748 (gentmap): Fix typo BUILD_FLAGS -> BUILD_CFLAGS.
749
750 2006-04-23 Andreas Schwab <schwab@suse.de>
751
752 * Makefile.in (tmp-ld-decode): Fix dependencies.
753 (tmp-ld-cache): Likewise.
754 (tmp-ld-insn): Likewise.
755
756 2006-02-01 Mark Mitchell <mark@codesourcery.com>
757
758 * emul_netbsd.c (emul_netbsd_create): Quote file-name property.
759 * emul_unix.c (emul_unix_create): Likewise.
760 * tree.c (libiberty.h): Include it.
761 (tree_quote_property): New function.
762 * tree.h (tree_quote_property): Declare.
763
764 2006-01-25 Mark Mitchell <mark@codesourcery.com>
765
766 * words.h (natural32): Define as "int".
767
768 2006-01-23 Mark Mitchell <mark@codesourcery.com>
769
770 * words.h (signed32): Define as "int".
771 (unsigned32): Define as "unsigned int".
772
773 2005-11-28 Mark Mitchell <mark@codesourcery.com>
774
775 * configure.ac (USE_WIN32API): Define it.
776 * configure.in: Regenerate.
777 * config.in: Likewise.
778 * emul_netbsd.c (write_timezone): Guard with HAVE_GETTIMEOFDAY.
779 * emul_unix.c (do_unix_mkdir): Handle Win32 1-argument mkdir.
780
781 2005-11-28 Mark Mitchell <mark@codesourcery.com>
782
783 * psim.c: Include gdb/signals.h.
784
785 * sim_calls.c (gdb/signals.h): Include it.
786 (sim_stop_reason): Use TARGET_SIGNAL_*.
787 * psim.c (cntrl_c_simulation): Use TARGET_SIGNAL_*.
788
789 2005-07-15 Ben Elliston <bje@au.ibm.com>
790
791 * hw_htab.c (bfd_get_section_lma): Remove macro; use BFD's.
792
793 2005-07-15 Ben Elliston <bje@au.ibm.com>
794
795 * hw_init.c: Comment out tokens after #endif directive.
796 * hw_register.c: Likewise.
797 * hw_trace.c: Likewise.
798 * hw_vm.c: Likewise.
799
800 2005-04-20 Manoj Iyer <manjo@austin.ibm.com>
801
802 * psim.c: Added libiberty.h header file.
803
804 2005-04-18 Manoj Iyer <manjo@austin.ibm.com>
805
806 * configure.ac: Added check for long long.
807 * config.in: Regenerated.
808 * configure: Regenerated.
809 * words.h: Modified logic to check for HAVE_LONG_LONG instead of
810 __GNUC__, added config.h header file.
811
812 2005-03-25 Anthony Green <green@redhat.com>
813
814 * tree.c (parse_reg_property): Fix memset usage.
815
816 2005-03-23 Mark Kettenis <kettenis@gnu.org>
817
818 * configure: Regenerate.
819
820 2005-01-11 Andrew Cagney <cagney@localhost.localdomain>
821
822 * configure.ac: Delete AC_CONFIG_AUX_DIR.
823 * configure: Re-generate.
824
825 2005-01-07 Andrew Cagney <cagney@gnu.org>
826
827 * configure.ac: Rename configure.in, require autoconf 2.59.
828 * configure: Re-generate.
829
830 2005-01-03 Andreas Schwab <schwab@suse.de>
831
832 * Makefile.in (hw_com.o, hw_eeprom.o): Depend on
833 $(DEVICE_TABLE_H).
834
835 2004-11-16 Andreas Schwab <schwab@suse.de>
836
837 * Makefile.in (defines.h): Depend on tmp-defines.
838 (hw.c hw.h): Depend on tmp-hw.
839 (pk.h): Depend on tmp-pk.
840
841 2004-11-11 Andreas Schwab <schwab@suse.de>
842
843 * sim_calls.c: Include "libiberty.h".
844
845 2004-09-24 Ian Lance Taylor <ian@wasabisystems.com>
846
847 Committed by Andrew Cagney.
848 * configure.in: Check for sys/mount.h, sys/vfs.h, sys/statfs.h.
849 Check for struct statfs.
850 * emul_netbsd.c: If not HAVE_STRUCT_STATFS, #undef HAVE_FSTATFS.
851 * configure, config.in: Regenerate.
852
853 2004-08-05 Nathanael Nerode <neroden@gcc.gnu.org>
854
855 * Makefile.in (GDB_INCLUDES): Remove bogus reference to mmalloc.
856
857 2004-08-04 Andrew Cagney <cagney@gnu.org>
858 Jim Blandy <jimb@redhat.com>
859
860 * sim_callbacks.h (simulator): Declare.
861 * Makefile.in (gdb-sim.o): New rule.
862 (MAIN_SRC, GDB_OBJ): Add gdb-sim.o, gdb-sim.c.
863 (DEFS_H): Delete.
864 (GDB_SIM_PPC_H): Define.
865 * gdb-sim.c: New file.
866 * sim_calls.c: Do not include "defs.h".
867 (simulator): Drop static.
868 (sim_store_register, sim_fetch_register): Delete.
869
870 2004-08-04 Andrew Cagney <cagney@gnu.org>
871
872 * Back out accidently committed change.
873
874 2004-08-04 Jim Blandy <jimb@redhat.com>
875
876 Use a fixed register numbering when communicating with the PowerPC
877 simulator.
878 * sim_calls.c: #include "registers.h" and "gdb/sim-ppc.h"; do not
879 include GDB's "defs.h".
880 (gdb_register_name_table): New variable.
881 (gdb_register_name_table_size): New enum constant.
882 (gdb_register_name): New function.
883 (sim_fetch_register, sim_store_register): Use gdb_register_name,
884 instead of calling gdbarch_register_name.
885 * Makefile.in (GDB_SIM_PPC_H): New variable.
886 (DEFS_H): Delete variable.
887 (sim_calls.o): Update dependencies.
888
889 2004-07-26 Andrew Cagney <cagney@gnu.org>
890
891 Problem from Olaf Hering <olh@suse.de>.
892 * Makefile.in (install, installdirs): Add DESTDIR.
893
894 2004-07-10 Ben Elliston <bje@au.ibm.com>
895
896 * tree.c (parse_integer_property): Comment typo fix.
897
898 2004-07-06 Jim Blandy <jimb@redhat.com>
899
900 * Makefile.in: Update all dependency information.
901 (BASICS_H, CPU_H, IDECODE_H, PSIM_H, REGISTERS_H, DEVICE_TABLE_H)
902 (EMUL_GENERIC_H): Values updated.
903 (ACCONFIG_H, ALTIVEC_EXPRESSION_H, ALTIVEC_REGISTERS_H)
904 (ANSIDECL_H, BFD_H, BITS_H, CAP_H, COMMON_SIM_BASE_H)
905 (COMMON_SIM_BASICS_H, COMMON_SIM_FPU_H, COMMON_SIM_INLINE_H)
906 (COMMON_SIM_SIGNAL_H, CONFIG_H, COREFILE_H, COREFILE_N_H, DEBUG_H)
907 (DEFINES_H, DEFS_H, DEVICE_H, E500_EXPRESSION_H, E500_REGISTERS_H)
908 (EMUL_BUGAPI_H, EMUL_CHIRP_H, EMUL_NETBSD_H, EMUL_UNIX_H, EVENTS_H)
909 (FILTER_FILENAME_H, FILTER_H, GDB_CALLBACK_H, GDB_REMOTE_SIM_H)
910 (GEN_ICACHE_H, GEN_IDECODE_H, GEN_ITABLE_H, GEN_MODEL_H)
911 (GEN_SEMANTICS_H, GEN_SUPPORT_H, HW_CPU_H, HW_H, HW_PHB_H)
912 (ICACHE_H, IDECODE_BRANCH_H, IDECODE_EXPRESSION_H)
913 (IDECODE_FIELDS_H, IGEN_H, INLINE_H, INTERRUPTS_H, ITABLE_H)
914 (LD_CACHE_H, LD_DECODE_H, LD_INSN_H, LF_H, MISC_H, MODEL_H, MON_H)
915 (OPTIONS_H, OS_EMUL_H, PK_H, PPC_CONFIG_H, SEMANTICS_H)
916 (SIM_CALLBACKS_H, SIM_ENDIAN_H, SIM_ENDIAN_N_H, SIM_MAIN_H)
917 (SPREG_H, STD_CONFIG_H, SUPPORT_H, TABLE_H, TARG_VALS_H, TCONFIG_H)
918 (TREE_H, VM_H, VM_N_H, WORDS_H): New variables.
919 (callback.o, cap.o, corefile.o, debug.o, device.o, device_table.o)
920 (dgen.o, emul_bugapi.o, emul_chirp.o, emul_netbsd.o, emul_unix.o)
921 (events.o, filter.o, filter_filename.o, filter_host.o)
922 (gen-icache.o, gen-idecode.o, gen-itable.o, gen-model.o)
923 (gen-semantics.o, gen-support.o, hw_core.o, hw_cpu.o, hw_disk.o)
924 (hw_htab.o, hw_init.o, hw_phb.o, hw_register.o, icache.o)
925 (idecode.o, igen.o, interrupts.o, itable.o, ld-cache.o)
926 (ld-decode.o, ld-insn.o, lf.o, main.o, misc.o, model.o, mon.o)
927 (options.o, os_emul.o, pk_disklabel.o, psim.o, registers.o)
928 (semantics.o, sim-endian.o, sim-fpu.o, sim_calls.o, spreg.o)
929 (support.o, table.o, targ-map.o, tree.o, vm.o): Update dependencies.
930
931 2004-06-28 Jim Blandy <jimb@redhat.com>
932
933 * e500_registers.h (EVR): Cast the 32-bit value of the GPR to an
934 unsigned type before or-ing it with a 64-bit value.
935
936 2004-06-15 Alan Modra <amodra@bigpond.net.au>
937
938 * hw_htab.c (htab_sum_binary(bfd): Use bfd_get_section_size
939 instead of bfd_get_section_size_before_reloc.
940 (htab_dma_binary(bfd): Likewise.
941 * hw_init.c (update_for_binary_section(bfd): Likewise.
942
943 2004-05-10 Daniel Jacobowitz <dan@debian.org>
944
945 * configure.in (sim_fpu_cflags): Add -I../common.
946 * configure: Regenerated.
947
948 2004-01-27 Andrew Cagney <cagney@redhat.com>
949
950 * ppc-instructions: Update copyright.
951 (convert_to_integer): Add trailing ";" to label.
952
953 2003-10-16 Michael Snyder <msnyder@redhat.com>
954
955 * emul_netbsd.c: Only a comment may follow an #endif.
956
957 2003-10-15 Michael Snyder <msnyder@redhat.com>
958
959 * Makefile.in (sim_calls.o): No longer depends on gdb/tm.h.
960
961 2003-06-22 Andrew Cagney <cagney@redhat.com>
962
963 Written by matthew green <mrg@redhat.com>, with fixes from Aldy
964 Hernandez <aldyh@redhat.com>, Jim Wilson <wilson@redhat.com>, and
965 Nick Clifton <nickc@redhat.com>.
966
967 * ppc-instructions: Include altivec.igen and e500.igen.
968 (model_busy, model_data): Add vr_busy and vscr_busy.
969 (model_trace_release): Trace vr_busy and vscr_busy.
970 (model_new_cycle): Update vr_busy and vscr_busy.
971 (model_make_busy): Update vr_busy and vscr_busy.
972 * registers.c (register_description): Add Altivec and e500
973 registers.
974 * psim.c (psim_read_register, psim_read_register): Handle Altivec
975 and e500 registers.
976 * ppc-spr-table (SPEFSCR): Add VRSAVE and SPEFSCR registers.
977 * configure.in (sim_filter): When *altivec* add "av". When *spe*
978 or *simd* add e500.
979 (sim_float): When *altivec* define WITH_ALTIVEC. When *spe* add
980 WITH_E500.
981 * configure: Re-generate.
982 * e500.igen, altivec.igen: New files.
983 * e500_expression.h, altivec_expression.h: New files.
984 * idecode_expression.h: Update copyright. Include
985 "e500_expression.h" and "altivec_expression.h".
986 * e500_registers.h, altivec_registers.h: New files.
987 * registers.h: Update copyright. Include "e500_registers.h" and
988 "altivec_registers.h".
989 (registers): Add Altivec and e500 specific registers.
990 * Makefile.in (IDECODE_H): Add "idecode_e500.h" and
991 "idecode_altivec.h".
992 (REGISTERS_H): Add "e500_registers.h" and "altivec_registers.h".
993 (tmp-igen): Add dependencies on altivec.igen and e500.igen .
994
995 2003-06-22 Andrew Cagney <cagney@redhat.com>
996
997 Problems reported by Joshua LeVasseur.
998 * emul_chirp.c: Update copyright.
999 (chirp_emul_nextprop): Return the first property.
1000 * hw_htab.c: Update copyright.
1001 (htab_decode_hash_table): Fix check for htab size.
1002
1003 2003-06-21 Andrew Cagney <cagney@redhat.com>
1004
1005 * interrupts.c: Update copyright.
1006 (external_interrupt): Fix test for already pending interrupt.
1007 Problem found by Joshua LeVasseur.
1008
1009 * ppc-instructions: Add missing +8 line. Found by blofeldus at
1010 yahoo.com.
1011
1012 2003-06-21 Andrew Cagney <cagney@redhat.com>
1013
1014 From Ian Lance Taylor <ian@airs.com>: * hw_nvram.c
1015 (hw_nvram_init_address): Correct call to memset--swap second and
1016 third arguments.
1017
1018 2003-06-21 Andrew Cagney <cagney@redhat.com>
1019
1020 * hw_com.c (hw_com_device_init_data): Check that the output, and
1021 not input file opened. Pointed out by masahino tky3.3web.ne.jp.
1022
1023 2003-06-20 Andrew Cagney <cagney@redhat.com>
1024
1025 * sim_calls.c (sim_create_inferior): Assert that
1026 psim_write_register succeeded.
1027 (sim_fetch_register, sim_store_register): Make "regname" constant.
1028 Delete Altivec hack. Return result from psim_read_register /
1029 psim_write_register.
1030 * psim.h (psim_read_register, psim_write_register): Change return
1031 type to int. Update comments.
1032 * psim.c: Update copyright.
1033 (psim_stack): Assert that the psim_read_register worked.
1034 (psim_read_register, psim_read_register): Return the register's
1035 size. Allocate the cooked buffer dynamically.
1036 * hw_register.c: Update copyright.
1037 (do_register_init): Check that psim_write_register succeeded.
1038 * hw_init.c: Update copyright.
1039 (create_ppc_elf_stack_frame, create_ppc_aix_stack_frame): Assert
1040 that the register transfer worked.
1041
1042 2003-06-19 Andrew Cagney <cagney@redhat.com>
1043
1044 * ld-insn.h: Update copyright.
1045 (cache_fields): Define.
1046 (insn_table_fields): Add insn_field_6 and insn_field_7.
1047 (load_insn_table): Pass in the "cache_rules".
1048 * ld-insn.c: Update copyright.
1049 (load_insn_table): Add parameter "cache_rules". Handle "cache",
1050 "computed" and "scratch" fields.
1051 (main): Pass "cache_rules" to load_insn_table.
1052 * ld-cache.h: Update copyright.
1053 (append_cache_table): Declare.
1054 * ld-cache.c: Update copyright.
1055 (append_cache_table): New function.
1056 (load_cache_table): Call.
1057 * gen-model.c: Include "ld-cache.h".
1058 * gen-itable.c: Include "ld-cache.h".
1059 * igen.c: Move #include "ld-cache.h" to earlier. Update
1060 copyright.
1061 (main): Permit a NULL "cache_rules". Pass address of
1062 "cache_rules" to load_insn_table.
1063 * Makefile.in (tmp-ld-insn): Add "ld-cache.o".
1064 (tmp-igen): Do not include ppc-cache-rules.
1065 (gen-itable.o, gen-model.o): Add "ld-cache.h".
1066 * ppc-cache-rules: Delete file.
1067 * ppc-instructions: Add cache rules.
1068
1069 2003-06-19 Andrew Cagney <cagney@redhat.com>
1070
1071 * Makefile.in (ICACHE_CFLAGS, SEMANTICS_CFLAGS): Delete.
1072 (SIM_FPU_FLAGS): Define.
1073 (icache.o): Delete explicit compile command.
1074 (semantics.o, idecode.o): Delete explicit compile command.
1075 (NOWARN_CFLAGS, STD_CFLAGS): Append SIM_FPU_CFLAGS.
1076 * gen-support.c (gen_support_c): Generate #include of
1077 "sim-inline.h" and "sim-fpu.h", but conditional on
1078 HAVE_COMMON_FPU.
1079 * gen-idecode.c (gen_idecode_c): Ditto.
1080 * igen.c (gen_icache_c, gen_semantics_c): Wrap #include of
1081 "sim-inline.h" and "sim-fpu.h" in HAVE_COMMON_FPU conditional.
1082 Move to before "support.h".
1083 * Makefile.in, gen-support.c, gen-idecode.c, igen.c: Update
1084 copyright.
1085
1086 2003-05-16 Ian Lance Taylor <ian@airs.com>
1087
1088 * Makefile.in (various): Use $(SHELL) whenever we invoke
1089 move-if-change.
1090
1091 2003-02-27 Andrew Cagney <cagney@redhat.com>
1092
1093 * sim_calls.c (sim_open, sim_create_inferior): Rename _bfd to bfd.
1094
1095 2002-09-27 Andrew Cagney <ac131313@redhat.com>
1096
1097 * hw_disk.c (hw_disk_init_address): Set device type to "block",
1098 not "disk".
1099
1100 2002-06-22 Andrew Cagney <ac131313@redhat.com>
1101
1102 * Makefile.in (INTL_SRC): Define.
1103 (INTL_CFLAGS): Define.
1104 (INTL_DIR): Define.
1105 (STD_CFLAGS): Add INTL_CFLAGS.
1106
1107 2002-06-17 Elena Zannoni <ezannoni@redhat.com>
1108
1109 * psim.c (psim_options): Don't choke when gdb invokes us with
1110 the --architecture option, just ignore it.
1111
1112 2002-06-16 Andrew Cagney <ac131313@redhat.com>
1113
1114 * configure: Regenerated to track ../common/aclocal.m4 changes.
1115
1116 2002-06-08 Andrew Cagney <cagney@redhat.com>
1117
1118 * main.c: Include "gdb/callback.h" and "gdb/remote-sim.h".
1119 * sim_calls.c: Ditto.
1120
1121 2002-05-30 DJ Delorie <dj@redhat.com>
1122
1123 * lf.c (lf_print__gnu_copyleft): Convert multiline strings to
1124 compatible format.
1125 * gen-idecode.c (print_run_until_stop_body): Likewise.
1126 * gen-model.c (gen_model_c): Likewise.
1127
1128 2002-04-15 Elena Zannoni <ezannoni@redhat.com>
1129
1130 * sim_calls.c (sim_fetch_register, sim_store_register): Return -1 for
1131 AltiVec registers as a temporary stopgap.
1132
1133 2002-03-24 David O'Brien <obrien@FreeBSD.org>
1134
1135 * ppc/hw_disk.c: Export a disk device property.
1136
1137 2002-03-23 Andrew Cagney <ac131313@redhat.com>
1138
1139 From 2001-12-09 Julien Ducourthial <jducourt@noos.fr>:
1140 * ppc-instructions (lswx): Do the register control with the
1141 register count. Initialize the right register in the loop.
1142 (mtfsfi) : Correct prefix for the instruction.
1143
1144 2002-02-24 Andrew Cagney <ac131313@redhat.com>
1145
1146 From wiz at danbala:
1147 * std-config.h: Fix grammar and typos. Update copyright.
1148 Fix PR gdb/287.
1149
1150 2002-01-12 matthew green <mrg@redhat.com>
1151
1152 * Makefile.in (tmp-igen): Pass -I $(srcdir) to igen.
1153 * igen.c (main): Change -I to add include paths for :include:
1154 files.
1155 Implement -G as per sim/igen, with just gen-icache=N support.
1156 Call load_insn_table() with the built include path.
1157
1158 * ld-insn.c (parse_include_entry): New. Load an :include: file.
1159 (load_insn_table): New `includes' argument. Look for :include:
1160 entries and call parse_include_entry() for them.
1161 (main): Adjust load_insn_table() call.
1162 * ld-insn.h (model_include_fields): New enum.
1163 (load_insn_table): Update prototype.
1164 * table.c (struct _open_table, struct _table): Rework
1165 structures to handle included files.
1166 (table_push): Move the guts of table_open() here.
1167
1168 * table.c (struct _open table, struct table): Make table object an
1169 indirect ptr to the current table file.
1170 (current_line, new_table_entry, next_line): Make file arg type
1171 open_table.
1172 (table_open): Use table_push.
1173 (table_entry_read): Point variable file at current table, at eof, pop
1174 last open table.
1175
1176 * misc.h (NZALLOC): New macro. From sim/igen.
1177
1178 * table.h, table.c (table_push): New function.
1179
1180 2002-01-04 matthew green <mrg@redhat.com>
1181
1182 * bits.c (LSMASKED64): New inline function.
1183 (LSEXTRACTED64): Likewise.
1184 * bits.h (_LSB_POS, _LSMASKn, LSMASK64): New macros from
1185 sim/common/sim-bits.h
1186 (LSMASKED64, LSEXTRACTED64): New functions definitions.
1187 * Makefile.in (sim-bits.o): Remove target.
1188
1189 * main.c (zalloc): Fix typo in error message.
1190
1191 2001-12-16 Andrew Cagney <ac131313@redhat.com>
1192
1193 * configure.in (sim_fpu): Don't add sim-bits.o.
1194 * configure: Re-generate.
1195
1196 2001-12-15 matthew green <mrg@redhat.com>
1197
1198 * main.c: Include "defs.h", "bfd.h", "callback.h" and "remote-sim.h".
1199 (sim_io_error): New function.
1200 * sim_calls.c: (sim_io_error): New function.
1201
1202 2001-12-14 matthew green <mrg@redhat.com>
1203
1204 * Makefile.in (LIB_OBJ): Add @sim_fpu@.
1205 (ICACHE_CFLAGS, SEMANTICS_CFLAGS): New variables.
1206 (icache.o, semantics.o): Add new ICACHE_FLAGS & SEMANTICS_FLAGS.
1207 (sim-fpu.o, sim-bits.o, tconfig.h): New targets.
1208 * configure.in: Rename INLINE_LOCALS to PSIM_INLINE_LOCALS. Add a
1209 check for sim/common/sim-fpu.c. Output sim_fpu and sim_fpu_cflags.
1210 * configure: Regenerate.
1211 * device.h (device_find_integer_array_property): Match function definition.
1212 * gen-icache.c (print_icache_internal_function_declaration): Rename
1213 INLINE_ICACHE to PSIM_INLINE_ICACHE.
1214 * gen-idecode.c (print_idecode_run_function_header): Rename INLINE_IDECODE
1215 to PSIM_INLINE_IDECODE.
1216 * gen-semantics.c (print_semantic_function_header): Rename
1217 EXTERN_SEMANTICS to PSIM_EXTERN_SEMANTICS.
1218 * gen-support.c (print_support_function_name): Rename INLINE_SUPPORT to
1219 PSIM_INLINE_SUPPORT.
1220 * igen.c (print_function_name): Also escape `(' and `)'.
1221 (gen_semantics_h): Rename EXTERN_SEMANTICS to PSIM_EXTERN_SEMANTICS.
1222 (gen_semantics_c): Likewise. Also output includes for "sim-fpu.h"
1223 * inline.h (INLINE_SIM_ENDIAN): Renamed INLINE_PSIM_ENDIAN.
1224 (EXTERN_SIM_ENDIAN): Renamed EXTERN_PSIM_ENDIAN.
1225 (STATIC_INLINE_SIM_ENDIAN): Renamed STATIC_INLINE_PSIM_ENDIAN.
1226 (INLINE_LOCALS): Renamed PSIM_INLINE_LOCALS.
1227 (EXTERN_SUPPORT): Renamed PSIM_EXTERN_SUPPORT.
1228 (INLINE_SUPPORT): Renamed PSIM_INLINE_SUPPORT.
1229 (EXTERN_SEMANTICS): Renamed PSIM_EXTERN_SEMANTICS.
1230 (INLINE_SEMANTICS): Renamed PSIM_INLINE_SEMANTICS.
1231 (EXTERN_IDECODE): Renamed PSIM_EXTERN_IDECODE.
1232 (INLINE_IDECODE): Renamed PSIM_INLINE_IDECODE.
1233 (EXTERN_ICACHE): Renamed PSIM_EXTERN_ICACHE.
1234 (INLINE_ICACHE): Renamed PSIM_INLINE_ICACHE.
1235 * options.c (options_inline): Fix names.
1236 * sim-endian-n.h: Change INLINE_SIM_ENDIAN to INLINE_PSIM_ENDIAN.
1237 * sim-endian.h: Likewise.
1238 * sim-main.h: New file.
1239 * std-config.h: Rename INLINE_LOCALS to PSIM_INLINE_LOCALS.
1240
1241 2001-12-01 Andrew Cagney <ac131313@redhat.com>
1242
1243 From Mark Peek.
1244 * ppc-spr-table: Add SDA and PIR.
1245
1246 2001-10-29 Andrew Cagney <ac131313@redhat.com>
1247
1248 * tree.c (parse_size): Assert #size-cells > 0.
1249 (parse_address): Ditto for #address-cells.
1250 (parse_reg_property): Only parse the size when #size-cells is
1251 non-zero.
1252
1253 2001-10-25 Andrew Cagney <ac131313@redhat.com>
1254
1255 * emul_generic.c (OEA_MEMORY_SIZE): Increase to 4mb.
1256 * hw_htab.c (htab_map_binary): Don't try to map the text section
1257 when it is empty.
1258 * emul_chirp.c (map_over_chirp_note): Default load-base to -1 not
1259 CHIRP_LOAD_BASE.
1260 (emul_chirp_create): Map in the interrupt table.
1261
1262 2001-07-16 Daniel Jacobowitz <drow@mvista.com>
1263
1264 * Makefile.in: Add dependencies on $(CPU_H).
1265
1266 Wed Mar 7 10:45:12 HST 2001 Glen Nakamura <gen@lava.net>
1267
1268 * hw_init.c (dma_file): Fixed problem with loading last 1KB of
1269 file.
1270
1271 2001-03-04 Andrew Cagney <ac131313@redhat.com>
1272
1273 * emul_netbsd.c [WITH_NetBSD_HOST]: Include <sys/mount.h> and
1274 <errno.h>.
1275 (do_stat): Only do SYS test when SYS_stat defined.
1276 (do_sigprocmask): Ditto for SYS_sigprocmask.
1277 (do_fstat): Ditto for SYS_fstat.
1278 (do_getdirentries): Ditto for SYS_getdirentries.
1279 (do_lstat): Ditto for SYS_lstat.
1280
1281 2001-01-15 Geoffrey Keating <geoffk@redhat.com>
1282
1283 * emul_netbsd.c (do_open): Translate the flag parameter to the
1284 open syscall to the numbers supported by the host.
1285
1286 2000-12-12 Geoffrey Keating <geoffk@redhat.com>
1287
1288 * sim-endian.h: Don't have parameters on macro definitions which
1289 are simply renaming functions, to permit use of XCONCAT2 in both
1290 the macro name and the arguments in a use of such a definition.
1291
1292 2000-11-15 Jim Blandy <jimb@redhat.com>
1293
1294 * sim_calls.c: Doc fix.
1295 (sim_fetch_register, sim_store_register): Call
1296 gdbarch_register_name directly, instead of going through
1297 REGISTER_NAME macro.
1298
1299 2000-10-24 Geoff Keating <geoffk@cygnus.com>
1300
1301 * ppc-instructions (lfsux): Correct XO field of lfsux instruction.
1302
1303 Tue May 23 21:39:23 2000 Andrew Cagney <cagney@b1.cygnus.com>
1304
1305 * configure: Regenerated to track ../common/aclocal.m4 changes.
1306
1307 Fri Apr 28 15:59:27 2000 Andrew Cagney <cagney@b1.cygnus.com>
1308
1309 * events.c (event_queue_process): Call update_time_from_event
1310 every time an event is removed from the queue.
1311 (update_time_from_event): Delete assertion that a negative
1312 time_from_event implies an empty event queue.
1313
1314 Fri Apr 28 15:53:54 2000 Andrew Cagney <cagney@b1.cygnus.com>
1315
1316 * interrupts.c (deliver_hardware_interrupt): Print time trace in
1317 decimal.
1318 * events.c (event_queue_process): Cleanup trace message.
1319 (update_time_from_event): Trace full event queue.
1320
1321 2000-03-25 Geoff Keating <geoffk@cygnus.com>
1322
1323 * ppc-instructions (Disabled_Exponent_Underflow): Increment
1324 the exponent when denormalizing.
1325
1326 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
1327
1328 * configure: Regenerated to track ../common/aclocal.m4 changes.
1329
1330 1999-05-08 Felix Lee <flee@cygnus.com>
1331
1332 * configure.in: Use AC_EXEEXT instead of AM_EXEEXT.
1333 * configure: Regenerated to track ../common/aclocal.m4 changes.
1334
1335 1999-04-02 Keith Seitz <keiths@cygnus.com>
1336
1337 * sim_calls.c (POLL_QUIT_INTERVAL): Define. Used to tweak
1338 the frequency at which the poll_quit callback is called.
1339 (poll_quit_count): New global.
1340 (sim_io_poll_quit): Only call the poll_quit callback
1341 after the specified POLL_QUIT_INTERVAL.
1342
1343 1999-02-22 Jim Lemke <jlemke@cygnus.com>
1344
1345 * dc-complex: Force expansion on all bits of field BO.
1346 Previously, the least-significant (prediction) bit was ignored.
1347 * ppc-instructions (conditional branches): Implement mpc860c0 option.
1348 * igen.c (gen_semantics_[ch]): Setup for mpc860c0 option.
1349 * psim.c (is_num, psim_options): Added parsing for mpc860c0 option.
1350 * interrupts.h: Added "mpc860c0_instruction_program_interrupt".
1351 * interrupts.c (program_interrupt): Added handling for above interrupt.
1352
1353 1999-02-01 Jim Blandy <jimb@zwingli.cygnus.com>
1354
1355 Make the simulator compatible with the MPC750. It would be nicer
1356 to make this a real multi-sim, but that's more work than we have
1357 time for.
1358 * emul_generic.c (emul_add_tree_options): Only require strict
1359 alignment if it was explicitly requested at configuration time.
1360 Don't make it the default for little-endian machines.
1361 * ppc-spr-table (UMMCR0, UMMCR1, UPMC1, UPMC2, USIA, UPMC3, UPMC4,
1362 MMCR0, PMC1, PMC2, SIA, MMCR1, PMC3, PMC4, L2CR, ICTC, THRM1,
1363 THRM2, THRM3): Plop in the MPC750 SPR registers.
1364 (DABR): This is weird. This was HID5, but the PPC spec says this
1365 should be DABR; why did some random processor use it for something
1366 else? The HID5 entry dates back to the original checkin of the
1367 simulator code in 1995, so remove it.
1368 * sim_calls.c (register_names): Delete this; since the user can
1369 now change GDB's list of register names dynamically, we can't
1370 pretend there's a static mapping here.
1371 (sim_fetch_register, sim_store_register): Call GDB's REGISTER_NAME
1372 function to get the register name. That ought to be accurate.
1373 However, we're changing a compile-time dependency (using the
1374 REGISTER_NAMES macro) into a link- and run-time dependency
1375 (calling REGISTER_NAME, which happens to be a function call on the
1376 PPC).
1377
1378 1999-01-22 Jim Lemke <jlemke@cygnus.com>
1379
1380 * igen.c(gen_semantics_[ch]): setup/use of new option
1381 (-o mpc860c0[=n]).
1382 interrupts.[ch](mpc860c0_instruction_program_interrupt): added.
1383 ppc-instructions(the four branch insn groups): detect problematic br's.
1384 psim.c(is_num - added, psim_options): Parse and init new option.
1385 These changes are currently under #ifdef WITH_OPTION_MPC860C0.
1386
1387 1998-12-01 Ken Raeburn <raeburn@cygnus.com>
1388
1389 * hw_nvram.c (hw_nvram_bcd): Force value to fit in 0..99.
1390
1391 Fri Nov 20 12:17:28 1998 Andrew Cagney <cagney@b1.cygnus.com>
1392
1393 * main.c (sim_io_poll_quit): Stub function.
1394
1395 * events.c (SIM_EVENTS_POLL_RATE): Define.
1396 (sim_events_poll): Copy function from common/sim-events.c.
1397 (event_queue_init): Copy scheduling of sim_events_poll from same.
1398
1399 * sim_callbacks.h, sim_calls.c (sim_io_poll_quit): New function,
1400 poll the external environment.
1401
1402 1998-11-19 Michael Meissner <meissner@cygnus.com>
1403
1404 * ppc-instructions (is_{NaN,inf}): Use unsigned64 to get the
1405 fractional type, so that quiet NaN's aren't treated like
1406 Infinities.
1407
1408 Mon Sep 28 09:42:45 1998 Drew Moseley <dmoseley@cygnus.com>
1409
1410 * table.c (table_open): For cygwin hosts, we need to use the
1411 return value from the read routine as the number of bytes to
1412 process. This apparently is due to text-mode vs binary-mode. If
1413 the mounts are done text-mode, then the size returnedby fstat()
1414 may be different than the number of bytes "read" in text mode.
1415
1416 Sun Oct 4 00:50:47 1998 Felix Lee <flee@cygnus.com>
1417
1418 * emul_netbsd.c (do_open): fix order-of-evaluation problem.
1419 (do_close): ditto.
1420 (do_fstat): ditto.
1421 (do_lstat): ditto.
1422
1423 1998-09-03 Michael Meissner <meissner@cygnus.com>
1424
1425 * emul_{netbsd,unix}.c: Update copyright year.
1426
1427 Mon Jun 29 10:57:36 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
1428
1429 * sim_calls.c (sim_fetch_register, sim_store_register):
1430 return zero when nothing to do.
1431
1432 1998-06-26 Michael Meissner <meissner@cygnus.com>
1433
1434 * configure.in (AC_CHECK_HEADERS): Don't check for sys/mount.h.
1435 * configure: Regenerate.
1436 * emul_{netbsd,unix}.c (toplevel): No longer try to include
1437 sys/mount.h. It conflicts on Linux when gnu libc2 is used.
1438
1439 Tue May 12 12:10:33 PDT 1998 James Ingham <jingham@leda.cygnus.com>
1440
1441 * Makefile.in: The run target depended on a target psim$(EXEEXT),
1442 but there was no such target, only plain psim. So I changed the
1443 run target to depend on psim.
1444
1445 Sat May 2 01:10:12 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
1446
1447 * aclocal.m4: Remove defs of AM_EXEEXT and AM_CYGWIN32. These are
1448 now defined in ../common/aclocal.m4, and the double definition causes
1449 problems with AC_SUBST of EXEEXT.
1450 * configure: Regenerate.
1451
1452 Wed Apr 29 15:44:52 1998 Geoffrey Noer <noer@cygnus.com>
1453
1454 * aclocal.m4: new file for AM_EXEEXT macro
1455 * configure.in: call AM_EXEEXT
1456 * configure: regenerate with autoconf 2.12.1.
1457 * Makefile.in: add EXEEXT support
1458
1459 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
1460
1461 * configure: Regenerated to track ../common/aclocal.m4 changes.
1462 * config.in: Ditto.
1463
1464 Sun Apr 26 15:19:51 1998 Tom Tromey <tromey@cygnus.com>
1465
1466 * acconfig.h: New file.
1467 * configure.in: Reverted change of Apr 24; use sinclude again.
1468 Don't call AC_C_CROSS.
1469
1470 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
1471
1472 * configure: Regenerated to track ../common/aclocal.m4 changes.
1473 * config.in: Ditto.
1474
1475 Fri Apr 24 11:18:46 1998 Tom Tromey <tromey@cygnus.com>
1476
1477 * Makefile.in (top_builddir): New macro.
1478 (INTLLIBS): New macro.
1479 (INTLDEPS): Likewise.
1480 (psim): Depend on INTLDEPS; link against INTLLIBS.
1481 * configure.in: Call CY_GNU_GETTEXT.
1482
1483 Wed Apr 22 14:28:48 1998 Michael Meissner <meissner@cygnus.com>
1484
1485 * configure: Regenerate with autoconf 2.12.1.
1486
1487 Fri Mar 13 09:25:58 1998 Andrew Cagney <cagney@b1.cygnus.com>
1488
1489 * psim.c (psim_read_register, psim_write_register): Handle updates
1490 for FPSCR.
1491
1492 * registers.c (register_description): Reconize "FPSCR".
1493
1494 * emul_netbsd.c (emul_netbsd_create): When FP available, enable
1495 MSR FP exception mode. Do not enable FPSCR bits.
1496 * emul_unix.c (emul_unix_create): Ditto.
1497
1498 Tue Feb 17 12:48:58 1998 Andrew Cagney <cagney@b1.cygnus.com>
1499
1500 * sim_calls.c (sim_store_register, sim_fetch_register): Pass in
1501 length parameter. Return -1.
1502
1503 Mon Feb 9 14:13:14 1998 Andrew Cagney <cagney@b1.cygnus.com>
1504
1505 * ppc-instructions (fdiv, fdivs): Check for divide by zero.
1506 (is_invalid_zero_divide, invalid_zero_divide_operation): New
1507 functions.
1508
1509 Wed Dec 10 17:38:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1510
1511 * sim_calls.c (sim_load): Do not parse PROG using buildargv, use
1512 raw value instead.
1513
1514 1997-11-05 Felix Lee <flee@cygnus.com>
1515
1516 * emul_chirp.c: #ifdef HAVE_UNISTD_H
1517
1518 Wed Oct 15 08:50:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
1519
1520 * corefile.c (core_attach): Pad out allocated memory regions so
1521 that they are always correctly aligned.
1522 (struct _core_mapping, core_map_attach, core_init,
1523 new_core_mapping): Change free_buffer to type void*.
1524
1525 Mon Oct 6 18:09:26 1997 Michael Meissner <meissner@cygnus.com>
1526
1527 * sim_calls.c (zfree): Call free correctly.
1528
1529 Mon Sep 29 10:05:01 1997 Andrew Cagney <cagney@b1.cygnus.com>
1530
1531 * sim_calls.c (zfree): Use free, not mfree.
1532 (sim_io_flush_stdoutput): Replace gdb_flush with callback ->
1533 flush_stdout.
1534
1535 Fri Sep 26 09:50:29 1997 Andrew Cagney <cagney@b1.cygnus.com>
1536
1537 * ppc-instructions (sraw, slw, srw): From Charles Lefurgy, Fix
1538 mask extracting shift amount. Correctly condition for setting XER
1539 in sraw.
1540 (ldhau): From Johannes Reisinger, update rA after load.
1541
1542 Tue Sep 9 22:13:23 1997 Felix Lee <flee@cygnus.com>
1543
1544 * basics.h (CONCAT*): token-pasting macros, if ALMOST_STDC,
1545 for MSVC.
1546 * words.h: __int64 instead of long long for MSVC.
1547
1548 Wed Aug 27 10:24:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
1549
1550 * sim_calls.c (sim_create_inferior): Check the simulator was
1551 initialized before creating inferior.
1552
1553 * idecode_expression.h (ALU_END): From Charles Lefurgy - Extract
1554 sign bit using 64 bit and not a 32 bit mask.
1555
1556 Wed Aug 27 10:15:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
1557
1558 * sim_calls.c (sim_load): From Ian Lance Taylor - free argv after
1559 it has been used, not before.
1560
1561 Tue Aug 26 10:41:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
1562
1563 * sim_calls.c (sim_kill): Delete.
1564 (sim_create_inferior): Add ABFD argument.
1565 (entry_point): Delete variable.
1566 (sim_load): Move setting of PC from here.
1567 (sim_create_inferior): To here.
1568
1569 Mon Aug 25 16:17:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
1570
1571 * sim_calls.c (sim_open): Add ABFD argument.
1572
1573 Thu Jul 3 10:18:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
1574
1575 * ppc-instructions (PPC_INSN_INT): From Michael Thies - Monitoring
1576 CR register updates dependant on RC value had logic backwards.
1577
1578 * ppc-instructions (Load String Word Immediate): From Brad Parker
1579 - sense of wrap test in check for overwriting RA wrong.
1580 (Load String Word Indexed): Ditto.
1581
1582 * configure.in: From Erik Landry - set sim_default_model not
1583 sim_model for sim-default-model option.
1584 * configure: Regenerate.
1585
1586 * interrupts.c (check_masked_interrupts): Schedule a hardware
1587 interrupt delivery when FP interrupts get enabled.
1588 (program_interrupt): Generate FP exceptions instead of aborting.
1589 (deliver_hardware_interrupt): Deliver a FP exception if so
1590 enabled.
1591
1592 * registers.h: Add definition of fpscr_vx_bits.
1593
1594 * idecode_expression.h (FPSCR_END): Always update FEX and VX bits
1595 in FPSCR.
1596 (FPSCR_END): Explicitly check for possible floating point
1597 exception conditions.
1598 (FPSCR_BEGIN): Simplify.
1599
1600 * ppc-instructions (Move From FPSCR): Enable.
1601 (Move To FPSCR Bit 1): Ditto.
1602 (Move To FPSCR Bit 0): Ditto.
1603 (Move To FPSCR Field Immediate): Ditto.
1604 (Move to Condition Register from FPSCR): Simplify.
1605 (invalid_arithemetic_operation): Generate a QNaN when invalid
1606 operation exception disabled.
1607
1608 Tue May 20 10:22:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
1609
1610 * sim_calls.c (sim_open): Add callback argument.
1611 (sim_set_callbacks): Delete.
1612
1613 Tue Apr 22 22:36:57 1997 Mike Meissner <meissner@cygnus.com>
1614
1615 * sim_callbacks.h (error): Make declaration match gdb's.
1616 * main.c (error): Ditto.
1617
1618 Fri Apr 18 17:03:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
1619
1620 * sim_calls.c (sim_stop_reason): Simplify. Was running implies
1621 stopped/SIGINT. Exit implies a status code.
1622
1623 * psim.c (cntrl_c_simulation): From main.c. Event function that
1624 halts the simulator.
1625 (psim_stop): New. Asynchronously schedule a stop simulator event.
1626 (psim_run_until_stop): Delete. Made redundant by psim_stop.
1627
1628 * main.c (cntrl_c): Update.
1629 (cntrl_c_simulation): Moved to psim.c.
1630
1631 * sim_calls.c (sim_stop): New function. Use psim_stop which
1632 schedules a stop event.
1633 (sim_resume): Drop SIGINT handler, now in gdb/main.c.
1634 (sim_resume): Use psim_run as stop variable no longer needed.
1635
1636 Fri Apr 18 17:03:08 1997 Andrew Cagney <cagney@b1.cygnus.com>
1637
1638 * psim.c (psim_options): Handle -E option correctly.
1639 (psim_usage): Document.
1640
1641 Thu Apr 17 03:28:03 1997 Doug Evans <dje@canuck.cygnus.com>
1642
1643 * psim.c (psim_options): Ignore -E option (sets endianness).
1644 * sim_calls.c: #include bfd.h.
1645 (entry_point): New static local.
1646 (sim_load): Return SIM_RC. New arg abfd. Set start address from bfd.
1647 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
1648
1649 Tue Apr 15 14:57:18 1997 Ian Lance Taylor <ian@cygnus.com>
1650
1651 * Makefile.in (INSTALL): Set to @INSTALL@.
1652 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1653 (install): Depend upon installdirs. Use $(program_transform_name)
1654 directly, rather than using $(INSTALL_XFORM).
1655 (installdirs): New target.
1656
1657 Fri Apr 4 17:54:36 1997 Jim Wilson <wilson@cygnus.com>
1658
1659 * Makefile.in (tmp-hw, tmp-pk): Use for loop to eliminate duplicates
1660 rather than the non-portable cat -n.
1661
1662 Mon Apr 14 16:29:51 1997 Ian Lance Taylor <ian@cygnus.com>
1663
1664 * Makefile.in (INSTALL): Change install.sh to install-sh.
1665
1666 Tue Apr 1 18:15:14 1997 Jim Wilson <wilson@cygnus.com>
1667
1668 * ppc-instructions: Change milhwu to mulhwu.
1669
1670 Wed Apr 2 15:38:08 1997 Doug Evans <dje@canuck.cygnus.com>
1671
1672 * sim_calls.c (sim_open): New arg `kind'.
1673
1674 Wed Apr 2 14:51:17 1997 Ian Lance Taylor <ian@cygnus.com>
1675
1676 * COPYING: Update FSF address.
1677
1678 Tue Mar 25 16:17:59 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1679
1680 * main.c (sim_io_read_stdin): Only compile unbuffered IO code if
1681 all the required features are supported by the host OS.
1682
1683 Tue Mar 25 12:13:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1684
1685 * emul_bugapi.c (emul_bugapi_create): Guard against NULL images.
1686
1687 * configure.in (enable-sim-endain): Correct typo in usage (from
1688 Erik Landry <landry@ENGR.ORST.EDU>).
1689 * configure: Re-generate.
1690
1691 Fri Mar 14 18:23:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1692
1693 * Makefile.in (targ-vals.def): Re-do rule so that it works with
1694 FreeBSD's make. Didn't like $<.
1695
1696 Thu Mar 13 12:55:48 1997 Doug Evans <dje@canuck.cygnus.com>
1697
1698 * sim_calls.c (sim_open): New SIM_DESC result. Argument is now
1699 in argv form.
1700 (other sim_*): New SIM_DESC argument.
1701
1702 Thu Feb 13 10:35:14 1997 Andrew Cagney <cagney@phydeaux.cygnus.com>
1703
1704 * ppc-opcode-simple-array, ppc-opcode-simple-goto,
1705 ppc-opcode-simple-switch, ppc-opcode-complex-array,
1706 ppc-opcode-complex-goto, ppc-opcode-complex-switch,
1707 ppc-opcode-jump, ppc-opcode-goto, ppc-opcode-flat: Delete,
1708 superseeded by --sim-decode-mechanism option.
1709
1710 * ppc-opcode-simple, dc-simple: Rename to be 8.3
1711 * ppc-opcode-complex, dc-complex: Ditto.
1712 * ppc-opcode-stupid, dc-stupid: Ditto.
1713 * ppc-opcode-test-1, dc-test.01: Ditto.
1714 * ppc-opcode-test-2, dc-test.02: Ditto.
1715
1716 * configure.in (--enable-sim-opcode): Change prefix to dc- instead
1717 of ppc-opcode-.
1718
1719 Wed Feb 12 19:33:45 1997 Andrew Cagney <cagney@phydeaux.cygnus.com>
1720
1721 * Many of the ppc-opcode-* files are identical baring the type of
1722 lookup table. Instead of having multiple tables, igen can do this
1723 via an additional option.
1724
1725 * ld-decode.h, ld-decode.c (force_decode_gen_type): New function,
1726 allow the type of generated table specified in the decode file to
1727 be overridden.
1728
1729 * ld-decode.c (load_decode_table): Allow the table type to be
1730 overridden.
1731
1732 * igen.c (main): Add -T <mechanism> option so that an overriding
1733 instruction decode mechanism can be specified.
1734
1735 * configure.in: New option --sim-decode-mechanism to control
1736 igen's new -T <mechanism> flag.
1737 * Makefile.in (IGEN_FLAGS): Add IGEN_IDECODE_MECHANISM set by the
1738 configure script.
1739 * configure: Regenerate.
1740
1741 Tue Feb 11 13:49:10 1997 Michael Meissner <meissner@tiktok.cygnus.com>
1742
1743 * events.c (event_queue_create): Don't use NULL to initialize an
1744 integer field.
1745 (even_queue_{init,schedule_after_signal,tick}): Conditionalize use
1746 of sigprocmask to appropriate autoconf test.
1747
1748 * main.c ({cntrl_c,main}): Use RETSIGTYPE for signal return type,
1749 don't assume void.
1750 * sim_calls.c (sim_{ctrl_c,resume}): Ditto.
1751
1752 * Makefile.in (callback.o): Define HAVE_CONFIG_H, so callback.c
1753 includes our config.h.
1754
1755 Tue Feb 4 13:42:59 1997 Doug Evans <dje@canuck.cygnus.com>
1756
1757 * configure.in: Fix typo in test for callback.c.
1758 * configure: Regenerated.
1759
1760 Fri Feb 7 10:04:25 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1761
1762 * emul_chirp.c (emul_chirp_create): Handle a virtbase of -1 being
1763 found in the device tree.
1764
1765 Wed Feb 5 10:56:27 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1766
1767 * Property create/initialization still wasn't correctly ordered.
1768 Should be delaying everything related to ihandle creation until
1769 after the rest of the tree has been established.
1770
1771 * device.c (device_find_ihandle_runtime_property): Update.
1772 (device_add_ihandle_runtime_property): Update.
1773
1774 * tree.c (parse_ihandle_property): Delay lookup of the device to
1775 be opened until the ihandle initialization phase.
1776 * tree.c (print_properties): Update.
1777
1778 Wed Feb 5 10:56:27 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1779
1780 * gen-icache.c (print_icache_extraction): Add a reason parameter.
1781 Augment each extracted field with a comment citing the codes
1782 origin. Should simplify tracking down incorrect cache
1783 extractions.
1784
1785 Tue Feb 4 17:44:51 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1786
1787 * gen-icache.c: Generalize code handling XXX_is_NNN so that it
1788 works for normal and boolean table entries.
1789
1790 * psim.c (psim_write_memory): last_cpu == -1 or nr_cpus is now
1791 valid. Handle this just like *_{read,write}_register now handles
1792 it.
1793
1794 Mon Feb 3 17:18:16 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1795
1796 * events.c (insert_event_entry): Correct loop termination
1797 assertions.
1798
1799 Fri Jan 31 16:20:26 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1800
1801 * psim.c (psim_options): Add new option -c for max-iterations or
1802 count.
1803 (psim_usage): Document.
1804 (psim_max_iterations_exceeded): New function, abort simulation if
1805 max iterations exceeded.
1806
1807 * gen-idecode.c: Re-work the table lookup code so that it assumes
1808 that the entry is a leaf by default. Simplify the boolean table
1809 entry code so that it involves a mask + test instead of shift +
1810 shift + mask + test.
1811
1812 * gen-idecode.c: Correct generated igen body so that it no drops
1813 or doubles clock interrupts.
1814
1815
1816 Thu Jan 30 11:23:20 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1817
1818 * Makefile.in (BUILT_SRC_WO_CONFIG): Change targ-vals.* to
1819 @sim_targ_vals@
1820
1821 * configure.in (sim_callback, sim_targ_vals): Set sim_targ_valls
1822 if common callback is present.
1823
1824 Wed Jan 29 12:32:41 1997 Michael Meissner <meissner@tiktok.cygnus.com>
1825
1826 * configure.in (sim_callback): If the gdb is post 4.16, configure
1827 callback support from the common directory.
1828 * configure: Regenerate.
1829
1830 * Makefile.in (BUILT_SRC_WO_CONFIG): Add targ-vals.{h,def} and
1831 targ-map.c.
1832 (GDB_OBJ): Add callback support configured in.
1833 (gentmap,targ-vals.def): Build from common directory.
1834 (targ-vals.h,targ-map.c): Build by running gentmap.
1835 (callback.o): Build from source in common directory.
1836 (targ-map.o): Add dependency.
1837 (clean): Remove gentmap.
1838
1839 Wed Jan 29 12:14:19 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1840
1841 * igen wasn't aborting if the opcode table contained no valid
1842 fields.
1843
1844 * misc.c (name2i): Possibly abort if an invalid name is
1845 encountered.
1846 * ld-decode.c: Abort if the table type isn't found.
1847
1848 Wed Jan 29 12:14:19 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1849
1850 * When performance monitoring is disabled, it is still possible to
1851 determine the simulation speed by looking at the number of elapsed
1852 ticks recorded by the event queue.
1853
1854 * psim.c (psim_write_register, psim_read_register): Force the cpu
1855 to zero when it is either of `-1' or `nr_cpus'. In both cases the
1856 next cpu would be zero any way.
1857
1858 * mon.c (mon_print_info): If possible, print the system cycle
1859 performance. This is an indication of the number of instructions
1860 per second.
1861
1862 Wed Jan 29 12:14:19 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1863
1864 * The code to allow an event queue to be updated during a signal
1865 was missing. For main.c, a cntrl-c simulation termination wasn't
1866 handled cleanly.
1867
1868 * The simulation would not correctly restart if an event requested
1869 that the simulation be halted.
1870
1871 * psim.c (psim_options): Add hack to -i option to optionally
1872 include a level vis -i2.
1873 (psim_usage): Document.
1874
1875 * main.c (cntrl_c, cntrl_c_simulation): New functions. When a
1876 cntrl-c occures schedule an event to halt the simulation.
1877 (main): Catch CNTRL-C signals with the function cntrl_c.
1878
1879 * events.c (event_queue_process): Mask interrupts while
1880 manipulating the async event queue.
1881 (event_queue_init): Ditto.
1882 (event_queue_schedule_after_signal): Ditto.
1883
1884 * events.c (event_queue_process): Mark the event queue as being in
1885 the processing state when processing has started. Adjust code
1886 so that it is tolerant of halts.
1887 (event_queue_init): Start the event queue out with processing
1888 false.
1889 (event_queue_tick): Check that processing isn't still being
1890 performed.
1891
1892 * gen-idecode.c (print_run_until_stop_body): Call
1893 event_queue_process_events to clear possibly pending events before
1894 starting a simulation run. Re-arange main loop so that simulator
1895 is correctly restarted when an event halts the simulation.
1896
1897 * psim.c (psim_halt): Handle an event halting the simulation.
1898 * psim.c (psim_init): Adjust initial cpu - == -1 - to match
1899 reworked idecode.
1900
1901 Wed Jan 29 12:14:19 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1902
1903 * ppc-opcode-complex: Correct typo - was expanding ORA instead of
1904 RA. Based on instruction frequency stats, expand additional
1905 instructions.
1906 * ppc-instructions: Change all `RA == 0' to RA_is_0.
1907
1908 * ppc-opcode-stupid: Move all but the basic table in -complex into
1909 here. Update to new format.
1910
1911 * Makefile.in (tmp-defines): New target. Force defines.h to always
1912 be built. Hence get ppc-opcode-goto to build.
1913
1914 Tue Jan 28 13:00:19 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1915
1916 * hw_com.c (hw_com_instance_read, hw_com_instance_write):
1917 Implement.
1918
1919 Thu Jan 23 09:07:26 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1920
1921 * hw_trace.c (hw_trace_init_data): Delete. The trace options need
1922 to be initialized independant of the rest of the simulation
1923 initalization. Otherwize a trace option explictly set from gdb
1924 could be overridden by hw_trace.
1925
1926 * psim.c (psim_options): Clarify reason why the trace ioctl occures.
1927
1928 * FIXME: The trace code is too scattered - hw_trace.c, psim.c,
1929 debug.c. It could be much simpler.
1930
1931 Thu Jan 23 09:07:26 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1932
1933 * Some devices support removable media. Add hooks to the disk
1934 device so that it supports this.
1935
1936 * device.c (device_add_string_array_property,
1937 device_find_string_array_property): New functions, manipulate
1938 properties containing an array of strings.
1939 (device_find_string_property): Allow a string array.
1940 (device_init_static_properties): Update.
1941 (device_init_runtime_properties): Update.
1942
1943 * hw_disk.c (hw_disk_ioctl): Add ioctl for changing the disk
1944 media. If no file image is specified, use the next one in the
1945 image property list.
1946 (hw_disk_init_address): Change the file property so that it is a
1947 string array - use the first entry for the initial file image.
1948
1949 * tree.c (print_string_aray_property): New function - print a
1950 string array.
1951 (print_properties): Adjust.
1952 (print_string): Write a string, handling double quotes.
1953
1954 * device.h: Define an ioctl to `change-media' with an optional new
1955 media image.
1956
1957 * hw_disk.c: Allow floppy disk devices to be specified.
1958
1959 * psim.c (psim_command): New function, parse more complex psim
1960 commands such as "change-media" and "trace".
1961 * sim_calls.c (sim_do_command): Use.
1962
1963 Wed Jan 22 09:38:33 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1964
1965 * For expressions like (RA == 0) that are entered in to the cache
1966 as RA_is_0. If possible generate the result of the expression so
1967 that the compiler gets a better chance of eliminating dead
1968 branches.
1969
1970 * gen-icache.c (print_icache_extraction): For a cache entry of
1971 the form <name>_is_<const> where it is a boolean field, generate
1972 the result of the expression instead of the expression its self.
1973 (print_icache_body): Remove code that was looking for *_is_0 and
1974 then generating corresponding definitions.
1975
1976 * gen-icache.c (print_icache_struct): If there is no cache, do not
1977 output expressions in idecode.h file.
1978
1979 * gen-icache.c (print_icache_body): Output them here.
1980
1981 * ppc-opcode-complex: Clarify constant values for SPR==LR register
1982 expansion.
1983
1984 * ppc-cache-rules (RA_is_0, SPR_is_256): Two new cache entries.
1985
1986 Wed Jan 22 12:24:52 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
1987
1988 * The code that put values in and extracted values from the cache
1989 was too compilicated. The cache table did not allow values to be
1990 computed from cache entries. #defines could only be used when a
1991 cache was present, remove the restriction.
1992
1993 * ld-cache.h, ld-cache.c: Add a new cache entry type - SCRATCH. A
1994 scratch variable is defined when a cache entry is beinf
1995 filled. Change the definition of a COMPUTE variable to be defined
1996 when the cache entry is being used.
1997 * gen-icache.c: Update.
1998
1999 * ld-cache.h, ld-cache.c: Change field names so that their meaning
2000 is more obvious. old_name->field_name, new_name->derived_name.
2001 * gen-icache.c: Update
2002
2003 * gen-icache.h, gen-icache.c (print_icache_body): Make the three
2004 different types of cache code - put into cache, extract from
2005 cache, no cache - an explicit argument to print_icache_body.
2006 * gen-icache.c (print_icache_extraction): Ditto.
2007
2008 * gen-semantics.c (print_c_semantic): Update use.
2009 * gen-idecode.c (print_jump_insn): Update use.
2010 * gen-icache.c (print_icache_function): Update use.
2011
2012 * igen.c (main): Change 'R' option so that it does not force the
2013 cache.
2014
2015 * configure.in (enable-sim-icache): Clarify description. Make
2016 #define one of the defaults regardless of the cache. Probably
2017 should revamp and add a separate option.
2018
2019 Tue Jan 21 13:26:10 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2020
2021 * pk_disklabel.c (block_is_fdisk): Tidy up traces - use dos
2022 partition numbering.
2023 (pk_disklabel_create_instance): Partition 1..4 are valid - not
2024 1..3.
2025 (is_iso9660): New function, verify a CD9660 File system.
2026 (pk_disklabel_create_instance): Start expanding so that active
2027 partition selection is supported.
2028
2029 Mon Jan 20 11:20:15 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2030
2031 * The cap object was retaining a reference to the instance of a
2032 device after it was deleted. Instead add and remove cap's from the
2033 cap db as they are created and deleted. This ensuring that a
2034 capibility is only used during the lifetime of the corresponding
2035 object.
2036
2037 * cap.h, cap.c: Correct cap type - was signed32 should be
2038 signed_cell.
2039
2040 * cap.c (cap_add, cap_remove): New methods for cap object that
2041 allow the explicit addition and removal of internal objects that
2042 the cap knows about.
2043
2044 * cap.c (cap_init): Rewrite. Verify that the only objects
2045 remaining in the cap data base are those that were entered first.
2046 Thse objects will be the permenant ones.
2047 * device.c (device_init_address): Remember to initialize the cap
2048 database.
2049
2050 * device.c (device_create_instance_from): Explicitly add device
2051 instances to the cap database. Simplify create code.
2052 (device_instance_delete): Explicitly remove device instances from
2053 the cap database.
2054
2055 * device.c (device_create_from): Explicitly add a device to the
2056 cap data base.
2057
2058 * device.c (device_create_from): Always set the cap members.
2059
2060 * hw_disk.c: Output the instance when tracing.
2061
2062 Sun Jan 19 16:44:29 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2063
2064 * tree.c (split_device_specifier): Add support for aliases when
2065 looking up a device. Now needs a device as an argument.
2066 (split_property_specifier): Ditto.
2067
2068 Sun Jan 19 15:28:23 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2069
2070 * The memory "claim" and "release" methods take an address and
2071 size as arguments. These may be multi cell values. Initially fix
2072 the memory code so that they check/detect this. Leave the
2073 adjustment of any clients to later.
2074
2075 * hw_memory.c (hw_memory_instance_claim,
2076 hw_memory_instance_release): Handle multi-cell memory devices.
2077
2078 * hw_memory.c (hw_memory_instance_claim): Be tolerant towards the
2079 release of memory regions that were not claimed.
2080
2081 Fri Jan 17 12:01:07 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2082
2083 * device.h, device.c (device_instance_call_method): Correct return
2084 type - can return either 0 or -1, hence should be a signed type.
2085 * device_table.h: Ditto.
2086
2087 * hw_memory.c (hw_memory_instance_claim,
2088 hw_memory_instance_release): Update.
2089 * hw_disk.c (hw_disk_max_transfer, hw_disk_block_size,
2090 hw_disk_nr_blocks): Ditto.
2091
2092 Fri Jan 17 11:50:13 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2093
2094 * emul_chirp.c (chirp_emul_claim): Implement using the "claim"
2095 method belonging to "/chosen/memory".
2096 (chirm_emul_release): Ditto.
2097
2098 * Makefile.in (LIB_INLINE_SRC): Remove emul_* from list of files
2099 that are inlined. These modules are called via a table and are
2100 not made inline.
2101
2102 * hw_init.c (update_for_binary_section): Fix failure to allocate
2103 memory used by the binary in real-mode executions. If "claim"
2104 property is present, allocate memory from the "/chosen/memory"
2105 device.
2106
2107 * emul_chirp.c (emul_chirp_create): Specify that memory should be
2108 claimed when loading a real image.
2109
2110 * hw_memory.c (hw_memory_instance_claim): Don't page align memory
2111 allocations.
2112
2113 * hw_memory.c (hw_memory_instance_release): Avoid infinite loop
2114 when merging adjacent memory chunks.
2115
2116 Thu Jan 16 08:51:25 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2117
2118 * vm.h (vm_data_map_read_buffer, vm_data_map_write_buffer): Add
2119 optional PROCESSOR & CIA args so that this routine also abort an
2120 access.
2121
2122 * vm_n.h (vm_data_map_read_N, vm_data_map_write_N): For a
2123 miss-aligned access when a transfer fails abort.
2124
2125 * emul_bugapi.c (emul_bugapi_do_write): Use emul_read_buffer
2126 instead of the vm_read_buffer.
2127 * emul_netbsd.c (do_write): Ditto.
2128 * emul_unix.c (do_unix_write): Ditto.
2129
2130 Wed Jan 15 14:38:25 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2131
2132 * configure.in (--enable-sim-jump): Default is NULL and not -E.
2133 * configure: Regenerate.
2134
2135 * basics.h (__attribute__): Enable attributes if GCC >= 2.6.
2136 (UNUSED): Only enable UNUSED if GCC >= 2.7.
2137
2138 * gen-icache.c (print_icache_extraction): Print UNUSED macro
2139 instead of explicit __unused__ attribute.
2140 (print_icache_body): Ditto.
2141 * idecode_expression.h (FPSCR_BEGIN): Use UNUSED.
2142
2143 Wed Jan 15 13:54:50 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2144
2145 * cpu.h, cpu.c (cpu_synchronize_context): Add CIA argument as
2146 reference point.
2147
2148 * vm.c (vm_synchronize_context): Add PROCESSOR and CIA as
2149 arguments so that there is a reference point for recovery.
2150 (vm_synchronize_context): Pass processor+cia for errors.
2151 (om_unpack_sr): Ditto.
2152 (om_unpack_srs): Ditto.
2153 * vm.c (vm_create): Review error messages.
2154
2155 * vm.c: Include "cpu.h" so that cpu_error is visible.
2156
2157 * ppc-instructions (Return From Interrupt): Pass CIA.
2158 (Instruction Synchronize): Ditto.
2159 * psim.c (psim_init): Ditto.
2160
2161 Wed Jan 15 12:25:11 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2162
2163 * cpu.h, cpu.c (cpu_error): Aborts simulation with error message,
2164 but also saves current processor state.
2165
2166 * basics.h: Move #include <stdarg.h> to here from device_table.h.
2167
2168 * interrupts.c (perform_oea_interrupt): Use. No longer loose CIA
2169 when simulation aborted.
2170 (program_interrupt): Ditto.
2171 (floating_point_unavailable_interrupt): Ditto.
2172 (alignment_interrupt): Ditto.
2173 (floating_point_assist_interrupt): Ditto.
2174 (perform_oea_interrupt): Ditto.
2175 (machine_check_interrupt): Ditto.
2176
2177 Tue Jan 14 12:19:10 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2178
2179 * ppc-instructions (Move from Special Purpose Register): Support
2180 move from DEC.
2181
2182 Mon Jan 13 16:58:12 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2183
2184 * debug.h, debug.c: Add "interrupts" trace option.
2185
2186 * interrupts.c (data_storage_interrupt): Add tracing.
2187 (machine_check_interrupt): Ditto.
2188 (instruction_storage_interrupt): Ditto.
2189 (alignment_interrupt): Ditto.
2190 (program_interrupt): Ditto.
2191 (floating_point_unavailable_interrupt): Ditto.
2192 (system_call_interrupt): Ditto.
2193 (floating_point_assist_interrupt): Ditto.
2194 (deliver_hardware_interrupt): Ditto.
2195
2196 * interrupts.c (program_interrupt): For UEA mode, halt the
2197 processor - so that the current state is saved - instead of
2198 aborting.
2199 (floating_point_unavailable_interrupt): Ditto.
2200 (floating_point_assist_interrupt): Ditto.
2201
2202 Thu Jan 2 09:10:41 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2203
2204 * interrupts.c (perform_oea_interrupt): Halt rather than abort on
2205 a double interrupt.
2206
2207 Wed Jan 1 22:54:52 1997 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2208
2209 * ppc-instructions (Store Multiple Word, Load Multiple Word):
2210 Enable.
2211
2212 * tree.c (print_properties): For an array consider printing it out
2213 as an integer array.
2214
2215 * hw_memory.c (hw_memory_init_address): If an "available" property
2216 is present, use that to initialize the available memory instead of
2217 using the reg property.
2218
2219 * emul_generic.c (emul_add_tree_hardware): Add "available"
2220 property to memory device.
2221
2222 Fri Dec 20 13:19:07 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2223
2224 * ppc-instructions (Rotate Left Word then AND with Mask): Enable.
2225
2226 * device.c (device_instance_call_method): Was only looking at the
2227 first method.
2228
2229 * hw_disk.c (hw_disk_nr_blocks): Implement #blocks method.
2230 (hw_disk_block_size): Implement block-size method.
2231 (hw_disk_max_transfer): Implement max-transfer method.
2232
2233 * hw_phb.c (hw_phb_init_address): Reinit the rest of the PHB.
2234
2235 * emul_chirp.c (chirp_emul_instance_to_path): Recover from an
2236 invalid ihandle.
2237 (chirp_emul_instance_to_package): Ditto.
2238 (chirp_emul_method): Ditto.
2239 (chirp_emul_read): Ditto.
2240 (chirp_emul_write): Ditto.
2241 (chirp_emul_close): Ditto.
2242 (chirp_emul_seek): Ditto.
2243 (chirp_emul_package_to_path): Ditto (for phandle).
2244 (chirp_emul_package_to_path): Return the length.
2245
2246 * psim.c (psim_merge_device_file): Allow continuation lines.
2247
2248 Thu Dec 19 11:09:43 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2249
2250 * emul_chirp.c (chirp_emul_boot): Implement. Well report the new
2251 string and exit.
2252
2253 * emul_chirp.c (chirp_emul_exit): Correct type of args struct
2254 members - *_cell not host dependant int.
2255
2256 Wed Dec 18 17:49:59 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2257
2258 * interrupts.c (perform_oea_interrupt): Print additional
2259 information if a double interrupt is encountered.
2260
2261 Wed Dec 18 17:49:59 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2262
2263 * psim.c (psim_merge_device_file): Tolerate an incorrect file-name
2264 being specified with the -f option.
2265 (psim_merge_device_file): Correct check for end of string.
2266
2267 Wed Dec 18 17:49:59 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2268
2269 * emul_chirp.c (chirp_emul_peer): Was falling off the end of the
2270 list of devices. Return zero to the client instead.
2271 * emul_chirp.c (chirp_emul_child): Ditto
2272 * emul_chirp.c (chirp_emul_parent): Ditto
2273
2274 * device.c (device_root): Assert assumption about the device being
2275 valid.
2276
2277 Tue Dec 17 15:12:38 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2278
2279 * emul_chirp.c (emul_chirp_create): Add description property to
2280 each significant node in the device tree.
2281 * emul_bugapi.c (emul_bugapi_create): Ditto.
2282
2283 Fri Dec 13 14:30:31 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2284
2285 * main.c (sim_io_read_stdin): For a single byte STDIO read, use a
2286 tempoary two byte buffer. Single byte read with fgets will not
2287 work.
2288 * main.c: Include errno.h.
2289 (sim_io_read_stdin): For non-STDIO, make it work.
2290
2291 * emul_chirp.c (chirp_emul_read): Return the correct error status.
2292
2293 Fri Dec 13 14:30:31 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2294
2295 * std-config.h (WITH_STDIO): Don't hard-wire the STDIO mechanism.
2296 Instead have each emulation default it to DO_USE_STDIO.
2297
2298 * emul_generic.c (emul_add_tree_options): Select the STDIO I/O
2299 mechanism as the default if enabled or if nothing selected.
2300
2301 * sim_calls.c (sim_io_read_stdin): Passify GCC's desire for a
2302 return value.
2303 (sim_io_write_stdout): Ditto.
2304 (sim_io_write_stderr): Ditto.
2305 * main.c (sim_io_write_stdout): Ditto.
2306 (sim_io_write_stderr): Ditto.
2307 (sim_io_read_stdin): Ditto.
2308
2309 Tue Dec 10 10:31:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2310
2311 * emul_chirp.c (emul_chirp_instruction_call): Make *printf calls
2312 type correct.
2313 * vm.c (om_effective_to_virtual): Ditto.
2314 * events.c (event_queue_schedule{,_after_signal}): Ditto.
2315 (event_queue_{deschedule,process}): Ditto.
2316 * hw_htab.c (htab_decode_hash_table): Ditto.
2317 (htab_map_{page,binary}): Ditto.
2318 * hw_opic.c (hw_opic_init_data): Ditto.
2319 (handle_interrupt): Ditto.
2320 (do_processor_init_register_{read,write}): Ditto.
2321 (write_vector_priority_register): Ditto.
2322 ({read,write}_destination_register): Ditto.
2323 (do_suprious_vector_register_{read,write}): Ditto.
2324 (do_current_task_priority_register_N_{read,write}): Ditto.
2325 (do_timer_frequency_reporting_register_{read,write}): Ditto.
2326 (do_timer_N_{current,base}_count_register_{read,write}): Ditto.
2327 (do_ipi_N_dispatch_register_write): Ditto.
2328 (do_vendor_identification_register_read): Ditto.
2329 (do_feature_reporting_register_N_read): Ditto.
2330 (do_global_configuration_register_N_{read,write}): Ditto.
2331 * hw_phb.c (hw_phb_attach_address): Ditto.
2332 (hw_phb_unit_decode): Ditto.
2333 (hw_phb_address_to_attach_address): Ditto.
2334 (hw_phb_io_{read,write}_buffer): Ditto.
2335 * hw_ide.c (setup_fifo): Ditto.
2336
2337 * sim_calls.c ({defs,callback,remote-sim}.h): Find gdb include
2338 files via -I<dir> instead of using "../../gdb/" prefixes.
2339
2340 Tue Dec 10 10:12:44 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2341
2342 * debug.h: Add tracing for the pal device.
2343 * hw_pal.c: Update.
2344
2345 * emul_chirp.c (chirp_emul_getprop): More tracing.
2346
2347 Tue Dec 10 10:12:44 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2348
2349 * device.h, device.c (device_find_ihandle_runtime_property): New
2350 function. Reverse of add_ihandle_runtime property.
2351 (device_init_runtime_properties): Use it.
2352
2353 * device.c (find_property_entry): New function returns the
2354 internal property spec.
2355 (device_set_property): Use.
2356 (device_find_property): Use.
2357
2358 Tue Dec 10 10:12:44 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2359
2360 * psim.c (psim_merge_device_file): Strip newline from device
2361 specs.
2362
2363 Tue Dec 10 10:12:44 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2364
2365 * hw_htab.c (htab_map_binary): For overlapping text / data maps
2366 merge the two. Also check that the merge is safe.
2367
2368 * emul_chirp.c (emul_chirp_create): Add a description property to
2369 the pte's so that they are easier to identify.
2370
2371 (emul_chirp_create): Don't specify a load address for the CHRP
2372 image. Always use the values specified by the executable.
2373
2374 * hw_htab.c (htab_map_page): Abort if a duplicate map is
2375 encountered.
2376
2377 Mon Dec 9 12:08:46 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2378
2379 * hw_htab.c (htab_map_page): Formatting.
2380
2381 * emul_chirp.c (emul_chirp_instruction_call): Check for a NULL
2382 method name when handling the client call. Also check for other
2383 bad call arguments.
2384
2385 * emul_chirp.c (emul_chirp_create): Allow real-mode?, real-base,
2386 etc to be overriden.
2387
2388 Mon Dec 9 12:08:46 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2389
2390 * os_emul.c (os_emul_create): Use tree find property instead of
2391 device find property - sigh.
2392
2393 Thu Dec 5 10:46:42 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2394
2395 * 961205: Release snapshot 961205.
2396
2397 Thu Dec 5 10:46:42 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2398
2399 * configure.in (hostbitsize, bitsize): Fix typo in error message -
2400 cannot contain a comma.
2401 (sim-warnings): Check for more potential errors.
2402
2403 * psim.c (psim_usage): Add -f <file> option. Specifies a file
2404 containing device tree specifications that should be merged into
2405 the device tree.
2406
2407 * configure.in: Sort options.
2408 * configure: Rebuild
2409
2410 Wed Dec 4 13:57:31 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2411
2412 * psim.c (psim_usage): Add -n option - specify number of
2413 processors.
2414
2415 * emul_chirp.c: Add description.
2416 * emul_bugapi.c: Ditto.
2417 * emul_unix.c: Ditto.
2418 * emul_netbsd.c: Ditto.
2419
2420 Fri Nov 29 11:12:22 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2421
2422 * hw_pal.c (hw_pal_attach_address): New function, if an attach is
2423 encountered, assume that it is the single disk.
2424 * hw_pal.c: Add generic device/size decode methods.
2425
2426 * hw_nvram.c (hw_nvram_init_address): Use the first nonzero reg
2427 property entry when determining the nvram size.
2428
2429 * hw_core.c: Add generic address/size decode methods.
2430
2431 * emul_chirp.c (emul_chirp_instruction_call): Return and trace
2432 nonzero status from client functions.
2433
2434 * main.c (error): Always include a cariage return when writing out
2435 errors.
2436
2437 Wed Nov 20 00:36:55 1996 Doug Evans <dje@canuck.cygnus.com>
2438
2439 * sim_calls.c (sim_resume): Reset sim_should_run if single
2440 stepping.
2441
2442 Thu Nov 28 13:19:46 1996 Andrew Cagney <cagney@kremvax.tpgi.com.au>
2443
2444 * emul_bugapi.c (emul_bugapi_do_diskio): Add support for multiple
2445 optional disks.
2446
2447 * emul_generic.c (emul_add_tree_hardware): Drop the dummy eeprom.
2448 Attach the pal - for I/O - as a pseudo device haning from the
2449 firmware sub tree.
2450
2451 * emul_bugapi.c (emul_bugapi_create): Add a small memory device to
2452 the device tree at the address of the hi-mem interrupt vector
2453 addreses. Used by bugapi to establish its trap instructions.
2454
2455 * debug.h: Add a new macro DITRACE for tracing device instances.
2456
2457 * debug.h: Extend the DTRACE macro so that it can also tests for
2458 device specific tracint.
2459
2460 * device.h, device.c (device_trace): Add method to determine
2461 device specific tracing.
2462 (device_init_address): Set the devices tracing level.
2463
2464 Thu Nov 21 12:05:32 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2465
2466 * tree.h, tree.c (tree_device): New files - separate out the
2467 device parser and other tree operations from the device.
2468
2469 * inline.h, inline.c (INLINE_TREE): Add.
2470 * device.h, device.c (device_tree_add_parsed): Delete.
2471 * Makefile.in (tree.c): Add rules for new file.
2472 * Makefile.in: Better order the emul_* files.
2473
2474 * emul_generic.c (emul_add_tree_hardware): Update.
2475 * emul_netbsd.c (emul_netbsd_create): Update.
2476 * emul_unix.c (emul_unix_create): Ditto.
2477 * emul_chirp.c (emul_chirp_create): Ditto.
2478 * emul_bugapi.c (emul_bugapi_create): Ditto.
2479 * psim.c (psim_tree): Ditto.
2480 * hw_init.c: Ditto.
2481
2482 * emul_generic.h: Include tree.h
2483 * Makefile.in: Add to EMUL_GENERIC_H dependencies.
2484
2485 * device.h, device.c (device_root): New function - returns the
2486 root of the tree.
2487 * corefile.c: Use.
2488
2489 * device.h, device.c (device_clean): New function, clean up device
2490 ready for next simulation run. This includes things like deleting
2491 interrupt edges and properties created during the simulation and
2492 also scrubbing any pre-defined properties.
2493 * tree.c (tree_init): Use.
2494
2495 * device.h, device.c (device_init_static_properties): New
2496 function. Initialize any static predefined properties. By static
2497 we mean those that have values that can be determined before the
2498 device tree initialization has started.
2499 * tree.c (tree_init): Use.
2500
2501 * device.h, device.c (device_init_address): Add code to
2502 check/verify the devices #address-cells and #size-cells.
2503 (device_add_integer_property): Delete corresponding code.
2504 (device_nr_address_cells, device_nr_data_cells): Check for
2505 property when returning value.
2506
2507 * device.h, device.c (device_init_runtime_properties): New
2508 function. Initialize those properties that are not `static'. At
2509 present the only such property is the ihandle.
2510 * tree.c (tree_init): Use.
2511
2512 * device.h, device.c (reg, ranges): Rework these so that they use
2513 an array of the fundamental type - single reg or single range
2514 entry.
2515
2516 * device.h, device.c (device_add_ihandle_runtime_property):
2517 Re-implement the adding of an ihandle during tree construction so
2518 that it better fits in with device initialization.
2519
2520 Thu Nov 21 12:05:32 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2521
2522 * device.h, device.c (device_ioctl): Add additional argument -
2523 request - so that the caller must always specify the type of
2524 the ioctl request.
2525
2526 * device_table.h: Update.
2527 * hw_trace.c (hw_trace_ioctl): Ditto.
2528 * hw_vm.c (hw_vm_ioctl_callback): Ditto.
2529 * hw_init.c (hw_stack_ioctl_callback): Ditto.
2530 * psim.c (psim_options): Ditto.
2531
2532 Thu Nov 21 12:05:32 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2533
2534 * BUGS: Updated a bit.
2535
2536 Wed Nov 20 14:06:37 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2537
2538 * hw_opic.c: Finish - third round.
2539
2540 Wed Nov 20 12:02:08 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2541
2542 * hw_glue.c (hw_glue_io_read_buffer_callback): Fix miscalc of glue
2543 reg index.
2544 (hw_glue_io_write_buffer_callback): Ditto.
2545
2546 Tue Nov 19 21:17:08 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2547
2548 * events.c (event_queue_process): Was incorrectly consuming future
2549 events on the queue when they should be left alone.
2550
2551 * debug.h, debug.c (events): Add support for event queue tracing.
2552 * events.c: Add event tracing.
2553
2554 * debug.h, debug.c: Order device trace options.
2555
2556 Fri Nov 15 15:23:39 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2557
2558 * pk_disklabel.c (pk_disklabel_create_instance): Fix up some
2559 warnings generated by GCC.
2560
2561 Sun Nov 17 17:59:14 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2562
2563 * sim-endian.h: Add LE versions of byte swap macros. Needed for
2564 PCI devices which are little-endian.
2565
2566 * sim-endian-n.h (endian_le2h_N, endian_h2le_N): Ditto
2567
2568 Sun Nov 17 17:59:14 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2569
2570 * hw_iobus.c (hw_iobus_attach_address_callback): Change the iobus
2571 so that it is implementing a 1-1 address map.
2572
2573 * emul_generic.c (emul_add_tree_hardware): Adjust.
2574
2575 * emul_generic.c (emul_add_tree_hardware): Don't add the nvram as
2576 a default.
2577
2578 Sun Nov 17 17:59:14 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2579
2580 * device.c (split_find_device): Be tolerant of missing unit
2581 addresses.
2582
2583 Fri Nov 15 16:49:49 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2584
2585 * basics.h (port_direction): New type, specify the direction of
2586 any `port'.
2587
2588 * device.h, device.c (device_interrupt_decode): Include
2589 specification of port direction in operations.
2590 (device_interrupt_encode): Ditto.
2591
2592 * device_table.h: Add a direction field to the interrupt port
2593 table.
2594
2595 * device.c (device_tree_add_parsed): Specify port direction.
2596
2597 Thu Nov 14 21:38:13 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2598
2599 * hw_opic.c: Finish - second round.
2600
2601 Thu Nov 7 00:18:59 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2602
2603 * hw_htab.c (htab_init_data_callback): Allow the virtual-address
2604 to be specified as an array which allows 64bit addresses.
2605
2606 * device.c (device_find_integer_array_property): New function.
2607 Simplify the querying of elements of an integer array.
2608 (device_add_integer_property, device_find_integer_property):
2609 Update to correctly use the cell type.
2610
2611 * vm.c (om_unpack_sr): Clarify shifting comment.
2612 (om_pte_0_masked_vsid): Ditto. Add 64bit version.
2613
2614 * emul_chirp.c (emul_chirp_create): Initialize the segment
2615 registers.
2616
2617 * vm.c (om_effective_to_virtual): Trace segment register use.
2618
2619 * hw_htab.c (htab_map_page): Print out the pteg base address to
2620 simplify cross checking between vm and the htab.
2621 (htab_decode_hash_table): Use device_error instead of error.
2622 (htab_map_page): Ditto.
2623 (htab_dma_binary): Ditto.
2624 (htab_map_binary): Ditto.
2625 (htab_init_data_callback): Ditto.
2626
2627 Wed Nov 6 20:20:58 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2628
2629 * interrupts.h: Clarify what the optional instruction program
2630 interrupt is - a subset of illegal instruction program interrupt.
2631
2632 * interrupts.c (program_interrupt): For UEA mode, clarify what an
2633 optional instruction program interrupt is.
2634 (program_interrupt): For OEA mode, as per spec, generate an
2635 illegal instruction program interrupt when an optional instruction
2636 is encountered.
2637
2638 * gen-semantics.c (print_semantic_body): Delete code
2639 differentiating between an unimplemented floating point and normal
2640 instruction. Instead, such a case can be handled explicitly.
2641
2642 * ppc-instructions (store floating-point as integer word indexed):
2643 Mark as optional.
2644 (Floating Convert to Integer Doubleword): Make the floating point
2645 assist interrupt explicit.
2646 (Floating Convert To Integer Doubleword with round towards Zero):
2647 Ditto.
2648 (Floating Convert To Integer Word): Ditto
2649 (Move From FPSCR): Ditto.
2650 (Move to Condition Register from FPSCR): Ditto.
2651 (Move To FPSCR Fields): Ditto.
2652 (Move To FPSCR Field Immediate): Ditto.
2653 (Move To FPSCR Bit 0): Ditto.
2654 (Move To FPSCR Bit 1): Ditto.
2655
2656 Mon Nov 4 12:49:13 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2657
2658 * corefile.c (core_map_read_buffer, core_map_write_buffer): Avoid
2659 breaking up transfers.
2660
2661 * corefile.c: Adjust arguments so that the client server
2662 relationship is clarified.
2663
2664 * hw_glue.c (hw_glue_init_address): Update so it can be attached
2665 to a PCI bus.
2666
2667 * hw_disk.c (hw_disk_instance_write): Add more checks to disk IO -
2668 looking for things like overflow/underflow.
2669
2670 Sun Nov 3 18:45:20 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2671
2672 * emul_generic.c (emul_add_tree_hardware): Hang the disk off the
2673 PAL device instead of the IOBUS. The disk must be attached to a
2674 logical bus.
2675
2676 * hw_disk.c (hw_disk_init_address): Just use the unit address
2677 directly in the attach - the rest isn't relevant.
2678
2679 Sat Nov 2 21:48:57 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2680
2681 * configure.in (sim-hardware, sim-packages): Allow additional
2682 hardware and packages to be prefixed as well as appended.
2683
2684 * Makefile.in (tmp-hw, tmp-pk): Retain the user specified order of
2685 packages when building them. Consequently, a user can override a
2686 standard device by prefixing their own version.
2687
2688 * Makefile.in (hw_opic.o, hw_pci.o, hw_ide.o): Add dependencies.
2689
2690 Fri Nov 1 14:42:57 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2691
2692 * mon.c (_cpu_mon): Add fields for counting 1, 2, 4, and 8 byte
2693 reads and writes.
2694 (mon_{read,write}): Count 1, 2, 4, and 8 byte reads/writes.
2695 (mon_print_info): Correct typo regarding # of unaligned reads and
2696 writes. Print out how many 1, 2, 4, and 8 byte reads/writes there
2697 are.
2698
2699 Tue Oct 29 17:55:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2700
2701 * configure.in (AC_CHECK_FUNCS): Add access.
2702 * config{.in,ure}: Regenerate.
2703
2704 * emul_unix.c (do_unix_nop): System call that always succeeds.
2705 (do_unix_access): Support access system call.
2706 (solaris_descriptors): Make sigaltstack and sigaction nops.
2707 ({solaris,linux}_descriptors): Add support for access.
2708
2709 Tue, 8 Oct 18:42:26 1996 Jason Molenda <crash@cygnus.co.jp>
2710
2711 * Makefile.in (clean): Move config.log to distclean.
2712
2713 Fri Nov 1 16:44:28 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2714
2715 * corefile-n.h (core_map_write_N): Improve abort messages.
2716
2717 * device.h, device.c (device_attach_address): Remove unused name
2718 parameter.
2719 (device_detach_address): Ditto.
2720 * device_table.h, device_table.c: Update.
2721 * hw_iobus.c (hw_iobus_attach_address_callback): Ditto.
2722 * hw_nvram.c (hw_nvram_init_address): Ditto.
2723 * hw_memory.c (hw_memory_init_address): Ditto.
2724 * hw_vm.c (hw_vm_init_address_callback): Ditto.
2725 (hw_vm_attach_address): Ditto.
2726 (hw_vm_add_space): Ditto.
2727 * hw_init.c (update_for_binary_section): Ditto.
2728 * hw_core.c (hw_core_attach_address_callback): Ditto.
2729
2730 * hw_iobus.c (hw_iobus_attach_address_callback): Rewrite to handle
2731 configurable parent busses.
2732
2733 Wed Oct 30 18:46:32 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2734
2735 * device_table.c (generic_device_size_to_attach_size): Provide
2736 limited support for multi-cell sizes.
2737 (generic_device_address_to_attach_address): Ditto for addresses.
2738
2739 Tue Oct 29 02:01:29 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2740
2741 * device.c (device_add_integer_property): Check for setting of
2742 #address-cells and #size-cells properties. For these, update the
2743 corresponding device values.
2744 (device_nr_address_cells, device_nr_size_cells): Use the value
2745 from the device instead of the property.
2746
2747 * hw_core.c: Use generic address and size conversions for the top
2748 bus.
2749
2750 * hw_memory.c (hw_memory_init_address): Tolerate case where
2751 #address and #size cells is greater than 1.
2752
2753 * device.c (device_tree_print_device): Clean out printing of
2754 properties.
2755
2756 * device.c (split_device_specifier): Don't detect comments here -
2757 "#" can be a valid prefix - eg #size-cells.
2758
2759 * psim.c (psim_merge_device_file): Suppress comments and blank
2760 lines here.
2761
2762 * emul_generic.c (emul_add_tree_hardware): Fix typo of incorrect
2763 pal unit address. Add the property /#address-cells to the root of
2764 the tree.
2765
2766 * device.c (device_template_create_device): Check that the unit
2767 address was successfully parsed.
2768
2769 * device_table.c (generic_device_unit_decode): Rewrite to better
2770 handle multi-cell addresses.
2771 (generic_device_unit_encode): Ditto.
2772
2773 * emul_generic.c (emul_add_tree_hardware): "reg" properties no
2774 longer need the explicit array type - the parser takes care of it.
2775
2776 * pk_disklabel.c (pk_disklabel_create_instance): Add NULL return
2777 to keep GCC happy.
2778
2779 Mon Oct 28 22:55:48 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2780
2781 * hw_ide.c: New file. Model of a basic IDE interface attached to
2782 a PCI bus.
2783
2784 * configure.in (hardware): Add the ide device to the default
2785 configuration.
2786 * configure: Regenerate.
2787
2788 * debug.h, debug.c: Add tracing option for the IDE device.
2789
2790 Fri Oct 25 21:28:25 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2791
2792 * hw_phb.c, hw_phb.h: New files - implement a PHB.
2793
2794 * configure.in (hardware): Add the phb to the list of devices to
2795 build by default.
2796
2797 Fri Oct 25 21:28:25 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2798
2799 * hw_com.c: Review description.
2800 * hw_disk.c: Ditto.
2801 * hw_htab.c: Ditto.
2802 * hw_eeprom.c: Ditto.
2803 * hw_init.c: Ditto.
2804 * hw_cpu.c: Ditto.
2805
2806 * hw_com.c: Update event handling.
2807
2808 * hw_disk.c: Implement tracing.
2809
2810 Fri Oct 25 21:28:25 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2811
2812 * device_table.c (generic_device_init_address): Use
2813 assigned-addresses property in preference to any other reg
2814 property.
2815
2816 Fri Oct 25 21:28:25 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2817
2818 * device.h, device.c (device_find_ranges_property): New function.
2819 Simplify the manipulation of "ranges" properties.
2820
2821 * device.c (device_add_parsed): Extend to include support for the
2822 ranges property.
2823
2824 * device.c (device_add_parsed): Add assigned-addresses to the list
2825 of reg type properties.
2826
2827 * device.c (device_tree_print_device): Add code to format and
2828 print a ranges property.
2829
2830 * device.h, device.c (device_nr_address_cells,
2831 device_nr_size_cells): New functions. Determine the values of the
2832 standard properties #address-cells and #size-cells. Both of which
2833 are optional and have default values of two and one respectfuly.
2834 Previously, code that determined #address-cells was incorrectly
2835 using a value of one.
2836
2837 Fri Oct 25 21:28:25 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2838
2839 * debug.h, debug.c: Sort debug options, Add entries for the
2840 comming PHB device.
2841
2842 Fri Oct 18 12:12:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2843
2844 * ppc-instructions (Floating Select): Add support for fsel unless
2845 model is 601. Allow user to filter out instruction unless -Fs is
2846 passed to igen.
2847 (Store Floating-Point as Integer Word Indexed): Raise optional
2848 instruction program abort. Allow user to filter out instruction
2849 unless -Fs is passed to igen.
2850 (Floating Square Root{, Single}): Ditto.
2851 (Floating Reciprocal Estimate Single): Ditto.
2852 (Floating Reciprocal Square Root Estimate): Ditto.
2853
2854 * configure.in (--enable-sim-filter): If not passed, pass 32,f,s
2855 to igen.
2856 * configure: Regenerate.
2857
2858 * interrupts.h (program_interrupt_reasons): Add
2859 optional_instruction_program_interrupt.
2860
2861 * interrupts.c (program_interrupt): Call error with more detailed
2862 information on program interrupts, particularly in user mode. Add
2863 support for optional_instruction_program_interrupt.
2864
2865 Wed Sep 25 10:20:29 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2866
2867 * hw_glue.c: New device. Hooks for manipulating interrupt ports.
2868
2869 * debug.h, debug.c (trace_glue_device): Add tracing support for
2870 the interrupt glue logic device.
2871
2872 * configure.in (hardware): Add glue device.
2873 * configure: Regenerate.
2874
2875 Tue Sep 24 20:55:38 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2876
2877 * device.c (device_tree_parse_integer_property): New function,
2878 parse a list of integers as an array property.
2879 (device_tree_add_parsed): Call it.
2880
2881 * device.c (device_tree_parse_string_property): New function,
2882 parse a list of strings as a string property (with embeded
2883 null's). For moment, don't try to implement a complext string
2884 parser.
2885 (device_tree_add_parsed): Call it.
2886
2887 Tue Sep 24 16:30:48 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2888
2889 * hw_opic.c: New file. OpenPIC interrupt controller.
2890
2891 * configure.in (hardware): Add opic device.
2892 * configure: re-generate.
2893
2894 * hw_pic.c: Delete, replaced with hw_opic.c.
2895
2896 * debug.h, debug.c: Add debug option for OpenPIC device. -
2897 opic-device.
2898
2899 Tue Sep 24 16:30:48 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2900
2901 * Makefile.in (psim.o, idecode.o): Since idecode and not psim is
2902 now the file that does all the inlining.
2903
2904 * Makefile.in (LIB_SRC, LIB_INLINE_SRC, idecode.o): Break out the
2905 library source code that could be involved in an inlining. Make
2906 idecode.o only dependant on the inlined library source code.
2907
2908 * Makefile.in (LIB_OBJ): Put options last on the list so that it
2909 is compiled last.
2910
2911 * std-config.h (DEVICE_INLINE): Only inline locals when the
2912 default is to inline.
2913
2914 Mon Sep 23 00:37:49 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2915
2916 * hw_htab.c (htab_sum_binary): Determine the real-base for the
2917 binary.
2918
2919 * hw_htab.c (htab_map_binary): Depending on the value of the
2920 load-base, either map the program in as a contiguous section or as
2921 separate sections controled by th binaries lma values.
2922 (htab_init_data_callback): Ditto.
2923
2924 Sun Sep 22 15:56:22 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2925
2926 * emul_generic.c (emul_add_tree_options): Remove load-base option.
2927
2928 * emul_chirp.c (map_over_chirp_note): Add load_base field to note
2929 struct. Don't require the load_base field to be present - just
2930 issue warning - it is a recent addition.
2931 (emul_chirp_create): Support both virtual and physical modes.
2932
2933 * emul_chirp.c (emul_chirp_create): Add a stack initialization
2934 property so that any arguments specified on the command line can
2935 be passed on to user programs.
2936
2937 * hw_init.c (create_ppc_chirp_bootargs): Add support for chirp
2938 argument passing to the pseudo device stack.
2939
2940 Sat Sep 21 19:39:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2941
2942 * device.c (device_error): Make it more tolerant to incomplete
2943 devices.
2944
2945 * hw_init.c (hw_data_init_data_callback): Extend the data device
2946 so that it can perform initialization operations either dma or a
2947 more complex instance open, seek, write operation.
2948 * hw_init.c: Update the description of the data device to reflect
2949 this.
2950
2951 Sat Sep 21 00:13:02 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2952
2953 * device.c (device_event_queue_schedule,
2954 device_event_queue_deschedule, device_event_queue_time): Have the
2955 device object export the event operations. Making these available
2956 from the device object should hopefully simplify writing device
2957 models.
2958
2959 Fri Sep 20 14:04:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2960
2961 * configure.in (sim-hardware): Add eeprom device to default build.
2962
2963 * hw_eeprom.c: Rewrite so it works.
2964
2965 * debug.h, debug.c: Add tracing support for the eeprom and com
2966 devices.
2967
2968 Thu Sep 19 14:40:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2969
2970 * debug.h: Add disklabel-package and disk-device trace options.
2971 debug.h (PTRACE): Add macro to simplify tracing in packages.
2972
2973 Thu Sep 19 14:40:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2974
2975 * device.c (device_create_instance_from): Tighten up loop
2976 searching for device instances.
2977 (device_instance_delete): Ditto.
2978 (device_instance_delete): Only leaf instances need to be removed
2979 from a devices list of active instances.
2980
2981 Thu Sep 19 14:40:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2982
2983 * hw_disk.c: Add the cdrom as an alias.
2984
2985 * pk_disklabel.c (disklabel_delete): Implement, remembering to
2986 delete the raw disk instance while we're at it.
2987
2988 * pk_disklabel.c (pk_disklabel_create_instance): Implement a
2989 little bit more - still a long way to go.
2990
2991 * pk_disklabel.c (disklabel_write, disklabel_read): Remember the
2992 new head position after a read or write.
2993
2994 Thu Sep 19 13:05:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
2995
2996 * emul_chirp.c (chirp_emul_read): Allow reads to be longer then
2997 the internal buffer.
2998
2999 Thu Sep 19 13:05:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3000
3001 * emul_chirp.c (chirp_read_t2h_args): Call memset-0 with the args
3002 in the correct order.
3003
3004 * emul_chirp.c (chirp_emul_call_method): Correct computation for
3005 the address of the first stack argument passed in from the client
3006 program.
3007
3008 Wed Sep 18 19:33:54 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3009
3010 * words.h: Add new types signed_cell and unsigned_cell which
3011 correspond to the signed and unsigned IEEE 1275 memory locations.
3012 * device.h, device.c, emul_chirp.c: Where refering to an IEEE 1275
3013 memory cell, replace uses of unsigned32 with unsigned_cell.
3014 * device_table.h: Ditto.
3015
3016 * sim-endian.h: Add new macros H2BE_cell and BE2H_cell which
3017 convert cell sized values to from big endian.
3018 * device.c, emul_chirp.c: Where refering to IEEE 1275 memory cells
3019 use these new macros.
3020
3021 Tue Sep 17 15:57:44 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3022
3023 * device.c (device_tree_add_parsed): Detect and report an
3024 interrupt being attached to an invalid device. Was dumping core.
3025
3026 Mon Sep 16 23:09:12 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3027
3028 * device.h, device.c (device_address_to_attach_address,
3029 device_size_to_attach_size): New functions. Convert a devices
3030 unit address or unit size structure into a form suitable for
3031 passing on to the attach and detach functions.
3032 * device_table.h: Add extra methods to device table.
3033
3034 * device.h, device.c (device_find_reg_property): New function.
3035 For a reg type property, return the selected address + size
3036 tupple, along with a positive success status. Add a reg_property
3037 to the list of property types.
3038 * (device_tree_add_parsed): Make array properties with the name
3039 reg or alternate-reg of type reg_property.
3040
3041 * hw_memory.c (hw_memory_init_address): Rewrite to use new
3042 find_reg_property method.
3043 * hw_nvram.c (hw_nvram_init_address): Ditto.
3044
3045 * device.c (device_tree_print_device): Add code to print out a reg
3046 property.
3047
3048 * device_table.c (generic_device_address_to_attach_address,
3049 generic_device_size_to_attach_size ): New functions. Generic
3050 functions for converting between unit and attach address or size.
3051
3052 * device_table.c (generic_device_init_address): Rewrite to use the
3053 new find_reg and address convert functions. Look for both reg and
3054 alternate-reg properties.
3055
3056 Mon Sep 16 23:09:12 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3057
3058 * hw_com.c: New file. A '550 serial device that can quickly be
3059 attached to any bus.
3060 * configure.in (enable-sim-hardware): Add the com device.
3061 * configure: re-generate.
3062
3063 Thu Sep 12 17:30:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3064
3065 * device.c (device_tree_verify_reg_unit_address): New
3066 function. Check that the unit address as specified by the reg
3067 property correctly corresponds to any unit address previously
3068 specified by the devices name.
3069 (device_tree_add_parsed): When adding a reg property, verify
3070 that the unit-address - first value of property - correctly
3071 matches any previous value specified when creating the device
3072 node.
3073
3074 Thu Sep 12 17:30:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3075
3076 * mon.c (mon_event): Remove assertion that an unsigned is >= 0.
3077
3078 Fri Aug 16 12:05:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3079
3080 * device.c (device_full_name): Cast strdup to char *, since AIX
3081 3.2.5 mistakenly declares the function to be const char *.
3082 (device_create_from): Ditto.
3083 (device_create_instance_from): Ditto.
3084 (device_add_property): Ditto.
3085
3086 Tue Aug 13 11:40:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3087
3088 * debug.c (trace_option): For -t all, do not set the
3089 trace_dump_device_tree flag, so that the simulator is run.
3090
3091 Tue Aug 13 11:40:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3092
3093 * Makefile.in (options.o): Depend on defines.h.
3094 (defines.h): New rule, go through config.h and make strings of all
3095 of the #define HAVE_xxx macros.
3096 (distclean): Remove defines.h.
3097
3098 * options.c (print_options): Print whether many of the
3099 configuration macros are defined.
3100
3101 * main.c (main): If -t options and no filename, just print the
3102 options, and don't print the usage message.
3103
3104 Mon Aug 12 18:42:37 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3105
3106 * configure.in: Test whether /dev/zero works on the system, and if
3107 it does, define HAVE_DEVZERO.
3108 * configure: Regenerate.
3109
3110 * emul_generic.c (emul_add_tree_hardware): Do not add /iobus/disk
3111 if we don't have a working /dev/zero on the system.
3112
3113 * emul_bugapi.c (emul_bugapi_init): If HAVE_DEVZERO is not
3114 defined, don't add disk support.
3115 (emul_bugapi_do_diskio): Ditto.
3116 (emul_bugapi_instruction_call): Ditto.
3117
3118 Wed Aug 7 14:34:20 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3119
3120 * emul_unix.c (HAVE_TCGETATTR): If HAVE_TERMIOS_STRUCTURE is not
3121 defined, make sure HAVE_TCGETATTR is #undef'ed
3122
3123 Wed Aug 7 14:34:20 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3124
3125 * std-config.h (REGPARM): Only define REGPARM attributes if using
3126 GNU C. Test for __i686__ in case GCC ever defines it. If not on
3127 a x86 platform, define REGPARM as nothing.
3128
3129 * sim-endian.h (WITH_HOST_BYTE_ORDER): Test for i686 and __i686__
3130 also.
3131
3132 Wed Aug 7 20:19:55 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3133
3134 * ld-decode.h, ld-decode.c: Rename goto_gen to the more correct
3135 goto_switch_gen.
3136 * gen-idecode.c: Ditto.
3137
3138 * gen-idecode.c (print_idecode_table): Comment out check for
3139 switch/table combination until a bug with it is fixed.
3140
3141 * ppc-opcode-goto: New file. Like complex and flat but uses
3142 goto-switch instead of padded-switch for the tables.
3143
3144 * gen-idecode.c (print_goto_switch_name): New function.
3145 (print_goto_switch_table_leaf): New function.
3146 (print_goto_switch_break): New function.
3147 (print_goto_switch_table): New function. Prints a jump table
3148 that can be jumped into instead of a switch statement.
3149
3150 * gen-idecode.c (*switch_*): As an option output a switch that is
3151 implemented using a jump table but only if the switch is not
3152 boolean.
3153
3154 Tue Aug 6 09:28:22 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3155
3156 * configure.in (--enable-sim-{hardware,packages}): Fix typos.
3157 * configure: Regenerate.
3158
3159 * device.c (device_instance_call_method): Fixup format message in
3160 error case. Return 0 in case of error to shut up compiler
3161 warnings.
3162
3163 Wed Aug 7 00:17:37 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3164
3165 * device_table.c (generic_device_unit_decode): Require a comma
3166 between elements of a unit address.
3167
3168 * device.c (device_tree_print_device): For reg, alternate-reg and
3169 ranges properties use special print functions.
3170 (device_print_ranges_property): Print formatted ranges property.
3171 (device_print_reg_property): Print formatted reg property.
3172
3173 Tue Aug 6 21:35:18 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3174
3175 * device.c (device_tree_add_parsed): For reg, ranges and
3176 alternate-reg properties use a special parser.
3177 (device_tree_parse_reg_property): New function to parse a reg
3178 property.
3179 (device_tree_parse_ranges_property): New function to parse a
3180 ranges property.
3181 (device_encode_unit): Wrapper for encode_unit callback.
3182 (device_decoce_unit): Wrapper for decode_unit callback.
3183
3184 Wed Jul 31 00:02:30 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3185
3186 * device_table.h (device_instance_callbacks): Relace the claim and
3187 release methods with a more general table mapping from method-name
3188 to method-function.
3189
3190 * device.c (device_instance_call_method): New function. Implement
3191 the OpenBoot call-method client interface. Attempts to locate the
3192 instances method in the callback table.
3193 (device_instance_claim, device_instance_release): Delete.
3194 Replaced with call-method and a lookup table.
3195
3196 * emul_chirp.c (chirp_emul_call_method): Use the new device
3197 instance call method and let that handle a client claim call.
3198
3199 * hw_htab.c (claim_memory): Wrapper function to call the memory
3200 devices "claim" method using the new device-instance call-method
3201 interface. Replaces the previous direct calls to claim.
3202 (htab_map_region): Use claim_memory.
3203 (htab_init_data_callback): Ditto.
3204
3205 * hw_memory.c (hw_memory_instance_claim): Update function
3206 interface so that it is compatible with call-method.
3207 (hw_memory_instance_release): Ditto.
3208 (hw_memory_instance_methods): New table of memory specific
3209 methods claim and release. Add to the hw_memory_callback
3210 table.
3211
3212 Tue Jul 30 21:26:14 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3213
3214 * psim.c (psim_init): Back out of change to initial value of
3215 system->last_cpu.
3216
3217 Tue Jul 30 21:12:24 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3218
3219 * sim_callbacks.h (sim_io_printf_filtered): Replace
3220 printf_filtered with a local simulator specific version. Add
3221 #define printf_filtered to simplify updating of existing code.
3222
3223 * sim_callbacks.h (sim_io_write_stdout, sim_io_read_stdin,
3224 sim_io_write_stderr): New functions. Read / write to the
3225 simulations stdin and stdout and stderr interfaces. Merge in code
3226 from hw_pal that previously handled async I/O.
3227 (sim_io_flush_stdoutput): Rename flush_stdoutput. Add #define
3228 flush_stdoutput to simplify updating of existing code.
3229
3230 * hw_pal.c (scan_hw_pal, write_hw_pal,
3231 hw_pal_instance_write_callback): Use the new sim_io functions.
3232
3233 * main.c: Implement standalone versions of the new sim_io
3234 functions. Include support for async I/O.
3235 * sim_calls.c: Ditto. This time using the gdb callback table.
3236
3237 * std-config.h (CURRENT_STDIO, current_stdio): New macro. Set up
3238 stdio configuration so that it works in the same way as the rest
3239 of the simulation.
3240 * psim.c (psim_create): Initialize current_stdio from the device
3241 tree.
3242 * emul_generic.c (emul_add_tree_options): Enter a default value
3243 for use-stdio in the device tree.
3244
3245 Fri Jul 26 19:43:03 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3246
3247 * gen-idecode.c (print_jump): Was always generating a jump back to
3248 idecode. Only necessary at tail of semantic code.
3249 (print_jump): Was always setting the processor's cia, even during
3250 startup when the processor was still undefined.
3251 (print_jump): For safety, restart smp loop when cpu_nr >= nr_cpus,
3252 not just equal.
3253
3254 * options.c (print_options): Add printing of WITH_REGPARM and
3255 WITH_STDCALL.
3256
3257 * std-config.h (WITH_REGPARM, WITH_STDCALL): Provide default
3258 (disabled) values if not defined.
3259
3260 Fri Jul 26 00:36:35 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3261
3262 * ppc-cache-rules (cache): Change RS and RB to cache instead of
3263 compute. The block move instructions use them.
3264
3265 * idecode_expression.h (FPSCR_SET): New macro, set specific FPSCR
3266 register.
3267 (CR_FIELD): New macro, extract specific CR register.
3268 (FPSCR_FIELD): New macro, extract specific FPSCR register.
3269
3270 * registers.h (GPR): New macro, simplify accesses to GPR[i].
3271
3272 * bits.c (INSERTED): Covert INSERTED macro into a function.
3273 (EXTRACTED): Conditionally compile on correct bit size macro.
3274
3275 * bits.h (BIT8): New macro, set a single bit in an 8 bit byte.
3276
3277 * ppc-instructions: With hints from Paul Martin, type in missing
3278 some instruction semantics. Leave disabled for the moment.
3279 (Load Multiple Word): Ditto.
3280 (Store Multiple Word): Ditto.
3281 (Load String Word Immediate): Ditto.
3282 (Load String Word Indexed): Ditto.
3283 (Store String Word Immedate): Ditto.
3284 (Store String Word Indexed): Ditto.
3285 (Move to Condition Register from XER): Ditto.
3286 (Move From Condition Register): Ditto.
3287 (Move From FPSCR): Ditto.
3288 (Move to Condition Register from FPSCR): Ditto.
3289 (Move To FPSCR Field Immediate): Ditto.
3290 (Move To FPSCR Fields): Ditto.
3291 (Move To FPSCR Bit 0): Ditto.
3292 (Move To FPSCR Bit 1): Ditto.
3293
3294 Thu Jul 25 22:10:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3295
3296 * std-config.h (SEMANTICS_INLINE): By default, mask out the
3297 inlining of semantic functions from DEFAULT_INLINE. Almost all
3298 configurations call the semantic code via a pointer so there is
3299 little benefit.
3300
3301 * std-config.h (ICACHE_INLINE): Ditto.
3302
3303 Thu Jul 25 20:07:30 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3304
3305 * configure.in (sim_regparm): Add configuration option for
3306 enabling GCC's regparm attribute.
3307 * (sim_stdcall): Add configuration option for enabling GCC's
3308 stdcall attribute.
3309
3310 * Makefile.in (REGPARM_CFLAGS): Pass regparam configuration onto
3311 compilations.
3312 * (STDCALL_CFLAGS): Pass stdcall configuration onto compilations.
3313
3314 * std-config.h (REGPARM): Extend construction of REGPARM macro so
3315 that it can include __stdcall__ function attribute.
3316
3317 Wed Jul 24 19:04:20 1996 Andrew Cagney <cagney@sawnoff>
3318
3319 * options.c (print_options): Include SUPPORT_INLINE in information
3320 dump.
3321
3322 * gen-idecode.c (print_run_until_stop_body): Only generate loop
3323 termination test if creating idecode_run_until_stop. Push the
3324 loop termination test back into each alternative branch.
3325
3326 Wed Jul 24 15:47:09 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3327
3328 * gen-icache.c (print_icache_function): Have the cache function
3329 always update the cache_entries semantic and address fields.
3330
3331 * gen-idecode.c (print_idecode_switch_illegal): Include a break
3332 when generating illegal instructions. This was commented out
3333 which is a hangover from looking a at switch statements generated
3334 using indirect jumps.
3335
3336 Tue Jul 23 20:57:01 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3337
3338 * igen.c (print_my_defines): Replaces print_define_my_index.
3339 Print both a definition for MY_INDEX and MY_PREFIX.
3340 * gen-icache.c (print_icache_function): Adjust.
3341 * gen-idecode.c (print_jump_insn): Adjust.
3342 * gen-semantics.c (print_c_semantic): Adjust.
3343
3344 * gen-support.c (gen_support_h): Add optional include to created
3345 support.h so that, like cpu, it is optionally inlined for all
3346 modules that include it.
3347 * inline.h, inline.c: Adjust so that support.[hc] is handled the
3348 same as cpu.[hc].
3349
3350 * idecode_fields.h (LABEL, GOTO): Macro's that create a unique
3351 name for a lable and then branch to it.
3352
3353 * ppc-instructions (convert_to_integer, Floating Round to
3354 Single-Precision, Floating Convert from Integer Doubleword): Use
3355 LABEL and GOTO instead of the recently added switch statements.
3356
3357 Wed Jul 24 14:02:42 1996 Andrew Cagney <cagney@sawnoff.highland.com.au>
3358
3359 * gen-idecode.c (print_run_until_stop_body): Too many rparen in
3360 generated code.
3361
3362 Tue Jul 23 20:57:01 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3363
3364 * configure.in (--enable-sim-line-nr): Typo - sim_line-nr.
3365 * (--enable-sim-inline): Reorder patern matching of arguments so
3366 that SUPPORT=ALL_INLINE is reconized as *=* and not *_INLINE.
3367
3368 * configure: rebuild.
3369
3370 Mon Jul 22 23:25:08 1996 Andrew Cagney <cagney@highland.com.au>
3371
3372 * configure.in (--enable-sim-hardware, --enable-sim-packages): New
3373 configuration options. Let the user specify the packages or
3374 hardware devices that are to be included in the build. Makes it
3375 possible for user packages to be specified.
3376
3377 * Makefile.in (tmp-pk, tmp-hw): Just use the list of packages and
3378 hardware instead of checking it using ls. configure.in should
3379 have taken care of any problems.
3380 (HW_SRC, HW_OBJ, PACKAGE_SRC, PACKAGE_OBJ): Set by configure.
3381
3382 Mon Jul 22 22:38:59 1996 Andrew Cagney <cagney@highland.com.au>
3383
3384 * psim.c (psim_options): Enter the argument to the memory size
3385 option directly into the device tree. Was using atol() which is
3386 dangerously non portable.
3387
3388 Mon Jul 22 22:17:08 1996 Andrew Cagney <cagney@highland.com.au>
3389
3390 * configure.in (icache): Extend icache flag to include an insn
3391 option. If specifyed the insn - aka instruction - is included in
3392 the instruction cache. Make this the default.
3393 * configure: re-generate.
3394
3395 * igen.c (main), igen.h: Add option -S - inSn - for specifying
3396 that the instruction should be included in the icache.
3397
3398 * gen-icache.c (print_icache_body): If enabled, output code to put
3399 the instruction into the icache.
3400 (print_icache_struct): If enabled, add insn to the icache struct.
3401
3402 Mon Jul 22 20:46:12 1996 Andrew Cagney <cagney@highland.com.au>
3403
3404 * Makefile.in (BUILD_CFLAGS): Include -g when building the
3405 generators.
3406
3407 Mon Jul 22 20:00:25 1996 Andrew Cagney <cagney@highland.com.au>
3408
3409 * emul_generic.c (emul_add_tree_options): Was incorrectly setting
3410 the strict-alignment option when hardwired for non-strict
3411 alignment.
3412
3413 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3414
3415 * gen-semantics.c: Make the my_index variable a macro MY_INDEX.
3416
3417 * ppc-instructions: Adjust so that references are to MY_INDEX and
3418 not my_index.
3419
3420 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3421
3422 * gen-idecode.c: Output the complete run_until_stop function
3423 instead of just the code to handle a single instruction issue.
3424 * : Have the generated idecode.c include inline.c (instead of psim.c).
3425
3426 * std-config.h: Change psim.c so that it isn't inlined (as this is
3427 no longer needed).
3428
3429 * psim.c (run_until_stop): Delete the old run_until_stop function
3430 instead calling the idecode_run and idecode_run_until_stop
3431 functions that gen-idecode.c is now creating.
3432
3433 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3434
3435 * dgen.c: Maintenance - update to use new features found in lf.c.
3436
3437 * filter_filename.c (filter_filename): Maintenance - make the
3438 string constant.
3439
3440 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3441
3442 * debug.c (TRACE, ITRACE, DTRACE): Have GCC instead of CPP
3443 eliminate trace statements.
3444
3445 * debug.c: Change trace format so that it is consistent
3446 (file:line-nr) with CC's error output.
3447
3448 * gen-itable.c (itable_c_insn): Add the source file name and
3449 source line number to the instruction's informational entry.
3450
3451 * debug.c (ITRACE): Use the itable (and my_index) to get the
3452 current instructions name and source line number.
3453
3454 * gen-semantics.c, gen-icache.c: Adjust generated ITRACE calls to
3455 match new interface.
3456
3457 * emul_bugapi.c (emul_bugapi_instruction_call): Adjust
3458 corresponding call to ITRACE so that it still matches.
3459
3460 * idecode_expression.h (ALU_END, CR0_COMPARE): Use TRACE instead
3461 of ITRACE. The CPP line directives would have previously set the
3462 line-nr and file name so ITRACE isn't needed.
3463
3464 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3465
3466 * gen-idecode.c (print_jump_until_stop_body): New function and
3467 idecode generation option. Instead of generating and calling
3468 separate functions containing the semantic and icache code
3469 generate a single monolythic function and use goto's (and GCC's
3470 indirect jump) to move between code blocks.
3471
3472 * Makefile.in: Add sim_jump flag to those passed to igen.
3473
3474 * configure.in: New option --enable-sim-jump (default disabled)
3475
3476 * ppc-instructions: Eliminate any uses of labels and goto's.
3477 These result in duplicate declarations when a single flat function
3478 is being create.
3479
3480 * ppc-opcode-jump: New file. Set of opcode rules useful when
3481 testing jumping idecodes.
3482
3483 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3484
3485 * gen-idecode.c: Optionally include the semantic code for an
3486 instruction in the function that is doing the decoding.
3487
3488 * igen.c: Add option (-C) to generate semantics in the instruction
3489 decode functions.
3490
3491 * configure.in (--enable-sim-icache): Accept an option list such
3492 as 1024,define. Add a new choice to the list - semantic - which
3493 will cause igen to generate instruction decode functions that
3494 include the corresponding semantic code.
3495
3496 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3497
3498 * configure.in: New option --enable-sim-line-nr (default enabled).
3499 Enable/disable the inclusion of CPP line directives in the
3500 generated files. Such directives refer back to the source files
3501 used when generating the simulator code.
3502
3503 * Makefile.in (sim_line_nr): Pass to igen.
3504
3505 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3506
3507 * igen.c (main): Revamp the options so that more letters are
3508 available.
3509
3510 * configure.in: Adjust to match igen's revamped options
3511
3512 Sun Jul 21 21:18:05 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3513
3514 * Makefile.in (pk.h, hw.h): Rewrite depenencies for hw.h (etc) so
3515 that they use the same technique as igen (ie a dummy targets
3516 tmp-pk and tmp-hw are created).
3517
3518 Mon Jun 24 22:28:00 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3519
3520 * Makefile.in (BUILD_CFLAGS): Include WARNING_CFLAGS.
3521
3522 Wed Jun 19 21:45:28 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3523
3524 * ld-cache.[hc], ld-decode.[hc], ld-insn.[hc]: New files. Separate
3525 out the loading of each of the tables from the rest of igen.
3526 * Makefile.in: Adjust.
3527 * igen.c: Adjust.
3528
3529 * gen-icache.[hc], gen-idecode.[hc], gen-itable.[hc],
3530 gen-model.[hc], gen-semantics.[hc]: New files. Separate out the
3531 code creating each separate set of generated files.
3532 * Makefile.in: Adjust.
3533 * igen.c: Adjust.
3534
3535 * gen-support.[ch]: New files. Output the support functions (found
3536 in the ppc-instructions file) into a separate file.
3537 * Makefile.in: Add.
3538 * inline.h, inline.c: Add.
3539 * std-config.h: Add.
3540
3541 * ld-cache.c: Re-design the cache table format.
3542 * ppc-cache-rules: Update to new format.
3543
3544 * ld-decode.c: Re-design the decode table format.
3545 * ppc-opcode-simple: Update to new format
3546 * ppc-opcode-complex: Ditto
3547 * ppc-opcode-flat: Ditto
3548
3549 * filter.h, filter.c: New files. Separate the opcode filter table
3550 reading code from the rest of igen.c. Re-design the filter so that
3551 it works inclusivly not exclusivly.
3552 * igen.c: Remove the opcode filter table loading code.
3553 * Makefile.in (filter.o): Adjust
3554 * configure.in: Adjust filter flag so that default includes 32bit
3555 and floating point.
3556 * ppc-instructions: Clean up filter fields so that only in use
3557 entries are specified (ie delete `be').
3558
3559 * misc.c (name2i, i2name): New function. Map between a string and
3560 an integer value.
3561
3562 Mon Jun 17 20:08:03 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3563
3564 * sim_calls.c (sim_close): If simulator not created, skip printing
3565 of run information.
3566
3567 Mon Jun 17 20:08:03 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3568
3569 * registers.c (register_description): Typo, insns not insn.
3570
3571 * ppc-instructions (model_get_number_of_stalls): New model function,
3572 returns number of stalls for the specified processor.
3573 * psim.c (psim_read_register): Add call to new function
3574 model_get_number_of_stalls().
3575
3576 * ppc-instructions (model_get_number_of_cycles): New model function,
3577 returns number of stalls for the specified processor.
3578 * psim.c (psim_read_register): Add call to new function
3579 model_get_number_of_cycles().
3580
3581 Fri Jun 14 00:11:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3582
3583 * device_table.h: Don't pass the parent device into a devices
3584 create function. This makes the create function consistent with
3585 the documentation.
3586 * device.c (device_template_create_device): Ditto
3587 * hw_pal.c (hw_pal_create): Ditto
3588 * hw_core.c (hw_core_create): Ditto
3589 * hw_vm.c (hw_vm_create): Ditto
3590 * hw_disk.c (hw_disk_create): Ditto
3591 * hw_nvram.c (hw_nvram_create): Ditto
3592 * hw_memory.c (hw_memory_create): Ditto
3593 * hw_cpu.c (hw_cpu_create): Ditto.
3594
3595 * device.c (split_find_device): Allow a null initial parent device.
3596 (device_template_create_device): Ditto.
3597
3598 * device.c (device_create_from): Make local (static) only used
3599 within device.c.
3600 * device_table.h: typedef device_callbacks moved here (from
3601 device.h) where it belongs.
3602
3603 * hw_core.c: New file. Implements just the core device using the
3604 core object.
3605
3606 * corefile.c: Moved all core device functions into the new
3607 hw_core.c file. core_device_create() disapears.
3608
3609 * psim.c (psim_tree): Use device_tree_add_parsed() to create the
3610 core device.
3611
3612 Thu Jun 13 00:09:29 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3613
3614 * hw_init.c: Correct typo in comment.
3615
3616 * corefile.c (core_init): Remove any remaining references to a
3617 default map.
3618 (core_map_find_mapping): Ditto.
3619
3620 Wed Jun 12 22:30:32 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3621
3622 * corefile.c (core_init): Make function global so that other
3623 devices are able to use the full core object.
3624
3625 * corefile.c (core_create, core_from_device): Break core_create
3626 into two functions. The first creates a core object, the second
3627 returns the core object associated with a core device.
3628
3629 * corefile.c (core_device_create): Use core_create to make the
3630 core object.
3631
3632 * psim.c (psim_create): Use core_from_device() instead of
3633 core_create().
3634
3635 * device.c (device_template_create_device): Make static as only
3636 needed by functions internal to device.c.
3637
3638 Fri Jun 7 23:47:18 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3639
3640 * ppc-opcode-test-2: Remove description of fields.
3641 * ppc-opcode-complex: Ditto
3642 * ppc-opcode-flat: Ditto
3643 * ppc-opcode-simple: Ditto
3644 * ppc-opcode-stupid: Ditto
3645 * ppc-opcode-test-1: Ditto
3646 * ppc-cache-rules: Ditto
3647
3648 * igen.c: Add description of files as a comment at the front.
3649
3650 Wed Jun 26 12:50:33 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3651
3652 * configure.in: Check for whether the termios and termio
3653 structures are really defined, and whether or not, they define the
3654 c_line field.
3655 * configure: Regenerate.
3656
3657 * Makefile.in ({,TERMIO_}CFLAGS): Add TERMIO_CFLAGS options set by
3658 configure.
3659
3660 * emul_unix.c: Various changes to allow for building on systems
3661 with different termio and termios structures. If host has both
3662 termio and termios, just use termios. No longer include
3663 sys/ioctl.h.
3664
3665 Wed Jun 26 12:26:55 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
3666
3667 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
3668 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
3669 (docdir): Removed.
3670 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
3671 (AC_PROG_INSTALL): Added.
3672 * configure: Rebuilt.
3673
3674 Wed Jun 5 23:53:42 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3675
3676 * corefile.h: Rewrite documentation so that it can be extracted and
3677 converted into texinfo (and hence ready for translation into html,
3678 tex or nroff).
3679 * device.h: Ditto
3680
3681 Thu Jun 6 09:52:37 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3682
3683 * hw_disk.c (SEEK_SET): If SEEK_SET is not defined, define as 0.
3684
3685 Wed Jun 5 11:46:52 1996 Andrew Cagney <cagney@puddin>
3686
3687 * hw_disk.c: Include <unistd.h> if available. Under SunOS, that
3688 is the source of SEEK_SET.
3689
3690 Wed Jun 5 01:39:07 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3691
3692 * psim.c (psim_options): Correct type of dummy arguments being
3693 passed to a device_ioctl call.
3694
3695 * hw_init.c (hw_data_init_data_callback): Adjust printf arguments.
3696 (write_stack_arguments): Ditto.
3697 * hw_trace.c: Instance callback entry no longer a table.
3698
3699 Wed Jun 5 01:39:07 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3700
3701 * emul_unix.c (do_unix_umask): Cast printf argument.
3702 (convert_to_linux_termios): Use LINUX_VSWTC not LINUX_VSWCH
3703
3704 Mon Jun 3 15:02:04 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3705
3706 * hw_init.c (update_for_binary_section): Abort if we find an
3707 .interp section, which indicates the need for shared libraries to
3708 be loaded.
3709
3710 Mon Jun 3 15:02:04 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3711
3712 * emul_unix.c (do_unix_{time,gettimeofday,getrusage}): Add support
3713 for time, gettimeofday, and getrusage system calls.
3714 ({solaris,linux}_descriptors): Add new system calls.
3715 (do_get{,e}{uid,gid}): Use gid_t/uid_t types.
3716 (do_get{,p}pid): Use pic_t types.
3717
3718 * configure.in (AC_TYPE_{GETGROUPS,SIGNAL}): Define.
3719 (AC_TYPE_{MODE,OFF,PID,SIZE,UID}_T): Define.
3720 * config{.in,ure}: Regenerate.
3721
3722 Mon Jun 3 23:19:57 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3723
3724 * emul_netbsd.c (emul_netbsd_create): Use the more specific names
3725 `ppc-elf' and `ppc-xcoff' for the stack-type.
3726 * emul_unix.c (emul_unix_create): Ditto.
3727 * emul_bugapi.c (emul_bugapi_create): Ditto.
3728 * hw_init.c: Reconize the new names.
3729
3730 * emul_unix.c (do_unix_break): Adjust so that the updated ioctl
3731 call is used (no system parameter).
3732
3733 Sun Jun 2 11:21:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3734
3735 * emul_unix.{h,c}: New files to provide Solaris and Linux system
3736 call emulations.
3737
3738 * Makefile.in (LIB_{SRC,OBJ}): Add emul_unix.{c,o}.
3739 (os_emul.o): Depend on emul_unix.h.
3740 (emul_unix.o): New dependency.
3741
3742 * configure.in (--enable-sim-alignment): Add 0|default to mean set
3743 alignment to 0, which means use appropriate alignment for mode.
3744 (AC_CHECK_FUNCS): Add new functions needed by emul_unix.c.
3745 (AC_CHECK_HEADERS): Add new include files needed by emul_unix.c.
3746 * config.in: Regenerate.
3747 * configure: Regenerate.
3748
3749 * emul_generic.c (emul_write2_status): New function to return
3750 results in r3 and r4 for Solaris system calls.
3751 (emul_do_system_call): If the system call is not support, but
3752 there is a string for the system call name, print out the string
3753 instead of the system call number.
3754
3755 * emul_generic.h (emul_write2_status): Declare it.
3756
3757 * emul_netbsd.c: Use /* */ around comment on #endif.
3758
3759 * os_emul.c: Include emul_unix.h.
3760 (os_emulations): Add emulations for Solaris, and Linux.
3761
3762 * psim.c (psim_usage): Add message about solaris, linux
3763 emulations.
3764
3765 Thu May 30 00:00:10 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3766
3767 * hw_iobus.c: Tidy up notes so that they can be auto-extracted.
3768
3769 * README: Correct PSIM's title
3770
3771 Wed May 29 23:50:26 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3772
3773 * basics.h: New global type object_disposition, used to indicate
3774 the status of objects when things are restarted.
3775
3776 Fri May 17 17:28:52 1996 Andrew Cagney <cagney@benjimen.highland.com.au>
3777
3778 * device_table.h: Change the interrupt descriptor structure so
3779 that it includes an additional member - an upper bound on the
3780 interrupts by that name.
3781
3782 * device.c (device_interrupt_decode): Allow a range of interrupt
3783 ports (eg rst0 .. rst6) if the port descriptors bound is non zero.
3784
3785 * device.c (device_tree_print_device): Include a list of valid
3786 interrupt ports when listing supported devices.
3787
3788 * device.h, device.c (device_child_interrupt_*): Delete. Not used.
3789
3790 * emul_generic.c (emul_add_tree_hardware): Modify the creation of
3791 the interrupt net so that it uses int0 .. intN.
3792
3793 Tue May 14 23:03:53 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3794
3795 * device.h, device.c (device_ioctl): Drop the system argument.
3796 Devices can not obtain this using the device_system() call.
3797 * device_table.h: Adjust accordingly.
3798 * hw_*.c: Adjust accordingly.
3799 * emul_netbsd.c (do_break): Adjust call to vm device accordingly.
3800 * psim.c (psim_options): Use a device_ioctl call to force the
3801 hw_trace device to update the trace options.
3802 * hw_trace.c: Replace the init function with an ioctl call. Adjust
3803 doc accordingly.
3804
3805 * psim.c (psim_init): Re-order initialization so that the
3806 os-emulation is initialized after the device tree. Without this,
3807 os-emul's are not able to create instances or access properties
3808 that contain an instance handle.
3809
3810 * device.h, device.c (device_add_*_property): Make these functions
3811 internal to device.c. The user has access to the more generic
3812 device_tree_add_parsed function. Differentiate between the initial
3813 and current value for each property.
3814 * (clean_device_properties): New function that deletes any
3815 properties created after the start of a simulation and restores
3816 the initial value of any others (ignoring ihandles).
3817 * (init_device_properties): (Re)Initialize any properties that
3818 contain ihandles. create
3819
3820 * (device_tree_init): Include calls to clean the device tree's
3821 properties and then initialize them. Document this in the device.h
3822 file.
3823
3824 Mon May 6 17:36:15 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3825
3826 * interrupts.c (decrementer_interrupt): Always pend a decrementer
3827 interrupt even if it is not yet possible to deliver it.
3828
3829 Wed May 1 12:26:51 1996 Andrew Cagney <cagney@benjimen>
3830
3831 * mon.h, mon.c (mon_get_number_of_insns): Make this externally
3832 visable adjusting the arguments so that the interface is correct.
3833 (mon_print_info): Adjust calls.
3834
3835 * registers.h, registers.c (register_description): Add phony
3836 cycle, insn and stall registers.
3837
3838 * psim.c (psim_read_register): Return nr of instructions for given
3839 processor.
3840
3841 Tue Apr 30 22:09:09 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3842
3843 * hw_htab.c: New file. Extract contents from disk_table.c.
3844 Contains a device that, during initialization will create a
3845 PowerPC htab in memory.
3846 * hw_register.c: New file. Extract contents from disk_table.c.
3847 Contains a device that, during initialization, will parse its
3848 property list and use that to initialize various processor
3849 registers (not target specific).
3850 * hw_vm.c: New file. Extract contents from disk_table.c. Contains
3851 a device that handles accesses to invalid virtual memory addresses
3852 (in user mode).
3853 * hw_init.c: New file. Extract contents from disk_table.c. Misc
3854 devices that can initialize memory from a file.
3855 * hw_trace.c: New file. Extract contents from disk_table.c.
3856 Configure trace options from property values.
3857
3858 * Makefile.in (hw_htab.o, hw_register.o, hw_vm.o, hw_init.o,
3859 hw_trace.c): Add new device files.
3860
3861 * device_table.c: Remove above code, now in separate independant
3862 files.
3863
3864 Fri Apr 26 00:00:07 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3865
3866 * hw_disk.c: New file. Disk and CDROM device.
3867
3868 * Makefile.in (hw_disk.o): Add device hw_disk.c.
3869
3870 * pk_disklabel.c: New file. Implement the miss-named disk-label
3871 package.
3872
3873 * Makefile.in (pk.h): Create the file pk.h that contains a list of all
3874 the packages.
3875
3876 * Makefile.in (hw.h, hw.c): Add dependancy on Makefile so that
3877 they are re-created when the makefile is updated.
3878
3879 * emul_generic.c (emul_add_tree_hardware): Add a disk device
3880 (below the iobus) to the device tree. Include an ihandle of
3881 the disk as /chosen/disk.
3882
3883 * emul_bugapi.c (emul_bugapi_create): Don't initialize the input,
3884 output and (new) disk handles yet.
3885 * (emul_bugapi_init): Initialize the input, output (and just added)
3886 disk ihandles here.
3887 * (emul_bugapi_do_diskio): New. Performs disk i/o (well at least
3888 what I think the behavour is).
3889 * emul_bugapi.c (emul_bugapi_instruction_call): Add hook to disk
3890 i/o bug call. For RETURN call, exit using gpr[3]'s status even
3891 though this isn't part of the spec - makes it possible for machine
3892 code to signal the aporting of a simulation run.
3893
3894 * emul_chirp.c (chirp_emul_call_method): Add support for the
3895 claim/release methods.
3896 * (chirp_emul_exit): Add an optional exit status argument to
3897 the exit method. Makes it possible for chirp emul simulations
3898 to abort upon an error.
3899 * device.h, device.c (device_instance_claim,
3900 device_instance_release): New methods for claiming and releasing
3901 memory.
3902 * hw_memory.c: add claim and release memory methods.
3903 * hw_*: Use the claim memory method when allocating physical
3904 memory.
3905
3906 Thu Apr 18 23:38:10 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
3907
3908 * hw_nvram.c (hw_nvram_update_clock): Use the current not previous
3909 time when updating the clock.
3910
3911 * hw_nvram.c: Tidy up documentation
3912
3913 Fri May 24 10:08:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3914
3915 * configure.in (AC_STRUCT_ST_{BLKSIZE,BLOCKS,RDEV}): Use these
3916 macros to determine whether or not the appropriate st_<xxx> fields
3917 exist in the stat structure.
3918 (AC_CHECK_FUNCS): Check for all unix system calls used, except for
3919 the real basic ones like open, read, write, etc.
3920 * config{.in,ure}: Regenerate.
3921
3922 * emul_netbsd.c: Add support for missing system calls, and/or
3923 missing stat fields.
3924 (MAXPATHLEN): Undefine if including unistd.h, since sys/param.h
3925 might define it.
3926
3927 * hw_pal.c (WITH_STDIO): Redefine if O_NDELAY, F_GETFL, or F_SETFL
3928 are not defined.
3929 (scan_hw_pal): Do not cause syntax error if O_NDELAY, F_GETFL, or
3930 F_SETFL not defined.
3931
3932 Tue May 21 17:24:45 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3933
3934 * emul_netbsd.c (write_stat): Don't convert st_blocks unless the
3935 host is netbsd.
3936
3937 Thu May 16 10:56:45 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3938
3939 * configure.in (AC_CHECK_HEADERS): Add sys/ioctl.h.
3940 * config{.in,ure}: Regenerate.
3941 * emul_netbsd.c: If HAVE_SYS_IOCTL_H is not defined, don't include
3942 sys/ioctl.h.
3943
3944 Tue May 7 17:28:12 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3945
3946 * hw_pal.c (hw_pal_instance_read_callback): Remove unused
3947 variable.
3948
3949 * misc.c ({,target_}a2i): Rewrite to not use strtoul.
3950
3951 * Makefile.in ({spreg,misc}.o): Add dependency on .c file.
3952 ({i,d}gen): Don't link in liberity. Use BUILD_LIBS instead of
3953 LIBS.
3954
3955 Mon May 6 11:31:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3956
3957 * hw_pal.c (hw_pal_instance_read_callback): If using stdio, use
3958 fgets to read line. If not using stdio, do a simple blocking read
3959 of len bytes.
3960
3961 Fri May 3 15:07:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3962
3963 * Makefile.in: Correctly build simulator for build machine != host
3964 machine.
3965
3966 Tue Apr 30 18:46:05 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3967
3968 * configure.in (--enable-hostendian): Rework so the default uses
3969 the AC_C_BIGENDIAN results. Only run AC_C_BIGENDIAN if not cross
3970 compiling.
3971 * configure: Regenerate.
3972
3973 * sim-endian.h: Add more tests for host endian to support more
3974 platforms in a cross compilation environment.
3975
3976 Wed Apr 17 14:38:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3977
3978 * hw_pal.c ({scan,write}_hw_pal): If WITH_STDIO == DO_USE_STDIO,
3979 use stdio, instead of unpended read/printf_filtered.
3980 (hw_pal_instance_write_callback): If WITH_STDIO == DO_USE_STDIO,
3981 flush stdout after writing the characters.
3982
3983 * options.c (print_options): Print out WITH_STDIO.
3984
3985 * Makefile.in (STDIO_CFLAGS): Pass on result of @sim_stdio@
3986 configuration variable.
3987 (CONFIG_CFLAGS): Include STDIO_CFLAGS.
3988 (hw.{c,h}): Allow for source dir != build dir, and for HW_SRC
3989 files to contain directory pieces.
3990
3991 * std-config.h (DO{,NT}_USE_STDIO): New flags for whether we
3992 should use stdio for console input.
3993 (WITH_STDIO): If not defined, define as DONT_USE_STDIO.
3994
3995 * configure.in (--enable-sim-stdio): Add new switch to control
3996 whether stdio is used for console I/O.
3997 * configure: Regenerate.
3998
3999 * interrupts.c (external_interrupt): Declare it to be
4000 INLINE_INTERRUPTS, not INLINE_CPU.
4001
4002 Mon Apr 15 23:30:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4003
4004 * events.c (insert_event_entry): Allow events to be scheduled
4005 *NOW* (at delta time 0). Add assertions to clarify behavour of
4006 event queue.
4007
4008 * events.c (update_time_from_event): New function. Calculates the
4009 number of ticks from the next event. Use this.
4010
4011 Sun Apr 14 21:39:45 1996 Andrew Cagney <cagney@highland.com.au>
4012
4013 * emul_netbsd.c (do_break): Return 0 if success (instead of
4014 adjusted break).
4015
4016 * device_table.c (vm_ioctl_callback): Don't return adjusted break
4017 (isn't needed).
4018
4019 Sun Apr 14 21:32:41 1996 Andrew Cagney <cagney@highland.com.au>
4020
4021 * device_table.h: Change type of the device ioctl so that it
4022 returns an int (status).
4023 * device.h (device_ioctl): Ditto.
4024 * device.c (device_ioctl): Ditto.
4025
4026 * device_table.c (stack_ioctl_callback): Return 0 status.
4027 (vm_ioctl_callback): Ditto
4028
4029 Sat Apr 13 00:00:24 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4030
4031 * emul_netbsd.c (do_read): Correctly set the return value.
4032 (do_getpid): Ditto.
4033 (do_getuid): Ditto.
4034 (do_geteuid): Ditto.
4035 (do_dup): Ditto.
4036 (do_getegid): Ditto.
4037 (do_getgid): Ditto.
4038 (do_sigprocmask): Ditto.
4039 (do_umask): Ditto.
4040 (do_dup2): Ditto.
4041 (do_gettimeofday): Ditto.
4042 (do_getrusage): Ditto.
4043 (do_fstat): Ditto.
4044 (do_stat): Ditto.
4045 (do_lseek): Ditto.
4046 (do___sysctl): Ditto.
4047
4048 Fri Apr 12 20:56:47 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4049
4050 * device_table.c (vm_ioctl_callback): Don't access the processor
4051 registers directly, instead leave it to the caller to handle this.
4052
4053 * emul_netbsd.c (do_break): Which calls vm_ioctl_callback to
4054 perform a break. Pass in the new break value and set the
4055 registers according to the result.
4056
4057 * emul_generic.c (emul_write_status): Change so that r3 contains
4058 either status or errno and failure is indicated by SO.
4059
4060 Thu Apr 4 23:03:38 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4061
4062 * emul_bugapi.c (emul_bugapi_create): More strict check of OEA
4063 address.
4064
4065 Thu Apr 4 20:58:05 1996 Andrew Cagney <cagney@highland.com.au>
4066
4067 * interrupts.h (interrupts): New structure contains state of
4068 pending interrupts.
4069
4070 * cpu.c (cpu_interrupts): New function. Pending interrupt status
4071 in the cpu and grant access to it. Add interrupts to cpu
4072 structure.
4073
4074 Fri Mar 29 22:09:25 1996 Andrew Cagney <cagney@highland.com.au>
4075
4076 * device.c (device_tree_add_parsed): Check that the creation of a
4077 device instance worked before using it.
4078
4079 * psim.c (psim_halt): Remove cia argument from psim_halt. This
4080 function does not save the CIA so do not pass it in.
4081
4082 Fri Mar 29 21:30:56 1996 Andrew Cagney <cagney@highland.com.au>
4083
4084 * hw_pal.c (hw_pal): Merge the halt and icu and console devices
4085 found in device_table.c into a single hack pal.
4086
4087 * device_table.c (halt, icu, console): Delete.
4088
4089 * Makefile.in (hw_pal.o): New dependency.
4090
4091 * emul_generic.c (emul_add_tree_hardware): Re-arange device tree
4092 so that it uses the pal instead of the icu/halt/console devices.
4093 Wire the pal's interrupt ports up to the cpu nodes.
4094
4095 Fri Mar 29 20:17:17 1996 Andrew Cagney <cagney@highland.com.au>
4096
4097 * hw_iobus.c (hw_iobus_attach_address_callback): Move from
4098 device_table.c to here.
4099
4100 * Makefile.in (hw_iobus.o): New dependency.
4101
4102 Fri Mar 29 12:17:58 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4103
4104 * emul_bugapi.c (_os_emul_data): Add fields for output, input.
4105 (emul_bugapi_create): Create input, output from /chosen/stdin and
4106 /chosen/stdout.
4107 (emul_bugapi_do_{read,write}): Switch to use device_instance
4108 interface.
4109 (emul_bugapi_instruction_call): Change calls to
4110 emul_bugapi_do_{read,write} to pass device instance argument.
4111
4112 Tue Mar 26 14:57:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4113
4114 * igen.c (idecode_switch_end): Fix 2/26 change so that an extra
4115 default is not written out if a default was already written.
4116
4117 * psim.c (psim_{read,write}_register): Use sizeof unsigned_8 to
4118 size cooked_buf, not sizeof natural_word, since floating point
4119 registers are 8 bytes.
4120
4121 Mon Mar 25 22:07:13 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4122
4123 * configure: Regenerate with autoconf 2.9.
4124
4125 Thu Mar 21 00:14:26 1996 Andrew Cagney <cagney@highland.com.au>
4126
4127 * device_table.h: Always include string headers.
4128
4129 Thu Mar 21 00:06:09 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4130
4131 * main.c (error): Be careful to not try to print out statistics
4132 when the simulation was never created.
4133
4134 Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au>
4135
4136 * basics.h: Move the event queue's definition to here so that it
4137 can be refered to globally with out importing all of events.h.
4138
4139 * psim.h, psim.c (psim_event_queue): New function. Grant access
4140 to the simulation event queue. Will make this the single point of
4141 access (there is after all only one event queue in the
4142 simulation).
4143
4144 * cpu.c (cpu_create): Use psim_event_queue to obtain the event
4145 queue instead of it being passed in. No longer allow access to
4146 the cpu's copy of the event queue.
4147
4148 Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au>
4149
4150 * events.h, events.c (event_handler): Remove event_queue from
4151 arguments passed to an event handler. That argument is redundant
4152 - the `data' should refer to a data structure that contains the
4153 event queue if queing is needed.
4154
4155 * cpu.c (cpu_decrement_event): adjust
4156
4157 * events.c (event_queue_process): adjust
4158
4159 Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au>
4160
4161 * device.h, device.c (device_system): New, returns a handle for
4162 the system given the device.
4163
4164 * device.c (device_address_init): Store a pointer back to the
4165 system in each devices node.
4166
4167 * device_table.h: Don't pass `system' into each device when it is
4168 being initialized, this is now available using device_system(me).
4169
4170 * device.c (device_address_init, device_data_init): Adjust.
4171
4172 * hw_cpu.c, hw_nvram.c, hw_memory.c, hw_eeprom.c, device_table.c:
4173 Adjust.
4174
4175 Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au>
4176
4177 * interrupts.c (decrementer_interrupt, external_interrupt):
4178 Remember that an interrupt wasn't delivered so that it can be
4179 tried again later.
4180
4181 * interrupts.c (check_masked_interrupt): New function. (re)
4182 checks for the posibility that a recent change to the MSR may have
4183 made it possible to deliver an interrupt that was previously
4184 masked be the EE bit.
4185
4186 * ppc-instructions (mtmsr, mfmsr, rfi): Check for posibility of
4187 a pending interrupt being delivered using check_masked_interrupt().
4188
4189 * cpu.c (cpu_decrement_event): Just call decrementer_interrupt()
4190 leaving it to that module to handle both interrupt synchronization
4191 and masking.
4192
4193 * cpu.c (struct _cpu): remove variables that were going to record
4194 pending decrementer and external interrupts.
4195
4196 Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au>
4197
4198 * hw_cpu.c, hw_cpu.h: New files. Implement a device that sits
4199 between the interrupt controller and the simulators internal
4200 processor model. Maps device interrupts onto the processor
4201 interrupt function calls.
4202
4203 Mon Mar 4 06:06:54 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4204
4205 * hw_nvram.c: NVRAM device that includes a real-time clock that is
4206 updated each second.
4207
4208 Mon Mar 4 04:18:50 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4209
4210 * device.h (attach_type): Remove attach_default type address
4211 spaces. Will replace with levels of callback memory.
4212
4213 * corefile.h, corefile.c (new_core_mapping), corefile.c
4214 (core_map_attach): Replace default attach with a layerd callback
4215 approach.
4216
4217 Sun Mar 3 03:58:46 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4218
4219 * device.c (split_property_specifier): ensure that only a single
4220 property is found.
4221 (split_value): New function, parses the value part of a device
4222 spec.
4223
4224 * device.c (device_tree_add_parsed): Use the interrupt conversion
4225 functions to determine the interrupt port numbers.
4226
4227 * device_table.h: Add table that maps between an interrupts
4228 symbolic name and its port number.
4229
4230 * device.h, device.c (device_interrupt_decode,
4231 device_interrupt_encode): new functions use the recently added
4232 interrupt port name/number tables to perform conversion.
4233
4234 Sun Mar 3 03:23:59 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4235
4236 * device.h, device.c (device_set_array_property,
4237 device_set_boolean_property, device_set_ihandle_property,
4238 device_set_integer_property, device_set_string_property): New
4239 functions - allow the value of a given property to be changed.
4240
4241 * device.h, device.c: Re-order declaration and definition of
4242 property functions.
4243
4244 Sun Mar 3 03:10:22 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4245
4246 * device.c (device_tree_print_device, device_tree_add_parsed):
4247 Remove references to phandle properties.
4248
4249 Wed Feb 28 00:43:07 1996 Andrew Cagney - aka Noid <cagney@highland.com.au>
4250
4251 * Makefile.in (corefile.o): missing dependency on device_table.h
4252 etc.
4253
4254 Tue Feb 27 23:59:35 1996 Andrew Cagney - aka Noid <cagney@highland.com.au>
4255
4256 * device_table.h: Revamp device init callbacks so that they are a
4257 sub structure.
4258 * device.c (device_init_data, device_init_address): If an init
4259 callback is NULL assume it should do nothing.
4260 * device_table.c (ignore_device_init, unimp_device_init): delete
4261 as redundant.
4262 * device_table.c, hw_memory.c: adjust.
4263
4264 * (io): ditto.
4265 * (dma): ditto.
4266 * (device_instance): ditto.
4267 * (ioctl): ditto.
4268 * (address nee config_address): ditto.
4269 * (interrupt): ditto.
4270
4271 Mon Feb 26 21:11:20 1996 Andrew Cagney - aka Noid <cagney@highland.com.au>
4272
4273 * igen.c (idecode_switch_end): Output a default entry when the
4274 switch statement is perfect. Firstly stops GCC complaining about
4275 an incomplete switch and secondly it will be eliminated by a good
4276 compiler any way.
4277
4278 Mon Feb 26 22:47:15 1996 Andrew Cagney - aka Noid <cagney@highland.com.au>
4279
4280 * Makefile.in (hw.h, hw.c): New targets. Create from the list of
4281 hw_*.c files. hw.h declares a device descriptor table for each hw
4282 device while hw.c lists those tables in a form suitable for the
4283 construction of a top leveltable in device_table.c.
4284
4285 * Makefile.in (device_table.o): now depends on hw.c a generated
4286 table of hw.
4287
4288 * device_table.c (device_table): Re-arange the table of devices so
4289 that two levels are possible. Make use of hw.c.
4290 * device_table.h: ditto.
4291
4292 * device.c (device_template_create_device): Handle new two level
4293 device lookup table.
4294 * device.c (device_usage): ditto.
4295
4296 Mon Feb 26 22:24:00 1996 Andrew Cagney - aka Noid <cagney@highland.com.au>
4297
4298 * device_table.c: Delete the memory device (moved to hw_memory.c).
4299
4300 * hw_memory.c: New file. Just an OpenBoot memory device.
4301
4302 Wed Jan 17 21:47:34 1996 Andrew Cagney <cagney@highland.com.au>
4303
4304 * device.c (device_init_address): New. Split initialization into
4305 two stages, address and address spaces
4306 * device.c (device_init_data): New. ... and data or other work.
4307 With out this, devices try to modify memory before it as been
4308 attached.
4309
4310 * device.c (device_tree_init): Update to perform staged
4311 initialization.
4312
4313 * device.c (device_init): Delete.
4314
4315 Wed Jan 17 21:43:09 1996 Andrew Cagney <cagney@highland.com.au>
4316
4317 * device_table.c (data_*): Rewrite to make heaver use of property
4318 nodes. Allow initialization by different data types.
4319 * device_table.c (htab_* pte_*): Rewrite to use properties.
4320
4321 * emul_chirp.c (emul_chirp_create): Use
4322 * emul_bugapi.c (emul_bugapi_create): Ditto
4323 * emul_netbsd.c (emul_netbsd_create): Ditto
4324
4325 Wed Jan 17 21:24:50 1996 Andrew Cagney <cagney@highland.com.au>
4326
4327 * emul_generic.c (emul_add_tree_options): Annotate existing tree
4328 with options that haven't yet been specified.
4329 * emul_generic.c (emul_add_tree_hardware): Annotate existing tree
4330 with demo devices and properties.
4331
4332 * emul_chirp.c (emul_chirp_create): Update to use new
4333 device_tree_add_parsed call and additional information now
4334 included in the device tree. Use emul_add_tree* functions to add
4335 any missing details.
4336 * emul_bugapi.c (emul_bugapi_create): Ditto
4337 * emul_netbsd.c (emul_netbsd_create): Ditto
4338
4339 Wed Jan 17 21:18:27 1996 Andrew Cagney <cagney@highland.com.au>
4340
4341 * device.c (device_instance_create): New. Create/delete and
4342 operate on instances of a device.
4343 * device.c (device_instance_delete): Ditto
4344 * device.c (device_instance_read): Ditto
4345 * device.c (device_instance_write): Ditto
4346 * device.c (device_instance_seek): Ditto
4347 * device.c (device_instance_data): Ditto
4348 * device.c (device_instance_name): Ditto
4349 * device.c (device_instance_path): Ditto
4350
4351 * emul_chirp.c (chirp_emul_open): Implement using device_instance.
4352 * emul_chirp.c (chirp_emul_close): Ditto
4353 * emul_chirp.c (chirp_emul_read): Ditto
4354 * emul_chirp.c (chirp_emul_write): Ditto
4355 * emul_chirp.c (chirp_emul_seek): Ditto
4356
4357 * emul_chirp.c (chirp_read_t2h_args): Read arguments from device.
4358 Being careful to convert all from target to host byte order.
4359 * emul_chirp.c (chirp_write_h2t_args): Converse.
4360
4361 Wed Jan 17 20:07:15 1996 Andrew Cagney <cagney@highland.com.au>
4362
4363 * device.c (device_tree_add_parsed): New. Rewrite code to add
4364 devices to the device tree so that a single printf style function
4365 is used.
4366
4367 * device.c (device_tree_add_*): Delete. Replaced by above.
4368
4369 * device.c (split_device_specifier): Functions to manipulate a
4370 device specifier (path) breaking it into its components
4371 * device.c (split_property_specifier): Ditto
4372 * device.c (split_device_name): Ditto
4373 * device.c (split_find_device): Ditto
4374
4375 * device.c (scan_*): Delete
4376
4377 * device.c (device_tree_find_device): Rewrite to use above.
4378 * device.c (device_add_property): Ditto
4379
4380 Wed Jan 17 19:51:56 1996 Andrew Cagney <cagney@highland.com.au>
4381
4382 * psim.c(psim_options): Parse the psim options, installing their
4383 value in the device tree. Options are now first entered into a
4384 device tree and then extracted out again when needed. This allows
4385 greater flexability in configuration.
4386
4387 * psim.c (psim_tree): Returns a basic device tree ready for
4388 parsing by psim_options.
4389 * psim.c (psim_usage): New. Give usage to varing levels of detail
4390 according to the verbosity. In turn output device and trace
4391 usage.
4392
4393 * main.c (main): Update to use new system
4394 * sim_calls.c (sim_open, sim_do_command): Ditto
4395
4396 * psim.c (psim_options): Add `r' option - ram size.
4397 * psim.c (psim_options): Add `o' option - openboot tree entry.
4398 * psim.c (psim_options): Add `h'/`H' options - more help.
4399
4400 * debug.c (trace_usage): Add more detailed help.
4401 * device.c (device_usage): New. Output help including a list of
4402 the devices currently available in the device table.
4403 * device_table.c: Add usage operator to each device.
4404
4405 * corefile.c (core_create, core_device_create): Adjust so that the
4406 core device is created earlier for psim_tree(). Core can later be
4407 created from it.
4408
4409 * psim.c (psim_create): Update to handle above way of creating
4410 things. Extract all information from the device tree.
4411
4412 * device_tree.c (trace_*): New device node, its properties are
4413 used to set the value of the trace options. Init this device (in
4414 psim_options) when ever the options are updated.
4415
4416 Wed Jan 17 19:46:07 1996 Andrew Cagney <cagney@highland.com.au>
4417
4418 * debug.h: Add trace_print_info, trace_print_device_tree and
4419 trace_dump_device_tree. The first is a replacement for the
4420 variable `print_info' found in main.c and sim_calls.c. The latter
4421 two enable the dumping of the entire device tree.
4422
4423 * debug.c: Add to trace_description table.
4424
4425 * main.c (main): Use above trace instead of local variable
4426 * sim_calls.c (sim_close): Ditto
4427
4428 * device.c (device_tree_print_device): New. Prints the device
4429 tree in a format that is consistent with what can be parsed by the
4430 device tree load from file code.
4431
4432 * psim.c (psim_create): Dump device tree if enabled. If nump
4433 selected, exit psim immediately.
4434
4435 Wed Jan 17 19:36:52 1996 Andrew Cagney <cagney@highland.com.au>
4436
4437 * corefile-n.h (core_map_read_N): When mapping from an address to
4438 a device, do not subtract the devices base. The device its self
4439 can do this. Brings the behavour into line with OpenBoot.
4440 * corefile-n.h (core_map_write_N): Ditto
4441 * corefile.c (core_map_read_buffer): Ditto
4442 * corefile.c (core_map_write_buffer): Ditto
4443
4444 * device_table.c (console_io_read_buffer_callback): Adjust to
4445 handle biased address.
4446 * device_table.c (console_io_write_buffer_callback): Ditto
4447
4448 Wed Jan 17 18:36:09 1996 Andrew Cagney <cagney@highland.com.au>
4449
4450 * device.c (attach_device_interrupt_edge): New. Interrupt model
4451 did not allow interrupts to be wired up as a general net (edges).
4452 Re-implement so that interrupt events can be passed to multiple
4453 controllers and interrupt controllers can further propogate
4454 interrupt events.
4455
4456 * device.c (attach_device_interrupt_edge) : New, Ditto
4457 * device.c (detach_device_interrupt_edge) : New, Ditto
4458 * device.c (clean_device_interrupt_edges) : New, Ditto
4459 * device.c (device_interrupt_event) : New, Ditto
4460 * device.c (device_interrupt_attach) : New, Ditto
4461 * device.c (device_interrupt_detach) : New, Ditto
4462 * device.c (device_child_interrupt_attach) : New, Ditto
4463 * device.c (device_child_interrupt_detach) : New, Ditto
4464
4465 * device.c (device_attach_interrupt) : Delete old
4466 * device.c (device_detach_interrupt) : Delete old
4467 * device.c (device_interrupt) : Delete old
4468 * device.c (device_interrupt_ack) : Delete old
4469
4470 * device_table.c (unimp_*) : Update to match
4471
4472 * device_table.c (icu_io_write_buffer_callback) : Update to use
4473 interface.
4474 * device_table.c (icu_interrupt_event_callback) : Ditto
4475
4476 Wed Jan 17 18:18:40 1996 Andrew Cagney <cagney@highland.com.au>
4477
4478 * device.c (external_to_device) : New function that provides a
4479 standard mapping between a devices internal representation (a
4480 pointer) and its external (or what is passed to a client)
4481 representation (a phandle). Implement using the cap object
4482 attached to the root node.
4483
4484 * device.c (device_to_external) : Ditto
4485 * device.c (external_to_device_instance) : Ditto but for ihandle
4486 and device instance.
4487 * device.c (device_instance_to_external) : Ditto
4488
4489 * Makefile (device.o): Add dependency on cap.
4490
4491 * emul_chirp.c (struct _emul_chirp_data) : Elimate use of cap. Code
4492 needing to translate between internal and external representations
4493 changed to use the external_to_device et.al. device operations.
4494 * emul_chirp.c (chirp_emul_*) : Ditto
4495
4496 * Makefile (emul_chirp.o): Remove dependency on cap
4497
4498 Sat Jan 6 10:13:26 1996 Andrew Cagney - aka Noid <cagney@highland.com.au>
4499
4500 * emul_chirp.c (map_over_chirp_note): Tighten up (and fix) checks
4501 on OpenBoot note section.
4502
4503 Fri Jan 5 20:28:53 1996 Andrew Cagney <cagney@hignland.com.au>
4504
4505 * emul_generic.c (emul_write_buffer): Use vm faulting byte
4506 read/write calls for buffer transfers. This will cause a fault to
4507 occure if the transfer fails. CHRP catches the fault while the
4508 others suffer the consequences.
4509 (emul_read_buffer): Ditto.
4510 (emul_write_word): Ditto.
4511 (emul_read_word): Ditto.
4512 (emul_read_string): Ditto.
4513
4514 Fri Jan 5 18:55:34 1996 Andrew Cagney <cagney@highland.com.au>
4515
4516 * emul_chirp.c (emul_chirp_create, emul_chirp_instruction_call),
4517 emul_generic (emul_blr_instruction): Use a real blr instruction to
4518 return from a client service call.
4519
4520 * emul_chirp.c (services): Add all OpenBoot services to table.
4521
4522 * emul_generic.h, emul_bugapi.c (emul_bugapi_create), emul_chirp.c
4523 (emul_chirp_create) : Use names instead of numbers for
4524 instructions being stored in memory.
4525
4526 Fri Jan 5 18:52:28 1996 Andrew Cagney <cagney@highland.com.au>
4527
4528 * Makefile.in (maintainer-clean): Remove .log, core and *.core
4529 (From NetBSD) files.
4530
4531 Wed May 29 22:57:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
4532
4533 * ChangeLog.00, ChangeLog: ChangeLog from gdb-4.16 becomes
4534 ChangeLog.00
This page took 0.115341 seconds and 3 git commands to generate.