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).
Per Bothner [Fri, 17 Feb 1995 23:20:29 +0000 (23:20 +0000)]
* parse.c (follow_types): Given (TYPE[]) (i.e. with no length),
create a 0-length array type, and set BOUND_CANNOT_BE_DETERMINED.
* valops.c (value_cast): If a cast like (TYPE[])VALUE (i.e. array
of unknown length) use sizeof(VALUE)/sizeof(TYPE) as the length.
* c-typeprint.c (c_type_print_varspec_suffix): If array length
is 0, print it, but not if upper_bound is BOUND_CANNOT_BE_DETERMINED.
Ian Lance Taylor [Fri, 17 Feb 1995 19:21:24 +0000 (19:21 +0000)]
* objcopy.c (struct section_list): Add fields remove, set_flags,
and flags. Change adjust from boolean to enum.
(remove_sections): Remove static variable.
(sections_removed): New static variable.
(copy_options): Add --set-section-flags.
(copy_usage): Mention --set-section-flags.
(parse_flags): New static function.
(find_section_list): New static function.
(is_strip_symbol): Change return type from int to boolean.
(is_strip_section): New static function.
(filter_symbols): Call is_strip_section.
(copy_object): When adding sections, check for specified flags or
VMA. Call filter_symbols if any sections are being removed.
(setup_section): Use find_section_list function rather than
looking through remove_sections and adjust_sections. Handle
--set-section-flags.
(copy_section): Use find_section_list rather than looking through
remove_sections.
(strip_main): Use find_section_list instead of adding items to
sections_removed.
(copy_main): Use find_section_list instead of adding items to
sections_removed and adjust_sections. Handle --set-section-flags.
* binutils.texi, objcopy.1: Document --set-section-flags.
Ian Lance Taylor [Fri, 17 Feb 1995 18:35:40 +0000 (18:35 +0000)]
* hosts/sysv4.h: Include <unistd.h>, <stdlib.h>, and <time.h>.
Only define SEEK_SET and SEEK_CUR if they are not already defined.
Remove all external function declarations.
Ian Lance Taylor [Fri, 17 Feb 1995 16:57:18 +0000 (16:57 +0000)]
* coffgen.c (coff_real_object_p): Set start address and flags
before calling coff_mkobject_hook. Restore them on failure.
* ecoff.c (_bfd_ecoff_mkobject_hook): If not ECOFF_AOUT_ZMAGIC,
clear D_PAGED.
PR 6341.
J.T. Conklin [Thu, 16 Feb 1995 18:41:54 +0000 (18:41 +0000)]
* Makefile.in, gdb.{base,c++,chill}/Makefile.in (GDB, GDBFLAGS):
Removed, these values are set by lib/gdb.exp.
* lib/gdb.exp: If GDBFLAGS is unset, set it to -nx.
J.T. Conklin [Thu, 16 Feb 1995 00:44:43 +0000 (00:44 +0000)]
* config/mt-vxworks (LDFLAGS): Set to -r.
(CFLAGS_FOR_TARGET): Removed.
* config/vx-gdb.exp: always set prompt; gdb.exp sets it to
(gdb) and gdb for vxworks uses (vxgdb).
J.T. Conklin [Thu, 16 Feb 1995 00:35:53 +0000 (00:35 +0000)]
* Makefile.in, gdb.{base,c++,chill}/Makefile.in (GDB): If a gdb
executable is not in the tree and host != target, use sed and
program_transform_name to determine the gdb name used by the
target.
J.T. Conklin [Wed, 15 Feb 1995 22:01:50 +0000 (22:01 +0000)]
* all-cfg.texi: New flag, GDBSERVE, for NetWare's gdbserve.nlm.
* remote.texi (NetWare): New node, how to use gdbserve.nlm on
NetWare targets. Mostly stolen from the Server node.
Stu Grossman [Wed, 15 Feb 1995 01:45:39 +0000 (01:45 +0000)]
* annotate.c, breakpoint.c, defs.h, gdbtk.c, top.c: Replace
enable/disable_breakpoint_hook with modify_breakpoint_hook.
* gdbtk.c: General cleanups, get rid of unused variables. Redo
handling of stdout/stderr to just return output as the result of
the tcl command that caused the output. Cleanup -Wall stuff.
* (breakpoint_notify): Now returns just action and breakpoint
number.
* (gdb_get_breakpoint_list): New routine. Does the obvious.
* (gdb_get_breakpoint_info): Mostly derived from the old
breakpoint_notify, but returns lots more info.
* (dsprintf_append_element): Helper routine, works like printf,
but appends a tcl element onto the specified DString. Good for
building up lists as return values.
* (gdbtk_enable/disable_breakpoint): Go away. Replaced with
gdbtk_modify_breakpoint.
* (*many routines*): Use new result protocol.
* (call_wrapper): Make sure that recursive calls don't trash results.
* gdbtk.tcl: New windows, autocmd, and breakpoints.
* (gdbtk_tcl_fputs): Don't use $current_output_win redirection
anymore. It's not needed (in fact, this routine may not be needed
anymore).
* (gdbtk_tcl_breakpoint): Change to reflect new breakpoint
notification protocol.
* (gdbtk_tcl_busy gdbtk_tcl_idle): Straighten out buttons, remove
catches.
* (interactive_cmd): Use this wrapper around button invocations
of many commands. This will catch errors and put the results into
the command window. It also updates all the other windows.
* Also, change reliefs of most things to sunken. This actually
looks better.
* (create_file_win): Fix margin binding to allow breakpoints to
work again.
* (create_asm_win): Use return value of gdb_disassemble instead
of implicit I/O to the command window.
* (create_command_window): Use new result protocol to get output
from commands.
* ecoff.c (_bfd_ecoff_swap_tir_in): Move to ecofflink.c.
(_bfd_ecoff_swap_tir_out): Likewise.
(_bfd_ecoff_swap_rndx_in): Likewise.
(_bfd_ecoff_swap_rndx_out): Likewise.
(cmp_fdrtab_entry): Likewise.
(mk_fdrtab): Likewise.
(lookup): Likewise.
(_bfd_ecoff_find_nearest_line): Just call _bfd_ecoff_locate_line
to do most of the work. Allocate find_line_info if necessary.
* ecofflink.c: Include "aout/stab_gnu.h".
(_bfd_ecoff_swap_tir_in): Move in from ecoff.c.
(_bfd_ecoff_swap_tir_out): Likewise.
(_bfd_ecoff_swap_rndx_in): Likewise.
(_bfd_ecoff_swap_rndx_out): Likewise.
(cmp_fdrtab_entry): Likewise. Use PTR instead of void *.
(mk_fdrtab): Move in from ecoff.c. Add debug_info, debug_swap,
and line_info arguments, and use them instead of ecoff_data.
(fdrtab_lookup): Move in from lookup in ecoff.c. Remove abfd
argument, add line_info argument. Use it instead of ecoff_data.
(_bfd_ecoff_locate_line): New function, mostly from the old
_bfd_ecoff_find_nearest_line in ecoff.c.
* libecoff.h (ecoff_data_type): Remove find_buffer, fdrtab_len and
fdrtab fields, replacing them find_line_info field.
(_bfd_ecoff_swap_tir_in): Declare.
(_bfd_ecoff_swap_tir_out): Declare.
(_bfd_ecoff_swap_rndx_in): Declare.
(_bfd_ecoff_swap_rndx_out): Declare.
* libbfd-in.h (_bfd_ecoff_locate_line): Declare.
* libbfd.h: Rebuild.
* configure.in: Don't use ecoff.o for bfd_elf32_bigmips_vec or
bfd_elf32_littlemips_vec.
* Makefile.in: Rebuild dependencies.
Ian Lance Taylor [Tue, 14 Feb 1995 17:49:30 +0000 (17:49 +0000)]
* aoutf1.h (MACHTYPE_OK): Don't define if already defined. Don't
accept M_SPARC if bfd_arch_sparc is not in the list of supported
architectures, and don't accept a 680x0 machine type if
bfd_arch_m68k is not in the list of supported architectures.
* aout0.c (MACHTYPE_OK): Define.
Ian Lance Taylor [Tue, 14 Feb 1995 04:27:39 +0000 (04:27 +0000)]
* aoutx.h (NAME(aout,swap_ext_reloc_in)): Don't return a pointer
to garbage if the symbol index is out of range.
(NAME(aout,swap_std_reloc_in)): Likewise.
Ian Lance Taylor [Mon, 13 Feb 1995 21:18:22 +0000 (21:18 +0000)]
* config/tc-sparc.h (tc_fix_adjustable): Define if OBJ_ELF.
* config/tc-sparc.c (md_apply_fix): If OBJ_ELF, subtract out the
value of a defined symbol; the value was added in by
fixup_segment. This was previously corrected, if the reloc was
changed to be against a section symbol, in tc_gen_reloc.
Ian Lance Taylor [Mon, 13 Feb 1995 19:04:05 +0000 (19:04 +0000)]
Revert this patch, since it breaks linking PIC code with no dynamic
objects:
* elfcode.h (elf_bfd_final_link): Add assertion to make sure that
dynamic and dynobj are in synch.
Stan Shebs [Mon, 13 Feb 1995 00:26:39 +0000 (00:26 +0000)]
* remote-e7000.c: Comprehensive cleanup; removal of dead code,
simplify code, declare things, format to standards.
(inferior.h, value.h, command.h, remote-utils.h): Include.
(e7000_login): Rename to e7000_login_command.
(e7000_ftp): Rename to e7000_ftp_command.
(e7000_drain): Rename to e7000_drain_command.
Per Bothner [Sun, 12 Feb 1995 19:21:04 +0000 (19:21 +0000)]
* language.h (struct language_defn): New field evaluate_exp.
* c-lang.c (c_language_defn, cplus_language_defn, asm_langauge_defn),
f-lang.c (f_language_defn), language.c (unknown_language_defn,
auto_language_defn, local_language_defn), m2-lang.c (m2_language_defn):
Set evaluate_exp to evaluate_subexp_standard.
* ch-lang.c (evaluate_subexp_chill): New function. Chill-specific
support for MULTI_SUBSCRIPT.
(chill_language_defn): Set evaluate_exp to evaluate_subexp_chill.
* eval.c (enum noside): Move from here ....
* expression.h (enum noside): ... to here.
(evaluate_subexp_standard): New prototype.
* eval.c (evaluate_subexp): Renamed to evaluate_subexp_standard.
Removed lo-longer-needed test for chill_varying_type.
(evaluate_subexp): New. Calls exp->language_defn->evaluate_exp.
Per Bothner [Sun, 12 Feb 1995 18:46:45 +0000 (18:46 +0000)]
* buildsym.c (finish_block): If finishing a function without known
parameter type info, set that from parameter symbols.
* c-typeprint.c (c_type_print_varspec_suffix): For TYPE_CODE_FUNC,
print parameter types, if available.
* ch-typeprint.c (chill_type_print_base): Likewise.
* gdbtypes.h (struct type): Remove function type field.
(TYPE_FUNCTION_TYPE): Remove macro. We can't as simply re-use
function types now that we're also storing parameter types.
And the payoff is much less.
* gdbtypes.c (make_function_type): Don't use/set TYPE_FUNCTION_TYPE.
(recursive_dump_type): Don't print TYPE_FUNCTION_TYPE.
* dwarfread.c (read_subroutine_type): Don't set TYPE_FUNCTION_TYPE.
Jim Kingdon [Sun, 12 Feb 1995 17:55:09 +0000 (17:55 +0000)]
* gdb.base/langs.exp, gdb.base/langs*: New test.
* gdb.base/Makefile.in: Build it.
* TODO: Remove item about checking that C names don't get C++
demangling applied; this test tests it.