Home | History | Annotate | Line # | Download | only in ppc
      1 2021-07-01  Mike Frysinger  <vapier (a] 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 
      8 2021-06-30  Mike Frysinger  <vapier (a] 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 
     14 2021-06-29  Mike Frysinger  <vapier (a] 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 
     20 2021-06-20  Mike Frysinger  <vapier (a] gentoo.org>
     21 
     22 	* Makefile.in (INLINE_CFLAGS): Change to $(SIM_INLINE).
     23 	* configure.ac: Delete sim-inline logic.
     24 	* configure: Regenerate.
     25 
     26 2021-06-19  Mike Frysinger  <vapier (a] 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 
     39 2021-06-19  Mike Frysinger  <vapier (a] 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 
     45 2021-06-19  Mike Frysinger  <vapier (a] gentoo.org>
     46 
     47 	* Makefile.in: Delete toolchain vars.
     48 	* configure.ac: Likewise.
     49 	* configure: Regenerate.
     50 
     51 2021-06-19  Mike Frysinger  <vapier (a] 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 
     58 2021-06-18  Mike Frysinger  <vapier (a] gentoo.org>
     59 
     60 	* Makefile.in (WERROR_CFLAGS): Delete.
     61 	* configure.ac: Delete werror configure option.
     62 	* configure: Regenerate.
     63 
     64 2021-06-18  Mike Frysinger  <vapier (a] gentoo.org>
     65 
     66 	* Makefile.in: Include ../arch-subdir.mk.
     67 
     68 2021-06-18  Mike Frysinger  <vapier (a] gentoo.org>
     69 
     70 	* sim-main.h: Delete sim-signal.h include.
     71 
     72 2021-06-17  Mike Frysinger  <vapier (a] gentoo.org>
     73 
     74 	* Makefile.in (ENDIAN_CFLAGS): Delete.
     75 	* configure.ac: Delete sim-endian.
     76 	* configure: Regenerate.
     77 
     78 2021-06-17  Mike Frysinger  <vapier (a] gentoo.org>
     79 
     80 	* igen.c (gen_semantics_h): Rename PAGE_SIZE to MPC860C0_PAGE_SIZE.
     81 	* ppc-instructions: Likewise.
     82 
     83 2021-06-16  Mike Frysinger  <vapier (a] gentoo.org>
     84 
     85 	* configure.ac: Delete AC_EXEEXT call.
     86 	* configure: Regenerate.
     87 
     88 2021-06-16  Mike Frysinger  <vapier (a] gentoo.org>
     89 
     90 	* configure.ac: Delete sim-assert logic.
     91 	* config.in, configure: Regenerate.
     92 
     93 2021-06-16  Mike Frysinger  <vapier (a] 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 
    115 2021-06-16  Mike Frysinger  <vapier (a] gentoo.org>
    116 
    117 	* basics.h (__attribute__): Delete.
    118 	* misc.h (__attribute__): Likewise.
    119 	Include ansidecl.h.
    120 
    121 2021-06-16  Mike Frysinger  <vapier (a] 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 
    136 2021-06-16  Mike Frysinger  <vapier (a] gentoo.org>
    137 
    138 	* double.c: Include ansidecls.h.
    139 	* dp-bit.c: Change __attribute__ ((packed)) to ATTRIBUTE_PACKED.
    140 
    141 2021-06-16  Mike Frysinger  <vapier (a] 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 
    148 2021-06-16  Mike Frysinger  <vapier (a] 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 
    156 2021-06-16  Mike Frysinger  <vapier (a] 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 
    164 2021-06-16  Mike Frysinger  <vapier (a] gentoo.org>
    165 
    166 	* device.h (device_add_boolean_property): Rename bool arg to boolean.
    167 
    168 2021-06-16  Mike Frysinger  <vapier (a] 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 
    188 2021-06-13  Mike Frysinger  <vapier (a] 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 
    194 2021-06-12  Mike Frysinger  <vapier (a] gentoo.org>
    195 
    196 	* Makefile.in: Add $(EXEEXT) to run and psim.
    197 
    198 2021-06-12  Mike Frysinger  <vapier (a] gentoo.org>
    199 
    200 	* Makefile.in: Delete ALIGNMENT_CFLAGS.
    201 	* configure.ac: Delete sim-alignment.
    202 	* configure: Regenerate.
    203 
    204 2021-06-12  Mike Frysinger  <vapier (a] gentoo.org>
    205 
    206 	* configure.ac: Delete calls to ACX_PKGVERSION & ACX_BUGURL.
    207 	* aclocal.m4, config.in, configure: Regenerate.
    208 
    209 2021-06-12  Mike Frysinger  <vapier (a] gentoo.org>
    210 
    211 	* configure.ac: Delete sim-stdio & sim-trace.
    212 	* debug.h: Define TRACE_* defines.
    213 	* config.in, configure: Regenerate.
    214 
    215 2021-06-12  Mike Frysinger  <vapier (a] 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 
    221 2021-06-12  Mike Frysinger  <vapier (a] 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 
    228 2021-06-09  Mike Frysinger  <vapier (a] 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 
    236 2021-05-29  Mike Frysinger  <vapier (a] gentoo.org>
    237 
    238 	* configure.ac (WERROR_CFLAGS): Add -Wno-format for mingw32 hosts.
    239 	* configure: Regenerate.
    240 
    241 2021-05-29  Mike Frysinger  <vapier (a] 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 
    249 2021-05-29  Mike Frysinger  <vapier (a] gentoo.org>
    250 
    251 	* Makefile.in (INCLUDES): Add -I../..
    252 
    253 2021-05-16  Mike Frysinger  <vapier (a] 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 
    260 2021-05-15  Mike Frysinger  <vapier (a] 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 
    296 2021-05-14  Mike Frysinger  <vapier (a] 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 
    304 2021-04-22  Tom Tromey  <tom (a] tromey.com>
    305 
    306 	* mon.c: Update includes.
    307 	* emul_unix.c: Update includes.
    308 	(do_unix_gettimeofday): Update condition.
    309 
    310 2021-04-22  Tom Tromey  <tom (a] 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 
    316 2021-04-08  Tom Tromey  <tom (a] tromey.com>
    317 
    318 	* emul_unix.c: Include time.h.
    319 
    320 2021-04-08  Simon Marchi  <simon.marchi (a] polymtl.ca>
    321 
    322 	* Makefile.in: Set ASAN_OPTIONS when running igen.
    323 
    324 2021-04-03  Mike Frysinger  <vapier (a] gentoo.org>
    325 
    326 	* Makefile.in (install): Install as run-ppc when not the primary arch.
    327 	(install-strip): Likewise.
    328 
    329 2021-03-13  Mike Frysinger  <vapier (a] 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 
    335 2021-03-13  Mike Frysinger  <vapier (a] 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 
    342 2021-03-08  Mike Frysinger  <vapier (a] 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 
    347 2021-03-07  Mike Frysinger  <vapier (a] gentoo.org>
    348 
    349 	* Makefile.in (check): Define.
    350 
    351 2021-02-13  Mike Frysinger  <vapier (a] gentoo.org>
    352 
    353 	* configure.ac: Replace sinclude with AC_CONFIG_MACRO_DIRS.
    354 	* aclocal.m4, configure: Regenerate.
    355 
    356 2021-02-06  Mike Frysinger  <vapier (a] 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 
    365 2021-01-19  Mike Frysinger  <vapier (a] gentoo.org>
    366 
    367 	* Makefile.in (version.c): Simplifiy args and call move-if-change.
    368 
    369 2021-01-11  Mike Frysinger  <vapier (a] 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 
    387 2021-01-09  Mike Frysinger  <vapier (a] gentoo.org>
    388 
    389 	* configure: Regenerate.
    390 
    391 2021-01-08  Mike Frysinger  <vapier (a] gentoo.org>
    392 
    393 	* sim_calls.c (sim_memory_map): Define.
    394 
    395 2021-01-04  Mike Frysinger  <vapier (a] gentoo.org>
    396 
    397 	* gen-icache.c, igen.c: Include stdlib.h.
    398 
    399 2021-01-04  Mike Frysinger  <vapier (a] gentoo.org>
    400 
    401 	* acinclude.m4 (ACX_BUGURL): Change http:// to https://.
    402 	* configure: Regenerate.
    403 
    404 2020-10-20  Dr. David Alan Gilbert  <dgilbert (a] redhat.com>
    405 
    406 	* emul_netbsd.c (do_sigprocmask): Fix printf format.
    407 
    408 2020-07-03  Sebastian Huber  <sebastian.huber (a] 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 
    421 2020-03-12  Kamil Rytarowski  <n54 (a] gmx.com>
    422 
    423 	* emul_netbsd.c (netbsd_signal_names): Sync with NetBSD 9.99.49.
    424 
    425 2020-03-12  Kamil Rytarowski  <n54 (a] gmx.com>
    426 
    427 	* emul_netbsd.c (netbsd_error_names): Sync with NetBSD 9.99.49.
    428 
    429 2019-12-19  Tom Tromey  <tromey (a] adacore.com>
    430 
    431 	PR build/24572:
    432 	* Makefile.in (install-strip): New target.
    433 
    434 2019-09-20  Alan Modra  <amodra (a] gmail.com>
    435 
    436 	* emul_generic.c (emul_add_tree_options): Delete old bfd code.
    437 
    438 2019-01-26  Tom Tromey  <tom (a] tromey.com>
    439 
    440 	* Makefile.in (version.c): Use sim's create-version.sh.
    441 
    442 2018-05-09  Sebastian Rasmussen  <sebras (a] gmail.com>
    443 
    444 	* e500_registers.h: Comment typo fix.
    445 	* ppc-instructions (ppc_insn_mfcr): Likewise.
    446 
    447 2017-09-05  John Baldwin  <jhb (a] FreeBSD.org>
    448 
    449 	PR sim/20863
    450 	* sim_calls.c (error): New function.
    451 
    452 2017-02-13  Mike Frysinger  <vapier (a] 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 
    464 2016-01-10  Mike Frysinger  <vapier (a] 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 
    477 2016-01-10  Mike Frysinger  <vapier (a] gentoo.org>
    478 
    479 	* configure: Regenerate.
    480 
    481 2016-01-10  Mike Frysinger  <vapier (a] gentoo.org>
    482 
    483 	* configure: Regenerate.
    484 
    485 2016-01-10  Mike Frysinger  <vapier (a] 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 
    497 2016-01-10  Mike Frysinger  <vapier (a] 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 
    506 2016-01-06  Mike Frysinger  <vapier (a] gentoo.org>
    507 
    508 	* sim_calls.c (sim_open): Mark argv const.
    509 	(sim_create_inferior): Mark argv and env const.
    510 
    511 2016-01-04  Mike Frysinger  <vapier (a] 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 
    522 2016-01-02  Mike Frysinger  <vapier (a] 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 
    537 2015-12-29  Kevin Buettner  <kevinb (a] 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 
    551 2015-12-26  Mike Frysinger  <vapier (a] gentoo.org>
    552 
    553 	* Makefile.in (TCONFIG_H): Delete.
    554 	(sim-fpu.o): Delete $(TCONFIG_H).
    555 	(tconfig.h): Delete rule.
    556 
    557 2015-11-21  Mike Frysinger  <vapier (a] 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 
    564 2015-11-17  Pedro Alves  <palves (a] redhat.com>
    565 
    566 	* debug.h (TRACE, ITRACE, DTRACE, DITRACE, PTRACE): Call
    567 	sim_io_printf_filtered instead of printf_filtered.
    568 
    569 2015-06-12  Mike Frysinger  <vapier (a] gentoo.org>
    570 
    571 	* configure: Regenerate.
    572 
    573 2015-04-29  Nick Clifton  <nickc (a] redhat.com>
    574 
    575 	PR 18273
    576 	* hw_htab.c (htab_map_binary): Fix overlap check.
    577 
    578 2015-04-13  Mike Frysinger  <vapier (a] gentoo.org>
    579 
    580 	* Makefile.in (version.o): Change to using create-version.sh from gdb.
    581 	(create-version.sh): Delete.
    582 
    583 2015-03-31  Mike Frysinger  <vapier (a] gentoo.org>
    584 
    585 	* config.in, configure: Regenerate.
    586 	* Makefile.in (INCLUDES): Add $(ZLIBINC).
    587 	(ZLIB, ZLIBINC): Define.
    588 	(BFD_LIB): Add $(ZLIB).
    589 
    590 2014-11-23  Joel Sherrill <joel.sherrill (a] oarcorp.com>
    591 
    592 	* ChangeLog, ChangeLog.00, hw_com.c, ld-cache.h, ppc-instructions:
    593 	Change immediatly to immediately.
    594 
    595 2014-08-27  Joel Sherrill <joel.sherrill (a] oarcorp.com>
    596 
    597 	* basics.h, device.c, device.h, hw_htab.c, hw_memory.c:
    598 	Correct spelling in comments.
    599 
    600 2014-08-19  Alan Modra  <amodra (a] gmail.com>
    601 
    602 	* configure.ac: Invoke AC_PLUGINS.
    603 	* configure: Regenerate.
    604 	* config.in: Regenerate.
    605 
    606 2014-03-10  Mike Frysinger  <vapier (a] gentoo.org>
    607 
    608 	* sim_calls.c (sim_do_command): Add const to cmd.
    609 
    610 2014-03-05  Mike Frysinger  <vapier (a] gentoo.org>
    611 
    612 	* sim_calls.c (sim_load): Add const to prog.
    613 
    614 2014-02-17  Aaro Koskinen  <aaro.koskinen (a] iki.fi>
    615 
    616 	PR gdb/12202
    617 	* Makefile.in (psim): Delete $(LIBS) from dependency.
    618 
    619 2013-10-15  Hans-Peter Nilsson  <hp (a] axis.com>
    620 
    621 	* Makefile.in (srcsim): New variable.
    622 	(version.c): Adjust call to $(srccom)/create-version.sh as per change.
    623 
    624 2013-06-28  Tom Tromey  <tromey (a] redhat.com>
    625 
    626 	* Make-common.in (version.c): Use version.in, not
    627 	common/version.in.
    628 
    629 2013-06-24  Joel Brobecker  <brobecker (a] 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 
    635 2013-05-03  Hafiz Abid Qadeer  <abidh (a] codesourcery.com>
    636 
    637 	revert:
    638 	2013-04-19  Nathan Froyd  <froydnj (a] codesourcery.com>
    639 	* ppc-instructions (isel): New instruction.
    640 
    641 2013-04-19  Nathan Froyd  <froydnj (a] codesourcery.com>
    642 
    643 	* ppc-instructions (isel): New instruction.
    644 
    645 2012-12-19  Joel Brobecker  <brobecker (a] adacore.com>
    646 
    647 	* COPYING: Update to GPL version 3.
    648 
    649 2012-06-15  Joel Brobecker  <brobecker (a] adacore.com>
    650 
    651 	* configure: Regenerate.
    652 
    653 2012-05-24  Pedro Alves  <palves (a] redhat.com>
    654 
    655 	PR gdb/7205
    656 	* Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
    657 
    658 2012-03-14  Michael Haubenwallner  <michael.haubenwallner (a] salomon.at>
    659 
    660 	* emul_unix.c (st_pad1, st_pad2, st_pad3): Undefine.
    661 
    662 2012-01-02  Joel Brobecker  <brobecker (a] adacore.com>
    663 
    664 	* dp-bit.c: Reformat copyright header.
    665 
    666 2011-02-11  Ben Golding  <ben_golding (a] yahoo.co.uk>
    667 
    668 	* events.c: add #include <stdlib.h> for free(). Fix PR build/13372.
    669 
    670 2011-10-17  Mike Frysinger  <vapier (a] gentoo.org>
    671 
    672 	* configure.ac: Change include to common/acinclude.m4.
    673 
    674 2011-10-17  Mike Frysinger  <vapier (a] 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 
    680 2011-06-09  Joel Brobecker  <brobecker (a] adacore.com>
    681 
    682 	* psim.c (psim_options): Fix length of comparison when checking
    683 	for --sysroot= option.
    684 
    685 2011-06-08  Joel Brobecker  <brobecker (a] adacore.com>
    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 
    691 2011-06-08  Joel Brobecker  <brobecker (a] adacore.com>
    692 
    693 	* psim.c (psim_options): Accept and ignore `--sysroot=...'.
    694 
    695 2011-06-03  Joel Brobecker  <brobecker (a] adacore.com>  (obvious fix)
    696 
    697 	From Stephen Kitt  <steve (a] sk2.org>
    698 	* vm.c (vm_synchronize_context): Spelling fix in function
    699 	documentation.
    700 
    701 2011-04-16  Mike Frysinger  <vapier (a] gentoo.org>
    702 
    703 	* sim_calls.c (sim_complete_command): New stub function.
    704 
    705 2011-02-14  Mike Frysinger  <vapier (a] 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 
    744 2011-01-11  Andrew Burgess  <aburgess (a] broadcom.com>
    745 
    746 	* gdb-sim.c (sim_store_register): Update return value to
    747 	match new API.
    748 
    749 2011-01-05  Joel Brobecker  <brobecker (a] adacore.com>
    750 
    751 	* psim.texinfo: Copyright year update.
    752 
    753 2010-04-14  Mike Frysinger  <vapier (a] gentoo.org>
    754 
    755 	* sim_calls.c (sim_write): Add const to buf arg.
    756 
    757 2010-02-14  Andreas Schwab  <schwab (a] linux-m68k.org>
    758 
    759 	* ppc-instructions: Fix missing assignment in last change.
    760 
    761 2010-02-05  Andreas Schwab  <schwab (a] linux-m68k.org>
    762 
    763 	* ppc-instructions: Fix aliasing bugs when calling
    764 	invalid_arithemetic_operation.
    765 
    766 2009-11-13  Nathan Froyd  <froydnj (a] 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 
    779 2009-10-15  Joel Sherrill <joel.sherrill (a] oarcorp.com>
    780 
    781 	* std-config.h: Fix spelling error.
    782 
    783 2009-09-22  Joel Sherrill  <joel.sherrill (a] oarcorp.com>
    784 
    785 	* main.c: Fix spelling error.
    786 
    787 2009-09-15  Andreas Tobler <andreast-list (a] fgznet.ch>
    788 	    Doug Evans  <dje (a] google.com>
    789 
    790 	* configure.ac (sim_hwflags): Use AC_DEFINE to define HAVE_UNION_SEMUN.
    791 	* configure: Regenerate.
    792 	* config.in: Regenerate.
    793 	* hw_sem.c: (HAVE_UNION_SEMUN): Renamed from HAS_UNION_SEMUN.
    794 
    795 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues (a] gmx.de>
    796 
    797 	* config.in: Regenerate.
    798 	* configure: Likewise.
    799 
    800 	* configure: Regenerate.
    801 
    802 2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues (a] gmx.de>
    803 
    804 	* Makefile.in (datarootdir): New variable.
    805 
    806 2009-01-12  Nathan Froyd  <froydnj (a] codesourcery.com>
    807 
    808 	* ppc-instructions (sync): Add L field.
    809 
    810 2008-12-15 Joel Sherrill <joel.sherrill (a] oarcorp.com>
    811 
    812 	* ppc-instructions, ppc-spr-table: Add ability
    813 	to read tbrl and tbru special registers.
    814 
    815 2008-11-18  Joel Sherrill <joel.sherrill (a] 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 
    823 2008-07-11  Hans-Peter Nilsson  <hp (a] 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 
    830 2008-06-06  Vladimir Prus  <vladimir (a] codesourcery.com>
    831 	    Daniel Jacobowitz  <dan (a] codesourcery.com>
    832 	    Joseph Myers  <joseph (a] codesourcery.com>
    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 
    845 2008-03-14  Nick Hudson  <nick.hudson (a] dsl.pipex.com
    846 
    847 	* configure.ac: Pass ../../intl to ZW_GNU_GETTEXT_SISTER_DIR.
    848 	* configure: Regenerate.
    849 
    850 2007-10-15  Daniel Jacobowitz  <dan (a] codesourcery.com>
    851 
    852 	* gdb-sim.c (regnum2spr): Rename to...
    853 	(sim_spr_register_name): ... this.  Make global.
    854 
    855 2007-09-04  Jerome Guitton  <guitton (a] adacore.com>
    856 
    857 	* sim/ppc/emul_bugapi.c (emul_bugapi_create): quote the file
    858 	name property before parsing it.
    859 
    860 2006-12-21  Hans-Peter Nilsson  <hp (a] axis.com>
    861 
    862 	* acconfig.h: Remove.
    863 	* config.in: Regenerate.
    864 
    865 2006-11-22  Tom Marn <tom.marn (a] telargo.com>
    866 
    867 	Committed by Andrew Cagney.
    868 	* ppc-instructions: Implement optional PowerPC stfiwx instruction.
    869 
    870 2006-07-12  Fred Fish  <fnf (a] specifix.com>
    871 
    872 	* sim-endian.h (asm/byteorder.h): Don't include private kernel
    873 	header.
    874 
    875 2006-06-13  Richard Earnshaw  <rearnsha (a] arm.com>
    876 
    877 	* configure: Regenerated.
    878 
    879 2006-05-31  Daniel Jacobowitz  <dan (a] 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 
    888 2006-05-05  Andreas Schwab  <schwab (a] 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 
    897 2006-04-23  Andreas Schwab  <schwab (a] suse.de>
    898 
    899 	* Makefile.in (tmp-ld-decode): Fix dependencies.
    900 	(tmp-ld-cache): Likewise.
    901 	(tmp-ld-insn): Likewise.
    902 
    903 2006-02-01  Mark Mitchell  <mark (a] 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 
    911 2006-01-25  Mark Mitchell  <mark (a] codesourcery.com>
    912 
    913 	* words.h (natural32): Define as "int".
    914 
    915 2006-01-23  Mark Mitchell  <mark (a] codesourcery.com>
    916 
    917 	* words.h (signed32): Define as "int".
    918 	(unsigned32): Define as "unsigned int".
    919 
    920 2005-11-28 Mark Mitchell  <mark (a] 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 
    928 2005-11-28  Mark Mitchell  <mark (a] codesourcery.com>
    929 
    930 	* psim.c: Include gdb/signals.h.
    931 
    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 
    936 2005-07-15  Ben Elliston  <bje (a] au.ibm.com>
    937 
    938 	* hw_htab.c (bfd_get_section_lma): Remove macro; use BFD's.
    939 
    940 2005-07-15  Ben Elliston  <bje (a] 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 
    947 2005-04-20  Manoj Iyer  <manjo (a] austin.ibm.com>
    948 
    949 	* psim.c: Added libiberty.h header file.
    950 
    951 2005-04-18  Manoj Iyer  <manjo (a] austin.ibm.com>
    952 
    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 
    959 2005-03-25  Anthony Green  <green (a] redhat.com>
    960 
    961 	* tree.c (parse_reg_property): Fix memset usage.
    962 
    963 2005-03-23  Mark Kettenis  <kettenis (a] gnu.org>
    964 
    965 	* configure: Regenerate.
    966 
    967 2005-01-11  Andrew Cagney  <cagney (a] localhost.localdomain>
    968 
    969 	* configure.ac: Delete AC_CONFIG_AUX_DIR.
    970 	* configure: Re-generate.
    971 
    972 2005-01-07  Andrew Cagney  <cagney (a] gnu.org>
    973 
    974 	* configure.ac: Rename configure.in, require autoconf 2.59.
    975 	* configure: Re-generate.
    976 
    977 2005-01-03  Andreas Schwab  <schwab (a] suse.de>
    978 
    979 	* Makefile.in (hw_com.o, hw_eeprom.o): Depend on
    980 	$(DEVICE_TABLE_H).
    981 
    982 2004-11-16  Andreas Schwab  <schwab (a] 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 
    988 2004-11-11  Andreas Schwab  <schwab (a] suse.de>
    989 
    990 	* sim_calls.c: Include "libiberty.h".
    991 
    992 2004-09-24  Ian Lance Taylor <ian (a] 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 
   1000 2004-08-05  Nathanael Nerode  <neroden (a] gcc.gnu.org>
   1001 
   1002 	* Makefile.in (GDB_INCLUDES): Remove bogus reference to mmalloc.
   1003 
   1004 2004-08-04  Andrew Cagney  <cagney (a] gnu.org>
   1005 	    Jim Blandy <jimb (a] 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 
   1017 2004-08-04  Andrew Cagney  <cagney (a] gnu.org>
   1018 
   1019 	* Back out accidently committed change.
   1020 
   1021 2004-08-04  Jim Blandy  <jimb (a] 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 
   1036 2004-07-26  Andrew Cagney  <cagney (a] gnu.org>
   1037 
   1038 	Problem from Olaf Hering <olh (a] suse.de>.
   1039 	* Makefile.in (install, installdirs): Add DESTDIR.
   1040 
   1041 2004-07-10  Ben Elliston  <bje (a] au.ibm.com>
   1042 
   1043 	* tree.c (parse_integer_property): Comment typo fix.
   1044 
   1045 2004-07-06  Jim Blandy  <jimb (a] 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 
   1078 2004-06-28  Jim Blandy  <jimb (a] 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 
   1083 2004-06-15  Alan Modra  <amodra (a] 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 
   1090 2004-05-10  Daniel Jacobowitz  <dan (a] debian.org>
   1091 
   1092 	* configure.in (sim_fpu_cflags): Add -I../common.
   1093 	* configure: Regenerated.
   1094 
   1095 2004-01-27  Andrew Cagney  <cagney (a] redhat.com>
   1096 
   1097 	* ppc-instructions: Update copyright.
   1098 	(convert_to_integer): Add trailing ";" to label.
   1099 
   1100 2003-10-16  Michael Snyder  <msnyder (a] redhat.com>
   1101 
   1102 	* emul_netbsd.c: Only a comment may follow an #endif.
   1103 
   1104 2003-10-15  Michael Snyder  <msnyder (a] redhat.com>
   1105 
   1106 	* Makefile.in (sim_calls.o): No longer depends on gdb/tm.h.
   1107 
   1108 2003-06-22  Andrew Cagney  <cagney (a] redhat.com>
   1109 
   1110 	Written by matthew green <mrg (a] redhat.com>, with fixes from Aldy
   1111 	Hernandez <aldyh (a] redhat.com>, Jim Wilson <wilson (a] redhat.com>, and
   1112 	Nick Clifton <nickc (a] redhat.com>.
   1113 
   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 
   1142 2003-06-22  Andrew Cagney  <cagney (a] 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 
   1150 2003-06-21  Andrew Cagney  <cagney (a] redhat.com>
   1151 
   1152 	* interrupts.c: Update copyright.
   1153 	(external_interrupt): Fix test for already pending interrupt.
   1154 	Problem found by Joshua LeVasseur.
   1155 
   1156 	* ppc-instructions: Add missing +8 line.  Found by blofeldus at
   1157 	yahoo.com.
   1158 
   1159 2003-06-21  Andrew Cagney  <cagney (a] redhat.com>
   1160 
   1161 	From Ian Lance Taylor <ian (a] airs.com>: * hw_nvram.c
   1162 	(hw_nvram_init_address): Correct call to memset--swap second and
   1163 	third arguments.
   1164 
   1165 2003-06-21  Andrew Cagney  <cagney (a] 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 
   1170 2003-06-20  Andrew Cagney  <cagney (a] 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 
   1189 2003-06-19  Andrew Cagney  <cagney (a] 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 
   1216 2003-06-19  Andrew Cagney  <cagney (a] 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.
   1232 
   1233 2003-05-16  Ian Lance Taylor  <ian (a] airs.com>
   1234 
   1235 	* Makefile.in (various): Use $(SHELL) whenever we invoke
   1236 	move-if-change.
   1237 
   1238 2003-02-27  Andrew Cagney  <cagney (a] redhat.com>
   1239 
   1240 	* sim_calls.c (sim_open, sim_create_inferior): Rename _bfd to bfd.
   1241 
   1242 2002-09-27  Andrew Cagney  <ac131313 (a] redhat.com>
   1243 
   1244 	* hw_disk.c (hw_disk_init_address): Set device type to "block",
   1245 	not "disk".
   1246 
   1247 2002-06-22  Andrew Cagney  <ac131313 (a] redhat.com>
   1248 
   1249 	* Makefile.in (INTL_SRC): Define.
   1250 	(INTL_CFLAGS): Define.
   1251 	(INTL_DIR): Define.
   1252 	(STD_CFLAGS): Add INTL_CFLAGS.
   1253 
   1254 2002-06-17  Elena Zannoni  <ezannoni (a] redhat.com>
   1255 
   1256 	* psim.c (psim_options): Don't choke when gdb invokes us with
   1257 	the --architecture option, just ignore it.
   1258 
   1259 2002-06-16  Andrew Cagney  <ac131313 (a] redhat.com>
   1260 
   1261 	* configure: Regenerated to track ../common/aclocal.m4 changes.
   1262 
   1263 2002-06-08  Andrew Cagney  <cagney (a] redhat.com>
   1264 
   1265 	* main.c: Include "gdb/callback.h" and "gdb/remote-sim.h".
   1266 	* sim_calls.c: Ditto.
   1267 
   1268 2002-05-30  DJ Delorie  <dj (a] 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 
   1275 2002-04-15  Elena Zannoni  <ezannoni (a] redhat.com>
   1276 
   1277 	* sim_calls.c (sim_fetch_register, sim_store_register): Return -1 for
   1278 	AltiVec registers as a temporary stopgap.
   1279 
   1280 2002-03-24  David O'Brien  <obrien (a] FreeBSD.org>
   1281 
   1282 	* ppc/hw_disk.c: Export a disk device property.
   1283 
   1284 2002-03-23  Andrew Cagney  <ac131313 (a] redhat.com>
   1285 
   1286 	From 2001-12-09 Julien Ducourthial <jducourt (a] 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 
   1291 2002-02-24  Andrew Cagney  <ac131313 (a] redhat.com>
   1292 
   1293 	From wiz at danbala:
   1294 	* std-config.h: Fix grammar and typos.  Update copyright.
   1295 	Fix PR gdb/287.
   1296 
   1297 2002-01-12  matthew green  <mrg (a] 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 
   1327 2002-01-04  matthew green  <mrg (a] 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 
   1338 2001-12-16  Andrew Cagney  <ac131313 (a] redhat.com>
   1339 
   1340 	* configure.in (sim_fpu): Don't add sim-bits.o.
   1341 	* configure: Re-generate.
   1342 
   1343 2001-12-15  matthew green  <mrg (a] 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 
   1349 2001-12-14  matthew green  <mrg (a] 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 
   1388 2001-12-01  Andrew Cagney  <ac131313 (a] redhat.com>
   1389 
   1390 	From Mark Peek.
   1391 	* ppc-spr-table: Add SDA and PIR.
   1392 
   1393 2001-10-29  Andrew Cagney  <ac131313 (a] 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 
   1400 2001-10-25  Andrew Cagney  <ac131313 (a] 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 
   1409 2001-07-16  Daniel Jacobowitz  <drow (a] mvista.com>
   1410 
   1411 	* Makefile.in: Add dependencies on $(CPU_H).
   1412 
   1413 Wed Mar  7 10:45:12 HST 2001  Glen Nakamura  <gen (a] lava.net>
   1414 
   1415 	* hw_init.c (dma_file): Fixed problem with loading last 1KB of
   1416 	file.
   1417 
   1418 2001-03-04  Andrew Cagney  <ac131313 (a] 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 
   1428 2001-01-15  Geoffrey Keating  <geoffk (a] 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 
   1433 2000-12-12  Geoffrey Keating  <geoffk (a] 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 
   1439 2000-11-15  Jim Blandy  <jimb (a] 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 
   1446 2000-10-24  Geoff Keating  <geoffk (a] cygnus.com>
   1447 
   1448 	* ppc-instructions (lfsux): Correct XO field of lfsux instruction.
   1449 
   1450 Tue May 23 21:39:23 2000  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1451 
   1452 	* configure: Regenerated to track ../common/aclocal.m4 changes.
   1453 
   1454 Fri Apr 28 15:59:27 2000  Andrew Cagney  <cagney (a] 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 
   1461 Fri Apr 28 15:53:54 2000  Andrew Cagney  <cagney (a] 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 
   1468 2000-03-25  Geoff Keating  <geoffk (a] cygnus.com>
   1469 
   1470 	* ppc-instructions (Disabled_Exponent_Underflow): Increment
   1471 	the exponent when denormalizing.
   1472 
   1473 Thu Sep  2 18:15:53 1999  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1474 
   1475 	* configure: Regenerated to track ../common/aclocal.m4 changes.
   1476 
   1477 1999-05-08  Felix Lee  <flee (a] cygnus.com>
   1478 
   1479 	* configure.in: Use AC_EXEEXT instead of AM_EXEEXT.
   1480 	* configure: Regenerated to track ../common/aclocal.m4 changes.
   1481 
   1482 1999-04-02  Keith Seitz  <keiths (a] 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 
   1490 1999-02-22  Jim Lemke  <jlemke (a] 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 
   1500 1999-02-01  Jim Blandy  <jimb (a] 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 
   1525 1999-01-22  Jim Lemke <jlemke (a] 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 
   1534 1998-12-01  Ken Raeburn  <raeburn (a] cygnus.com>
   1535 
   1536 	* hw_nvram.c (hw_nvram_bcd): Force value to fit in 0..99.
   1537 
   1538 Fri Nov 20 12:17:28 1998  Andrew Cagney  <cagney (a] 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 
   1549 1998-11-19  Michael Meissner  <meissner (a] 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 
   1555 Mon Sep 28 09:42:45 1998  Drew Moseley  <dmoseley (a] 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 
   1563 Sun Oct  4 00:50:47 1998  Felix Lee  <flee (a] 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 
   1570 1998-09-03  Michael Meissner  <meissner (a] cygnus.com>
   1571 
   1572 	* emul_{netbsd,unix}.c: Update copyright year.
   1573 
   1574 Mon Jun 29 10:57:36 1998  Michael Snyder  <msnyder (a] cleaver.cygnus.com>
   1575 
   1576 	* sim_calls.c (sim_fetch_register, sim_store_register):
   1577 	return zero when nothing to do.
   1578 
   1579 1998-06-26  Michael Meissner  <meissner (a] 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 
   1586 Tue May 12 12:10:33 PDT 1998  James Ingham  <jingham (a] 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 
   1592 Sat May  2 01:10:12 1998  Stu Grossman  <grossman (a] 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.
   1598 
   1599 Wed Apr 29 15:44:52 1998  Geoffrey Noer  <noer (a] 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 
   1606 Sun 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 
   1611 Sun Apr 26 15:19:51 1998  Tom Tromey  <tromey (a] 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 
   1617 Fri 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 
   1622 Fri Apr 24 11:18:46 1998  Tom Tromey  <tromey (a] 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 
   1630 Wed Apr 22 14:28:48 1998  Michael Meissner  <meissner (a] cygnus.com>
   1631 
   1632 	* configure: Regenerate with autoconf 2.12.1.
   1633 
   1634 Fri Mar 13 09:25:58 1998  Andrew Cagney  <cagney (a] 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 
   1645 Tue Feb 17 12:48:58 1998  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1646 
   1647 	* sim_calls.c (sim_store_register, sim_fetch_register): Pass in
   1648  	length parameter.  Return -1.
   1649 
   1650 Mon Feb  9 14:13:14 1998  Andrew Cagney  <cagney (a] 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.
   1655 
   1656 Wed Dec 10 17:38:28 1997  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1657 
   1658 	* sim_calls.c (sim_load): Do not parse PROG using buildargv, use
   1659  	raw value instead.
   1660 
   1661 1997-11-05  Felix Lee  <flee (a] cygnus.com>
   1662 
   1663 	* emul_chirp.c: #ifdef HAVE_UNISTD_H
   1664 
   1665 Wed Oct 15 08:50:54 1997  Andrew Cagney  <cagney (a] 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 
   1672 Mon Oct  6 18:09:26 1997  Michael Meissner  <meissner (a] cygnus.com>
   1673 
   1674 	* sim_calls.c (zfree): Call free correctly.
   1675 
   1676 Mon Sep 29 10:05:01 1997  Andrew Cagney  <cagney (a] 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 
   1682 Fri Sep 26 09:50:29 1997  Andrew Cagney  <cagney (a] 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 
   1689 Tue Sep  9 22:13:23 1997  Felix Lee  <flee (a] 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 
   1695 Wed Aug 27 10:24:15 1997  Andrew Cagney  <cagney (a] 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 
   1703 Wed Aug 27 10:15:48 1997  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1704 
   1705 	* sim_calls.c (sim_load): From Ian Lance Taylor - free argv after
   1706  	it has been used, not before.
   1707 
   1708 Tue Aug 26 10:41:35 1997  Andrew Cagney  <cagney (a] 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 
   1716 Mon Aug 25 16:17:06 1997  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1717 
   1718 	* sim_calls.c (sim_open): Add ABFD argument.
   1719 
   1720 Thu Jul  3 10:18:06 1997  Andrew Cagney  <cagney (a] 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.
   1728 
   1729 	* configure.in: From Erik Landry - set sim_default_model not
   1730  	sim_model for sim-default-model option.
   1731 	* configure: Regenerate.
   1732 
   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.
   1746 
   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.
   1754 
   1755 Tue May 20 10:22:50 1997  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1756 
   1757 	* sim_calls.c (sim_open): Add callback argument.
   1758 	(sim_set_callbacks): Delete.
   1759 
   1760 Tue Apr 22 22:36:57 1997  Mike Meissner  <meissner (a] cygnus.com>
   1761 
   1762 	* sim_callbacks.h (error): Make declaration match gdb's.
   1763 	* main.c (error): Ditto.
   1764 
   1765 Fri Apr 18 17:03:09 1997  Andrew Cagney  <cagney (a] 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 
   1783 Fri Apr 18 17:03:08 1997  Andrew Cagney  <cagney (a] b1.cygnus.com>
   1784 
   1785 	* psim.c (psim_options): Handle -E option correctly.
   1786 	(psim_usage): Document.
   1787 
   1788 Thu Apr 17 03:28:03 1997  Doug Evans  <dje (a] 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 
   1796 Tue Apr 15 14:57:18 1997  Ian Lance Taylor  <ian (a] 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 
   1804 Fri Apr  4 17:54:36 1997  Jim Wilson  <wilson (a] 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 
   1809 Mon Apr 14 16:29:51 1997  Ian Lance Taylor  <ian (a] cygnus.com>
   1810 
   1811 	* Makefile.in (INSTALL): Change install.sh to install-sh.
   1812 
   1813 Tue Apr  1 18:15:14 1997  Jim Wilson  <wilson (a] cygnus.com>
   1814 
   1815 	* ppc-instructions: Change milhwu to mulhwu.
   1816 
   1817 Wed Apr  2 15:38:08 1997  Doug Evans  <dje (a] canuck.cygnus.com>
   1818 
   1819 	* sim_calls.c (sim_open): New arg `kind'.
   1820 
   1821 Wed Apr  2 14:51:17 1997  Ian Lance Taylor  <ian (a] cygnus.com>
   1822 
   1823 	* COPYING: Update FSF address.
   1824 
   1825 Tue Mar 25 16:17:59 1997  Andrew Cagney  <cagney (a] 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 
   1830 Tue Mar 25 12:13:02 1997  Andrew Cagney  <cagney (a] 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 (a] ENGR.ORST.EDU>).
   1836 	* configure: Re-generate.
   1837 
   1838 Fri Mar 14 18:23:02 1997  Andrew Cagney  <cagney (a] 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 
   1843 Thu Mar 13 12:55:48 1997  Doug Evans  <dje (a] 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 
   1849 Thu Feb 13 10:35:14 1997  Andrew Cagney  <cagney (a] 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 
   1866 Wed Feb 12 19:33:45 1997  Andrew Cagney  <cagney (a] 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.
   1871 
   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.
   1887 
   1888 Tue Feb 11 13:49:10 1997  Michael Meissner  <meissner (a] 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 
   1902 Tue Feb  4 13:42:59 1997  Doug Evans  <dje (a] canuck.cygnus.com>
   1903 
   1904 	* configure.in: Fix typo in test for callback.c.
   1905 	* configure: Regenerated.
   1906 
   1907 Fri Feb  7 10:04:25 1997  Andrew Cagney  <cagney (a] 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 
   1912 Wed Feb  5 10:56:27 1997  Andrew Cagney  <cagney (a] 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.
   1917 
   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 
   1925 Wed Feb  5 10:56:27 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   1926 
   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 
   1932 Tue Feb  4 17:44:51 1997  Andrew Cagney  <cagney (a] 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 
   1941 Mon Feb  3 17:18:16 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   1942 
   1943 	* events.c (insert_event_entry): Correct loop termination
   1944  	assertions.
   1945 
   1946 Fri Jan 31 16:20:26 1997  Andrew Cagney  <cagney (a] 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 
   1962 
   1963 Thu Jan 30 11:23:20 1997  Andrew Cagney  <cagney (a] 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 
   1971 Wed Jan 29 12:32:41 1997  Michael Meissner  <meissner (a] 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 
   1986 Wed Jan 29 12:14:19 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   1987 
   1988 	* igen wasn't aborting if the opcode table contained no valid
   1989  	fields.
   1990 
   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 
   1995 Wed Jan 29 12:14:19 1997  Andrew Cagney  <cagney (a] 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.
   2000 
   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 
   2009 Wed Jan 29 12:14:19 1997  Andrew Cagney  <cagney (a] 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.
   2014 
   2015 	* The simulation would not correctly restart if an event requested
   2016  	that the simulation be halted.
   2017 
   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.
   2038 
   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 
   2048 Wed Jan 29 12:14:19 1997  Andrew Cagney  <cagney (a] 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.
   2054 
   2055 	* ppc-opcode-stupid: Move all but the basic table in -complex into
   2056  	here.  Update to new format.
   2057 
   2058 	* Makefile.in (tmp-defines): New target. Force defines.h to always
   2059  	be built.  Hence get ppc-opcode-goto to build.
   2060 
   2061 Tue Jan 28 13:00:19 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2062 
   2063 	* hw_com.c (hw_com_instance_read, hw_com_instance_write):
   2064  	Implement.
   2065 
   2066 Thu Jan 23 09:07:26 1997  Andrew Cagney  <cagney (a] 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 
   2078 Thu Jan 23 09:07:26 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2079 
   2080 	* Some devices support removable media.  Add hooks to the disk
   2081  	device so that it supports this.
   2082 
   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.
   2103 
   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 
   2110 Wed Jan 22 09:38:33 1997  Andrew Cagney  <cagney (a] 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.
   2125 
   2126 	* gen-icache.c (print_icache_body): Output them here.
   2127 
   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 
   2133 Wed Jan 22 12:24:52 1997  Andrew Cagney  <cagney (a] 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.
   2145 
   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
   2149 
   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.
   2154 
   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 
   2166 Tue Jan 21 13:26:10 1997  Andrew Cagney  <cagney (a] 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 
   2176 Mon Jan 20 11:20:15 1997  Andrew Cagney  <cagney (a] 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.
   2183 
   2184 	* cap.h, cap.c: Correct cap type - was signed32 should be
   2185  	signed_cell.
   2186 
   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.
   2190 
   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.
   2196 
   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.
   2201 
   2202 	* device.c (device_create_from): Explicitly add a device to the
   2203  	cap data base.
   2204 
   2205 	* device.c (device_create_from): Always set the cap members.
   2206 
   2207 	* hw_disk.c: Output the instance when tracing.
   2208 
   2209 Sun Jan 19 16:44:29 1997  Andrew Cagney  <cagney (a] 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 
   2215 Sun Jan 19 15:28:23 1997  Andrew Cagney  <cagney (a] 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.
   2221 
   2222 	* hw_memory.c (hw_memory_instance_claim,
   2223  	hw_memory_instance_release): Handle multi-cell memory devices.
   2224 
   2225 	* hw_memory.c (hw_memory_instance_claim): Be tolerant towards the
   2226  	release of memory regions that were not claimed.
   2227 
   2228 Fri Jan 17 12:01:07 1997  Andrew Cagney  <cagney (a] 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.
   2233 
   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.
   2238 
   2239 Fri Jan 17 11:50:13 1997  Andrew Cagney  <cagney (a] 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.
   2244 
   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 
   2263 Thu Jan 16 08:51:25 1997  Andrew Cagney  <cagney (a] 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.
   2271 
   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 
   2277 Wed Jan 15 14:38:25 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2278 
   2279 	* configure.in (--enable-sim-jump): Default is NULL and not -E.
   2280 	* configure: Regenerate.
   2281 
   2282 	* basics.h (__attribute__): Enable attributes if GCC >= 2.6.
   2283 	(UNUSED): Only enable UNUSED if GCC >= 2.7.
   2284 
   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 
   2290 Wed Jan 15 13:54:50 1997  Andrew Cagney  <cagney (a] 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 
   2308 Wed Jan 15 12:25:11 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2309 
   2310 	* cpu.h, cpu.c (cpu_error): Aborts simulation with error message,
   2311  	but also saves current processor state.
   2312 
   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 
   2324 Tue Jan 14 12:19:10 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2325 
   2326 	* ppc-instructions (Move from Special Purpose Register): Support
   2327  	move from DEC.
   2328 
   2329 Mon Jan 13 16:58:12 1997  Andrew Cagney  <cagney (a] 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.
   2342 
   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 
   2349 Thu Jan  2 09:10:41 1997  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2350 
   2351 	* interrupts.c (perform_oea_interrupt): Halt rather than abort on
   2352  	a double interrupt.
   2353 
   2354 Wed Jan  1 22:54:52 1997  Andrew Cagney  <cagney (a] 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 
   2369 Fri Dec 20 13:19:07 1996  Andrew Cagney  <cagney (a] 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 
   2395 Thu Dec 19 11:09:43 1996  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2396 
   2397 	* emul_chirp.c (chirp_emul_boot): Implement. Well report the new
   2398  	string and exit.
   2399 
   2400 	* emul_chirp.c (chirp_emul_exit): Correct type of args struct
   2401  	members - *_cell not host dependant int.
   2402 
   2403 Wed Dec 18 17:49:59 1996  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2404 
   2405 	* interrupts.c (perform_oea_interrupt): Print additional
   2406  	information if a double interrupt is encountered.
   2407 
   2408 Wed Dec 18 17:49:59 1996  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2409 
   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 
   2414 Wed Dec 18 17:49:59 1996  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2415 
   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 
   2424 Tue Dec 17 15:12:38 1996  Andrew Cagney  <cagney (a] 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 
   2430 Fri Dec 13 14:30:31 1996  Andrew Cagney  <cagney (a] 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 
   2440 Fri Dec 13 14:30:31 1996  Andrew Cagney  <cagney (a] 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 
   2456 Tue Dec 10 10:31:48 1996  Michael Meissner  <meissner (a] 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 
   2487 Tue Dec 10 10:12:44 1996  Andrew Cagney  <cagney (a] 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 
   2494 Tue Dec 10 10:12:44 1996  Andrew Cagney  <cagney (a] 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.
   2499 
   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 
   2505 Tue Dec 10 10:12:44 1996  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2506 
   2507 	* psim.c (psim_merge_device_file): Strip newline from device
   2508  	specs.
   2509 
   2510 Tue Dec 10 10:12:44 1996  Andrew Cagney  <cagney (a] 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.
   2517 
   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 
   2524 Mon Dec  9 12:08:46 1996  Andrew Cagney  <cagney (a] 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.
   2531 
   2532 	* emul_chirp.c (emul_chirp_create): Allow real-mode?, real-base,
   2533  	etc to be overriden.
   2534 
   2535 Mon Dec  9 12:08:46 1996  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2536 
   2537 	* os_emul.c (os_emul_create): Use tree find property instead of
   2538  	device find property - sigh.
   2539 
   2540 Thu Dec  5 10:46:42 1996  Andrew Cagney  <cagney (a] kremvax.tpgi.com.au>
   2541 
   2542 	* 961205: Release snapshot 961205.
   2543 
   2544 Thu Dec  5 10:46:42 1996  Andrew Cagney  <cagney (a] 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
   2556 
   2557 Wed Dec  4 13:57:31 1996  Andrew Cagney  <cagney (a] 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 
   2567 Fri Nov 29 11:12:22 1996  Andrew Cagney  <cagney (a] 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.
   2572 
   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 
   2584 Wed Nov 20 00:36:55 1996  Doug Evans  <dje (a] canuck.cygnus.com>
   2585 
   2586 	* sim_calls.c (sim_resume): Reset sim_should_run if single
   2587  	stepping.
   2588 
   2589 Thu Nov 28 13:19:46 1996  Andrew Cagney  <cagney (a] 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.
   2601 
   2602 	* debug.h: Add a new macro DITRACE for tracing device instances.
   2603 
   2604 	* debug.h: Extend the DTRACE macro so that it can also tests for
   2605  	device specific tracint.
   2606 
   2607 	* device.h, device.c (device_trace): Add method to determine
   2608  	device specific tracing.
   2609 	(device_init_address): Set the devices tracing level.
   2610 
   2611 Thu Nov 21 12:05:32 1996  Andrew Cagney  <cagney (a] 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.
   2615 
   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.
   2620 
   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.
   2628 
   2629 	* emul_generic.h: Include tree.h
   2630 	* Makefile.in: Add to EMUL_GENERIC_H dependencies.
   2631 
   2632 	* device.h, device.c (device_root): New function - returns the
   2633  	root of the tree.
   2634 	* corefile.c: Use.
   2635 
   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.
   2641 
   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.
   2653 
   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.
   2658 
   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.
   2662 
   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.
   2666 
   2667 Thu Nov 21 12:05:32 1996  Andrew Cagney  <cagney (a] 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.
   2678 
   2679 Thu Nov 21 12:05:32 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2680 
   2681 	* BUGS: Updated a bit.
   2682 
   2683 Wed Nov 20 14:06:37 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2684 
   2685 	* hw_opic.c: Finish - third round.
   2686 
   2687 Wed Nov 20 12:02:08 1996  Andrew Cagney  <cagney (a] 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 
   2693 Tue Nov 19 21:17:08 1996  Andrew Cagney  <cagney (a] 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.
   2700 
   2701 	* debug.h, debug.c: Order device trace options.
   2702 
   2703 Fri Nov 15 15:23:39 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   2704 
   2705 	* pk_disklabel.c (pk_disklabel_create_instance): Fix up some
   2706 	warnings generated by GCC.
   2707 
   2708 Sun Nov 17 17:59:14 1996  Andrew Cagney  <cagney (a] 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.
   2712 
   2713 	* sim-endian-n.h (endian_le2h_N, endian_h2le_N): Ditto
   2714 
   2715 Sun Nov 17 17:59:14 1996  Andrew Cagney  <cagney (a] 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.
   2719 
   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 
   2725 Sun Nov 17 17:59:14 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2726 
   2727 	* device.c (split_find_device): Be tolerant of missing unit
   2728  	addresses.
   2729 
   2730 Fri Nov 15 16:49:49 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2731 
   2732 	* basics.h (port_direction): New type, specify the direction of
   2733  	any `port'.
   2734 
   2735 	* device.h, device.c (device_interrupt_decode): Include
   2736  	specification of port direction in operations.
   2737  	(device_interrupt_encode): Ditto.
   2738 
   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.
   2743 
   2744 Thu Nov 14 21:38:13 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2745 
   2746 	* hw_opic.c: Finish - second round.
   2747 
   2748 Thu Nov  7 00:18:59 1996  Andrew Cagney  <cagney (a] 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 
   2774 Wed Nov  6 20:20:58 1996  Andrew Cagney  <cagney (a] 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.
   2784 
   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.
   2802 
   2803 Mon Nov  4 12:49:13 1996  Andrew Cagney  <cagney (a] 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.
   2810 
   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 
   2817 Sun Nov  3 18:45:20 1996  Andrew Cagney  <cagney (a] 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 
   2826 Sat Nov  2 21:48:57 1996  Andrew Cagney  <cagney (a] 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.
   2834 
   2835 	* Makefile.in (hw_opic.o, hw_pci.o, hw_ide.o): Add dependencies.
   2836 
   2837 Fri Nov  1 14:42:57 1996  Michael Meissner  <meissner (a] 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 
   2846 Tue Oct 29 17:55:43 1996  Michael Meissner  <meissner (a] 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 
   2856 Tue, 8 Oct 18:42:26 1996  Jason Molenda <crash (a] cygnus.co.jp>
   2857 
   2858 	* Makefile.in (clean): Move config.log to distclean.
   2859 
   2860 Fri Nov  1 16:44:28 1996  Andrew Cagney  <cagney (a] 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 
   2880 Wed Oct 30 18:46:32 1996  Andrew Cagney  <cagney (a] 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 
   2886 Tue Oct 29 02:01:29 1996  Andrew Cagney  <cagney (a] 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.
   2902 
   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 
   2926 Mon Oct 28 22:55:48 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2927 
   2928 	* hw_ide.c: New file.  Model of a basic IDE interface attached to
   2929  	a PCI bus.
   2930 
   2931 	* configure.in (hardware): Add the ide device to the default
   2932  	configuration.
   2933 	* configure: Regenerate.
   2934 
   2935 	* debug.h, debug.c: Add tracing option for the IDE device.
   2936 
   2937 Fri Oct 25 21:28:25 1996  Andrew Cagney  <cagney (a] 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 
   2944 Fri Oct 25 21:28:25 1996  Andrew Cagney  <cagney (a] 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.
   2952 
   2953 	* hw_com.c: Update event handling.
   2954 
   2955 	* hw_disk.c: Implement tracing.
   2956 
   2957 Fri Oct 25 21:28:25 1996  Andrew Cagney  <cagney (a] 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 
   2963 Fri Oct 25 21:28:25 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2964 
   2965 	* device.h, device.c (device_find_ranges_property): New function.
   2966   	Simplify the manipulation of "ranges" properties.
   2967 
   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.
   2973 
   2974 	* device.c (device_tree_print_device): Add code to format and
   2975  	print a ranges property.
   2976 
   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 
   2984 Fri Oct 25 21:28:25 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   2985 
   2986 	* debug.h, debug.c: Sort debug options, Add entries for the
   2987  	comming PHB device.
   2988 
   2989 Fri Oct 18 12:12:21 1996  Michael Meissner  <meissner (a] 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 
   3012 Wed Sep 25 10:20:29 1996  Andrew Cagney  <cagney (a] 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
   3017 	the interrupt glue logic device.
   3018 
   3019 	* configure.in (hardware): Add glue device.
   3020 	* configure: Regenerate.
   3021 
   3022 Tue Sep 24 20:55:38 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3023 
   3024 	* device.c (device_tree_parse_integer_property): New function,
   3025 	parse a list of integers as an array property.
   3026 	(device_tree_add_parsed): Call it.
   3027 
   3028 	* device.c (device_tree_parse_string_property): New function,
   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.
   3032 	(device_tree_add_parsed): Call it.
   3033 
   3034 Tue Sep 24 16:30:48 1996  Andrew Cagney  <cagney (a] 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. -
   3044 	opic-device.
   3045 
   3046 Tue Sep 24 16:30:48 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3047 
   3048 	* Makefile.in (psim.o, idecode.o): Since idecode and not psim is
   3049 	now the file that does all the inlining.
   3050 
   3051 	* Makefile.in (LIB_SRC, LIB_INLINE_SRC, idecode.o): Break out the
   3052 	library source code that could be involved in an inlining.  Make
   3053 	idecode.o only dependant on the inlined library source code.
   3054 
   3055 	* Makefile.in (LIB_OBJ): Put options last on the list so that it
   3056 	is compiled last.
   3057 
   3058 	* std-config.h (DEVICE_INLINE): Only inline locals when the
   3059 	default is to inline.
   3060 
   3061 Mon Sep 23 00:37:49 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3062 
   3063 	* hw_htab.c (htab_sum_binary): Determine the real-base for the
   3064 	binary.
   3065 
   3066 	* hw_htab.c (htab_map_binary): Depending on the value of the
   3067 	load-base, either map the program in as a contiguous section or as
   3068 	separate sections controled by th binaries lma values.
   3069 	(htab_init_data_callback): Ditto.
   3070 
   3071 Sun Sep 22 15:56:22 1996  Andrew Cagney  <cagney (a] 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
   3076 	struct.  Don't require the load_base field to be present - just
   3077 	issue warning - it is a recent addition.
   3078 	(emul_chirp_create): Support both virtual and physical modes.
   3079 
   3080 	* emul_chirp.c (emul_chirp_create): Add a stack initialization
   3081 	property so that any arguments specified on the command line can
   3082 	be passed on to user programs.
   3083 
   3084 	* hw_init.c (create_ppc_chirp_bootargs): Add support for chirp
   3085 	argument passing to the pseudo device stack.
   3086 
   3087 Sat Sep 21 19:39:56 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3088 
   3089 	* device.c (device_error): Make it more tolerant to incomplete
   3090 	devices.
   3091 
   3092 	* hw_init.c (hw_data_init_data_callback): Extend the data device
   3093 	so that it can perform initialization operations either dma or a
   3094 	more complex instance open, seek, write operation.
   3095 	* hw_init.c: Update the description of the data device to reflect
   3096 	this.
   3097 
   3098 Sat Sep 21 00:13:02 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3099 
   3100 	* device.c (device_event_queue_schedule,
   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.
   3105 
   3106 Fri Sep 20 14:04:40 1996  Andrew Cagney  <cagney (a] 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
   3113 	devices.
   3114 
   3115 Thu Sep 19 14:40:40 1996  Andrew Cagney  <cagney (a] 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 
   3120 Thu Sep 19 14:40:40 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3121 
   3122 	* device.c (device_create_instance_from): Tighten up loop
   3123 	searching for device instances.
   3124 	(device_instance_delete): Ditto.
   3125 	(device_instance_delete): Only leaf instances need to be removed
   3126 	from a devices list of active instances.
   3127 
   3128 Thu Sep 19 14:40:40 1996  Andrew Cagney  <cagney (a] 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
   3133 	delete the raw disk instance while we're at it.
   3134 
   3135 	* pk_disklabel.c (pk_disklabel_create_instance): Implement a
   3136 	little bit more - still a long way to go.
   3137 
   3138 	* pk_disklabel.c (disklabel_write, disklabel_read): Remember the
   3139 	new head position after a read or write.
   3140 
   3141 Thu Sep 19 13:05:40 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3142 
   3143 	* emul_chirp.c (chirp_emul_read): Allow reads to be longer then
   3144 	the internal buffer.
   3145 
   3146 Thu Sep 19 13:05:40 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3147 
   3148 	* emul_chirp.c (chirp_read_t2h_args): Call memset-0 with the args
   3149 	in the correct order.
   3150 
   3151 	* emul_chirp.c (chirp_emul_call_method): Correct computation for
   3152 	the address of the first stack argument passed in from the client
   3153 	program.
   3154 
   3155 Wed Sep 18 19:33:54 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3156 
   3157 	* words.h: Add new types signed_cell and unsigned_cell which
   3158 	correspond to the signed and unsigned IEEE 1275 memory locations.
   3159 	* device.h, device.c, emul_chirp.c: Where refering to an IEEE 1275
   3160 	memory cell, replace uses of unsigned32 with unsigned_cell.
   3161 	* device_table.h: Ditto.
   3162 
   3163 	* sim-endian.h: Add new macros H2BE_cell and BE2H_cell which
   3164 	convert cell sized values to from big endian.
   3165 	* device.c, emul_chirp.c: Where refering to IEEE 1275 memory cells
   3166 	use these new macros.
   3167 
   3168 Tue Sep 17 15:57:44 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3169 
   3170 	* device.c (device_tree_add_parsed): Detect and report an
   3171 	interrupt being attached to an invalid device. Was dumping core.
   3172 
   3173 Mon Sep 16 23:09:12 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3174 
   3175 	* device.h, device.c (device_address_to_attach_address,
   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.
   3179 	* device_table.h: Add extra methods to device table.
   3180 
   3181 	* device.h, device.c (device_find_reg_property): New function.
   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.
   3185 	* (device_tree_add_parsed): Make array properties with the name
   3186 	reg or alternate-reg of type reg_property.
   3187 
   3188 	* hw_memory.c (hw_memory_init_address): Rewrite to use new
   3189 	find_reg_property method.
   3190 	* hw_nvram.c (hw_nvram_init_address): Ditto.
   3191 
   3192 	* device.c (device_tree_print_device): Add code to print out a reg
   3193 	property.
   3194 
   3195 	* device_table.c (generic_device_address_to_attach_address,
   3196 	generic_device_size_to_attach_size ): New functions.  Generic
   3197 	functions for converting between unit and attach address or size.
   3198 
   3199 	* device_table.c (generic_device_init_address): Rewrite to use the
   3200 	new find_reg and address convert functions.  Look for both reg and
   3201 	alternate-reg properties.
   3202 
   3203 Mon Sep 16 23:09:12 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3204 
   3205 	* hw_com.c: New file.  A '550 serial device that can quickly be
   3206 	attached to any bus.
   3207 	* configure.in (enable-sim-hardware): Add the com device.
   3208 	* configure: re-generate.
   3209 
   3210 Thu Sep 12 17:30:56 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3211 
   3212 	* device.c (device_tree_verify_reg_unit_address): New
   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.
   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 
   3221 Thu Sep 12 17:30:56 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3222 
   3223 	* mon.c (mon_event): Remove assertion that an unsigned is >= 0.
   3224 
   3225 Fri Aug 16 12:05:24 1996  Michael Meissner  <meissner (a] 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 
   3233 Tue Aug 13 11:40:14 1996  Michael Meissner  <meissner (a] 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 
   3238 Tue Aug 13 11:40:14 1996  Michael Meissner  <meissner (a] 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 
   3251 Mon Aug 12 18:42:37 1996  Michael Meissner  <meissner (a] 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 
   3265 Wed Aug  7 14:34:20 1996  Michael Meissner  <meissner (a] 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 
   3270 Wed Aug  7 14:34:20 1996  Michael Meissner  <meissner (a] 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 
   3279 Wed Aug  7 20:19:55 1996  Andrew Cagney  <cagney (a] 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.
   3300 
   3301 Tue Aug  6 09:28:22 1996  Michael Meissner  <meissner (a] 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 
   3310 Wed Aug  7 00:17:37 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3311 
   3312 	* device_table.c (generic_device_unit_decode): Require a comma
   3313 	between elements of a unit address.
   3314 
   3315 	* device.c (device_tree_print_device): For reg, alternate-reg and
   3316 	ranges properties use special print functions.
   3317 	(device_print_ranges_property): Print formatted ranges property.
   3318 	(device_print_reg_property): Print formatted reg property.
   3319 
   3320 Tue Aug  6 21:35:18 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3321 
   3322 	* device.c (device_tree_add_parsed): For reg, ranges and
   3323 	alternate-reg properties use a special parser.
   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 
   3331 Wed Jul 31 00:02:30 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3332 
   3333 	* device_table.h (device_instance_callbacks): Relace the claim and
   3334 	release methods with a more general table mapping from method-name
   3335 	to method-function.
   3336 
   3337 	* device.c (device_instance_call_method): New function.  Implement
   3338 	the OpenBoot call-method client interface.  Attempts to locate the
   3339 	instances method in the callback table.
   3340 	(device_instance_claim, device_instance_release): Delete.
   3341 	Replaced with call-method and a lookup table.
   3342 
   3343 	* emul_chirp.c (chirp_emul_call_method): Use the new device
   3344 	instance call method and let that handle a client claim call.
   3345 
   3346 	* hw_htab.c (claim_memory): Wrapper function to call the memory
   3347 	devices "claim" method using the new device-instance call-method
   3348 	interface.  Replaces the previous direct calls to claim.
   3349 	(htab_map_region): Use claim_memory.
   3350 	(htab_init_data_callback): Ditto.
   3351 
   3352 	* hw_memory.c (hw_memory_instance_claim): Update function
   3353 	interface so that it is compatible with call-method.
   3354 	(hw_memory_instance_release): Ditto.
   3355 	(hw_memory_instance_methods): New table of memory specific
   3356 	methods claim and release.  Add to the hw_memory_callback
   3357 	table.
   3358 
   3359 Tue Jul 30 21:26:14 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3360 
   3361 	* psim.c (psim_init): Back out of change to initial value of
   3362 	system->last_cpu.
   3363 
   3364 Tue Jul 30 21:12:24 1996  Andrew Cagney  <cagney (a] 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,
   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.
   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,
   3378 	hw_pal_instance_write_callback): Use the new sim_io functions.
   3379 
   3380 	* main.c: Implement standalone versions of the new sim_io
   3381 	functions.  Include support for async I/O.
   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
   3385 	stdio configuration so that it works in the same way as the rest
   3386 	of the simulation.
   3387 	* psim.c (psim_create): Initialize current_stdio from the device
   3388 	tree.
   3389 	* emul_generic.c (emul_add_tree_options): Enter a default value
   3390 	for use-stdio in the device tree.
   3391 
   3392 Fri Jul 26 19:43:03 1996  Andrew Cagney  <cagney (a] 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.
   3400 
   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 
   3407 Fri Jul 26 00:36:35 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3408 
   3409 	* ppc-cache-rules (cache): Change RS and RB to cache instead of
   3410 	compute.  The block move instructions use them.
   3411 
   3412 	* idecode_expression.h (FPSCR_SET): New macro, set specific FPSCR
   3413 	register.
   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 
   3441 Thu Jul 25 22:10:40 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3442 
   3443 	* std-config.h (SEMANTICS_INLINE): By default, mask out the
   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.
   3447 
   3448 	* std-config.h (ICACHE_INLINE): Ditto.
   3449 
   3450 Thu Jul 25 20:07:30 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3451 
   3452 	* configure.in (sim_regparm): Add configuration option for
   3453 	enabling GCC's regparm attribute.
   3454 	* (sim_stdcall): Add configuration option for enabling GCC's
   3455 	stdcall attribute.
   3456 
   3457 	* Makefile.in (REGPARM_CFLAGS): Pass regparam configuration onto
   3458 	compilations.
   3459 	* (STDCALL_CFLAGS): Pass stdcall configuration onto compilations.
   3460 
   3461 	* std-config.h (REGPARM): Extend construction of REGPARM macro so
   3462 	that it can include __stdcall__ function attribute.
   3463 
   3464 Wed 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 
   3473 Wed Jul 24 15:47:09 1996  Andrew Cagney  <cagney (a] 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 
   3483 Tue Jul 23 20:57:01 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3484 
   3485 	* igen.c (print_my_defines): Replaces print_define_my_index.
   3486 	Print both a definition for MY_INDEX and MY_PREFIX.
   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
   3492 	support.h so that, like cpu, it is optionally inlined for all
   3493 	modules that include it.
   3494 	* inline.h, inline.c: Adjust so that support.[hc] is handled the
   3495 	same as cpu.[hc].
   3496 
   3497 	* idecode_fields.h (LABEL, GOTO): Macro's that create a unique
   3498 	name for a lable and then branch to it.
   3499 
   3500 	* ppc-instructions (convert_to_integer, Floating Round to
   3501 	Single-Precision, Floating Convert from Integer Doubleword): Use
   3502 	LABEL and GOTO instead of the recently added switch statements.
   3503 
   3504 Wed Jul 24 14:02:42 1996  Andrew Cagney  <cagney (a] sawnoff.highland.com.au>
   3505 
   3506 	* gen-idecode.c (print_run_until_stop_body): Too many rparen in
   3507  	generated code.
   3508 
   3509 Tue Jul 23 20:57:01 1996  Andrew Cagney  <cagney (a] 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
   3513 	that SUPPORT=ALL_INLINE is reconized as *=* and not *_INLINE.
   3514 
   3515 	* configure: rebuild.
   3516 
   3517 Mon Jul 22 23:25:08 1996  Andrew Cagney  <cagney (a] highland.com.au>
   3518 
   3519 	* configure.in (--enable-sim-hardware, --enable-sim-packages): New
   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.
   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 
   3529 Mon Jul 22 22:38:59 1996  Andrew Cagney  <cagney (a] highland.com.au>
   3530 
   3531 	* psim.c (psim_options): Enter the argument to the memory size
   3532 	option directly into the device tree.  Was using atol() which is
   3533 	dangerously non portable.
   3534 
   3535 Mon Jul 22 22:17:08 1996  Andrew Cagney  <cagney (a] highland.com.au>
   3536 
   3537 	* configure.in (icache): Extend icache flag to include an insn
   3538 	option.  If specifyed the insn - aka instruction - is included in
   3539 	the instruction cache.  Make this the default.
   3540 	* configure: re-generate.
   3541 
   3542 	* igen.c (main), igen.h: Add option -S - inSn - for specifying
   3543 	that the instruction should be included in the icache.
   3544 
   3545 	* gen-icache.c (print_icache_body): If enabled, output code to put
   3546 	the instruction into the icache.
   3547 	(print_icache_struct): If enabled, add insn to the icache struct.
   3548 
   3549 Mon Jul 22 20:46:12 1996  Andrew Cagney  <cagney (a] highland.com.au>
   3550 
   3551 	* Makefile.in (BUILD_CFLAGS): Include -g when building the
   3552 	generators.
   3553 
   3554 Mon Jul 22 20:00:25 1996  Andrew Cagney  <cagney (a] highland.com.au>
   3555 
   3556 	* emul_generic.c (emul_add_tree_options): Was incorrectly setting
   3557 	the strict-alignment option when hardwired for non-strict
   3558 	alignment.
   3559 
   3560 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] 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
   3565 	not my_index.
   3566 
   3567 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3568 
   3569 	* gen-idecode.c: Output the complete run_until_stop function
   3570 	instead of just the code to handle a single instruction issue.
   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
   3574 	no longer needed).
   3575 
   3576 	* psim.c (run_until_stop): Delete the old run_until_stop function
   3577 	instead calling the idecode_run and idecode_run_until_stop
   3578 	functions that gen-idecode.c is now creating.
   3579 
   3580 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] 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
   3585 	string constant.
   3586 
   3587 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3588 
   3589 	* debug.c (TRACE, ITRACE, DTRACE): Have GCC instead of CPP
   3590 	eliminate trace statements.
   3591 
   3592 	* debug.c: Change trace format so that it is consistent
   3593 	(file:line-nr) with CC's error output.
   3594 
   3595 	* gen-itable.c (itable_c_insn): Add the source file name and
   3596 	source line number to the instruction's informational entry.
   3597 
   3598 	* debug.c (ITRACE): Use the itable (and my_index) to get the
   3599 	current instructions name and source line number.
   3600 
   3601 	* gen-semantics.c, gen-icache.c: Adjust generated ITRACE calls to
   3602 	match new interface.
   3603 
   3604 	* emul_bugapi.c (emul_bugapi_instruction_call): Adjust
   3605 	corresponding call to ITRACE so that it still matches.
   3606 
   3607 	* idecode_expression.h (ALU_END, CR0_COMPARE): Use TRACE instead
   3608 	of ITRACE.  The CPP line directives would have previously set the
   3609 	line-nr and file name so ITRACE isn't needed.
   3610 
   3611 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3612 
   3613 	* gen-idecode.c (print_jump_until_stop_body): New function and
   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.
   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.
   3624 	These result in duplicate declarations when a single flat function
   3625 	is being create.
   3626 
   3627 	* ppc-opcode-jump: New file.  Set of opcode rules useful when
   3628 	testing jumping idecodes.
   3629 
   3630 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3631 
   3632 	* gen-idecode.c: Optionally include the semantic code for an
   3633 	instruction in the function that is doing the decoding.
   3634 
   3635 	* igen.c: Add option (-C) to generate semantics in the instruction
   3636 	decode functions.
   3637 
   3638 	* configure.in (--enable-sim-icache): Accept an option list such
   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.
   3642 
   3643 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3644 
   3645 	* configure.in: New option --enable-sim-line-nr (default enabled).
   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.
   3649 
   3650 	* Makefile.in (sim_line_nr): Pass to igen.
   3651 
   3652 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3653 
   3654 	* igen.c (main): Revamp the options so that more letters are
   3655 	available.
   3656 
   3657 	* configure.in: Adjust to match igen's revamped options
   3658 
   3659 Sun Jul 21 21:18:05 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3660 
   3661 	* Makefile.in (pk.h, hw.h): Rewrite depenencies for hw.h (etc) so
   3662 	that they use the same technique as igen (ie a dummy targets
   3663 	tmp-pk and tmp-hw are created).
   3664 
   3665 Mon Jun 24 22:28:00 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3666 
   3667 	* Makefile.in (BUILD_CFLAGS): Include WARNING_CFLAGS.
   3668 
   3669 Wed Jun 19 21:45:28 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3670 
   3671 	* ld-cache.[hc], ld-decode.[hc], ld-insn.[hc]: New files. Separate
   3672 	out the loading of each of the tables from the rest of igen.
   3673 	* Makefile.in: Adjust.
   3674 	* igen.c: Adjust.
   3675 
   3676 	* gen-icache.[hc], gen-idecode.[hc], gen-itable.[hc],
   3677 	gen-model.[hc], gen-semantics.[hc]: New files. Separate out the
   3678 	code creating each separate set of generated files.
   3679 	* Makefile.in: Adjust.
   3680 	* igen.c: Adjust.
   3681 
   3682 	* gen-support.[ch]: New files. Output the support functions (found
   3683 	in the ppc-instructions file) into a separate file.
   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
   3697 	reading code from the rest of igen.c.  Re-design the filter so that
   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
   3704 	entries are specified (ie delete `be').
   3705 
   3706 	* misc.c (name2i, i2name): New function.  Map between a string and
   3707 	an integer value.
   3708 
   3709 Mon Jun 17 20:08:03 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3710 
   3711 	* sim_calls.c (sim_close): If simulator not created, skip printing
   3712 	of run information.
   3713 
   3714 Mon Jun 17 20:08:03 1996  Andrew Cagney  <cagney (a] 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 
   3728 Fri Jun 14 00:11:56 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3729 
   3730 	* device_table.h: Don't pass the parent device into a devices
   3731 	create function.  This makes the create function consistent with
   3732 	the documentation.
   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
   3746 	within device.c.
   3747 	* device_table.h: typedef device_callbacks moved here (from
   3748 	device.h) where it belongs.
   3749 
   3750 	* hw_core.c: New file. Implements just the core device using the
   3751 	core object.
   3752 
   3753 	* corefile.c: Moved all core device functions into the new
   3754 	hw_core.c file. core_device_create() disapears.
   3755 
   3756 	* psim.c (psim_tree): Use device_tree_add_parsed() to create the
   3757 	core device.
   3758 
   3759 Thu Jun 13 00:09:29 1996  Andrew Cagney  <cagney (a] 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
   3764 	default map.
   3765 	(core_map_find_mapping): Ditto.
   3766 
   3767 Wed Jun 12 22:30:32 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3768 
   3769 	* corefile.c (core_init): Make function global so that other
   3770 	devices are able to use the full core object.
   3771 
   3772 	* corefile.c (core_create, core_from_device): Break core_create
   3773 	into two functions.  The first creates a core object, the second
   3774 	returns the core object associated with a core device.
   3775 
   3776 	* corefile.c (core_device_create): Use core_create to make the
   3777 	core object.
   3778 
   3779 	* psim.c (psim_create): Use core_from_device() instead of
   3780 	core_create().
   3781 
   3782 	* device.c (device_template_create_device): Make static as only
   3783 	needed by functions internal to device.c.
   3784 
   3785 Fri Jun  7 23:47:18 1996  Andrew Cagney  <cagney (a] 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 
   3797 Wed Jun 26 12:50:33 1996  Michael Meissner  <meissner (a] 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 
   3812 Wed Jun 26 12:26:55 1996  Jason Molenda  (crash (a] godzilla.cygnus.co.jp)
   3813 
   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.
   3820 
   3821 Wed Jun  5 23:53:42 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3822 
   3823 	* corefile.h: Rewrite documentation so that it can be extracted and
   3824 	converted into texinfo (and hence ready for translation into html,
   3825 	tex or nroff).
   3826 	* device.h: Ditto
   3827 
   3828 Thu Jun  6 09:52:37 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   3829 
   3830 	* hw_disk.c (SEEK_SET): If SEEK_SET is not defined, define as 0.
   3831 
   3832 Wed 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 
   3837 Wed Jun  5 01:39:07 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3838 
   3839 	* psim.c (psim_options): Correct type of dummy arguments being
   3840 	passed to a device_ioctl call.
   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 
   3846 Wed Jun  5 01:39:07 1996  Andrew Cagney  <cagney (a] 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 
   3851 Mon Jun  3 15:02:04 1996  Michael Meissner  <meissner (a] 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 
   3857 Mon Jun  3 15:02:04 1996  Michael Meissner  <meissner (a] 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 
   3869 Mon Jun  3 23:19:57 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3870 
   3871 	* emul_netbsd.c (emul_netbsd_create): Use the more specific names
   3872 	`ppc-elf' and `ppc-xcoff' for the stack-type.
   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 
   3880 Sun Jun  2 11:21:17 1996  Michael Meissner  <meissner (a] 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 
   3912 Thu May 30 00:00:10 1996  Andrew Cagney  <cagney (a] 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 
   3918 Wed May 29 23:50:26 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3919 
   3920 	* basics.h: New global type object_disposition, used to indicate
   3921 	the status of objects when things are restarted.
   3922 
   3923 Fri May 17 17:28:52 1996  Andrew Cagney  <cagney (a] benjimen.highland.com.au>
   3924 
   3925 	* device_table.h: Change the interrupt descriptor structure so
   3926 	that it includes an additional member - an upper bound on the
   3927 	interrupts by that name.
   3928 
   3929 	* device.c (device_interrupt_decode): Allow a range of interrupt
   3930 	ports (eg rst0 .. rst6) if the port descriptors bound is non zero.
   3931 
   3932 	* device.c (device_tree_print_device): Include a list of valid
   3933 	interrupt ports when listing supported devices.
   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
   3938 	the interrupt net so that it uses int0 .. intN.
   3939 
   3940 Tue May 14 23:03:53 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3941 
   3942 	* device.h, device.c (device_ioctl): Drop the system argument.
   3943 	Devices can not obtain this using the device_system() call.
   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
   3948 	hw_trace device to update the trace options.
   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
   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.
   3956 
   3957 	* device.h, device.c (device_add_*_property): Make these functions
   3958 	internal to device.c.  The user has access to the more generic
   3959 	device_tree_add_parsed function.  Differentiate between the initial
   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
   3968 	properties and then initialize them.  Document this in the device.h
   3969 	file.
   3970 
   3971 Mon May  6 17:36:15 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3972 
   3973 	* interrupts.c (decrementer_interrupt): Always pend a decrementer
   3974 	interrupt even if it is not yet possible to deliver it.
   3975 
   3976 Wed 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.
   3981 
   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 
   3988 Tue Apr 30 22:09:09 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   3989 
   3990 	* hw_htab.c: New file. Extract contents from disk_table.c.
   3991 	Contains a device that, during initialization will create a
   3992 	PowerPC htab in memory.
   3993 	* hw_register.c: New file. Extract contents from disk_table.c.
   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).
   3997 	* hw_vm.c: New file. Extract contents from disk_table.c.  Contains
   3998 	a device that handles accesses to invalid virtual memory addresses
   3999 	(in user mode).
   4000 	* hw_init.c: New file. Extract contents from disk_table.c.  Misc
   4001 	devices that can initialize memory from a file.
   4002 	* hw_trace.c: New file. Extract contents from disk_table.c.
   4003 	Configure trace options from property values.
   4004 
   4005 	* Makefile.in (hw_htab.o, hw_register.o, hw_vm.o, hw_init.o,
   4006 	hw_trace.c): Add new device files.
   4007 
   4008 	* device_table.c: Remove above code, now in separate independant
   4009 	files.
   4010 
   4011 Fri Apr 26 00:00:07 1996  Andrew Cagney  <cagney (a] 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
   4018 	package.
   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
   4024 	they are re-created when the makefile is updated.
   4025 
   4026 	* emul_generic.c (emul_add_tree_hardware): Add a disk device
   4027 	(below the iobus) to the device tree.  Include an ihandle of
   4028 	the disk as /chosen/disk.
   4029 
   4030 	* emul_bugapi.c (emul_bugapi_create): Don't initialize the input,
   4031 	output and (new) disk handles yet.
   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,
   4047 	device_instance_release): New methods for claiming and releasing
   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 
   4053 Thu Apr 18 23:38:10 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4054 
   4055 	* hw_nvram.c (hw_nvram_update_clock): Use the current not previous
   4056 	time when updating the clock.
   4057 
   4058 	* hw_nvram.c: Tidy up documentation
   4059 
   4060 Fri May 24 10:08:10 1996  Michael Meissner  <meissner (a] 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 
   4079 Tue May 21 17:24:45 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4080 
   4081 	* emul_netbsd.c (write_stat): Don't convert st_blocks unless the
   4082 	host is netbsd.
   4083 
   4084 Thu May 16 10:56:45 1996  Michael Meissner  <meissner (a] 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 
   4091 Tue May  7 17:28:12 1996  Michael Meissner  <meissner (a] 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 
   4102 Mon May  6 11:31:43 1996  Michael Meissner  <meissner (a] 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 
   4108 Fri May  3 15:07:42 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4109 
   4110 	* Makefile.in: Correctly build simulator for build machine != host
   4111 	machine.
   4112 
   4113 Tue Apr 30 18:46:05 1996  Michael Meissner  <meissner (a] 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.
   4119 
   4120 	* sim-endian.h: Add more tests for host endian to support more
   4121 	platforms in a cross compilation environment.
   4122 
   4123 Wed Apr 17 14:38:06 1996  Michael Meissner  <meissner (a] 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 
   4149 Mon Apr 15 23:30:56 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4150 
   4151 	* events.c (insert_event_entry): Allow events to be scheduled
   4152 	*NOW* (at delta time 0).  Add assertions to clarify behavour of
   4153 	event queue.
   4154 
   4155 	* events.c (update_time_from_event): New function. Calculates the
   4156 	number of ticks from the next event.  Use this.
   4157 
   4158 Sun Apr 14 21:39:45 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4159 
   4160 	* emul_netbsd.c (do_break): Return 0 if success (instead of
   4161 	adjusted break).
   4162 
   4163 	* device_table.c (vm_ioctl_callback): Don't return adjusted break
   4164 	(isn't needed).
   4165 
   4166 Sun Apr 14 21:32:41 1996  Andrew Cagney  <cagney (a] 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 
   4176 Sat Apr 13 00:00:24 1996  Andrew Cagney  <cagney (a] 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 
   4195 Fri Apr 12 20:56:47 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4196 
   4197 	* device_table.c (vm_ioctl_callback): Don't access the processor
   4198 	registers directly, instead leave it to the caller to handle this.
   4199 
   4200 	* emul_netbsd.c (do_break): Which calls vm_ioctl_callback to
   4201 	perform a break.  Pass in the new break value and set the
   4202 	registers according to the result.
   4203 
   4204 	* emul_generic.c (emul_write_status): Change so that r3 contains
   4205 	either status or errno and failure is indicated by SO.
   4206 
   4207 Thu Apr  4 23:03:38 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4208 
   4209 	* emul_bugapi.c (emul_bugapi_create): More strict check of OEA
   4210 	address.
   4211 
   4212 Thu Apr  4 20:58:05 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4213 
   4214 	* interrupts.h (interrupts): New structure contains state of
   4215 	pending interrupts.
   4216 
   4217 	* cpu.c (cpu_interrupts): New function.  Pending interrupt status
   4218 	in the cpu and grant access to it.  Add interrupts to cpu
   4219 	structure.
   4220 
   4221 Fri Mar 29 22:09:25 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4222 
   4223 	* device.c (device_tree_add_parsed): Check that the creation of a
   4224 	device instance worked before using it.
   4225 
   4226 	* psim.c (psim_halt): Remove cia argument from psim_halt.  This
   4227 	function does not save the CIA so do not pass it in.
   4228 
   4229 Fri Mar 29 21:30:56 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4230 
   4231 	* hw_pal.c (hw_pal): Merge the halt and icu and console devices
   4232 	found in device_table.c into a single hack pal.
   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
   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.
   4241 
   4242 Fri Mar 29 20:17:17 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4243 
   4244 	* hw_iobus.c (hw_iobus_attach_address_callback): Move from
   4245 	device_table.c to here.
   4246 
   4247 	* Makefile.in (hw_iobus.o): New dependency.
   4248 
   4249 Fri Mar 29 12:17:58 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4250 
   4251 	* emul_bugapi.c (_os_emul_data): Add fields for output, input.
   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.
   4258 
   4259 Tue Mar 26 14:57:58 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4260 
   4261 	* igen.c (idecode_switch_end): Fix 2/26 change so that an extra
   4262 	default is not written out if a default was already written.
   4263 
   4264 	* psim.c (psim_{read,write}_register): Use sizeof unsigned_8 to
   4265 	size cooked_buf, not sizeof natural_word, since floating point
   4266 	registers are 8 bytes.
   4267 
   4268 Mon Mar 25 22:07:13 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4269 
   4270 	* configure: Regenerate with autoconf 2.9.
   4271 
   4272 Thu Mar 21 00:14:26 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4273 
   4274 	* device_table.h: Always include string headers.
   4275 
   4276 Thu Mar 21 00:06:09 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4277 
   4278 	* main.c (error): Be careful to not try to print out statistics
   4279 	when the simulation was never created.
   4280 
   4281 Sun Mar 17 22:40:57 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4282 
   4283 	* basics.h: Move the event queue's definition to here so that it
   4284 	can be refered to globally with out importing all of events.h.
   4285 
   4286 	* psim.h, psim.c (psim_event_queue): New function.  Grant access
   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).
   4290 
   4291 	* cpu.c (cpu_create): Use psim_event_queue to obtain the event
   4292 	queue instead of it being passed in.  No longer allow access to
   4293 	the cpu's copy of the event queue.
   4294 
   4295 Sun Mar 17 22:40:57 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4296 
   4297 	* events.h, events.c (event_handler): Remove event_queue from
   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.
   4301 
   4302 	* cpu.c (cpu_decrement_event): adjust
   4303 
   4304 	* events.c (event_queue_process): adjust
   4305 
   4306 Sun Mar 17 22:40:57 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4307 
   4308 	* device.h, device.c (device_system): New, returns a handle for
   4309 	the system given the device.
   4310 
   4311 	* device.c (device_address_init): Store a pointer back to the
   4312 	system in each devices node.
   4313 
   4314 	* device_table.h: Don't pass `system' into each device when it is
   4315 	being initialized, this is now available using device_system(me).
   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:
   4320 	Adjust.
   4321 
   4322 Sun Mar 17 22:40:57 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4323 
   4324 	* interrupts.c (decrementer_interrupt, external_interrupt):
   4325 	Remember that an interrupt wasn't delivered so that it can be
   4326 	tried again later.
   4327 
   4328 	* interrupts.c (check_masked_interrupt): New function.  (re)
   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.
   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()
   4337 	leaving it to that module to handle both interrupt synchronization
   4338 	and masking.
   4339 
   4340 	* cpu.c (struct _cpu): remove variables that were going to record
   4341 	pending decrementer and external interrupts.
   4342 
   4343 Sun Mar 17 22:40:57 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4344 
   4345 	* hw_cpu.c, hw_cpu.h: New files.  Implement a device that sits
   4346 	between the interrupt controller and the simulators internal
   4347 	processor model.  Maps device interrupts onto the processor
   4348 	interrupt function calls.
   4349 
   4350 Mon Mar  4 06:06:54 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4351 
   4352 	* hw_nvram.c: NVRAM device that includes a real-time clock that is
   4353 	updated each second.
   4354 
   4355 Mon Mar  4 04:18:50 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4356 
   4357 	* device.h (attach_type): Remove attach_default type address
   4358 	spaces.  Will replace with levels of callback memory.
   4359 
   4360 	* corefile.h, corefile.c (new_core_mapping), corefile.c
   4361 	(core_map_attach): Replace default attach with a layerd callback
   4362 	approach.
   4363 
   4364 Sun Mar  3 03:58:46 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4365 
   4366 	* device.c (split_property_specifier): ensure that only a single
   4367 	property is found.
   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
   4372 	functions to determine the interrupt port numbers.
   4373 
   4374 	* device_table.h: Add table that maps between an interrupts
   4375 	symbolic name and its port number.
   4376 
   4377 	* device.h, device.c (device_interrupt_decode,
   4378 	device_interrupt_encode): new functions use the recently added
   4379 	interrupt port name/number tables to perform conversion.
   4380 
   4381 Sun Mar  3 03:23:59 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4382 
   4383 	* device.h, device.c (device_set_array_property,
   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.
   4387 
   4388 	* device.h, device.c: Re-order declaration and definition of
   4389 	property functions.
   4390 
   4391 Sun Mar  3 03:10:22 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4392 
   4393 	* device.c (device_tree_print_device, device_tree_add_parsed):
   4394 	Remove references to phandle properties.
   4395 
   4396 Wed Feb 28 00:43:07 1996  Andrew Cagney - aka Noid  <cagney (a] highland.com.au>
   4397 
   4398 	* Makefile.in (corefile.o): missing dependency on device_table.h
   4399 	etc.
   4400 
   4401 Tue Feb 27 23:59:35 1996  Andrew Cagney - aka Noid  <cagney (a] highland.com.au>
   4402 
   4403 	* device_table.h: Revamp device init callbacks so that they are a
   4404 	sub structure.
   4405 	* device.c (device_init_data, device_init_address): If an init
   4406 	callback is NULL assume it should do nothing.
   4407 	* device_table.c (ignore_device_init, unimp_device_init): delete
   4408 	as redundant.
   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 
   4418 Mon Feb 26 21:11:20 1996  Andrew Cagney - aka Noid  <cagney (a] highland.com.au>
   4419 
   4420 	* igen.c (idecode_switch_end): Output a default entry when the
   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.
   4424 
   4425 Mon Feb 26 22:47:15 1996  Andrew Cagney - aka Noid  <cagney (a] highland.com.au>
   4426 
   4427 	* Makefile.in (hw.h, hw.c): New targets. Create from the list of
   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.
   4431 
   4432 	* Makefile.in (device_table.o): now depends on hw.c a generated
   4433 	table of hw.
   4434 
   4435 	* device_table.c (device_table): Re-arange the table of devices so
   4436 	that two levels are possible.  Make use of hw.c.
   4437 	* device_table.h: ditto.
   4438 
   4439 	* device.c (device_template_create_device): Handle new two level
   4440 	device lookup table.
   4441 	* device.c (device_usage): ditto.
   4442 
   4443 Mon Feb 26 22:24:00 1996  Andrew Cagney - aka Noid  <cagney (a] 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 
   4449 Wed Jan 17 21:47:34 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4450 
   4451 	* device.c (device_init_address): New.  Split initialization into
   4452 	two stages, address and address spaces
   4453 	* device.c (device_init_data): New. ... and data or other work.
   4454 	With out this, devices try to modify memory before it as been
   4455 	attached.
   4456 
   4457 	* device.c (device_tree_init): Update to perform staged
   4458 	initialization.
   4459 
   4460 	* device.c (device_init): Delete.
   4461 
   4462 Wed Jan 17 21:43:09 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4463 
   4464 	* device_table.c (data_*): Rewrite to make heaver use of property
   4465 	nodes. Allow initialization by different data types.
   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 
   4472 Wed Jan 17 21:24:50 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4473 
   4474 	* emul_generic.c (emul_add_tree_options): Annotate existing tree
   4475 	with options that haven't yet been specified.
   4476 	* emul_generic.c (emul_add_tree_hardware): Annotate existing tree
   4477 	with demo devices and properties.
   4478 
   4479 	* emul_chirp.c (emul_chirp_create): Update to use new
   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.
   4483 	* emul_bugapi.c (emul_bugapi_create): Ditto
   4484 	* emul_netbsd.c (emul_netbsd_create): Ditto
   4485 
   4486 Wed Jan 17 21:18:27 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4487 
   4488 	* device.c (device_instance_create): New. Create/delete and
   4489 	operate on instances of a device.
   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.
   4505 	Being careful to convert all from target to host byte order.
   4506 	* emul_chirp.c (chirp_write_h2t_args): Converse.
   4507 
   4508 Wed Jan 17 20:07:15 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4509 
   4510 	* device.c (device_tree_add_parsed): New.  Rewrite code to add
   4511 	devices to the device tree so that a single printf style function
   4512 	is used.
   4513 
   4514 	* device.c (device_tree_add_*): Delete. Replaced by above.
   4515 
   4516 	* device.c (split_device_specifier): Functions to manipulate a
   4517 	device specifier (path) breaking it into its components
   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 
   4527 Wed Jan 17 19:51:56 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4528 
   4529 	* psim.c(psim_options): Parse the psim options, installing their
   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.
   4533 
   4534 	* psim.c (psim_tree): Returns a basic device tree ready for
   4535 	parsing by psim_options.
   4536 	* psim.c (psim_usage): New.  Give usage to varing levels of detail
   4537 	according to the verbosity.  In turn output device and trace
   4538 	usage.
   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
   4549 	the devices currently available in the device table.
   4550 	* device_table.c: Add usage operator to each device.
   4551 
   4552 	* corefile.c (core_create, core_device_create): Adjust so that the
   4553 	core device is created earlier for psim_tree().  Core can later be
   4554 	created from it.
   4555 
   4556 	* psim.c (psim_create): Update to handle above way of creating
   4557 	things.  Extract all information from the device tree.
   4558 
   4559 	* device_tree.c (trace_*): New device node, its properties are
   4560 	used to set the value of the trace options.  Init this device (in
   4561 	psim_options) when ever the options are updated.
   4562 
   4563 Wed Jan 17 19:46:07 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4564 
   4565 	* debug.h: Add trace_print_info, trace_print_device_tree and
   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.
   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
   4576 	tree in a format that is consistent with what can be parsed by the
   4577 	device tree load from file code.
   4578 
   4579 	* psim.c (psim_create): Dump device tree if enabled. If nump
   4580 	selected, exit psim immediately.
   4581 
   4582 Wed Jan 17 19:36:52 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4583 
   4584 	* corefile-n.h (core_map_read_N): When mapping from an address to
   4585 	a device, do not subtract the devices base.  The device its self
   4586 	can do this.  Brings the behavour into line with OpenBoot.
   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
   4592 	handle biased address.
   4593 	* device_table.c (console_io_write_buffer_callback): Ditto
   4594 
   4595 Wed Jan 17 18:36:09 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4596 
   4597 	* device.c (attach_device_interrupt_edge): New. Interrupt model
   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.
   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
   4618 
   4619 	* device_table.c (icu_io_write_buffer_callback) : Update to use
   4620 	interface.
   4621 	* device_table.c (icu_interrupt_event_callback) : Ditto
   4622 
   4623 Wed Jan 17 18:18:40 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4624 
   4625 	* device.c (external_to_device) : New function that provides a
   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.
   4630 
   4631 	* device.c (device_to_external) : Ditto
   4632 	* device.c (external_to_device_instance) : Ditto but for ihandle
   4633 	and device instance.
   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
   4639 	needing to translate between internal and external representations
   4640 	changed to use the external_to_device et.al. device operations.
   4641 	* emul_chirp.c (chirp_emul_*) : Ditto
   4642 
   4643 	* Makefile (emul_chirp.o): Remove dependency on cap
   4644 
   4645 Sat Jan  6 10:13:26 1996  Andrew Cagney - aka Noid  <cagney (a] highland.com.au>
   4646 
   4647 	* emul_chirp.c (map_over_chirp_note): Tighten up (and fix) checks
   4648 	on OpenBoot note section.
   4649 
   4650 Fri Jan  5 20:28:53 1996  Andrew Cagney  <cagney (a] 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.
   4656 	(emul_read_buffer): Ditto.
   4657 	(emul_write_word): Ditto.
   4658 	(emul_read_word): Ditto.
   4659 	(emul_read_string): Ditto.
   4660 
   4661 Fri Jan  5 18:55:34 1996  Andrew Cagney  <cagney (a] 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 
   4673 Fri Jan  5 18:52:28 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4674 
   4675 	* Makefile.in (maintainer-clean): Remove .log, core and *.core
   4676  	(From NetBSD) files.
   4677 
   4678 Wed May 29 22:57:40 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4679 
   4680 	* ChangeLog.00, ChangeLog: ChangeLog from gdb-4.16 becomes
   4681 	ChangeLog.00
   4682 
   4683 Wed May 29 22:57:40 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4684 
   4685 	* ChangeLog.00, ChangeLog: ChangeLog from gdb-4.16 becomes
   4686         ChangeLog.00
   4687 
   4688 Thu Apr  4 15:17:22 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4689 
   4690 	* INSTALL: Fix some long lines and remove x86 specific options in
   4691 	the examples.
   4692 
   4693 Sun Mar 31 15:47:33 1996  Andrew Cagney  <cagney (a] kremvax.highland.com.au>
   4694 
   4695         * INSTALL: Update to reflect gdb-4.16.
   4696 
   4697         * RUN: Update to reflect gdb-4.16.  Review notes on building a BSD
   4698         runtime environment.
   4699 
   4700 	* README: Point out copyright status of simulator in introduction.
   4701 
   4702 Thu Mar  7 19:53:49 1996  Michael Meissner  <meissner (a] cygnus.com>
   4703 
   4704 	* emul_netbsd.c: Only include sys/mount.h if HAVE_SYS_MOUNT_H is
   4705 	defined.
   4706 	* configure.in: Test for sys/mount.h.
   4707 	* configure,config.in: Regenerate.
   4708 
   4709 Thu Feb 22 22:48:57 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4710 
   4711 	* README, RUN, INSTALL: Update to reflect announcement
   4712 	* psim: PSIM 1.0.1 released
   4713 
   4714 Thu Feb 22 14:01:56 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4715 
   4716 	* emul_bugapi.c (emul_bugapi_do_read): New function to handle
   4717 	reads.
   4718 	(emul_bugapi_instruction_call): Add support for .INCHR/.INLN
   4719 	system calls.
   4720 
   4721 	* emul_bugapi.c (emul_bugapi_do_write): Call flush_stdoutput.
   4722 	* emul_netbsd.c (do_write): Call flush_stdoutput.
   4723 
   4724 	* main.c (flush_stdoutput): Do fflush (stdout).
   4725 	* sim_calls.c (flush_stdoutput): Do gdb_flush (gdb_stdout);
   4726 	* sim_callbacks.h (flush_stdoutput): Declare.
   4727 
   4728 Wed Feb 21 10:39:35 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4729 
   4730 	* emul_bugapi.c (bug_mapping): New structure to map bug system
   4731 	call numbers to a string.
   4732 	(toplevel): Add remaining bugapi system calls.
   4733 	(emul_bugapi_instruction_name): Map bugapi system call number to a
   4734 	string.
   4735 	(emul_bugapi_do_write): Common code to process write system calls.
   4736 	(emul_bugapi_instruction_call): If os-emul tracing is on, trace
   4737 	the system call.  Use the name to print unknown system call.
   4738 	Correct implementation of _OUTLN.  Add support for _OUTSTR and
   4739 	_PCRLR system calls.
   4740 
   4741 Wed Feb 21 17:07:27 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4742 
   4743 	* NOTES: New file.  Ramblings on why things were done they way
   4744  	they were.
   4745 
   4746 	* psim.c (psim_options): Didn't enter the model value into the
   4747  	device tree as a string.
   4748 
   4749   	* cpu.c (cpu_synchronize_context): Wrong test for conditional
   4750  	flush of cache.
   4751 
   4752 	* emul_generic.c (emul_add_tree_hardware): reg value didn't match
   4753  	bus address.
   4754 
   4755 	* ppc-opcode-flat: new file. Generate an instruction decode
   4756  	function like ppc-opcode-complex but use switch statements.
   4757 
   4758 	* INSTALL: document new opcode file, add example configurations.
   4759 
   4760 Tue Feb 20 18:42:31 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4761 
   4762 	* main.c (main): rename psim instance (system) to simulation and
   4763  	make global.
   4764 	* main.c (error): print out performance even when an error occures.
   4765 
   4766 	* emul_bugapi.c (emul_bugapi_create): Fix argument passing.
   4767 
   4768 	* emul_generic.c (emul_add_tree_hardware): Move hardware devices
   4769  	to 0x80000000 from 0x400000.
   4770 
   4771 Mon Feb 19 22:54:40 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4772 
   4773 	* ppc-instructions (TLB Invalidate Entry, TLB Invalidate ALL):
   4774         Implement by passing on request to all processors.
   4775 	* ppc-instructions (TLB Synchronize): Implement as empty, processor
   4776 	tlb's are always in sync.
   4777 
   4778 	* cpu.c (cpu_page_tlb_invalidate_all): New function.  Pass on TLB
   4779         invalidate request to processors VM sub-system.
   4780 	* cpu.c (cpu_page_tlb_invalidate_entry): Ditto.
   4781 
   4782 	* vm.c (vm_page_tlb_invalidate_all): New function. Mark all page
   4783         TLB entries as invalid.
   4784 	* vm.c (vm_page_tlb_invalidate_entry): New function. Ditt but only
   4785 	invalidate one TLB entry.
   4786 
   4787 	* psim.c (psim_init): Invalidate TLB's before (re)starting.
   4788 
   4789 Mon Feb 19 21:25:56 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4790 
   4791 	* emul_generic.c (emul_add_tree_options): Add argument
   4792         oea_interrupt_prefix (0 or 1) that specifies the prefix MSR[IP]
   4793         and hence the location of the interrupt vectors.  Add this to the
   4794         device tree.
   4795 
   4796 	* emul_chirp.c (emul_chirp_create): Allow configuration of
   4797         floating-point and interrupt prefix (default 0) using the above.
   4798 
   4799 	* emul_netbsd.c (emul_netbsd_create): Pass dummy arg for
   4800         interrupt-prefix.
   4801 
   4802 	* emul_bugapi.c (emul_bugapi_create): Allow configuration of
   4803         interrupt prefix (default 1) and configure interrupt table traps
   4804         accordingly.
   4805 
   4806 	* emul_generic.c (emul_add_tree_hardware): Include a small eeprom
   4807         in the list of devices.
   4808 
   4809 	* device_table.c: For moment fake eeprom device by a memory
   4810         device.  In future will need a proper eeprom device.
   4811 
   4812 Tue Feb 20 17:01:26 1996  J.T. Conklin  <jtc (a] rtl.cygnus.com>
   4813 
   4814 	* config.in: Regenerated.
   4815 
   4816 Fri Feb 16 10:42:27 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4817 
   4818 	* psim.c: Include options.h so print_options is declared.
   4819 
   4820 Thu Feb 15 18:10:13 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4821 
   4822 	* emul_netbsd.c (toplevel): Do not include sys/resource.h if the
   4823 	system doesn't have it, and turn off getrusage processing.
   4824 	(write_rusage): #ifdef out if we don't have getrusage.
   4825 	(do_getrusage): Define as 0 if we don't have getrusage.
   4826 
   4827 Wed Feb 14 17:38:12 1996  J. T. Conklin  <jtc (a] cygnus.com>
   4828 
   4829 	* configure.in (AC_HEADER_DIRENT): Add, so that we can figure out
   4830 	where the directory functions are declared.
   4831 	* configure: Regenerate
   4832 
   4833 	* emul_netbsd.c: Use the macros defined by configure to find the
   4834 	appropriate directory functions.
   4835 
   4836 Thu Feb  8 00:53:13 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4837 
   4838 	* configure.in (xor_endian): Trace setting of xor-endian flag.
   4839 
   4840 Wed Feb  7 18:20:56 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4841 
   4842 	* psim.c (psim_usage): Extend documentation.
   4843 
   4844 	* ppc-instructions (model-print): fix typo.
   4845 
   4846 Sun Feb  4 23:58:02 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4847 
   4848 	* configure.in (with-smp): Default configuration allow up to
   4849 	five processors (but enable only one).
   4850 
   4851 	* emul_bugapi.c (emul_bugapi_create): If floating-point is
   4852 	allowed, enable the floating point instruction set in the
   4853 	msr.
   4854 
   4855 Tue Jan 30 22:52:32 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4856 
   4857 	* emul_chirp.c (chirp_emul_seek, chirp_emul_read,
   4858         chirp_emul_write): Tolerate invalid ihandles.
   4859 
   4860 	* device.c (device_instance_create, device_instance_delete):
   4861 	init/delete instance name
   4862 
   4863 	* emul_chirp.c (emul_chirp_instruction_call): Read the nr args and
   4864         returns when determining the service.
   4865 
   4866 	* emul_chirp.c (chirp_read_t2h_args): Allow variable number of
   4867         args for the method "call-method".
   4868 
   4869 	* emul_chirp.c (chirp_emul_getprop): Tolerate a n_returns of zero
   4870         - should be one. Some OpenBoot code doesn't pass correct arg.
   4871 
   4872 	* emul_chirp.c (chirp_emul_getprop): Trace more property types.
   4873 
   4874 Tue Jan 30 19:12:29 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4875 
   4876 	* RUN: New file. Describe how to run PSIM
   4877 	* INSTALL: New file. Describe how to install PSIM
   4878 	* README: New file. Overview PSIM.
   4879 	* BUGS: New file. Briefly discuss bugs and limitations
   4880 
   4881 Wed Jan 24 20:28:08 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4882 
   4883 	* emul_bugapi.c (OEA_START_ADDRESS): Put it back to 0x100000,
   4884         wasn't correctly using GLD.
   4885 
   4886 Mon Jan 22 22:44:13 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4887 
   4888 	* emul_generic.c (emul_add_tree_options): Make default number of
   4889 	active processors 1 (even when SMP enabled).
   4890 
   4891 Mon Jan 22 22:37:34 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4892 
   4893 	* device_table.c (icu_io_read_buffer_callback): Add extra register
   4894         (at addr + 4) that returns number of processors.
   4895 
   4896 	* emul_generic.c (emul_add_tree_hardware): Update device node to
   4897         match.
   4898 
   4899 Mon Jan 22 22:00:42 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4900 
   4901 	* emul_bugapi.c (OEA_START_ADDRESS): Change to 0x4000 so that it
   4902         matches gas-960116/ld.
   4903 
   4904 Fri Jan 19 00:32:27 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4905 
   4906 	* psim-960119 released - psim-1.0b01.
   4907 
   4908 Fri Jan 19 00:32:27 1996  Andrew Cagney - aka Noid  <cagney (a] highland.au.com>
   4909 
   4910 	* psim.c (psim_create): Re-order so that all options are set
   4911         before the CPU's are created.  Was breaking mon_create();
   4912 
   4913 	* psim.c (psim_create): Tidy up conflicting configuration errors.
   4914 
   4915 	* debug.c: Add missing print-info entry to trace table.
   4916 
   4917 	* os_emul.c (os_emul_create): Fix `-e' option. Was looking under
   4918         wrong name.
   4919 
   4920 	* psim.c (psim_options): Fix `-r' option. Was entering under wrong
   4921         name.
   4922 
   4923 Thu Jan 18 20:33:48 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4924 
   4925 	* vm.c (om_unpack_bats): Fix checking of bat bits.
   4926 
   4927 	* emul_chirp.c (emul_chirp_create): Store address of OB in memory
   4928  	in the os_emul_data structure.
   4929 
   4930 	* emul_bugapi.c (emul_bugapi_create): Store the address of the
   4931  	bugapi code (in main memory) in the os_emul_data structure.
   4932 
   4933 Thu Jan 18 01:14:55 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4934 
   4935 	* vm.c (om_translate_effective_to_real): Fix trace output.
   4936 
   4937 Wed Jan 17 22:21:55 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4938 
   4939 	* device_table.c (generic_device_init_address): Create memory from
   4940         information obtained from `reg' property.
   4941 	* device_table.c (vm_init_address_callback): Use information
   4942         obtained from properties.
   4943 	* emul_netbsd.c (emul_netbsd_create): Update to create device and
   4944         property entries to match
   4945 
   4946 Tue Jan 16 09:50:53 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4947 
   4948 	* idecode_expression.h (ALU_END): Add ITRACE of the result.
   4949 
   4950 	* ppc-instructions (Equivalent): Enable this instruction.
   4951 	(Add to Minus One Extended): Ditto.
   4952 	(Subtract from Minus One Extended): Ditto.
   4953 	(Add/And/Or/Xor Immediate): Add alu trace of result.
   4954 	(Add/And/Or/Xor Shifted Immediate): Ditto.
   4955 	(And/Or/Equivalent/Nand/Nor): Ditto.
   4956 	(And/Or with Complement): Ditto.
   4957 	(Extend Sign Byte/Half Word): Ditto.
   4958 	(Count Leading Zeros): Ditto.
   4959 	(Shift Right Algerbraic Word): Ditto.
   4960 	(Shift Right Algerbraic Word Immediate): Ditto.
   4961 
   4962 Tue Jan  9 15:10:27 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4963 
   4964 	* emul_bugapi.c (emul_bugapi_instruction_call) : Make format type
   4965  	correct.
   4966 	* emul_chirp.c (map_over_chirp_note) : Ditto
   4967 	* emul_chirp.c (chirp_emul_test) : Ditto
   4968 	* device_table.c (register_init): Ditto
   4969 
   4970 Tue Jan  9 14:16:26 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4971 
   4972 	* configure.in: Make disable-sim-switch default.  Switch only
   4973  	useful if using --enable-sim-opcode=ppc-opcode-stupid and then
   4974  	only marginally so.
   4975 
   4976 Mon Jan  8 12:17:22 1996  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   4977 
   4978 	* device_table.c (register_init): Make format type correct.
   4979 
   4980 Wed Jan  3 19:21:46 1996  Andrew Cagney  <cagney (a] highland.com.au>
   4981 
   4982 	* emul_bugapi.c (emul_bugapi_create): Add nodes to init the
   4983  	system-call trap to the emul instruction call instruction (Along
   4984  	with an rfi and infinate loop).
   4985 
   4986 	* emul_bugapi.c (emul_bugapi_instruction_call): Expand to include
   4987  	a few real PPC bug calls.  Test with simple hello world.
   4988 
   4989 Tue Jan  2 20:51:19 1996  Andrew Cagney - aka Noid  <cagney (a] highland.com.au>
   4990 
   4991 	* device.h, device.c (device_child, device_sibling): New
   4992         functions.  Return corresponding device value.
   4993 
   4994 	* emul_chirp.c (chirp_emul_child, chirp_emul_peer,
   4995         chirp_emul_parent): New functions - emulate corresponding OpenBoot
   4996         interfaces.
   4997 
   4998 	* device_table.c (register_init): Extend properties attached to
   4999         register init node to allow a specific processor's register to be
   5000         specified.
   5001 
   5002 	* emul_chirp.c (emul_chirp_create): Init SMP correctly - the
   5003         initial PC for all processors is an infinate loop but then, for
   5004         processor zero, is quickly changed to be the correct code starting
   5005         address.
   5006 
   5007 	* emul_chirp.c (emul_chirp_create): Add fake bootpath
   5008         et.al. properties to tree.
   5009 
   5010 	* emul_chirp.c (chirp_emul_getproplen): New function.  Emulate the
   5011         getproplen OpenBoot call.
   5012 
   5013 	* emul_chirp.c (emul_chirp_instruction_call): Document other
   5014         possible chirp emulation internal states.
   5015 
   5016 	* emul_chirp.c (emul_chirp_instruction_call): Trace failed lookups
   5017  	as well as successful ones.
   5018 
   5019 	* emul_chirp.c (emul_chirp_open): New function - handle open
   5020         client call.
   5021 
   5022 	* Makefile.in (maintainer-clean): Proper rule that eliminates more
   5023         junk.
   5024 
   5025 Tue Dec 19 13:00:11 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5026 
   5027 	* emul_chirp.c (chirp_emul_exit): Full out call.
   5028 
   5029 	* device_table.c (htab_map_page): Wasn't handling byte swap when
   5030 	creating entries in the hash table.
   5031 
   5032 	* device.c (device_tree_find_node): Allow primative wild-card match
   5033  	of device names with the path.
   5034 
   5035 	FIXME: As mentioned earlier, the device stuff needs work to bring
   5036  	it into line with OpenBoot.  Part of this work is rewriting the
   5037 	find_node function so that it behaves as specified in p1275.
   5038 
   5039 Mon Dec 18 19:58:56 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5040 
   5041 	* emul_chrp.c (chirp_emul_write, chirp_emul_finddevice): add
   5042  	better tracing.
   5043 
   5044 	* emul_chrp.c: Change return type of emul functions to int.  Emul
   5045  	functions either return -1 or zero so unsigned was a bit
   5046  	dangerous.
   5047 
   5048 	* inline.h (*), igen.c, dgen.c, *: Update INLINE macros so that
   5049         they are paramaterised with the type of the function.  Gets around
   5050         the problem of `static' needing to come first with `attribute'
   5051         comming last.  Format declarations and definitions so that emacs
   5052 	doesn't get confused.
   5053 
   5054 Fri Dec 15 17:06:44 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5055 
   5056 	* std-config.h (PSIM_INLINE): Add missing inline configuration
   5057  	control for the main loop.
   5058 
   5059 	* mon.c (mon_print_info): If monitoring disabled still print out
   5060  	the number seconds used.
   5061 
   5062 	* psim.c (run_until_stop): Don't monitor the cache misses when
   5063  	monitoring is disabled.
   5064 
   5065 	* configure.in (sim_mon, sim_monitor): Correct typo - sim_mon ->
   5066  	sim_monitor for shell variable (or should that have been the other
   5067  	way around?).
   5068 
   5069 	* vm.c (vm_synchronize_context): Fix wrong test for unsuported
   5070  	change in endian-mode.
   5071 
   5072 	* std-config.h (WITH_REGPARM), inline.h (IDECODE_INLINE,
   5073 	SEMANTICS_INLINE): Add -DWITH_REGPARM=<n> option.  Enables the
   5074 	__attribute__((__regparm(WITH_REGPARM))) for some functions.
   5075 	configure with --enable-sim-cflags="-DWITH_REGPARAM=3" (say).
   5076 	Unfortunatly it tickles a bug (gcc?) and can't be used.
   5077 
   5078 Mon Dec 18 13:36:06 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5079 
   5080 	* device.c (device_tree_add_device): Make trace fprintf arguments
   5081 	type correct.
   5082 	* device_table.c (htab_decode_hash_table): Ditto.
   5083 	(htab_map_binary): Ditto.
   5084 	(htab_init_callback): Ditto.
   5085 	* vm.c (om_virtual_to_real): Ditto.
   5086 
   5087 Sat Dec 16 09:54:18 1995  Michael Meissner  <meissner (a] wogglebug.tiac.net>
   5088 
   5089 	* emul_netbsd.c (emul_netbsd_create): Deal with new BFD that
   5090 	changed how big/little endian support is recorded, while remaining
   5091 	compatible with the old BFD with #ifdefs.
   5092 	* emul_chirp.c (emul_chirp_create): Ditto.
   5093 	* emul_bugapi.c (emul_bugapi_create): Ditto.
   5094 
   5095 Fri Dec 15 15:55:56 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5096 
   5097 	* std-config.h (MODEL_INLINE): Turn off INLINE_MODULE by default.
   5098 
   5099 	* corefile.h: Delete declarations for unknown functions.
   5100 	* device.h: Ditto.
   5101 	* interrupts.h: Ditto.
   5102 	* interrupts.c: Ditto.
   5103 
   5104 Thu Dec 14 18:49:34 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5105 
   5106 	* lf.c (lf_print_function_type): New function.  Munges a function
   5107  	type so that the prefix (eg INLINE...) is inserted after the type
   5108  	but before any `*'.
   5109 
   5110 	* igen.c: Change to output functions using this.
   5111 
   5112 Wed Dec 13 23:47:00 1995  Andrew Cagney   <cagney (a] highland.com.au>
   5113 
   5114 	FIXME: Emul CHIRP does not correctly implement the find device
   5115  	function.
   5116 
   5117 	FIXME: Emul CHIRP and device do not implement device instance
   5118  	operations.
   5119 
   5120 Wed Dec 13 23:47:00 1995  Andrew Cagney   <cagney (a] highland.com.au>
   5121 
   5122 	* options.c (options_inline): Function to output meaningful
   5123         description of the INLINE options.
   5124 
   5125 	* configure.in (inline): Replace inline magic numbers with macro
   5126         names. Map 1->LOCALS_INLINE and 2->ALL_INLINE.
   5127 
   5128 	* inline.h, inline.c: update to use inline method.
   5129 
   5130 	* std-config.h (CPU_INLINE), cpu.h, inline.h, inline.c: make cpu.h
   5131         inline always.
   5132 
   5133 	* std-config.h (EVENTS_INLINE): Inline events in psim.
   5134 
   5135 Wed Dec 13 22:01:21 1995  Andrew Cagney   <cagney (a] highland.com.au>
   5136 
   5137 	* device_table.c (htab_sum_binary): DMA binaries to correct byte
   5138         within a page.
   5139 
   5140 Tue Dec 12 22:51:18 1995  Andrew Cagney   <cagney (a] highland.com.au>
   5141 
   5142 	* psim.c (psim_merge_device_file): Change `=' to `==', was this an
   5143         error?
   5144 
   5145 Tue Dec  5 11:56:14 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5146 
   5147 	* ppc-instructions (ppc_nr_mtcrf_crs, ppc_branch_conditional_name,
   5148  	ppc_function_unit_name): Simplify by declaring these arrays as
   5149  	pure and simple static (instead of STATIC_MODEL).
   5150 
   5151 Tue Dec  5 00:45:34 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5152 
   5153 	* sim_calls.c (sim_create, sim_load), main.c (main), psim.c: Pass
   5154         an options device into psim_create() so that options can be merged
   5155         into the tree.
   5156 
   5157 	* device.c (*add*): Change semantics so the add functions only add
   5158         when the new device (or property) doesn't already exist.  This
   5159         allows merging of options and data.
   5160 
   5161 Mon Dec  4 17:12:13 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5162 
   5163 	* Makefile.in (BASICS_H): Didn't include basics.h in the list of
   5164         header files to depend on.
   5165 
   5166 Mon Dec  4 17:12:13 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5167 
   5168 	* std-config.h: (*_MODULE): Extend the <module>_inline macro's so
   5169         that they also allow control over static functions.  Rewrite
   5170         document to reflect this.
   5171 
   5172 	* std-config.h: (INLINE): Simplify definition, the above and
   5173         earlier changes to igen.h eliminate the need to be defensive about
   5174         enabling the inline of static functions.
   5175 
   5176 	* std-config.h: (SIM_ENDIAN_INLINE, BITS_INLINE): Document limited
   5177         suport for inlineing of modules for all callers.  Adjust relevant
   5178         macro's so that DEFAULT_INLINE will enable this.
   5179 
   5180 	* basics.h: Re-order #includes and definitions so that c-code for
   5181         basic include files does not call functions delcared in later
   5182         #includes.
   5183 
   5184 	* basics.h (__attribute__), sim_callbacks.h: Move attribute macro
   5185         to basics.h and add hack (include <stdio.h>) to try and bring that
   5186         and other possible conflicting macros into scope much earler.
   5187 
   5188 	* sim-endian.h,c (SIM_ENDIAN_INLINE) bits.h,c (BITS_INLINE):
   5189         Change to use the updated inline definitions.  If enabled
   5190         immediately include the corresponding c-code so that it will inline
   5191         for all modules.
   5192 
   5193 	* inline.h, inline.c (SIM_ENDIAN_INLINE, BITS_INLINE): Remove
   5194         these cases, moved to module specific header files.
   5195 
   5196 Sat Dec  2 18:37:51 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5197 
   5198 	* vm.c, vm_n.c: Fix htab code.
   5199 
   5200 	* vm.c (vm_data_map_read_buffer): Was using EA not RA when reading
   5201         the data from core.
   5202 
   5203 	* device.c: Fix htab create code.
   5204 
   5205 Fri Nov 24 23:10:09 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5206 
   5207 	* bits.h, bits.c (EXTRACTED): Convert to function, fix - had &&
   5208         instead of &.
   5209 
   5210 	* sim-endian.h (SWAP_N), sim-endian-n.h, sim-endian.c: How
   5211         embarasing - fix yet another bug in the swap code!  Simplify
   5212         everything by using more functions. Add host to big-endian byte
   5213         swapping support.
   5214 
   5215 Fri Nov 24 23:10:09 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5216 
   5217 	* devices.h, devices.c: delete, replaced by the files
   5218         device_table.[ch] and device.[ch].
   5219 	* device_tree.h, device_tree.c: ditto
   5220 
   5221 	* device_table.h, device_table.c: New files.  Contain a table of
   5222         devices.
   5223 
   5224 	* device.h, device.c, Makefile.in, std-config.h (DEVICE_INLINE),
   5225         options.c (print_options): New files.  Define the device object
   5226         along with any attached properties.
   5227 
   5228 	* device_tree.h, device_tree.c: Update to use new device object.
   5229         For convenience, change the printd functions into device_tree_add
   5230         functions.
   5231 
   5232 	* psim.c (create_*_tree): Use new device_tree create functions.
   5233 
   5234 	* corefile.h, corefile.c corefile-n.h (core_n.h): Update to use
   5235         the new device.h / device_table.h interface.  Rename core_n.h to
   5236         corefile-n.h to be consistent with other n files.
   5237 
   5238 	* Makefile.in (run): add corefile-n.h to dependencies for
   5239         corefile.
   5240 
   5241 	* basics.h (device_instance), device.h, device.c, device_table.h,
   5242         device_table.c: Add the concept of a device instance and operators
   5243         on these instances - corresponds to ihandle in OpenBoot speak.
   5244         Don't yet implement it.
   5245 
   5246 Tue Nov 14 12:27:08 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5247 
   5248 	* emul_generic.h, emul_generic.c (emul_syscall_enter,
   5249  	emul_syscall_exit): rename from emul_enter_call /
   5250  	emul_exit_call. As only used by emul_do_system_call simplify
   5251  	associated code.
   5252 
   5253 	* os_emul.h, os_emul.c, emul_generic.h: Correct and fill an
   5254  	os_emul interface.
   5255 
   5256 	* os_emul.c, emul_bugapi.h, emul_bugapi.c, Makefile.in: Add
   5257  	preliminary hooks for a kernel mode rom emulation.
   5258 
   5259 	* cap.h (new), cap.c (new): Capability data base.  Some emulations
   5260  	pass object identifiers (capabilities?) to/from the simulated code
   5261  	(for instance the phandle in OpenBoot).  The cap object is able to
   5262  	check/map between internal and external (target program)
   5263  	representations of each identifier.
   5264 
   5265 	* os_emul.c, emul_chirp.h, emul_chirp.c, Makefile.in: Add
   5266  	preliminary hooks for a kernel mode IEEE-1275 emulation.
   5267 
   5268 	* cpu.h, cpu.c (cpu_create, cpu_os_emulation, cpu): Add os_emul to
   5269  	list of arguments passed in when creating a cpu.  Grant access to
   5270  	the element.
   5271 
   5272 	* std-config.h (OS_EMUL_INLINE), options.c (print_options),
   5273 	inline.h, inline.c: New to allow control over inline of
   5274 	corresponding code files.
   5275 
   5276 	* ppc-instructions (instruction_call): Add illegal instruction to
   5277  	call the instruction-call emulation handler.
   5278 
   5279 	* interrupts.c (system_call_interrupt): Call renamed
   5280         os_emul_system_call function().
   5281 
   5282 	* emul_netbsd.c: Update to interface to generic emulation.  Since
   5283         all its functions are called via a table don't worry about any
   5284         inline.
   5285 
   5286 	* emul_generic.h, emul_generic.c, spa-*(delete): Remove references
   5287         and code for spa, no longer to be used.
   5288 
   5289 	* psim.c (create_chirp_device_tree): Fill out what was previously
   5290         the openboot create function so that it starts to create a full
   5291         OpenBoot device tree.
   5292 
   5293 Tue Nov 28 21:48:06 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5294 
   5295 	* debug.h, debug.c: pte trace is made redundant by htab trace,
   5296         delete it.  Add vm to list of options.  Simplify tracing output so
   5297         lines are not as long.
   5298 
   5299 Tue Nov 14 12:27:08 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5300 
   5301 	* events.h, events.c (event_queue_init), psim.c (psim_init): (re)
   5302  	initialize the event queue.
   5303 
   5304 
   5305 
   5306 
   5307 
   5308 
   5309 Tue Nov 28 13:38:26 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5310 
   5311 	* sim-endian.h: Look at WORDS_BIGENDIAN to determine if the host
   5312 	is big endian or little endian.  For SWAP_n, use htonl/htons if
   5313 	host is little endian, not big endian and if WITH_NTOH is defined.
   5314 
   5315 	* configure{,.in} (--enable-sim-model-issue): Instead of defining
   5316 	0/1, define it to be MODEL_ISSUE_{PROCESS,IGNORE}.  Add
   5317 	AC_C_BIGENDIAN to determine if the host is big endian or not.
   5318 	* config.in: Regenerate.
   5319 
   5320 	* std-config.h (WITH_MODEL_ISSUE): Default to 0.
   5321 	(CURRENT_MODEL_ISSUE): Reference WITH_MODEL_ISSUE, and if that is
   5322 	0, use current_model_issue.
   5323 	(MODEL_ISSUE_{PROCESS,IGNORE}): Define as -1/1.
   5324 
   5325 	* psim.c (current_model_issue): New global variable.
   5326 
   5327 	* cpu.c (cpu_create): Use CURRENT_MODEL_ISSUE > 0 instead of
   5328 	WITH_MODEL_ISSUE.
   5329 	(cpu_{init,halt}): Ditto.
   5330 	* mon.c (mon_print_info): Ditto.
   5331 	* ppc-instructions (PPC_INSN_* macros, branch handling): Ditto.
   5332 
   5333 	* mon.c (mon_print_info): Print instructions/second if verbose > 0,
   5334 	rather than > 1.
   5335 
   5336 	* main.c (main): Set current_model_issue to MODEL_ISSUE_PROCESS if
   5337 	the -I switch is used.
   5338 	* sim_calls (sim_open): Ditto.
   5339 
   5340 	* ppc-instructions (model support): Add support for determining
   5341 	when we don't have enough writeback slots.  Add tracing for the
   5342 	beginning of each cycle.
   5343 
   5344 Mon Nov 27 17:46:33 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5345 
   5346 	* mon.c: Check for whether to include sys/types.h and sys/time.h.
   5347 
   5348 	* configure.in: Check for include files sys/types.h and
   5349 	sys/time.h.
   5350 	* configure: Regenerate.
   5351 	* config.in: Regenerate.
   5352 
   5353 	* cpu.h (CONST_ATTRIBUTE): Define as __attribute__((__const__)) if
   5354 	not already defined.
   5355 	(cpu_system): Use CONST_ATTRIBUTE, so that when we're not inlining
   5356 	the world, the optimizer has a fair chance of CSE'ing function
   5357 	calls.
   5358 	(cpu_{monitor,nr,registers,model}): Ditto.
   5359 
   5360 	* std-config.h (MODEL_INLINE): If not defined, define as 1 if
   5361 	DEFAULT_INLINE is non-zero, 0 otherwise, rather than just the
   5362 	value of DEFAULT_INLINE.
   5363 
   5364 Fri Nov 24 11:24:34 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5365 
   5366 	* lf.h (__attribute__): If not GCC and at least 2.7.0, define as
   5367 	nothing.
   5368  	(lf_printf): Add printf __attribute__, so the compiler will
   5369 	automatically check the format string.
   5370 
   5371 	* configure{,.in} (--enable-sim-icache): If argument is define,
   5372 	add -R to flags passed to igen.
   5373 
   5374 	* igen.c (stdlib.h): Include if the system supplies one.
   5375 	(semantics_use_cache_struct): New global for -R flag to say
   5376 	semantics is to use the cache structure directly rather than
   5377 	putting the values into local variables.
   5378 	(first_undef, last_undef): New structures to remember names to
   5379 	#undef if -R.
   5380 	(lf_print_c_extraction): If -R and this is semantics, emit names
   5381 	as #defines pointing to the cache structure, rather than loading
   5382 	the values into local variables.
   5383 	(lf_print_c_semantic_function): If -R, #undef all of the names
   5384 	defined in lf_print_c_extraction.
   5385 	(main): Recognize -R.
   5386 
   5387 	* idecode_fields.h (SPR_*): Redefine spr_* macros as SPR_* to
   5388 	avoid a name confict if -R passed to igen.
   5389 
   5390 	* ppc-instructions (mfspr, mtspr): Rename spr field to SPR.
   5391 	(model_data): Add field to count the various # of CRs that the
   5392 	mtcrf instruction used.
   5393 	(model_mon_info): Return structures counting the # of CRs that the
   5394 	mtcrf instruction used.
   5395 	(branches, sync instructions): Do not call model functions if
   5396 	WITH_MODEL_ISSUE is 0.
   5397 
   5398 	* mon.c (stdlib.h): Include if the system supplies one.
   5399  	(mon_sort_instruction_names): New function to sort instruction
   5400 	names alphabetically.
   5401 	(mon_print_info): Call qsort with mon_sort_instruction_names to
   5402 	sort instruction names.  Don't abort if WITH_MODEL_ISSUE is 0.
   5403 
   5404 	* debug.h (ITRACE): Make printf_filtered arguments type correct.
   5405 	* idecode_expression.h (CR0_COMPARE): Ditto.
   5406 	* psim.c (psim_read_register): Ditto.
   5407 
   5408 	* igen.c (lf_print_my_prefix): Use __attribute__((__unused__)) to
   5409 	silence compiler warnings about unused automatically generated
   5410 	variables.
   5411 	(lf_print_c_extraction): Ditto.
   5412 	* idecode_expression.h (FPSCR_BEGIN): Ditto.
   5413 
   5414 	* ppc-cache-rules: Define rules for making a bitmask for all
   5415 	registers.
   5416 
   5417 	* ppc-instructions: Rewrite model specific functions to use the
   5418 	bitmask of the register number, instead of using the register
   5419 	pointer to get the register number, and then making the bitmask.
   5420 
   5421 Wed Nov 22 15:24:27 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5422 
   5423 	* ppc-instructions (model_branches): Add conditional argument to
   5424 	count the number of times each type of conditional branch is used.
   5425 	(conditional branches): Pass B0 or -1 to model_branches.
   5426 	(model_mon_info): Print out conditional branch counts.
   5427 	(model-data): Add support for printing out conditional branch
   5428 	types.
   5429 
   5430 Tue Nov 21 16:31:25 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5431 
   5432 	* igen.c (insn_table_load_insns): Add support for model-static for
   5433 	internal functions that should not be inlined.
   5434 	(lf_print_c_semantic): Remove model_cleanup.
   5435 	(gen_model_{c,h}): Ditto.
   5436 
   5437 	* ppc-instructions: Redo model specific support once again.  Add
   5438 	floating point support to the model specific information.  Flesh
   5439 	out all of the floating mutiply add/subtract instructions.  Add
   5440 	better tracing support to the model specific information.
   5441 
   5442 Sun Nov 19 23:00:52 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5443 
   5444 	* ppc-instructions (model data, model_busy): Rather than using a
   5445 	bit mask for the busy units, just use a char array.  Also, only
   5446 	support 2 function units an insn can use, rather than a loop.
   5447 
   5448 Fri Nov 17 14:08:08 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5449 
   5450 	* table.c (table_entry_read): Move setting entry->line_nr to after
   5451 	the model specific fields so the line numbers for the annex are
   5452 	correct.
   5453 
   5454 	* cpu.c (cpu_{create,init,halt}): Check for WITH_MODEL_ISSUE
   5455 	before calling the model functions.
   5456 
   5457 	* debug.c (trace_descriptor): Add trace_model support.
   5458 	* debug.h (trace_options): Ditto.
   5459 
   5460 	* igen.c (gen_icache_h): Create type idecode_cache as void if not
   5461 	caching instructions.
   5462 	(gen_model_{c,h}): Drop model_issue support.  Add support for
   5463 	model_cleanup.
   5464 	(lf_print_my_prefix): Initialize a const itable_index with the
   5465 	current index.
   5466 	(lf_print_c_semantic): Call model_cleanup at the end of the
   5467 	function to check for instructions that aren't supported yet by
   5468 	the scheduling code.
   5469 
   5470 	* mon.h (count_type): New type for counters.
   5471 	* mon.c: Use count_type instead of unsigned.
   5472 
   5473 	* ppc-instructions: Redo scheduling code once again.  Make it all
   5474 	inline friendly.  Instead of having general code emitted by igen,
   5475 	go the route of having each semantic routine call the appropriate
   5476 	module.
   5477 
   5478 Thu Nov 16 09:52:26 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5479 
   5480 	* table.c (table_entry_read): Allow the annex to have blank lines.
   5481 
   5482 	* ppc-instructions: Change lines in model stuff that just have a
   5483 	tab to just newline.  Add 601 support.  Document most instructions
   5484 	in terms of model specific timing information.  Drop 'FUNCTION'
   5485 	from PPC_FUNCTION_UNIT_xxx enums.  Change PPC_UNIT_UNKNOWN ->
   5486 	PPC_UNIT_BAD.  Add TRACE(trace_tbd) for all data cache
   5487 	instruction.s.  Signal illegal instruciton if data cache block
   5488 	invalidate is issued from problem state.
   5489 
   5490 	* igen.c (max_model_fields_len): New static to keep track of the
   5491 	max size for the model specific fields.
   5492 	(model_c_insn): Use max_model_fields_len to size fields.
   5493 	(insn_table_insert_insn): Set max_model_fields_len.
   5494 	(model_table_insert): Ditto.
   5495 	(gen_model_{c,h}): Model_issue is now called with a processor
   5496 	argument.
   5497 
   5498 	* debug.c (trace_description): Add support for trace_tbd.
   5499 
   5500 	* mon.c (mon_issue): Pass processor argument to model_issue.
   5501 
   5502 	* Makefile.in: Delete all function unit support, since the newer
   5503 	table driven model support replaces it.
   5504 	* cpu.{c,h}: Ditto.
   5505 	* mon.c: Ditto.
   5506 	* inline.{c,h}: Ditto.
   5507 	* std-config.h: Ditto.
   5508 	* options.c: Ditto.
   5509 	* configure{,.in}: Ditto.
   5510 	* Makefile.in: Ditto.
   5511 	* psim.c: Ditto.
   5512 	* function_unit.{c,h}: Delete these now usused files.
   5513 
   5514 	* std-config.h (WITH_MODEL_ISSUE): Add new macro on whether to
   5515 	trace instructions in a model specific manor.
   5516 	* options.c (print_options): Print it out.
   5517 	* configure{,.in}: Add --enable-sim-model-issue option.
   5518 	* Makefile.in: Add --enable-sim-model-issue flags.
   5519 	* igen.c (lf_print_c_semantic): Add call to mon_issue here.  Check
   5520 	for WITH_MODEL_ISSUE.
   5521 	* mon.c (mon_issue): Remove call to mon_issue_here.
   5522 
   5523 	* ppc-instructions: Move branch tracing to the actual branch
   5524 	instructions, rather than testing it in model_issue.  Add code to
   5525 	code successful/unsuccessful branch predictions, and the number of
   5526 	conditional branches that fell through.
   5527 
   5528 Wed Nov 15 17:32:13 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5529 
   5530 	* cpu.h (cpu_model): Add declaration.
   5531 
   5532 	* cpu.c (struct _cpu): Add model_ptr to hold model specific
   5533 	information.
   5534 	(cpu_model): Return the model internal pointer.
   5535 	(cpu_{create,init,halt}): Call the appropriate model function.
   5536 
   5537 	* inline.c (mon.c): Move include of mon.c after model.c.
   5538 
   5539 	* mon.c (_cpu_mon): Add fields to count unaligned memory
   5540 	references.
   5541 	(mon_issue): Call model_issue, not function_unit_issue.
   5542 	(mon_{read,write}): Count # of unaligned memory accesses.
   5543 	(mon_print_info): Switch to calling model_mon_info and
   5544 	model_mon_info_free instead of function_unit version.  Print out
   5545 	number of unaligned reads/writes.
   5546 
   5547 	* {ppc-instructions,igen.c}: More global changes to add model
   5548 	specific features.
   5549 
   5550 	* inline.{c,h}: Provide for inlining options.c.
   5551 	* options.{c,h}: Ditto.
   5552 	* std-config.h: Add OPTIONS_INLINE.
   5553 
   5554 Tue Nov 14 04:47:25 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5555 
   5556 	* Makefile.in (devices.o, main.o): Update dependency.
   5557 
   5558 	* igen.c (gen_model_h): Use correct variable in loop.
   5559 	(gen_model_c): Use strcmp, strcasecmp.
   5560 	(gen_model_c): Use EXTERN_MODEL for arrays.
   5561 	(gen_model_h): Use STATIC_MODEL for arrays.
   5562 	(lf_print_c_semantic_function_header): Delete unused function.
   5563 
   5564 	* main.c (cpu.h): Include cpu.h to get model.h.
   5565 
   5566 	* inline.h ({EXTERN,STATIC}_MODEL): Define.
   5567 
   5568 Mon Nov 13 09:14:13 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5569 
   5570 	* igen.c ({insn,model}_table_fields): Spell mnemonic correctly.
   5571 	(gen_itable_h,itable_c_insn): Ditto.
   5572 	(model support): Move model support around, add support for
   5573 	model-data, model-internal.  Use annex field for model-macros
   5574 	now.
   5575 
   5576 	* configure.in (--enable-sim-inline): If --enable-sim-inline=no,
   5577 	also define INLINE as nothing.
   5578 	* configure: Regenerate.
   5579 
   5580 	* std-config.h (INLINE): Rather than nuking INLINE, only define it
   5581 	as __inline__ if any of the INLINE flags are non-zero.
   5582 
   5583 	* options.c (print_options): Print out WITH_XOR_ENDAIN.
   5584 
   5585 Mon Nov 13 23:03:45 1995  Andrew Cagney   <cagneyhighland.com.au>
   5586 
   5587 	* ppc-instructions (rfi): Add missing code.
   5588 
   5589 	* cpu.c (cpu_get_time_base): Fix calculation of current value of
   5590         time base register.
   5591 
   5592 	* ppc-spr-table (TBL, TBU): Fix TBL/TBU entries - was confusing
   5593         m[tf]tb with m[tf]spr.
   5594 
   5595 	* ppc-instructions (mtspr, mfspr): Fix mttbl - wasn't storing
   5596         lower word.
   5597 
   5598 Mon Nov 13 21:35:37 1995  Andrew Cagney   <cagneyhighland.com.au>
   5599 
   5600 	* std-config.h (INLINE, STATIC_INLINE): Was being set to static
   5601         inline..  Only problem being that with ppc-opcode-simple this gave
   5602         it the chance to inline all the idecode functions with potentially
   5603         disasterous results on a 16mb PC.  For moment hobble INLINE.
   5604 
   5605 	* configure.in, std-config.h (WITH_SMP): Make that 5 processors by
   5606         default ...
   5607 
   5608 	* configure.in: Tweek flags passed to gcc for --with-sim-warnings.
   5609         Firstly make them errors and secondly remove the options gcc-245
   5610         doesn't reconize.
   5611 
   5612 Mon Nov 13 17:57:24 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5613 
   5614 	* misc.c (zalloc), cpu.c (cpu_init), devices
   5615  	(console_io_read_buffer_callback, icu_io_read_buffer_callback,
   5616  	vm_io_read_buffer_callback), main.c (zalloc), mon.c (memset),
   5617  	sim_calls.c (zalloc) : replace bzero() with memset().
   5618 
   5619 	* emul_netbsd.c (write_direntries), psim.c (psim_read_register,
   5620  	psim_write_register): replace bcopy() with memcpy().
   5621 
   5622 Sun Nov 12 20:55:41 1995  Andrew Cagney   <cagneyhighland.com.au>
   5623 
   5624 	* configure.in: for --disable-sim-inline (--enable-sim-inline=no),
   5625         force DEFAULT_INLINE to 0 rather then trusting the std
   5626         configuration.
   5627 
   5628 Sun Nov 12 20:55:41 1995  Andrew Cagney   <cagneyhighland.com.au>
   5629 
   5630 	* igen.c (lf_print_idecode_table, idecode_table_leaf): Fix
   5631         generation of switch entries in tables - treat the same as
   5632         cracking/semantic functions.
   5633 
   5634 	* igen.c (idecode_switch_end, idecode_switch_leaf): Fix generation
   5635         of a boolean switch statement (field zero or non-zero).
   5636 
   5637 	* ppc-opcode-test-1, ppc-opcode-test-2: New files.  These test the
   5638         switch/table generation ability of igen.
   5639 
   5640 	* igen.c (idecode_switch_leaf): Fix code output when a switch
   5641         statement needs to look up a table.
   5642 
   5643 	* igen.c (idecode_declare_if_switch): New function called from
   5644         gen_idecode_c - need to declare any idecode switch functions
   5645         before they are used in idecode tables.
   5646 
   5647 	* igen.c (lf_print_c_cracker_function, idecode_crack_leaf,
   5648         idecode_crack_insn): Add is_inline_function argument to code
   5649         printing cracker functions which indicates if STATIC_IDECODE or
   5650         STATIC_INLINE_IDECODE should be used for definition.  For
   5651         idecode_crack_insn (which implies not duplicating/expanding) don't
   5652         declare function as inline - we assume that the only time this is
   5653         code is generated is when things are being tested.  For
   5654         idecode_crack_leaf, make static (instead of INLINE) if the
   5655         instructions parent is a table as function will always be called
   5656         via a table.
   5657 
   5658 	* igen.c (idecode_expand_if_switch): Declare as STATIC_IDECODE not
   5659         STATIC_INLINE_IDECODE. Only the outermost idecode switch will be
   5660         called directly, all others are called via a table.
   5661 
   5662 	* igen.c (lf_print_semantic_function_header, semantics_h_leaf,
   5663         semantics_h_insn, semantics_h_function,
   5664         lf_print_c_semantic_function, semantics_c_function): Add
   5665         is_inline_function argument to lf_print_semantic_function_header
   5666         to indicate if an inline or static function declaration/definition
   5667         should be output.  Depending on situtation call accordingly:
   5668         functions (not instruction semantic routines) are always inline;
   5669         Semantic routines are made inline when there is no icache (cache
   5670         will contain the function address) and are duplicating (see above)
   5671         and the parent of the instruction is a switch statement.
   5672 
   5673 	* igen.c (opcode_field_new): Delete.  Code changed to use ZALLOC
   5674         and moved to insn_table_find_opcode_field.
   5675 
   5676 	* table.c (table_open): Fix typo (nr_model_fields vs nr_fields).
   5677 
   5678 	* igen.c (model_c_insn): Suggestion - document the name of the
   5679         instruction on each line of the instruction model table.
   5680 
   5681 Fri Nov 10 00:44:38 1995  Andrew Cagney   <cagneyhighland.com.au>
   5682 
   5683 	* emul_netbsd.c (do_ioctl): Cleanup compilation.
   5684 
   5685 	* sim_callbacks.h (__attribute__): Only define if not defined (was
   5686         already defined on NetBSD host).
   5687 
   5688 Wed Nov  8 21:49:52 1995  Andrew Cagney   <cagneyhighland.com.au>
   5689 
   5690 	* std-config.h (WITH_XOR_ENDIAN), configure.in, Makefile.in: New
   5691         macro, indicates if the PowerPC's horrible XOR endian mode should
   5692         be suported.  Add to configure and make.
   5693 
   5694 	* vm_n.h (vm_data_map_read_N, vm_data_map_write_N), vm.c
   5695         (vm_instruction_map_read): If XOR endian, xor the address
   5696 	with a value from an xor table (indexed by size of access).
   5697 
   5698 	* vm.c (vm_synchronize_context), cpu.c (cpu_synchronize_context):
   5699         set up xor table to xor if there is a conflict between the
   5700         CURRENT_TARGET_ENDIAN and the endian indicated in the MSR.  Move
   5701         check of suported change of endian mode from cpu.c to vm.c.
   5702 
   5703 	* vm.c (vm_data_map_write_buffer, vm_data_map_read_buffer):
   5704         Hopefully added correct hack to handle XOR endian mode.
   5705 
   5706 	FIXME: If NONSTRICT alignment and XOR ENDIAN and MSR indicates
   5707         little endian mode, the model accepts miss aligned transfers.
   5708 
   5709 	FIXME: Need to create an `init' device that, during
   5710         initializatioin for XOR mode, it mushes (XOR address) all the dma
   5711         data before passing it on to the core for storage. Just like the
   5712         real thing really.
   5713 
   5714 Wed Nov  8 21:49:52 1995  Andrew Cagney   <cagneyhighland.com.au>
   5715 
   5716 	* devices.c (halt_io_write_buffer_callback): Use value written to
   5717         halt device to determine exit status.  Thus allowing
   5718         success/failure of OEA tests.
   5719 
   5720 Wed Nov  8 00:10:38 1995  Andrew Cagney   <cagneyhighland.com.au>
   5721 
   5722 	* ppc-instructions (icbi): If icache present flush it.
   5723 
   5724 Tue Nov  7 23:36:31 1995  Andrew Cagney   <cagneyhighland.com.au>
   5725 
   5726 	* devices.c (htab_init_callback): Add code to create htab/pte.
   5727 
   5728 	* devices.c (dma_file, file_init_callback, htab_init_callback):
   5729         New function - Dma the named file into memory at the specified
   5730         address.  Use.
   5731 
   5732 	* device_tree.h, device_tree.c (scand_*): New functions.
   5733 
   5734 Tue Nov  7 23:36:31 1995  Andrew Cagney   <cagneyhighland.com.au>
   5735 
   5736 	* filter_filename.c, Makefile.in: Change so that only dependant on
   5737         a very limited nr of files.  Stops an unnecessary dependency.
   5738 
   5739 Tue Nov  7 15:44:33 1995  Andrew Cagney  <cagney (a] highland.com.au>
   5740 
   5741 	* core.c (core_map_find_mapping): Use cpu_halt rather than error
   5742  	to abort an access to an undefined address.
   5743 
   5744 Sun Nov 12 07:58:09 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5745 
   5746 	* igen.c (model_table_insert_{macro,function}): New functions.
   5747 	(insn_table_load_insns): Call them.
   5748 	(gen_model_h): Move section emiting model-macros to be first.
   5749 	(model_{c,h}_function): New functions cloned from semantic
   5750 	functions to print out the prototype and function for
   5751 	model-functions.
   5752 	(gen_model_{c,h}): Print out model-functions.
   5753 
   5754 	* ppc-instructions (model_{start,halt,print_info}): Add dummy
   5755 	model-functions.
   5756 
   5757 	* options.c (print_options): Print out WITH_{,DEFAULT_}MODEL, not
   5758 	WITH_PPC_{,DEFAULT_}_MODEL.
   5759 	(options_ppc): Delete now unused function.
   5760 	(cpu.h): Include cpu.h, not just basics.h.
   5761 
   5762 	* std-config.h (WITH_{,DEFAULT_}MODEL): Define.
   5763 
   5764 	* igen.c (model_macros, last_model_macro): New statics to keep
   5765 	track of macros to go in model.h.
   5766 	(insn_table_load_insns): Add model-macros to model_macros linked
   5767 	list.
   5768 	(model_table_fields): Add field for printable name.
   5769 	(gen_model_h): If there are model macros defined, print them out.
   5770 	Print out DEFAULT_MODEL as the first model if there any models
   5771 	specified, otherwise MODEL_NONE.  Print out external decl for
   5772 	current_model.  Print out decl for model_set.
   5773 	(gen_model_c): Add function model_set.  Switch to use printable
   5774 	name for the model, not the internal identifier used.
   5775 
   5776 	* psim.c (current_model): New global variable.
   5777 
   5778 	* ppc-instructions: Add macros for flag defines.  Switch first
   5779 	model so 604 is first.
   5780 
   5781 	* main.c (main): Call model_set, not function_unit_model.
   5782 	* sim_calls.c (sim_open): Ditto.
   5783 	* sim_calls.c, Makefile.in: sim_calls.c now includes cpu.h.
   5784 
   5785 Sat Nov 11 07:27:41 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5786 
   5787 	* mon.h (mon_events): New enumeration for other events we want to
   5788 	handle.
   5789 	(mon_event): Add declaration for function.
   5790 
   5791 	* mon.c (mon_event): New function.
   5792 	(mon_print_info): Print icache misses.
   5793 
   5794 	* psim.c (run_until_stop): Monitor icache misses.
   5795 
   5796 	* configure.in (--enable-sim-inline): Fix typos in handling comma
   5797 	separated inline options.
   5798 	(--enable-sim-icache): Echo icache size.
   5799 	* configure: Regenerate.
   5800 
   5801 	* igen.c (semantics_h_print_function): Emit STATIC_SEMANTICS
   5802 	instead of INLINE_SEMANTICS so that the compiler won't keep all of
   5803 	the semantic functions as inline RTL, given that the address of
   5804 	the function is taken which forces outline calls anyway.
   5805 	(lf_print_c_semantic_function_header): Ditto.
   5806 	(gen_semantics_h): Define STATIC_SEMANTICS as nothing if not
   5807 	defined.
   5808 	(lf_print_c_cracker_function): Emit STATIC_IDECODE instead of
   5809 	STATIC_INLINE_IDECODE.
   5810 	(gen_idecode_c): Define STATIC_IDECODE if not defined.
   5811 	(gen_model_h): Use #ifdefs to define types to hold model units,
   5812 	cycles, and flags.
   5813 	(model_table_insert): Add a sentinel functional unit at the end to
   5814 	simplify loop processing.
   5815 	(model_c_insn): Use <function-unit>_SENTINAL instead of 0 for any
   5816 	instruction not specifing a function unit for the current model.
   5817 	(gen_model_{c,h}): Provide bounds for model_time_mapping.
   5818 
   5819 	* inline.h (STATIC_SEMANTICS): Define to be static if
   5820 	SEMANTICS_INLINE is defined.
   5821 	(STATIC_IDECODE): Define to be static if IDECODE_INLINE is
   5822 	defined.
   5823 
   5824 	* options.c (print_options): Fix typo.
   5825 
   5826 Fri Nov 10 06:39:46 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5827 
   5828 	* configure.in (--enable-sim-{opcode,config}): Use $srcdir when
   5829 	check for the existence of files.
   5830 	* configure: Regenerate.
   5831 
   5832 	* table.c (table): New field nr_model_fields.
   5833 	(table_open): New parameter nr_model_fields.
   5834 	(table_entry_read): Parse model fields that begin with a '*' after
   5835 	each instruction.
   5836 	* igen.c, dgen.c: Change callers of table_open.
   5837 
   5838 	* igen.c: Add support for dumping model specific information in
   5839 	model.h and model.c.
   5840 	(insn_field_name): Delete unused array.
   5841 	(global variables): Make global variables static, so we can tell
   5842 	when they are no longer used.
   5843 	(cache_semantic_actual): Delete unused variable.
   5844 	(insn_table_load_insns): If the insn is really a machine model,
   5845 	call model_table_insert instead of other processing.
   5846 	(model_table_insert): New function to handle defining the
   5847 	functional units of a particular machine model.
   5848 	(insn_table): Add last_function field so we can add functions at
   5849 	the end.
   5850 	(insn_table_insert_function): Use last_function field when
   5851 	appending new function.
   5852 
   5853 	* ppc-instructions: Add a few model specific information for 603,
   5854 	603e, and 604 for testing purposes.
   5855 
   5856 	* table.h (table_model_entry): New linked list to hold model
   5857 	specific information, one per line.
   5858 	(table_entry): Add model_first, model_last fields.
   5859 
   5860 	* configure.in (--enable-sim-inline): If gcc is found and
   5861 	--enable-sim-inline is not specified, defaine DEFAULT_INLINE to 1,
   5862 	not 2.
   5863 	(--enable-sim-reserved-bits): New switch to check whether reserved
   5864 	bits are set in the instruction.
   5865 	(--enable-sim-opcode): Make complex the default.
   5866 	(all switches): Add appropriate checks and error messages.
   5867 	* configure: Regenerate.
   5868 
   5869 	* Makefile.in (RESERVED_CFLAGS): New variable set by
   5870 	--enable-sim-reserved-bits.
   5871 	(CONFIG_CFLAGS): Include RESERVED_CFLAGS.
   5872 	(BUILT_SRC): igen now generates model.c and model.h.
   5873 	(LIB_OBJ): Include table.o.
   5874 	(tmp-igen): Add -m/-M options to write model.c/model.h.
   5875 	(model.o): New object.
   5876 	(CPU_H): Include model.h.
   5877 
   5878 	* cpu.h: Include model.h.
   5879 
   5880 	* std-config.h (WITH_RESERVED_BITS): Define.
   5881 	(MODEL_INLINE): Ditto.
   5882 
   5883 	* options.c (print_options): Print out WITH_RESERVED_BITS.
   5884 
   5885 Thu Nov  9 12:22:15 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5886 
   5887 	* configure.in: If --silent, don't output information messages.
   5888 	* configure: Regenerate.
   5889 
   5890 	* configure.in (--enable-sim-alignment): Fix typo in specifing non
   5891 	strict alignment.
   5892 	(--enable-sim-switch): Make default on.
   5893 	(--enable-sim-duplicate): Make default on.
   5894 	(--enable-sim-smp): Make default 0.
   5895 	(--enable-sim-mon): Don't set sim_float if not set.
   5896 	(--enable-sim-inline): If gcc is found and --enable-sim-inline is
   5897 	not specified, define DEFAULT_INLINE to be 2.
   5898 	(all --enable-sim-* rules): Echo rules set to non empty to file
   5899 	descriptor 6.
   5900 	* configure: Regenerate.
   5901 
   5902 	* options.c (options_env): Fix typo if WITH_ENV is 0.
   5903 	(print_options): Print GCC compiler version if available and
   5904 	date/time options was compiled.  If OPCODE_RULES, IGEN_FLAGS,
   5905 	and/or DGEN_FLAGS are defined, print them.
   5906 
   5907 	* Makefile.in (all link actions): Pass SIM_CFLAGS as well as
   5908 	CFLAGS.
   5909 	(options.o): Compile options.o with OPCODE_RULES, IGEN_FLAGS, and
   5910 	DGEN_FLAGS defined, so they can be printed out.
   5911 
   5912 	* igen.c (lf_print_c_validate): Check for WITH_ASSERT, so that
   5913 	this test can be compiled away if the user really wants a fast
   5914 	simulator by not doing assertion failures.
   5915 
   5916 Wed Nov  8 13:19:47 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   5917 
   5918 	* options.c: New file to print out all of the WITH_ options.
   5919 	* options.h: New include file to declare print_options.
   5920 	* debug.h (trace_options): Add trace_opts to call print_options.
   5921 	* debug.c (trace_description): Add trace_opts support.
   5922 	* main.c (main): If user requested options, print them.
   5923 	* sim_calls.c (sim_open): Ditto.
   5924 
   5925 	* igen.c (opcode_field_new): Add void to make it a proper prototype.
   5926 
   5927 	* emul_generic.c (emul_enter_call): Make printf_filtered arguments
   5928 	type correct.
   5929 	* emul_netbsd.c (do_kill): Ditto.
   5930 	* registers.c (registers_dump): Ditto.
   5931 	* vm.c (om_translate_effective_to_real): Ditto.
   5932 	* vm_n.h (vm_data_map_read_N): Ditto.
   5933 	(vm_data_map_write_N): Ditto.
   5934 	* devices.h (DTRACE_INIT): Ditto.
   5935 	(DTRACE_{ATTACH,DETACH}_ADDRESS): Ditto.
   5936 	(DTRACE_IO_{READ,WRITE}_BUFFER): Ditto.
   5937 	(DTRACE_DMA_{READ,WRITE}_BUFFER): Ditto.
   5938 	* devices.c (update_for_binary_section): Ditto.
   5939 	(write_stack_arguments): Ditto.
   5940 	(stack_ioctl_callback): Ditto.
   5941 	* device_tree.c (device_tree_add_passthrough): Ditto.
   5942 	(device_tree_{add,find}_device): Ditto.
   5943 	(device_tree_{add,find}_integer): Ditto.
   5944 	(device_tree_find_{string,boolean}): Ditto.
   5945 	(device_tree_init{,_device}): Ditto.
   5946 	(device_tree_dump): Ditto.
   5947 	* sim_calls.c (sim_{read,write}): Ditto.
   5948 	(sim_{fetch,store}_register): Ditto.
   5949 	(sim_stop_reason): Ditto.
   5950 
   5951 	* sim_callbacks.h (printf_filtered): Declare with attribute
   5952 	printf, so we can enable format checks.
   5953 
   5954 	* devices.c (console_io_{read,write}_buffer_callback): Cast swtich
   5955 	argument to int, since ANSI doesn't allow long switch values.
   5956 	* emul_netbsd.c (do___sysctl): Ditto.
   5957 
   5958 	* emul_netbsd.c (do___sysctl): Fix up printf call.
   5959 
   5960 	* corefile.c (core_translate): Don't do arithmetic with void *
   5961 	pointers.  Cast to char * first.
   5962 
   5963 	* function_unit.c (FUNC_{LOAD,STORE}): Rename from {LOAD,STORE}
   5964 	and change all uses.
   5965 
   5966 	* Makefile.in ({FUNC,MODEL,WARNING}_CFLAGS): New flags set by
   5967 	configure --enable switches.
   5968 	(CONFIG_CFLAGS): Include FUNC_CFLAGS and MODE_CFLAGS.
   5969 	(.c.o): Include WARNING_CFLAGS.
   5970 	(CPU_H): Include function_unit.h.
   5971 	(LIB_OBJ): Include function_unit.o.
   5972 	(BUILT_SRC_WO_CONFIG): Split from BUILT_SRC and do not include
   5973 	config.h or ppc-config.h.
   5974 	(BUILT_SRC): Include BUILT_SRC_WO_CONFIG, config.h and
   5975 	ppc-config.h.
   5976 	(filter_filename.o): Include config.h/ppc-config.h dependencies.
   5977 	(idecode.o, semantics.o, psim.o): Specify CC line without
   5978 	WARNING_CFLAGS so that we don't get all of the unused variable
   5979 	warnings that are generated.
   5980 	(function_unit.o): Add rule to build.
   5981 	(main.o, sim_calls.o): Add function_unit.h, itable.h dependencies.
   5982 	(mon.o): Include mon.c dependency.
   5983 	(TAGS): Depend on BUILT_SRC.
   5984 	(clean): Don't delete config.h or ppc-config.h
   5985 
   5986 	* basics.h (sim_callbacks.h): Move include after the include of
   5987 	config.h and ppc-config.h.
   5988 
   5989 	* bits.{h,c} (ROTL32,ROTL64): Move these functions to bits.c.  Add
   5990 	support for BITS_INLINE to inline these.  Add declarations to
   5991 	bits.h.
   5992 
   5993 	* configure.in (--enable-sim-warnings): Add new option to specify
   5994 	compiler warnings for all modules except idecode.o and semantics.o
   5995 	which have lots of unused variables because they are machine
   5996 	generated.
   5997 	(--enable-sim-function-unit): New switch to configure whether
   5998 	function unit support is compiled in or not.
   5999 	(--enable-sim-{,default-}mode): New switches to control which cpu
   6000 	model is used.
   6001 	* configure: Regenerate.
   6002 
   6003 	* corefile.c (core_attach_address_callback): Delete unused
   6004 	variable device_address.
   6005 
   6006 	* cpu.c (struct _cpu): Add function unit pointer field func_unit.
   6007 	(cpu_create): If WITH_FUNCTION_UNIT, call function_unit_create.
   6008 	(cpu_init): If WITH_FUNCTION_UNIT, call function_unit_init.
   6009 	(cpu_halt): If WITH_FUNCTION_UNIT, call function_unit_halt.
   6010 	(cpu_function_unit): New function to return func_unit field.
   6011 
   6012 	* cpu.h (function_unit.h): Include new include file.
   6013 	(cpu_function_unit): Declare.
   6014 
   6015 	* debug.c (stdlib.h): Test HAVE_STDLIB_H, not HAVE_STDLIB.
   6016 	(config.h): Include config.h.
   6017 
   6018 	* devices.c (icu_io_write_buffer_callback): Delete unused variable
   6019 	system.
   6020 
   6021 	* emul_generic.c (emul_exit_call): Print out status value.
   6022 
   6023 	* emul_netbsd.c (do_read): Delete unused variable nr_moved.
   6024 
   6025 	* filter_filename.h (includes): Include config.h, ppc-config.h,
   6026 	not basics.h.
   6027 
   6028 	* inline.c: Include bits.c if BITS_INLINE.  Include
   6029 	function_unit.c if FUNCTION_UNIT_INLINE.
   6030 
   6031 	* inline.h (INLINE_BITS): Define if BITS_INLINE.
   6032 	(INLINE_FUNCTION_UNIT): Define if FUNCTION_UNIT_INLINE.
   6033 
   6034 	* interrupts.c (instruction_storage_interrupt): Delete unused
   6035 	variable nia.
   6036 
   6037 	* lf.h (config.h): Include config.h.
   6038 
   6039 	* main.c (includes): Include function_unit.c.  If HAVE_UNISTD_H,
   6040 	include unistd.h.
   6041 	(usage): Update for -m model, -i, and -I options.
   6042 	(main): Delete unused variables stack_pointer and i.  Add support
   6043 	for -i, -m model arguments.  Call psim_print_info with verbose ==
   6044 	1 if -i, and verbose == 2 if -I.
   6045 
   6046 	* mon.c (stdio.h): Include stdio.h to pick up sprintf prototype.
   6047 	(mon_issue): Call function_unit_issue if function units are
   6048 	supported.
   6049 	(mon_print_info): Take psim * argument.  Print out information
   6050 	from function_unit if available.  Move read/write stats to always
   6051 	print, instead of printing if verbose > 1.  Fix up plural
   6052 	vs. singular usage.
   6053 
   6054 	* mon.h (mon_print_info): Update prototype.
   6055 
   6056 	* psim.c (current_ppc_model): Add global variable.
   6057 	(psim_print_info): Pass system argument to mon_print_info.
   6058 
   6059 	* sim_calls.c (function_unit.h): Include.
   6060 	(sim_open): Add support for -i and -m model options.  If -i call
   6061 	psim_print_info with verbose == 1, if -I, with verbose == 2.
   6062 	(sim_resume): Delete unused variable program_counter.
   6063 
   6064 	* std-config.h (WITH_FUNCTION_UNIT): Define.
   6065 	(ppc_model): Add enumeration giving all PowerPC models currently
   6066 	known about.
   6067 	({WITH,CURRENT}_PPC_MODEL): Define.
   6068 	(FUNCTION_UNIT_INLINE): Define.
   6069 
   6070 	* table.c (config.h): Include config.h.
   6071 
   6072 	* vm.c (om_virtual_to_real): Print pte_word_{0,1} so the compiler
   6073 	doesn't complain that they're unused.
   6074 
   6075 	* vm_n.h (vm_data_map_read_N): Delete unused variable rval.
   6076 
   6077 Mon Nov  6 23:15:54 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6078 
   6079 	* sim-endian.c (ppc-endian.c), sim-endian.h (ppc-endian.h):
   6080         renameed.  These files are target independant.
   6081 	* Makefile.in, basics.h: update for new name.
   6082 
   6083 	* sim-endian.h (SWAP_N), sim-endian.c (_SWAP_1): Rename existing
   6084         SWAP_<N> to _SWAP_<N> so that sim-endian.h can contain SWAP_N
   6085         macro's as required.
   6086 
   6087 	* sim-endian.c, sim-endian-n.h (new file): Move endian code into a
   6088         debugable header file.
   6089 
   6090 	* ppc-instructions (Byte-Reverse): Enable byte reverse
   6091         instructions using SWAP_N macros.
   6092 
   6093 Mon Nov  6 10:39:28 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6094 
   6095 	* Makefile.in (config.status): Remove references to config.make
   6096 	and config.hdr.
   6097 
   6098 	* config.{make,hdr}: Delete, no longer used.
   6099 	* build-psim: Ditto.
   6100 
   6101 Mon Nov  6 20:49:56 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6102 
   6103 	* sim_calls.c (sim_open): Fix parsing of `target sim' options.
   6104 
   6105 	* device_tree.c (device_tree_add_string): Wasn't saving the value
   6106  	of the string being entered into the tree.
   6107 
   6108 	* psim.c (create_filed_device_tree): Not terminating string device
   6109  	names with a null.
   6110 
   6111 	* psim.c (psim_create): Use `env' instead of
   6112  	`environment-architecture' to be consistent with configure.
   6113   	Reconize user/uea, virtual/vea and operating/oea.
   6114 
   6115 Sat Nov  4 12:29:45 1995  Fred Fish  <fnf (a] cygnus.com>
   6116 
   6117 	* core.c:  Rename to corefile.c
   6118 	* core.h:  Rename to corefile.h
   6119 	* inline.c: Include corefile.h, renamed from core.h.
   6120 	* cpu.h: Include corefile.h, renamed from core.h
   6121 	* vm.c: Include corefile.h, renamed from core.h
   6122 	* corefile.c: Include corefile.h rather than core.h
   6123 	* README.psim (KNOWN PROBLEMS): Change core.* references to corefile.*
   6124 	references.
   6125 	* Makefile.in (CPU_H): Change core.h to corefile.h
   6126 	(vm.o):  Change dependency to corefile.h
   6127 	(LIB_SRC): Change core.c to corefile.c.
   6128 	(LIB_OBJ): Change core.o to corefile.o.
   6129 	(corefile.o):  Change dependencies to corefile.c, corefile.h.
   6130 
   6131 Fri Nov  3 11:37:24 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6132 
   6133 	* ppc-instructions (data cache instructions): Make all data cache
   6134 	instructions nops instead of invalid instructions.
   6135 
   6136 	* Makefile.in (CONFIG_CFLAGS): Add ALIGNMENT_CFLAGS and
   6137 	TIMEBASE_CFLAGS which weren't included.
   6138 
   6139 Thu Nov  2 08:54:04 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6140 
   6141 	* Makefile.in: Uncomment built file dependencies.
   6142 
   6143 	* configure.in: Rewrite --enable-sim switch handling to use the
   6144 	autoconf builtins so it works correctly if the configure or
   6145 	Makefile.in files are modified and make decides to rebuild
   6146 	Makefile.  Also document all of the --enable-sim switches
   6147 	supported.  Check whether getrusage and sys/resource.h are
   6148 	supported.
   6149 	* config.in: Regenerate.
   6150 	* configure: Regenerate.
   6151 	* Makefile.in: Add support for all of the variables set with
   6152 	--enable-sim switches.
   6153 
   6154 	* Makefile.in (clean): make clean now removes all built sources as
   6155 	well.
   6156 
   6157 	* cpu.c: Use HAVE_STRING_H, HAVE_STRINGS_H, HAVE_UNISTD_H,
   6158 	HAVE_TIME_H, HAVE_SYS_TIMES_H, HAVE_SYS_RESOURCE_H defined in
   6159 	the generated config.h.
   6160 	* debug.c: Ditto.
   6161 	* device_tree.c: Ditto.
   6162 	* devices.c: Ditto.
   6163 	* dgen.c: Ditto.
   6164 	* emul_netbsd.c: Ditto.
   6165 	* igen.c: Ditto.
   6166 	* lf.c: Ditto.
   6167 	* misc.c: Ditto.
   6168 	* psim.c: Ditto.
   6169 	* registers.c: Ditto.
   6170 	* sim_calls.c: Ditt.
   6171 	* table.c: Ditto.
   6172 
   6173 
   6174 	* main.c (main): Call psim_print_info with verbose == 2.
   6175 
   6176 	* mon.c (mon_print_info): Align the cpu number and number of
   6177 	instructions fields.  Do not print an instruction category if the
   6178 	CPU did not execute any of those instructions.  Print out number
   6179 	of reads and writes.  If getrusage is supported, print out number
   6180 	of simulated instructins per second.
   6181 
   6182 	* configure.in: Add support for --enable-sim-opcode=stupid.
   6183 	* configure: Regenerate.
   6184 
   6185 Wed Nov  1 23:46:59 1995  Andrew Cagney   <cagney (a] highland.com.au>
   6186 
   6187 	* std-config (INLINE_DEVICE_TREE): Don't inline either of
   6188         device_tree.c or devices.c.  There is no significant gain.
   6189 
   6190 	* configure.in, Makefile.in: add --enable-sim-icache=[0-9]* and
   6191  	IGEN_ICACHE macro.
   6192 
   6193 Wed Nov  1 23:46:59 1995  Andrew Cagney   <cagney (a] highland.com.au>
   6194 
   6195 	* igen.c (main), misc.h (target_a2i, i2target), misc.c: Add
   6196         functions to convert between target and igen internal bit numbers.
   6197         Make IO go through these functions. Add -b (bit size) and -h (high
   6198         bit nr) options to igen.  Typical usage would be: ./igen -b 16 -h
   6199         15 for a 16 bit instruction format with the msb given a number 15.
   6200 
   6201 Wed Nov  1 22:17:32 1995  Andrew Cagney   <cagney (a] highland.com.au>
   6202 
   6203 	* dgen.c (main): Was outputting optarg even when it was NULL.
   6204 
   6205 Tue Oct 31 23:48:33 1995  Andrew Cagney   <cagney (a] highland.com.au>
   6206 
   6207 	* vm_n.h (vm_data_map_load_N, vm_data_map_store_n), debug.h,
   6208         debug.c: Add tracing of load/store unit (virtual) with -t
   6209         load-store.
   6210 
   6211 Tue Oct 31 21:44:01 1995  Andrew Cagney   <cagney (a] highland.com.au>
   6212 
   6213         * std-config.h (WITH_ENVIRONMENT): Add USER_ENVIRONMENT which does
   6214         not include things such as the time base and events.
   6215 
   6216 	* interrupt.c, sim_calls.c, cpu.h, vm.c, configure.in: Add UEA to
   6217  	all environment switches for above.
   6218 
   6219 	* psim.c (psim_create): ditto - new device tree node name is
   6220         /options/environment-architecture with values user, virtual and
   6221         operating.
   6222 
   6223 Tue Oct 31 21:31:32 1995  Andrew Cagney   <cagney (a] highland.com.au>
   6224 
   6225 	* ppc-opcode-stupid: Third example of use of opcode table - this
   6226         one expands all mtspr/mfspr and branch instructions.  Appears to
   6227         give about a 10% gain in performance if everything enabled.  Also
   6228         takes about 150mb of swap to build.
   6229 
   6230 Wed Nov  1 10:49:48 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6231 
   6232 	* emul_netbsd.c (do_exit): Print arguments and close parenthesis
   6233 	if tracing, since exit doesn't go through emul_exit_call.
   6234 	(do_read): Print arguments if tracing.
   6235 	(do_write): Ditto.
   6236 	(do_open): Ditto.
   6237 	(do_break): Ditto.
   6238 	(do_kill): Ditto.
   6239 	(do_dup): Ditto.
   6240 	(do_sigprocmask): Replace trace with printing arguments if
   6241 	tracing.
   6242 	(do_ioctl): Print arguments if tracing.
   6243 	(do_umask): Ditto.
   6244 	(do_dup2): Ditto.
   6245 	(do_fcntl): Ditto.
   6246 	(do_gettimeofday): Ditto.
   6247 	(do_getrusage): Ditto.
   6248 	(do_fstatfs): Ditto.
   6249 
   6250 	* filter_filename.c: New file to provide filter_filename to strip
   6251 	the directory prefix from a file.
   6252 	* filter_filename.h: New include file to declare filter_filename.
   6253 
   6254 	* debug.h: Include filter_filename.h.
   6255 	(TRACE,DTRACE,ERROR): Use filter_filename on __FILE__.
   6256 
   6257 	* misc.h: Include filter_filename.h.
   6258  	(ASSERT): Use filter_filename on __FILE__.
   6259 
   6260 	* igen.c (lf_print_my_prefix): Use filter_filename on the filename
   6261 	argument.
   6262 
   6263 	* Makefile.in: Add filter_filename support.
   6264 
   6265 	* ppc-instructions (dcbi, icbi): Make these NOPs rather than
   6266 	invalid instructions.
   6267 
   6268 	* configure.in: Add support for more --enable-sim-* switches.
   6269 	Use config.make and config.hdr to write to Makefile and config.h
   6270 	respectively.  Don't rewrite Makefile, just append to it.
   6271 	* configure: Regenerate.
   6272 	* config.{make,hdr}: New shell scripts.
   6273 
   6274 	* Makefile.in: Remove all variables set by configure.in.
   6275 	(psim.o): Depend on $(BUILT_SRC) also.
   6276 
   6277 	* emul_netbsd.c (do_gettimeofday,do_getrusage): When comparing an
   6278 	integer, use 0, not NULL.
   6279 
   6280 Tue Oct 31 15:20:04 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6281 
   6282 	* configure.in: Add support for --enable-sim-inline,
   6283 	--enable-sim-bswap, --enable-sim-cflags, --enable-sim-complex,
   6284 	--enable-sim-switch, --enable-sim-duplicate, --enable-sim-filter,
   6285 	and --enable-sim-endian switch to control various Makefile
   6286 	variables.
   6287 	* configure: Regenerate from configure.in.
   6288 	* Makefile.in: Add various Make variables that the various
   6289 	switches alter.
   6290 
   6291 	* std-config.h (DEFAULT_INLINE): Don't set this to 2 if using GCC
   6292 	and optimizing by default.
   6293 
   6294 Fri Oct 27 19:26:27 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6295 
   6296 	* bits.h (ROTL32, ROTL64): Were functions, made them macros, now
   6297  	make them functions again.  Appears 2.6.3 is confused by just a
   6298  	macro.
   6299 
   6300 Thu Oct 26 18:31:58 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6301 
   6302 	* ppc-endian.c (SWAP_8): Fix 8 byte swap!
   6303 
   6304 	* psim.c (psim_create): Not correctly checking that runtime
   6305  	configuration of things like ENDIAN, ENVIRONMENT and ALIGNMENT
   6306  	matched the compiled in ones.
   6307 
   6308 	* debug.h (ITRACE), igen.c: Tidy up more tracing flags -
   6309  	trace_semantics is now different to trace_idecode, the former
   6310  	checks the cache.
   6311 
   6312 Tue Oct 24 21:54:13 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6313 
   6314 	* ppc-instructions (mtsrin): Missing instruction
   6315 	* ppc-instructions (mfsrin): Missing instruction
   6316 	* ppc-instructions (eieio): Missing instruction
   6317 
   6318 Tue Oct 24 20:55:29 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6319 
   6320 	* build-psim: New shell script - see internals for usage,
   6321  	simplifies the process of building custom simulators.
   6322 
   6323 Mon Oct 23 23:48:59 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6324 
   6325 	* std-config.h (SEMANTICS_INLINE): Tidy up notes on each of the
   6326         INLINE macros.  Make SEMANTICS_INLINE == 1 if DEFAULT_INLINE == 2.
   6327         Don't use DEFAULT_INLINE to define REGISTERS_INLINE DEVICES_INLINE
   6328         DEVICE_TREE_INLINE or INTERRUPTS_INLINE as none of these are on
   6329         the instruction or data critical paths.
   6330 
   6331 	* FIXME: devices.c/emul_netbsd.c would benefit (slightly) from
   6332  	the inclusion of device_tree.c/emul_generic.c.
   6333 
   6334 Mon Oct 23 00:31:50 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6335 
   6336 	* os_emul.[hc], emul_generic.[hc], emul_netbsd.[hc]: replace
   6337         system.[hc].  Start of suport for multiple emulations and
   6338         emulation state (os_emul object).
   6339 
   6340 	* emul_generic.[hc]: Start of code to implement proper system call
   6341 	tracing (from spy).
   6342 
   6343 Sun Oct 22 21:33:51 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6344 
   6345 	* cpu.h, cpu.c (cpu_init): New function, zero the registers before
   6346         the processor is started. Fixes problem of registers being
   6347         undefined when restarting from within gdb.
   6348 
   6349 	* cpu.h, cpu.c (cpu_flush_icache): New function, flushes the
   6350         instruction cache (if present).  Fixes problem of cpu caching gdb
   6351         breakpoint instructions.
   6352 
   6353 	FIXME: PSIM sometimes aborts calling error(), it should instead
   6354  	call sim_error() say which takes care of housekeeping such as
   6355  	saving the CIA before calling error.
   6356 
   6357 	* NOTE: cpu_flush_cache() instead of cpu_synchronize_context() is
   6358  	used when restarting a simulation because the latter has the
   6359  	unwanted side effect (well I as a kernel hacker think it is) of
   6360  	performing an isync when the instruction stream doesn't contain
   6361  	one.
   6362 
   6363 Sun Oct 22 19:27:48 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6364 
   6365 	* mon.h (new), mon.c (new), std-config.h (WITH_MON): Performance
   6366         monitoring module. Counts both instructions issued and
   6367         load/stores.
   6368 
   6369 	* NOTE: mon does not contain to count instruction loads as this
   6370  	information is already available from the mon_issue() hook.
   6371 
   6372 	* igen.c (lf_print_c_semantic), vm_n.h: Add counting code.
   6373 
   6374 	* psim.h, psim.c (psim_create), cpu.h, cpu.c (cpu_create): Attach
   6375         a common monitor to each of the cpus. Delete
   6376         cpu_increment_number_of_insns() and cpu_get_number_of_insns()
   6377         replaced by copied code in mon.[hc].
   6378 
   6379 Sun Oct 22 18:42:45 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6380 
   6381 	* sim_calls.c, main.c, psim.c (psim_create): always create
   6382         `WITH_SMP' cpus.  The actual number of CPU's active in a
   6383         simulation run is taken from the device node: /init/smp (an
   6384         integer). WITH_SMP changed to 2 (remember to put it back to 0).
   6385 
   6386 Fri Oct 20 17:26:54 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6387 
   6388 	* system.c: More system call emulation.  If code appears NetBSD
   6389  	specific, make conditional to being compiled on a NetBSD system
   6390  	(sigh).
   6391 
   6392 Wed Oct 18 23:02:20 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6393 
   6394 	* Makefile.in, gen.c(delete), igen.c(new), dgen.c(new),
   6395  	lf.[ch](new), table.[ch](new): Split into two generators - igen
   6396  	that outputs the instruction tables and dgen that outputs the spr
   6397  	tables.  Add -f (filter out) flag to igen to filter out certain
   6398  	instructions (ex 64 bit ones) from the created tables.  Include
   6399  	$(LIBIBERTY_LIB) in link options in case host lacks some libc
   6400  	functions.
   6401 
   6402 	* NOTE: igen, since it was originally written for the
   6403  	PowerPC/RS6000, things the MSB is 0 and the LSB is 63{31}.
   6404 
   6405 	* Makefile.in, std-config.h, ppc-cache-rules(new),
   6406  	ppc-opcode-complex(new), ppc-opcode-simple(new): (for igen) Create
   6407  	cache-rule and opcode-rule tables from macros found std-config.h.
   6408  	Delete corresponding macro's from std-config.h.
   6409 
   6410 	* igen.c (gen_itable_c, gen_itable_h), Makefile.in: code to output
   6411  	an table of all the instructions.  Code to output a type
   6412  	enumerating all the instructin names.
   6413 
   6414 	* igen.c(lf_print_c_semantic): Move call to increment instruction
   6415  	counter so that it occures _after_ the instruction has been fully
   6416  	validated, was double counting illegal/invalid instructions.  Add
   6417  	conditional so only compiled in when WITH_PROFILE enabled (enabled
   6418  	by default).
   6419 
   6420 	* igen.c, cpu.h, cpu.c(cpu_increment_number_of_insns): Include
   6421  	itable.h, count individual instruction types not just total,
   6422  	adjust reporting functions to output this.
   6423 
   6424 	* ppc-instructions (64 bit Load Doubleword with Update Indexed):
   6425  	Had 32./ instead of 31./
   6426 
   6427 	* ppc-instructions (64 bit Store Double Word Conditional Indexed):
   6428  	bitrot - updated to use newer CR register operators.
   6429 
   6430 	* ppc-instructions (64bit Floating Convert from Integer
   6431  	Doubleword): Correct call to Round_Float().
   6432 
   6433 Mon Oct 16 00:31:20 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6434 
   6435 	* basics.h: #include "sim_callbacks.h" earlier so that its
   6436  	prototypes are declared in all other header files.
   6437 
   6438 	* bits.h, bits.c, idecode_expression.h (ROTL32, ROTL64): Update
   6439  	doc in bits.h, remove dead code in bits.c, move ROTL32/ROTL64 into
   6440  	bits.h.
   6441 
   6442 	* cpu.c(cpu_add_commas), device_tree.h, device_tree.c(scand_*):
   6443  	Add size of buffer argument to functions writing a string into a
   6444  	buffer.  Check for buffer overflow.
   6445 
   6446 Sun Oct 15 22:16:11 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6447 
   6448 	* devices.h, devices.c, debug.h, debug.c: add macro's for tracing
   6449         of each device.  Make parameter names consistent so macros work.
   6450         Use macro's in device functions.
   6451 
   6452 	* device_tree.c, devices.h, devices.c: include path to device in a
   6453         devices node when creating it.
   6454 
   6455 	* device_tree.c, debug.h, debug.c: Add tracing of `device-tree'.
   6456 
   6457 	* core.c: add tracing of core-device, adjust parameter names in
   6458  	core functions to be consistent with those in devices*.
   6459 
   6460 Sun Oct 15 20:33:20 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6461 
   6462         * debug.h, debug.c (trace_option): New function. Parses the trace
   6463         option, updating the trace array.
   6464 
   6465 	* debug.h, debug.c (trace_usage): New function. Outputs the list
   6466         of all possible trace options.
   6467 
   6468 	* sim_calls.c (sim_open), main.c (main): Use new trace_option() to
   6469  	parse trace options specified with the simpler -t flag.  Adjust
   6470  	usage.
   6471 
   6472 	* FIXME: basic parsing of command line options is still duplicated
   6473  	by main.c and sim_calls.c
   6474 
   6475 Thu Oct 26 10:42:28 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6476 
   6477 	* Makefile.in (clean): Delete *.i and *.out files.
   6478 
   6479 	* ppc-endian.c (SWAP_n): Add SET argument to allow use of SWAP
   6480 	macros for either assignment or return.  Fix SWAP_8 to use a
   6481 	union, and two SWAP_4's.  Delete SWAP_N, since nobody uses it now.
   6482 	(ENDIAN_N): Add SET argument to SWAP_n calls.  Delete macro defs
   6483 	that hardwired swapping on/off, let optimizer delete dead code.
   6484 
   6485 	* main.c (main): Add printf that we caught a signal and print out
   6486 	the failing address.
   6487 
   6488 Thu Oct 19 21:43:39 1995  Fred Fish  <fnf (a] fishfood.amigalib.com>
   6489 
   6490 	* Makefile.in:  Remove tabs from otherwise empty line.
   6491 	Confuses many non-GNU versions of "make".
   6492 
   6493 Wed Oct 18 08:51:25 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6494 
   6495 	* Makefile.in (clean): Delete files produced by gen.
   6496 
   6497 Mon Oct 16 17:34:24 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6498 
   6499 	* gen.c (lf_print_c_semantic_function): Move counting # of
   6500 	instructions here so it works with caching.
   6501 	(gen_idecode_c): Move from here.
   6502 
   6503 Wed Oct 11 17:13:15 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6504 
   6505 	* gen.c, ppc-instructions, psim.c: Fix code for generating
   6506 	cracking instruction cache.  Delete the code that cached just the
   6507 	result from doing an instruction lookup - this ran slower than no
   6508 	cache at all.
   6509 
   6510 Fri Oct 13 09:58:43 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6511 
   6512 	* Makefile.in (gen.o): Include $(INLINE_CFLAGS).
   6513 
   6514 	* debug.h (ppc_trace): Rename from trace, to avoid a conflict with
   6515 	TCL when gdb is linked with the simulator.
   6516 	* debug.c (ppc_trace): Ditto.
   6517 	* sim_calls.c (sim_open): Change trace -> ppc_trace.
   6518 	* main.c (main): Ditto.
   6519 
   6520 	* cpu.c (cpu_add_commas): Remove extra static.
   6521 
   6522 Thu Oct 12 11:35:53 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6523 
   6524 	* Makefile.in (psim.o): Now that inlines are turned on, make
   6525 	psim.o depend on all sources.
   6526 
   6527 	* cpu.c (cpu_add_commas): New function to format a long with
   6528 	commas.
   6529 	(cpu_print_info): Use it to print number_of_insns.
   6530 
   6531 	* ppc-endian.c (SWAP_n): New macros to speed up byte swapping for
   6532 	2, 4, and 8 bytes.
   6533 	(ENDIAN_N): If both target and host byte orders are known, don't
   6534 	bother testing CURRENT_{TARGET,HOST}_BYTE_ORDER.
   6535 
   6536 	* ppc-endian.h (target specific H2T_n/T2H_n macros): Remove #if 0
   6537 	to allow target specific H2T_n/T2H_n macros to be used.
   6538 	(htonl, ntohl): If compiled on a 486 by GCC and WITH_BSWAP is
   6539 	non-zero, redefine the htonl/ntohl macros to use the BSWAP instead
   6540 	of the 3 instruction sequence that runs on 386s.
   6541 
   6542 	* std-config.h (WITH_{HOST,TARGET}_BYTE_ORDER): Don't override if
   6543 	specified on the compile line.
   6544 	(WITH_BSWAP): If not defined, define as 0.
   6545 
   6546 	* Makefile.in (INLINE_CFLAGS): Add -DDEFAULT_INLINE=2 to add
   6547 	default inline support.  Pass INLINE_CFLAGS when compiling.
   6548 
   6549 	* devices.{h,c} (unimp_device_ioctl): Use STATIC_DEVICES, not
   6550 	INLINE_DEVICES since GCC doesn't like inline functions that
   6551 	accept variable arguments.
   6552 	(stack_ioctl_callback): Make function just static because GCC
   6553 	doesn't like inline functions that accept variable arguments.
   6554 
   6555 	* devices.h (STATIC_DEVICES): Define as empty if not defined.
   6556 
   6557 	* inline.c: Correct pathnames of included C files to match current
   6558 	implementation.
   6559 
   6560 	* inline.h (STATIC_DEVICES): If DEVICES_INLINE is defined to be
   6561 	non-zero, define STATIC_DEVICES to be static.
   6562 
   6563 	* std-config.h (INLINE): If GNU C and optimizing, define this as
   6564 	__inline__.
   6565 	(DEFAULT_INLINE): If not defined, define as 0.
   6566 	(ENDIAN_INLINE): If not defined, define as DEFAULT_INLINE.
   6567 	({CORE,VM,CPU,EVENTS,REGISTERS,INTERRUPTS}_INLINE): Ditto.
   6568 	({SPREG,IDECODE}_INLINE): Ditto.
   6569 
   6570 Wed Oct 11 17:13:15 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6571 
   6572         * ppc-instructions: Initial cut of floating point suport added.
   6573   	Of note include - use of host IEEE floating point instructions,
   6574  	use of PowerPC manual pseudo code to handle the FPSCR.  It is not
   6575  	currently a pretty sight.
   6576 
   6577 	* memory_map.h, memory_map.c, memory_map_n.h, core.h, core.c:
   6578  	merge into core.h, core.c, core_n.h. The type memory_map replaced
   6579  	with core_map.  This removes a level of pointer indirection when
   6580  	translating an address.
   6581 
   6582 	* memory_map.h, memory_map.c, memory_map_n.h: delete.
   6583 
   6584 	* Makefile.in et.al (sorry): tweek to use new core, core_map and
   6585  	core.h.
   6586 
   6587 Wed Oct 11 12:10:26 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6588 
   6589 	* sim_calls.c, main.c: Add -g (trace_gdb) option, add tracing to
   6590  	most of the other functions in sim_calls.c.
   6591 
   6592 	* basics.h (CONCAT3), memory_map.c, memory_map_n.h, Makefile.in:
   6593  	Add macros to better cover up `generic' code.  Makes it possible
   6594  	to step through the generic code!
   6595 
   6596 	* vm.c, vm_n.h, Makefile.in: ditto
   6597 
   6598 Tue Oct 10 15:42:59 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6599 
   6600 	* devices.h, devices.c, memory_map.h, memory_map.c: Changed
   6601  	callback interface so that there is a read/write buffer but no
   6602  	read/write_word.  VEA default memory read/write handler sometimes
   6603  	couldn't resolve an access and of those some were for a memory
   6604  	fault and some were because gdb was making a bogus request.
   6605 
   6606 	* devices.h, devices.c, memory_map.h, memory_map.c, vm.h, vm.c:
   6607  	eliminate transfer_mode (raw or cooked) parameter from read/write
   6608  	buffer.
   6609 
   6610 Fri Oct  6 20:23:56 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6611 
   6612 	* ppc-instructions (fmul, fmuls): correct instruction format - had
   6613  	FRB instead of FRC.
   6614 
   6615 Wed Oct  4 17:31:12 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6616 
   6617 	* psim.c, device_tree.h, device_tree.c, devices.c (printd_*,
   6618  	scand_*): new functions to parse/print fields in device names
   6619  	while hiding any machine dependency.
   6620 
   6621 	* devices.c, psim.c: Change the stack init code so that it is
   6622  	handled by a device.  Arguments passed across using a device ioctl
   6623  	(hack).
   6624 
   6625 	* devices.h, devices.c: device ioctl callback changed to allow a
   6626  	variable number of arguments.  This gives greater flexability and
   6627  	greater chance of bugs.
   6628 
   6629 Tue Oct  3 22:01:56 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6630 
   6631 	* main.c (printf_filtered, error): Missing va_end() to close off
   6632         variable argument use.
   6633 
   6634 	* Makefile.in (tmp-gencode): comment out hack to get around some
   6635         versions of make not handling files being created as side-effects.
   6636 
   6637 	* gen.c (lf_open): Add -n (real_file_name) option.  Specifies an
   6638         alternative file name to use in output files for things like #line
   6639         macros.
   6640 
   6641         Makefile.in (tmp-gencode): Use gen -n so that debug info is
   6642         correct.
   6643 
   6644 	* Makefile.in (TARGETLIB): Use this instead of libsim.a in the
   6645 	Makefile.
   6646 
   6647 Sat Oct  7 22:40:59 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6648 
   6649 	* sim_calls.c (sim_set_callbacks): Define new function.
   6650 
   6651 Fri Oct  6 17:23:10 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6652 
   6653 	* psim.c (psim_print_info): Print exit status or signal number.
   6654 
   6655 Mon Oct  2 11:46:37 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6656 
   6657 	* cpu.c (struct _cpu): Add number_of_insns field to trace how many
   6658 	instructions are executed.
   6659 	(cpu_increment_number_of_insns): New function to increment the
   6660 	number of instructions issued.
   6661 	(cpu_get_number_of_insns): New function to return the number of
   6662 	instructions issued.
   6663 	(cpu_print_info): New function to print cpu related information.
   6664 	At present, print the number of instructions executed.
   6665 
   6666 	* gen_idecode_c: Emit call to cpu_increment_number_of_insns within
   6667 	idecode_issue.
   6668 
   6669 	* psim.c (psim_print_info): New function to iterate over each of
   6670 	the CPU's calling cpu_print_info.
   6671 
   6672 	* psim.h,cpu.h: Add new declarations.
   6673 
   6674 	* sim_calls.c (sim_open): Add argument processing to add the same
   6675 	switches main.c accepts for the standalone processor.
   6676 	(sim_close): Call psim_print_info if -I.
   6677 
   6678 	* main.c (main): Add comment saying to update sim_calls.c when
   6679 	adding switches.  Add -I to call psim_print_info when done.
   6680 	(usage): Update usage message.
   6681 
   6682 Sun Oct  1 13:52:59 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6683 
   6684 	* main.c (printf_filtered): Correct to match new prototype.
   6685 
   6686 Sat Sep 30 20:47:05 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6687 
   6688 	* sim_callbacks.h (printf_filtered): Correct prototype.
   6689 
   6690 Thu Sep 21 16:26:49 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6691 
   6692 	* device_tree.c (OEA_MEMORY_SIZE): Define if not defined to
   6693 	0x100000.
   6694 	(clayton_memory_size): Define as OEA_MEMORY_SIZE.
   6695 
   6696 	* std-config.h (WITH_TRACE): Default to 1 now.
   6697 
   6698 	* psim.c (write_stack_arguments): Don't write any stack arguments
   6699 	if OEA.
   6700 
   6701 	* main.c (main): Switch to using getopt.  Make -p also set
   6702 	trace_semantics.  Make -a turn on all trace flags.  Make -C turn
   6703 	on console tracing.
   6704 
   6705 	* device_tree.c (create_option_device_node): Assume a program is
   6706 	OEA if the start address is < 4096, not just == 0.
   6707 
   6708 Wed Sep 20 13:36:06 1995  Ian Lance Taylor  <ian (a] cygnus.com>
   6709 
   6710 	* Makefile.in (maintainer-clean): New synonym for realclean.
   6711 
   6712 Sun Sep 10 10:23:56 1995  Michael Tiemann  <tiemann (a] axon.cygnus.com>
   6713 
   6714 	* registers.c (register_description): Add gdb synonyms for cr
   6715 	(cnd) and msr (ps).
   6716 
   6717 Fri Sep  8 13:16:10 1995  Ian Lance Taylor  <ian (a] cygnus.com>
   6718 
   6719 	* Makefile.in (install): Don't install in $(tooldir).
   6720 
   6721 	* configure.in: Call AC_CONFIG_HEADER.  Don't try to use
   6722 	bfd/hosts/*.h file or bfd/config/*.mh file.  Call AC_PROG_CC and
   6723 	AC_PROG_RANLIB.  Substitute in values for CFLAGS, HDEFINES, AR,
   6724 	and CC_FOR_BUILD.  Call AC_CHECK_HEADERS for various header files.
   6725 	Touch stamp.h if creating config.h.
   6726 	* configure: Rebuild.
   6727 	* config.in: New file, created by autoheader.
   6728 	* Makefile.in (AR): Define as @AR@.
   6729 	(CC): New variable, defined as @CC@.
   6730 	(CFLAGS): Define as @CFLAGS@.
   6731 	(CC_FOR_BUILD): New variable, defined as @CC_FOR_BUILD@.
   6732 	(RANLIB): Define as @RANLIB@.
   6733 	(HDEFINES, TDEFINES): New variables.
   6734 	(@host_makefile_frag@): Remove.
   6735 	(mostlyclean): Make the same as clean, not distclean.
   6736 	(clean): Remove config.log.
   6737 	(distclean): Remove config.h and stamp-h.
   6738 	(Makefile): Don't depend upon @frags@.  Just rebuild Makefile when
   6739 	invoking config.status.
   6740 	(config.h, stamp-h): New targets.
   6741 	(gen, gen.o): Build with CC_FOR_BUILD, not CC.
   6742 	(ppc-config.h): Rename from old config.h build.
   6743 	* (basics.h,gen.c,ppc-endian.c,psim.c): Include ppc-config.h.
   6744 
   6745 Fri Sep  8 09:51:03 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6746 
   6747 	* configure{,.in}: Don't include sysdep.h from bfd, since bfd no
   6748 	longer provides it.
   6749 	* basics.h (sysdep.h): Don't include it.
   6750 	* Makefile.in (BASICS_H): Remove sysdep.h.
   6751 
   6752 Wed Sep  6 13:25:42 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6753 
   6754  	* core.c (core_add_data): First growth of bss was being put at
   6755         wrong address (0) instead of &end.
   6756 
   6757  	* core.c (core_add_stack, core_add_data): Was not handling case
   6758         where bss/stack is grown across the current end-of-{bss,stack}.
   6759 
   6760 Wed Sep  6 00:46:10 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6761 
   6762 	* system.c (system_call): Fix SYS_break - was aligning bss to a
   6763         page boundary instead of just an 8 byte one; On first call sbrk(0)
   6764         != sbrk(0).
   6765 
   6766 Thu Aug 24 14:48:54 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6767 
   6768 	* Makefile.in (install): Fix install rule.
   6769 
   6770 Tue Aug 22 09:31:18 1995  Michael Meissner  <meissner (a] tiktok.cygnus.com>
   6771 
   6772 	* system.c (system_call): Add read support.
   6773 
   6774 	* main.c (main): -t sets trace_device_tree.  Correct usage message
   6775 	to current reality.
   6776 
   6777 	* device_tree.c (update_memory_node_for_section): Make tracing
   6778 	output line up.  If not code or readonly, assume that the section
   6779 	is a data section and has read/write permissions.  Add readonly
   6780 	support.
   6781 
   6782 	* core.c (create_core_from_addresses): Print end address in traces
   6783 	and make tracing output line up.
   6784 
   6785 	* Makefile.in: Rewrite from Makefile to work with the Cygnus
   6786 	environment, and support compiling in a different directory than
   6787 	the sources reside in.
   6788 
   6789 	* ppc-endian.h: Rename from endian.h so that it doesn't get
   6790 	confused with /usr/include/sys/endian.h on Linux.  Add Linux
   6791 	endian support.
   6792 
   6793 	* ppc-endian.c: Rename to be consistant with ppc-endian.h.
   6794 	Include ppc-endian.h, not endian.h.
   6795 
   6796 	* basics.h (sysdep.h): Include sysdep.h that configure makes.
   6797 	Include ppc-endian.h, not endian.h.
   6798 
   6799 	* std-config.h: Rename from ppc-config.  Put #ifndefs around most
   6800 	configuration macros, so they can be overridden via CFLAGS.  By
   6801 	default, turn off tracing.
   6802 
   6803 	* configure.in: Clone from other simulator targets.
   6804 	* configure: Generate via autoconf from configure.in.
   6805 
   6806 Sat Aug 19 09:05:32 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6807 
   6808 	* ppc-instructions: fix srawi (was geting XER[CA] real wrong).
   6809 
   6810 	* interrupts.c (data_storage_interrupt): allow stack to grow by
   6811         upto one MB per increment.
   6812 
   6813 	* ppc-instructions: divw was computing rA / rA not rA / rB
   6814 
   6815 	* main.c (main): really stupid. Wasn't exiting with correct status
   6816 
   6817 Fri Aug 18 00:38:01 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6818 
   6819 	* system.c (system_call): add system calls kill(2) and getpid(2).
   6820 
   6821 	* main.c (main): Check/return exit status when simulation
   6822         finishes.
   6823 
   6824 Thu Aug 17 14:29:18 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6825 
   6826 	* device_tree.c (create_option_device_node): Alignment rules (at
   6827  	least for the moment) now are for strict alignment only for LE OEA
   6828  	mode.  (Because of compiler problems).
   6829 
   6830 	* system.c (system_call) SYS_exit: Wasn't exiting with correct status.
   6831 
   6832 Thu Aug 17 01:16:38 1995  Andrew Cagney  <cagney (a] highland.com.au>
   6833 
   6834 	* vm.c (DEFINE_VM_DATA_MAP_WRITE_N): For miss aligned transfer
   6835         forgot to return.
   6836 
   6837 	* system.c (system_call): didn't page align break argument before
   6838         determining increment break increment.
   6839 
   6840 	* psim/ppc: Re-arange entire directory structure so that
   6841         everything lives in the one directory.  While a pain for cleaning,
   6842         makes building across multiple architectures much simpler.
   6843 
   6844 	* devices.c, device_tree.c: Added code that provides a simple
   6845         illustration of how an interrupt control device could be
   6846         implemented.
   6847 
   6848 	* devices.c: Added code so that the dumb console device can read
   6849         (from stdin) as well as write to stdout.
   6850