Stu Grossman [Tue, 7 Mar 1995 09:26:39 +0000 (09:26 +0000)]
* Makefile.in: Add rules for monitor.o and rom68k-rom.o to make
Sun make (with VPATH) work...
* monitor.c monitor.h rom68k-rom.c: Serious cleanup to make IDP
(rom68k) target work right.
* array-rom.c op50-rom.c w89k-rom.c: Partial updates to new
monitor.c interface. More work needs to be done here.
* config/m68k/tm-monitor.h: Change DECR_PC_AFTER_BREAK to 0 to
match the IDP monitor. Also, set NUM_REGS to 18 cuz there's no
floating-point for this card.
Stu Grossman [Tue, 7 Mar 1995 09:03:37 +0000 (09:03 +0000)]
* serial.h ser-go32.c ser-go32-para.c ser-mac.c ser-tcp.c
ser-unix.c: Add SERIAL_SETSTOPBITS to set the number of stopbits
(needed for IDP board?!?!?).
Jeff Law [Mon, 6 Mar 1995 17:04:18 +0000 (17:04 +0000)]
* hppa.h (delay_type): Delete unused enumeration.
(pa_opcode): Replace unused delayed field with an architecture
field.
(pa_opcodes): Mark each instruction as either PA1.0 or PA1.1.
Jeff Law [Mon, 6 Mar 1995 17:02:38 +0000 (17:02 +0000)]
* config/tc-hppa.c: Change all occurences of pa-89 with pa-11 to
be consistent with current naming conventions.
(md_begin): Set a default architecture and machine type.
(pa_ip): If the current instruction specifies a newer machine type
than the current machine type, then update the current machine
type.
(need_pa11_opcode): Likewise.
Jeff Law [Mon, 6 Mar 1995 17:00:18 +0000 (17:00 +0000)]
* cpu-hppa.c (arch_info_struct): Support both PA1.0 and PA1.1
machine types.
(bfd_hppa_arch): Link in both PA1.0 and PA1.1 architecture info
structures.
* libhppa.h (enum pa_arch): New enumeration to describe the
different variants of the PA architecture.
* som.c (som_object_setup): Use new enumeration to set machine
type.
(som_finish_writing): If the machine type is PA1.1, then use the
PA1.1 machine identifier in the output file.
Per Bothner [Sat, 4 Mar 1995 02:24:26 +0000 (02:24 +0000)]
* valops.c (value_cast): Cehck for cast to array type *before*
we coerce array to pointer (in case arg2 is already array).
* valops.c (call_function_by_hand): Set using_gcc to 2 if using
gcc2. Needed for REG_STRUCT_HAS_ADDR to work on sparc.
Also check REG_STRUCT_HAS_ADDR for union, array and string types.
* valops.c (call_function_by_hand): Re-arrange code for pushing
paramaters on the stack so we can do better STACK_ALIGN.
* valops.c (call_function_by_hand): Call error if the number
of arguments is fewer than parameter types in function type.
David Edelsohn [Sat, 4 Mar 1995 01:37:30 +0000 (01:37 +0000)]
* sparc-tdep.c (sparc_extract_struct_value_address): Move
sparc64 support to here.
(sparc64_extract_struct_value_address): Deleted.
(dump_ccreg): Add a prototype so long long arg -> int.
* sparc/tm-sp64.h (USE_STRUCT_CONVENTION): Define.
(EXTRACT_STRUCT_VALUE_ADDRESS): Delete.
Jeff Law [Sat, 4 Mar 1995 00:55:45 +0000 (00:55 +0000)]
* hpread.c (hpread_record_lines): New argument "offset". All
callers changed. Use it to handle dynamic address relocation.
(hpread_build_psymtabs): Adjust texthigh as we read each function
debug symbol. Fix computation of texthigh.
(hpread_read_subrange_type): Work around macro bugs in HP's
compilers.
(hpread_process_one_debug_symbol): Correctly map source lines.
* emultempl/elf32.em (hold_rel): New static variable.
(gld${EMULATION_NAME}_place_orphan): Place readonly sections with
contents whose names begin with ".rel" after hold_rel. Remove the
assertion which checked for unplaced .rel sections. Don't try to
sort the section into place if place->bfd_section is NULL.
(gld${EMULATION_NAME}_place_section): Set hold_rel to the first
section beginning with ".rel".
* binary.c: Add support for reading binary files. Loads the raw
contents of the file into a data section and wraps some symbols
around it. The symbols `_binary_<filename>_start' and
`_binary_<filename>_end' indicate the start and end of the data,
while `_binary_<filename>_size' is an absolute symbol whose value
is the size of the data. <filename> is the name of the binary
input file, with all non-alphanumeric characters converted to
underscores.
* archures.c (bfd_arch_get_compatible): Assume users knows what
they're doing if one of the architectures is bfd_arch_unknown.
Jim Kingdon [Thu, 2 Mar 1995 14:09:31 +0000 (14:09 +0000)]
* gdb.base/Makefile.in: Try compiling callfuncs.c, if that fails try
-DNO_PROTOTYPES.
* gdb.base/callfuncs.c: Control use of prototypes based on
NO_PROTOTYPES, not __STDC.
* gdb.base/callfuncs.exp (do_function_calls): xfail one of the
t_float_values2 tests if prototypes in use.
* gdb.base/callfuncs.c (t_float_values, t_float_values2,
t_double_values): When checking differences against DELTA, check
that difference is within the range (-DELTA,DELTA), not just
(-infinity,DELTA).
David Edelsohn [Thu, 2 Mar 1995 00:18:04 +0000 (00:18 +0000)]
Various changes for sparc64.
* sparc-tdep.c (NUM_SPARC_FPREGS): Define.
(SPARC_INTREG_SIZE): Define.
(*): Use SPARC_INTREG_SIZE instead of REGISTER_RAW_SIZE (intreg)
where appropriate.
(enum branch_type): New value `done_retry'.
(isbranch): Renamed from isannulled. All callers changed.
Support new sparc64 branch insns.
(single_step): Handle done_retry.
(sparc_extract_struct_value_address): Don't assume 4 byte regs.
(get_saved_register): Likewise.
(sparc_push_dummy_frame): Likewise.
(sparc_frame_find_saved_regs): Likewise.
(sparc_pop_frame): Likewise. Don't refer to FPS_REGNUM, CPS_REGNUM,
or PS_REGNUM if not sparc64. sparc64 has 64 fp regs.
(sparc64_extract_struct_value_address): New function.
(dump_ccreg, sparc_print_register_hook): Likewise.
* sp64-tdep.c: Deleted.
* sparc/tm-sp64.h (GDB_TARGET_IS_SPARC64): Define.
(NUM_REGS): Reduce by 2, cle/tle are in the pstate reg.
(CC_HAS_LONG_LONG): Define.
(REGISTER_NAMES): Delete cle/tle and reorganize.
(PS_REGNUM, FPS_REGNUM, CPS_REGNUM): Delete, they're ifdef'd out of
sparc-tdep.c now.
(REGISTER_BYTES): Update.
(REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Delete.
(EXTRACT_RETURN_VALUE): Delete. Use definition in tm-sparc.h.
(NO_SINGLE_STEP): Likewise.
* sparc/tm-sparc.h (EXTRACT_VALUE_RETURN): Don't assume 4 byte regs.
* sparc/sp64.mt: Move simulator support ...
* sparc/sp64sim.mt: ... to here.
Jim Kingdon [Wed, 1 Mar 1995 07:18:04 +0000 (07:18 +0000)]
* hppa-tdep.c (pa_print_registers), monitor.c: Use
extract_unsigned_integer and friends, not SWAP_TARGET_AND_HOST.
* defs.h, findvar.c: Move SWAP_TARGET_AND_HOST back to findvar.c.
Rename it to SWAP_FLOATING to make it clear it is no longer for
integers.
Kung Hsu [Wed, 1 Mar 1995 01:39:12 +0000 (01:39 +0000)]
* arc-tdep.c (_initialize_arc_tdep): set tm_print_insn according to
processor.
* remote-arc.c (arc_wait): when a processor stops, stop other two
processors too.
* remote-arc.c (switch_command): switch tm_print_insn.
Kung Hsu [Wed, 1 Mar 1995 00:35:09 +0000 (00:35 +0000)]
* config/mips-gdb.exp (gdb_load): In every test case, we need to do
'file' command firts, then 'target', then 'load', this is due to gdb
target set up.
* config/mips-gdb.exp: Fix a couple regular exp bugs.
Kung Hsu [Wed, 1 Mar 1995 00:01:49 +0000 (00:01 +0000)]
* a29k-tdep.c (get_longjmp_target): add this function, from WRS.
* remote-vx.c: move read_register and write_register out to
target specific files.
* remote-vx29k.c (get_fp_contnets): add this function, from WRS.
Ian Lance Taylor [Tue, 28 Feb 1995 17:54:37 +0000 (17:54 +0000)]
* config.bfd (i[345]86-*-linuxelf*): New target. Use i386-lelf.
(i[345]86-*-gnuelf*): New target. Use i386-gelf.
* config/i386-lelf.mt: New file.
* config/i386-gelf.mt: New file.
Ian Lance Taylor [Tue, 28 Feb 1995 17:44:35 +0000 (17:44 +0000)]
* configure.in (i[345]86-*-linuxelf*): New target. Use i386-lelf.
(i[345]86-*-gnuelf*): New target. Use i386-gelf.
* config/i386-lelf.mt: New file.
* config/i386-gelf.mt: New file.
Jeff Law [Thu, 23 Feb 1995 06:16:35 +0000 (06:16 +0000)]
* config/tc-hppa.c (md_apply_fix): Don't subtract the value of the
add symbol if it's a common symbol (the value of a common symbol
is its size, not a value in the traditional sense).