Jeff Law [Fri, 11 Jul 1997 16:40:14 +0000 (16:40 +0000)]
* config/tc-mips.c (macro_build): Refine code to check if an
instruction is available on a particular cpu variant.
(mips_ip): Likewise.
toshiba 5900 stuff
Jeff Law [Fri, 11 Jul 1997 16:13:42 +0000 (16:13 +0000)]
* mips-opc.c (mips_builtin_opcodes): If an insn uses single
precision FP, mark it as such. Likewise for double precision
FP. Mark ISA1 insns. Consolidate duplicate opcodes where
possible.
(mips_builtin_opcodes): Remove non-existant r5900 instructions
toshiba_5900 stuff
Jeff Law [Fri, 11 Jul 1997 16:12:56 +0000 (16:12 +0000)]
* mips.h (FP_S, FP_D): Define. Bitmasks indicating if an insn
uses single or double precision floating point resources.
(INSN_NO_ISA, INSN_ISA1): Define.
(cpu specific INSN macros): Tweak into bitmasks outside the range
of INSN_ISA field.
toshiba_5900 stuff
Martin Hunt [Thu, 10 Jul 1997 07:15:26 +0000 (07:15 +0000)]
Thu Jul 10 00:02:41 1997 Martin M. Hunt <hunt@cygnus.com>
* Makefile.in, configure.in, aclocal.m4: Add Itcl, Tix, and
IDE configuration information.
* gdbtk.c (breakpoint_notify): Send address, linenumber and
filename when a breakpoint is set. Avoids call to bp_info.
(gdbtk_init): Call Tcl_FindExecutable(). Add code to handle
Itcl, Tix and IDE initialization.
* defs.h (init_ui_hook): Change prototype to accept one arg.
* main.c (gdb_init): Change prototype to accept one arg.
* top.c (gdb_init): Accepts one argument which it uses to
call (*init_ui_hook), which will be gdbtk_init(). This is
used for calling Tcl_FindExecutable().
* gdbtcl/breakpoint.tcl (gdbtk_tcl_breakpoint): Change to
accept variable number of args for compatibility with
cchanges in gdbtk.c.
Fred Fish [Wed, 9 Jul 1997 00:19:41 +0000 (00:19 +0000)]
* coffcode.h (coff_write_object_contents): Initialize
target id field to TIC80_TARGET_ID.
* coffswap.h (coff_swap_filehdr_out): Swap out target id field
if used.
(coff_swap_filehdr_in): Swap in target id field if used.
* config/tc-i386.c (tc_i386_fix_adjustable): Change ifndef
OBJ_AOUT to ifdef OBJ_ELF.
(md_apply_fix3): When mangling 32 bit PC relative reloc for
BFD_ASSEMBLER, handle one ELF case for COFF as well, and add a PE
case.
* write.c (fixup_segment): Change special case for i386-coff to
not apply for i386-pe.
* config/obj-coff.c (coff_adjust_section_syms): Only count fixups
which were not done.
(coff_frob_file_after_relocs): Rename from coff_frob_file.
(coff_format_ops): Initialize frob_file_after_relocs field rather
than frob_file field.
* config/obj-coff.h (coff_frob_file): Don't declare.
(coff_frob_file_after_relocs): Declare.
(obj_frob_file): Don't define.
(obj_frob_file_after_relocs): Define.
* configure.in: Set bfd_gas to yes for i386-*-cygwin32.
* configure: Rebuild.
* coff-i386.c (coff_i386_is_local_label_name): New static function
if TARGET_UNDERSCORE.
(coff_bfd_is_local_label_name): Define if TARGET_UNDERSCORE.
(i386coff_vec): Add SEC_CODE and SEC_DATA to section_flags.
From Manfred Hollstein <manfred@s-direktnet.de>:
* configure.host (i[3456]86-*-linux*libc1*): Renamed from
i[3456]86-*-linux*.
(i[3456]86-*-linux*): New host.
* source.c (OPEN_MODE, FDOPEN_MODE): Define; value depends upon
whether CRLF_SOURCE_FILES is defined.
(open_source_file): Use OPEN_MODE with open and openp.
(print_source_lines): Use FDOPEN_MODE with fdopen. If
CRLF_SOURCE_FILES is defined, ignore \r characters.
(forward_search_command): Use FDOPEN_MODE with fdopen.
(reverse_search_command): Likewise.
* config/i386/xm-cygwin32.h (CRLF_SOURCE_FILES): Define.
(LSEEK_NOT_LINEAR): Don't define.
* Makefile.in (INSTALL_PROGRAM_ARGS): New variable.
(INSTALL_PROGRAM): Use $(INSTALL_PROGRAM_ARGS).
(INSTALL_SCRIPT): New variable.
(BASE_FLAGS_TO_PASS): Pass down INSTALL_SCRIPT.
* configure.in: If host is *-*-cygwin32*, set INSTALL_PROGRAM_ARGS
to -x.
* install-sh: Add support for -x option.
Bob Manson [Fri, 4 Jul 1997 01:04:45 +0000 (01:04 +0000)]
* lib/gdb.exp(get_debug_format): Don't cause the testsuite to fail
if we can't get a debug format from GDB (we may be testing an
older GDB). Use a 10 second timeout when checking for the format.
Ian Lance Taylor [Mon, 30 Jun 1997 16:38:17 +0000 (16:38 +0000)]
From Jason Merrill <jason@cygnus.com>:
* read.c (do_align): If BFD_ASSEMBLER, only use NOP_OPCODE if
SEC_CODE is set.
* config/tc-i386.h (md_maybe_text): Define.
(md_do_align): Use md_maybe_text.
Bob Manson [Mon, 30 Jun 1997 04:24:17 +0000 (04:24 +0000)]
* gdb.base/overlays.exp: Preliminary fixes; temporarily disabled
until it has been modified to work with the new testsuite.
* gdb.*/*.exp: Instead of causing 1 unresolved test when the
testcase won't compile, cause all of the testcases in the file to
fail instead.
* lib/gdb.exp(gdb_suppress_entire_file): New procedure.
(gdb_clear_suppressed): New procedure.
(gdb_stop_suppressing_tests): Only clear suppress_flag if
it contains a positive value.
Fred Fish [Sat, 28 Jun 1997 06:10:06 +0000 (06:10 +0000)]
* buildsym.h (struct subfile): Add debugformat member.
(record_debugformat): Declare global function.
* buildsym.c (start_subfile): Initialize debugformat member
to NULL.
(record_debugformat): New function to record the format.
(end_symtab): Copy format into symtab debugformat member.
(end_symtab): Free subfile debugformat member.
* symmisc.c (free_symtab): Free debugformat when freeing
symtab.
* symfile.c (allocate_symtab): Initialize the new debugformat
member for new symtabs.
* symtab.h (struct symtab): Add debugformat member.
* source.c (source_info): Print the debug format.
* os9kread.c (os9k_process_one_symbol): Call record_debugformat
with "OS9".
* hpread.c (hpread_expand_symtab): Call record_debugformat
with "HP".
(hpread_process_one_debug_symbol): Ditto.
* dbxread.c (process_one_symbol): Call record_debugformat
with "stabs".
* coffread.c (coff_start_symtab): Call record_debugformat
with "COFF".
* xcoffread.c (read_xcoff_symtab): Call record_debugformat
with "XCOFF".
* dwarfread.c (read_file_scope): Call record_debugformat
with "DWARF 1".
* dwarf2read.c (read_file_scope): Call record_debugformat
with "DWARF 2".
* dstread.c (dst_end_symtab): Set debugformat to be
"Apollo DST".
* mdebugread.c (new_symtab): Set debugformat to be "ECOFF".
Fred Fish [Sat, 28 Jun 1997 06:03:43 +0000 (06:03 +0000)]
* lib/gdb.exp (setup_xfail_format): New function.
(get_debug_format): New function to get debug format.
(debug_format): New global variable to hold last value set
by get_debug_format.
* gdb.base/list.exp: Call get_debug_format and expect some
tests to fail for DWARF 1 and COFF formats.
* gdb.c++/ptype.exp: Ditto.
* gdb.c++/classes.exp: Ditto.
* gdb.c++/cplusfuncs.exp: Ditto.
* gdb.c++/inherit.exp: Ditto.
* gdb.c++/templates.exp: Ditto.
* gdb.c++/virtfunc.exp: Ditto.
Ian Lance Taylor [Thu, 26 Jun 1997 18:00:57 +0000 (18:00 +0000)]
* Makefile.in (WINDRES): New variable.
(WINDRES_FOR_TARGET): New variable.
(BASE_FLAGS_TO_PASS): Add WINDRES_FOR_TARGET.
(EXTRA_HOST_FLAGS): Add WINDRES.
(EXTRA_TARGET_FLAGS): Add WINDRES.
(EXTRA_GCC_FLAGS): Add WINDRES.
($(DO_X)): Pass down WINDRES.
($(CONFIGURE_TARGET_MODULES)): Set WINDRES when configuring.
* configure: Treat WINDRES like DLLTOOL, and WINDRES_FOR_TARGET like
DLLTOOL_FOR_TARGET.
Ian Lance Taylor [Thu, 26 Jun 1997 17:53:57 +0000 (17:53 +0000)]
* windres.c (main): Quit if we didn't get any resources.
* rescoff.c (write_coff_file): Don't free the relocation array
until after we've closed the BFD.
Ian Lance Taylor [Thu, 26 Jun 1997 16:06:03 +0000 (16:06 +0000)]
* elflink.h (elf_link_add_object_symbols): When a version
indirection symbol is overridden, make the original symbol point
at the real overriding symbol.
Ian Lance Taylor [Thu, 26 Jun 1997 05:27:56 +0000 (05:27 +0000)]
* elflink.h (elf_link_output_extsym): Use the right section for a
common symbol.
* elf32-mips.c (mips_elf_link_output_symbol_hook): If a common
symbol was in .scommon, mark it as SHN_MIPS_SCOMMON.
PR 12697.
Felix Lee [Wed, 25 Jun 1997 22:35:14 +0000 (22:35 +0000)]
* ppc-opc.c (extract_nsi): make unsigned expression signed before
negating it.
(UNUSED): remove one level of parens, so MSVC doesn't choke on
nesting depth when all the macros are expanded.
Bob Manson [Wed, 25 Jun 1997 16:29:59 +0000 (16:29 +0000)]
* lib/gdb.exp(default_gdb_exit): Don't give an error if the remote
host doesn't have a currently-open connection.
* config/sparclet.exp: Cleanups and fixes to make it generic for
any gdb stub target. Handle cases where gdb doesn't respond when
interrupted in a sane fashion.
* config/m32r.exp: Load sparclet.exp instead of trying to do the
same thing in a totally different way.
* config/monitor.exp: Pass in timeouts to gdb_expect instead of
setting "timeout".
(gdb_start): We set the global gdb_prompt variable in
default_gdb_init now.
Jeff Law [Tue, 24 Jun 1997 19:45:17 +0000 (19:45 +0000)]
* interp.c (sim_resume): Clear State.exited.
(sim_stop_reason): If State.exited is nonzero, then indicate that
the simulator exited instead of stopped.
* mn10300_sim.h (struct _state): Add exited field.
* simops.c (syscall): Set State.exited for SYS_exit.
Ian Lance Taylor [Tue, 24 Jun 1997 02:28:03 +0000 (02:28 +0000)]
* elflink.h (elf_merge_symbol): In the case of a new defined
symbol overriding an old defined symbol, return the hash table
entry which we modify, even if it is the target of an
indirection.
(elf_link_add_object_symbols): If the real name of the symbol gets
overridden, convert the versioned symbol into an indirect symbol
to the real symbol.
Ian Lance Taylor [Sun, 22 Jun 1997 23:41:55 +0000 (23:41 +0000)]
* coff-i386.c (i3coff_object_p): If COFF_IMAGE_WITH_PE, hack to
handle case where COFF filehdr does not immediately follow PE
header.
* coffgen.c (coff_object_p): Remove useless seek to current
location.
Ian Lance Taylor [Sun, 22 Jun 1997 21:35:35 +0000 (21:35 +0000)]
First stab at Windows resource compiler:
* windres.h: New file.
* windres.c: New file.
* resrc.c: New file.
* rcparse.y: New file.
* rclex.l: New file.
* configure.in: Define and substitute BUILD_WINDRES.
* configure: Rebuild.
* Makefile.in: Rebuild dependencies.
(WINDRES_PROG): New variable.
(PROGS): Add @BUILD_WINDRES@.
(HFILES): Add dlltool.h and windres.h.
(CFILES): Add windres.c and resrc.c.
(GENERATED_CFILES): Add rcparse.c and rclex.c.
(WINDRES_OBJS): New variable.
$(WINDRES_PROG): New target.
(rcparse.c, rcparse.h, rclex.c): New targets.
Snapshot. windres can parse and print rc files.
Fred Fish [Wed, 18 Jun 1997 21:38:57 +0000 (21:38 +0000)]
* dwarfread.c (isreg, optimized_out, offreg, basereg): Move
global variables into the struct dieinfo structure.
(locval): Pass pointer to a dieinfo struct rather than a
pointer to the raw location information. Change prototype.
Set isreg, optimized_out, offreg and basereg as appropriate.
(struct_type): Call locval with dieinfo struct pointer.
(new_symbol): Ditto.
(new_symbol): Call locval and save location before testing
the values of the new dieinfo struct flags, set by locval.
Ian Lance Taylor [Wed, 18 Jun 1997 15:36:33 +0000 (15:36 +0000)]
* elflink.h (elf_link_add_object_symbols): Don't let a common
symbol in a regular object override a common symbol in a shared
object if the latter was found via an indirect symbol.
Ian Lance Taylor [Tue, 17 Jun 1997 21:03:18 +0000 (21:03 +0000)]
* sparc-opc.c: The fcmp v9a instructions take an integer register
as a destination, not a floating point register. From Christian
Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>.
Peter Schauer [Tue, 17 Jun 1997 20:33:18 +0000 (20:33 +0000)]
* procfs.c (proc_set_exec_trap, procfs_init_inferior, procfs_wait,
unconditionally_kill_inferior): Undo Oct 26 1996 and Apr 26 1997
changes to trace PRFS_STOPTERM and handle PR_DEAD.
These changes tried to work around a problem with an early DU 4.0
release, but they trigger subtle timing dependent kernel bugs
in older OSF/1 releases.
Ian Lance Taylor [Tue, 17 Jun 1997 15:56:09 +0000 (15:56 +0000)]
* cofflink.c (_bfd_coff_link_input_bfd): If stripping debugging
symbols, skip N_ABS symbols with debugging storage classes.
PR 12630.
Also a couple of warning and formatting fixes.
Mark Alexander [Tue, 17 Jun 1997 02:11:42 +0000 (02:11 +0000)]
* infrun.c (wait_for_inferior): Mark registers as invalid when
stepping over an instruction that triggered a watchpoint.
* remote-mips.c: Numerous changes to support hardware breakpoints
and watchpoints on LSI MiniRISC and TinyRISC boards.
* mips-tdep.c: Move MIPS16-related macros to config/mips/tm-mips.h.
(mips_breakpoint_from_pc): Account for different breakpoint
instructions used by PMON and IDT monitor.
* config/mips/tm-embed.h: Enable hardware breakpoints on embedded
MIPS targets.
* config/mips/tm-mips.h: Define breakpoint instructions for
PMON and IDT monitor. Move MIPS16-related macros here from
mips-tdep.c.
Bob Manson [Tue, 17 Jun 1997 00:08:20 +0000 (00:08 +0000)]
* lib/gdb.exp: Close connection to remote host if gdb doesn't
initialize.
(default_gdb_init): New procedure; allow gdb_init to be overridden
by a target configuration file.
(gdb_expect): Pass the timeout to remote_expect.
* lib/remote.exp(remote_expect): Add timeout parameter.
(remote_wait): Ditto.
(standard_wait): Ditto. Also give up if the program outputs
more than 512,000 bytes.
* scripttempl/elfppc.sc: Put the PLT between the small and large
BSS segments.
* emulparams/elf32ppc.sh (TEXT_START_ADDR): The ABI says `A
program base of 0x02000000 is recommended...' because otherwise
shared libraries are less efficient. We use 0x01800000 because
otherwise it's impossible to branch to location 0, for instance if
you have an undefined weak symbol.
Ian Lance Taylor [Mon, 16 Jun 1997 23:17:22 +0000 (23:17 +0000)]
Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
* config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
calculate relocations to any external symbol, because we might be
linking a shared object and the symbol might be overriden or moved
(for instance, moved into a static executable's .bss section).
(GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.
* config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
be calculated by the assembler.
* config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
whose destination lies in the same file, by ignoring the @plt or
@local and aiming the branch at its destination.