Mark Alexander [Tue, 2 Jun 1998 22:43:46 +0000 (22:43 +0000)]
* interf.c (sim_open): Use revamped memory_read, which makes
byte-swapping unnecessary. Add -sparclite-board option for
emulating RAM found on typical SPARClite boards. Print
error message for unrecognized option.
* erc32.c: Change RAM address and size from constants to variables,
to allow emulation of SPARClite board RAM.
(fetch_bytes, store_bytes): New helper functions for revamped
mememory_read and memory_write.
(memory_read, memory_write): Rewrite to store bytes in target
byte order instead of storing words in host byte order; this
greatly simplifies support of little-endian programs.
(get_mem_ptr): Remove unnecessary byte parameter.
(sis_memory_write, sis_memory_read): Store words in target
byte order instead of host byte order.
(byte_swap_words): Remove, no longer needed.
* sis.h ((byte_swap_words): Remove declaration, no longer needed.
(memory_read): Add new sz parameter.
* sis.c (run_sim): Use revamped memory_read, which makes
byte-swapping unnecessary.
* exec.c (dispatch_instruction): Use revamped memory_read, which
makes byte-swapping and double-word fetching unnecessary.
* func.c (sparclite_board): Declare new variable.
(get_regi): Handle little-endian data.
(bfd_load): Recognize little-endian SPARClite as having
little-endian data.
* elflink.h (elf_merge_symbol): Don't always set type_change_ok
and size_change_ok.
(elf_link_add_object_symbols): Set type_change_ok and
size_change_ok before calling elf_merge_symbol.
From Matt Semersky <[email protected]>:
* macro.c (macro_mri_mode): New function.
* macro.h (macro_mri_mode): Declare.
* read.c (s_mri): Call macro_mri_mode when switching in and out of
MRI mode.
* ppc-opc.c (powerpc_macros): Support shifts and rotates of size
0; produce error message for shifts of size 32 (or 64 for 64-bit
shifts), because the hardware doesn't support them.
* elf32-ppc.c (ppc_elf_relocate_section): The target of an
R_PPC_LOCAL24PC relocation should be local; if not, print an error
message instead of crashing.
* config/tc-vax.c (md_create_short_jump): Fix off by two bug in
offset calculation. Also, use VAX_BRW from vax-inst.h instead
of hardcoded magic number.
(md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
Mark Alexander [Tue, 2 Jun 1998 09:19:54 +0000 (09:19 +0000)]
* sparc-tdep.c (sparc_target_architecture_hook): New function to
set endianness based on machine type.
(_initialize_sparc_tdep): Initialize target_architecture_hook.
(sparc_print_register_hook): Print PSR and FPSR in fancy format
on 32-bit machines.
* config/sparc/tm-sparc.h (PRINT_REGISTER_HOOK): Redefine to
call sparc_print_register_hook instead of using inline code.
* config/sparc/tm-sp64.h (PRINT_REGISTER_HOOK): Remove.
* armos.c (ARMul_OSHandleSWI::SWI_Open): Handle special case
of ":tt" to catch stdin in addition to stdout.
(ARMul_OSHandleSWI::SWI_Seek): Return 0 or 1 to indicate failure
or success of lseek().
From PR 15839, modified a bit by me to appease my sense of style--but
not too much because I am lazy.
* archures.c (bfd_mach_cpu32): Define.
(bfd_default_scan): Add case for 68060. Fix 68332 case to use
bfd_mach_cpu32.
* cpu-m68k.c (arch_info_struct): Add m68k:cpu32.
* ieee.c: Include <ctype.h>.
(ieee_object_p): Parse out process ID string to make it more
likely to be acceptable for bfd_scan_arch.
* bfd-in2.h: Rebuild.
Doug Evans [Mon, 1 Jun 1998 22:11:21 +0000 (22:11 +0000)]
* gas/all/gas.exp: Don't run `align' test for dvp-*-*.
* gas/macros/macros.exp: Don't run `semi' test for dvp-*-*.
* gas/dvp/align.[sd]: New testcase.
* gas/dvp/semi.[sd]: New testcase.
* Small TX39-only patch for ECC.
Mon Jun 1 18:18:26 1998 Frank Ch. Eigler <[email protected]>
* interp.c (decode_coproc): For TX39, add stub COP0 register #3,
to allay warnings.
* sky test suite fixes.
Mon Jun 1 18:54:22 1998 Frank Ch. Eigler <[email protected]>
* lib/sim-defs.exp (sim_run): Add possible environment variable
list to simulator run.
start-sanitize-sky
* sim/sky/sky-defs.tcl: Use it.
* sim/sky/t-pke2.vif1out: Update to match recent word-precise
tracking table change in sim/mips/sky-pke.c.
* sim/sky/t-pke3.trc: Ditto.
* sim/sky/t-pke4.vif0expect: Ditto.
end-sanitize-sky
Mon May 18 10:37:47 1998 Doug Evans <[email protected]>
Doug Evans [Sun, 31 May 1998 23:14:40 +0000 (23:14 +0000)]
* elf32-mips.c (_bfd_mips_elf_final_write_processing): Set sh_link
field of .DVP.ovlytab to .DVP.ovlystrtab's section index.
(_bfd_mips_elf_section_from_shdr): Recognize SHT_DVP_OVERLAY_TABLE
and SHT_DVP_OVERLAY.
(_bfd_mips_elf_fake_sections): Ditto.
* config/tc-vax.c (_): Delete this macro used for placeholder
values in vax_operand_width_size; it conflicts with the _() macro
used for internationalization.
Ian Lance Taylor [Fri, 29 May 1998 19:59:55 +0000 (19:59 +0000)]
Based on patch from Klaus Kaempf <[email protected]>:
* struc-symbol.h (struct broken_word): Add seg and subseg fields.
* read.c (emit_expr): Initialize seg and subseg fields of a new
broken word.
* write.c (write_object_file): Switch to the appropriate segment
and subsegment when processing a broken word.
Doug Evans [Thu, 28 May 1998 23:29:19 +0000 (23:29 +0000)]
* config/tc-dvp.h (ELF_TC_SPECIAL_SECTIONS): Add .vuoverlay_table.
(dvp_frob_file): Declare.
(tc_frob_file): Define.
(VUOVERLAY_SECTION_PREFIX,VUOVERLAY_TABLE_SECTION_NAME): New macros.
* config/tc-dvp.c (VUOVERLAY_START_PREFIX): New macro.
(vuoverlay_section_name,create_vuoverlay_section): New functions.
(vuoverlay_section,vuoverlay_table_section): New static globals.
(ovlysym_table): New static global.
(md_begin): Create .vuoverlay_table section.
(assemble_vif): Call create_vuoverlay_section for each mpg.
(dvp_frob_label): Record vu labels in ovlysym_table for later
movement from absolute section to their overlay section.
(dvp_frob_file): New function.
(md_apply_fix3): For 8/16/32/64 bit relocs, only process if fx_done.
Keith Seitz [Sun, 24 May 1998 21:05:12 +0000 (21:05 +0000)]
* ser-unix.c (wait_for): Do not reset timeout_remaining for cygwin32 so
that
we can use this member to track real timeouts.
(hardwire_readchar): Modify for cygwin32 so that we only ever use a real
system timeout of one second. Track the "real" timeout as a series of th
ese
one second timeouts.
Call ui_loop_hook to keep the gui alive.
* top.c: Define new hook for cygwin32, "ui_loop_hook".
* gdbtk.c (gdbtk_init): Add ui_loop_hook for CygWin32 to work around
update problems.
Peter Schauer [Sat, 23 May 1998 09:31:41 +0000 (09:31 +0000)]
* dwarf2read.c (read_subroutine_type): Set TYPE_FLAG_PROTOTYPED
on C++ functions.
* valops.c (value_arg_coerce): Add new argument to indicate whether
the function has a prototype, handle integer and float promotions
accordingly.
(call_function_by_hand): Always call value_arg_coerce, pass down
prototype information.