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