Commit graph

10109 commits

Author SHA1 Message Date
Ian Lance Taylor
ba436e33cd * elfcode.h (write_relocs): Undo patch of Apr 10; breaks Solaris. 1994-04-25 19:52:15 +00:00
Ian Lance Taylor
2e03ce1861 * elfcode.h (bfd_section_from_shdr): Use bfd_make_section_anyway
to create sections.  Check return value of recursive calls.
	(bfd_section_from_phdr): Check return value of bfd_make_section.
	(elf_symbol_from_bfd_symbol): Likewise.
	(elf_object_p): Check return value of bfd_section_from_shdr.
	(section_from_elf_index): Likewise.
	(elf_slurp_symbol_table): Check return value of
	section_from_elf_index.
	(bfd_prstatus): Return boolean value.  Check return value of
	bfd_make_section.
	(bfd_fpregset): Likewise.
	(bfd_prpsinfo): Return boolean value.
	(elf_corefile_note): Check return values of bfd_prstatus,
	bfd_fpregset, and bfd_prpsinfo.
	(elf_core_file_p): Check return value of elf_corefile_note.
1994-04-25 19:36:51 +00:00
Ian Lance Taylor
feaa9c4bda * ldlang.c (lang_size_sections): When no address is given for a
section, align it according to its requirements.
1994-04-25 19:28:58 +00:00
Jeff Law
f38cd6ec95 * config/tc-hppa.c (pa_ip): 13 bit immediate constant (for break
instruction) is unsigned.
1994-04-24 07:13:52 +00:00
Jim Kingdon
fdb81aa1e2 * breakpoint.c (breakpoint_1): Annotate each field of output. Add
FIXME-32x64 comment.
1994-04-24 02:07:53 +00:00
Jim Kingdon
d084c93fe2 * infrun.c (wait_for_inferior): Move call to flush_cached_frames
to after call to target_wait.  This means that flush_cached_frames
	can call target_terminal_ours if it wants to.
	* infrun.c (wait_for_inferior) [HAVE_NONSTEPPABLE_WATCHPOINT]: Add
	comment about why the code is dubious.
1994-04-23 03:00:04 +00:00
Jim Kingdon
0a2e98a99e * stabsread.c (read_type): Call read_type, not nonexistent
os9k_read_type.
1994-04-22 23:49:51 +00:00
Ian Lance Taylor
f645a4bf38 * nlmconv.c (setup_sections): Remove special handling of .reginfo
section.
	(copy_sections): Likewise.
	(alpha_mangle_relocs): Use bfd_ecoff_get_gp_value rather than the
	special ECOFF .reginfo section.
1994-04-22 22:13:23 +00:00
Ian Lance Taylor
92867d8efa * config/obj-ecoff.c (ecoff_frob_file): Use bfd_ecoff_set_gp_value
and bfd_ecoff_set_regmasks to set the GP value and the register
	masks, rather than using the now obsolete fake .reginfo section.
1994-04-22 22:09:44 +00:00
Ian Lance Taylor
cc71e155b6 Get rid of the ECOFF .reginfo section hack.
* ecoff.c (ecoff_mkobject_hook): Don't create a .reginfo section.
	(ecoff_new_section_hook): Don't handle the .reginfo section.
	(ecoff_sizeof_headers): Likewise.
	(ecoff_get_section_contents): Likewise.
	(ecoff_compute_section_file_positions): Likewise.
	(ecoff_compute_reloc_file_positions): Likewise.
	(ecoff_set_section_contents): Likewise.
	(ecoff_write_object_contents): Likewise.
	(ecoff_bfd_final_link): Likewise.
	(ecoff_bfd_copy_private_bfd_data): Copy the GP value and the
	register masks.
	(bfd_ecoff_get_gp_value): New function.
	(bfd_ecoff_set_gp_value): New function.
	(bfd_ecoff_set_regmasks): New function.
	* bfd-in.h (bfd_ecoff_get_gp_value): Declare.
	(bfd_ecoff_set_gp_value): Declare.
	(bfd_ecoff_set_regmasks): Declare.
	* bfd-in2.h: Rebuilt.
1994-04-22 22:09:25 +00:00
Kung Hsu
d5336fc5a4 Modified Files:
ChangeLog remote-os9k.c os9kread.c stabsread.c

        * remote-os9k.c (rombug_fetch_registers): set trace mode
        correctly.
        * remote-os9k.c (rombug_read_inferior_memory): cache data in
        buffer.
        * os9kread,c (read_os9k_psymtab): process file symbol to truncate
        extra info.
        * os9kread.c (os9k_read_ofile_symtab): proper casting of args
        passed to process_one_symbol.
        * stabsread.c (read_type): process os9k functio prototype.
1994-04-22 21:36:59 +00:00
Ken Raeburn
988238d380 * config/obj-coff.c (obj_symbol_new_hook): Don't need to strip underscores,
since symbol_new will already have done it.
* config/obj-coffbfd.c (obj_symbol_new_hook): Ditto.
1994-04-22 20:39:01 +00:00
Ken Raeburn
e860dfd0e5 * listing.c (list_symbol_table): Don't print register symbols as undefined. 1994-04-22 20:36:39 +00:00
Ian Lance Taylor
1bb42b1f2b Fix ECOFF objcopy to actually copy debugging information.
* ecoff.c (ecoff_bfd_copy_private_bfd_data): New function.
	(ecoff_get_extr): Assume that any ECOFF symbol with local clear is
	an external symbol, rather than checking the symbol flags.  Only
	check the flags for non-ECOFF symbols.
	* ecofflink.c (bfd_ecoff_debug_externals): Don't crash if the
	output_section field of the symbol section is NULL.
	* libecoff.h (ecoff_bfd_copy_private_bfd_data): Declare as
	function rather than defining as macro.
1994-04-22 20:32:51 +00:00
Ian Lance Taylor
45f82cf72a * objcopy.c (copy_object): Call bfd_copy_private_bfd_data after
copying everything else, to let it fiddle with the file in its
	final state.
1994-04-22 20:27:30 +00:00
Jim Kingdon
f5a0908f3b * solib.c (symbol_add_stub): If so->textsection is NULL, don't
dump core.
1994-04-22 18:29:23 +00:00
Ian Lance Taylor
d290d8da0e * targets.c (bfd_target_vector): Add bfd_elf32_powerpc_vec. 1994-04-22 17:38:20 +00:00
Ian Lance Taylor
a963bfc888 * objdump.c: Include libiberty.h.
(display_target_list): If a format fails, just go on to the next
	one.  Check return value of bfd_set_format.
	(display_info_table): Likewise.  Don't increment loop variable in
	for loop test, since that skips the first element.
	(display_target_tables): Rewrite loop for clarity.  Ensure that it
	always prints at least one element.
1994-04-22 17:15:27 +00:00
Ian Lance Taylor
80a903c960 * aout-adobe.c (aout_adobe_set_arch_mach): Check return value of
bfd_default_set_arch_mach.  Accept bfd_arch_m68k as well as
	bfd_arch_unknown.
	* elfcode.h (elf_set_arch_mach): Don't check a list of ELF
	architectures, just see if the desired architecture matches what
	the ELF backend permits.
1994-04-22 17:11:37 +00:00
Ian Lance Taylor
f90025150f * sh.h (SH_ARCH_MAGIC): Rename from SHMAGIC. SHMAGIC is used by
several targets to mean a shared library.
	(SHBADMAG): Corresponding change.
1994-04-22 17:06:23 +00:00
Ian Lance Taylor
79167def08 Follow convention in which each NLM header has an 8 byte stamp
followed by a four byte length.
	* libnlm.h (struct nlm_obj_tdata): Rename nlm_cygnus_section_hdr
	to nlm_cygnus_ext_header, and change type to
	Nlm_Internal_Cygnus_Ext_Header.
	(nlm_cygnus_ext_header): Rename from nlm_cygnus_section_header.
	* nlmcode.h (nlm_swap_auxiliary_headers_in): Use CyGnUsEx instead
	of CyGnUsSeCs.  Rename from cygnus_section to cygnus_ext.  Require
	length word to be 8.
	(nlm_swap_auxiliary_headers_out): Rename from cygnus_section to
	cygnus_ext.  Set length word to 8.
	(nlm_compute_section_file_positions): Rename from cygnus_section
	to cygnus_ext.
1994-04-22 15:16:34 +00:00
Ian Lance Taylor
162794fe9d * nlmconv.c (main): Use CyGnUsEx rather than CyGnUsSeCs for
sections header.  Rename from cygnus_sections to cygnus_ext.
1994-04-22 15:15:42 +00:00
Stu Grossman
7f772644c7 * nlmcode.h (nlm_swap_auxiliary_headers_in): Keep section table
(from CyGnUsSeCs) in more permanent memory to keep section names
	from getting trashed.
1994-04-22 05:59:24 +00:00
Ian Lance Taylor
de04bcebc0 * objdump.c (_DUMMY_NAME_): Don't define.
(display_target_list): Use tmpnam to get a file name rather than
	using _DUMMY_NAME_.  Unlink it when done.
	(display_info_table): Likewise.
1994-04-22 03:47:57 +00:00
Jim Kingdon
da988c2013 * utils.c (prompt_for_continue): Annotate prompt.
(query): Annotate query.
	* printcmd.c (print_frame_args): Change syntax of argument
	annotation to make name and value part of a single group of
	annotations, not two separate groups.
	* cp-valprint.c (cp_print_value_fields): Likewise for fields.
	* valprint.c (val_print_array_elements): Change syntax of
	annotation to be more concise.
	* main.c, defs.h (command_line_input): New argument tells what
	string to include in the annotations.
	* symtab.c (decode_line_2), main.c (read_command_lines,
	command_loop): Change callers.
1994-04-22 03:01:25 +00:00
Jim Kingdon
eb1e37a3ae * printcmd.c (print_command_1): Add value-history-value annotation. 1994-04-21 23:49:33 +00:00
Ian Lance Taylor
1e45c4c38e * Makefile.in (clean, distclean): Remove configdoc.texi. 1994-04-21 21:25:17 +00:00
Jim Kingdon
5d955237be * Makefile.in (clean): Don't remove GDBvn.texi (apparently on Jan
16 I meant to make this change but did not).  Do remove gdb-cfg.texi.
1994-04-21 21:24:30 +00:00
Jim Kingdon
9e8db4456e * breakpoint.c (watch_command): Use (CORE_ADDR)0, not NULL, for
target null pointer.
	* blockframe.c (find_frame_addr_in_frame_chain): Likewise.

	* printcmd.c (output_command): Annotate things we print here too.
	* Move declaration of print_value_flags from defs.h to value.h.
	* main.c (command_line_input): Call wrap_here as well as gdb_flush.
1994-04-21 21:19:58 +00:00
Jim Kingdon
739324d734 * gdb.t00/default.exp (set write): Allow any number of \r and/or
\n, not just one of each.

	* gdb.t07/gdbme.c (main): Don't take address of an array; SunOS4
	/bin/cc gives a warning if you do.
1994-04-21 20:08:42 +00:00
Ian Lance Taylor
6fdc26e663 * config/tc-mips.c (append_insn): Permit branches to be switched
with the preceding instruction even if .set nobopt has been seen.
	.set nobopt actually controls whether to bring up an instruction
	from the branch target, which gas does not currently support.
1994-04-21 19:53:25 +00:00
Kung Hsu
0cb7d54f3c Modified Files:
ChangeLog

        * gdb.t24/demangle.exp: change expect pattern of
        __t10ListS_link1ZUiRCUiPT0
1994-04-21 18:56:39 +00:00
Ian Lance Taylor
1eff2af3ba Clean up uses of _bfd_dummy_target (from Peter Schauer).
* libbfd.c (_bfd_dummy_target): Set bfd_error_wrong_format.
	* nlm-target.h (nlm_core_file_p): Define as _bfd_dummy_target, not
	NULL.
	* srec.c (srec_vec): Use _bfd_dummy_target, not NULL, in
	_bfd_check_format.
	(symbolsrec_vec): Likewise.
	* tekhex.c (tekhex_vec): Likewise.
1994-04-21 18:19:22 +00:00
Peter Schauer
0683ac4b2c * dbxread.c (read_dbx_dynamic_symtab): Reinstall support for sun3,
BFD handles sun3 dynamic relocations now.
	* elfread.c (elf_symtab_read, elf_symfile_read):  Handle dynamic
	symbol table.
1994-04-21 17:09:31 +00:00
Peter Schauer
cb71adf12b * libelf.h (elf_obj_tdata): Add members for dynamic symbol table
handling.
	* elfcode.h (bfd_section_from_shdr):  Handle dynamic symbol table.
	* elfcode.h (elf_slurp_symbol_table):  Take additional parameter
	to select static or dynamic symbol table and return number of
	symbols slurped or -1 on error.
	* elfcode.h (elf_get_symtab):  Set bfd symcount from
	elf_slurp_symbol_table result.
	* elfcode.h (elf_get_dynamic_symtab_upper_bound,
	elf_canonicalize_dynamic_symtab):  New functions to handle dynamic
	symbol table.
	* elf32-target.h, elf64-target.h (BFD_JUMP_TABLE_DYNAMIC):
	Change to handle dynamic symbol table, provide default definitions
	for dynamic relocs.
	* aoutx.h (howto_table_std, NAME(aout,swap_std_reloc_out),
	NAME(aout,swap_std_reloc_in), aout_link_input_section_std,
	aout_link_reloc_link_order):  Handle r_jmptable and r_relative
	relocations.
1994-04-21 17:01:12 +00:00
Ian Lance Taylor
dcb210cb09 * nlmconv.c (secsec): New static variable.
(main): Create .nlmsections section in output BFD.  Store
	information about it in sections header.
	(setup_sections): Allocate space in sections header.
	(copy_sections): Copy zero sized sections.  Put information about
	each section in the sections header.
1994-04-21 16:15:00 +00:00
Ian Lance Taylor
6c534df0c9 * libnlm.h (struct nlm_obj_tdata): Add nlm_cygnus_section_hdr
field.
	(nlm_cygnus_section_header): New accessor macro.
	* nlmcode.h (nlm_object_p): Free new tdata structure if failure.
	Add fixed sections before swapping in auxiliary headers.  After
	adding sections, treat errors as real, not as wrong format.
	(nlm_swap_auxiliary_headers_in): Swap in the sections header; add
	sections to the BFD for each section it describes.
	(nlm_swap_auxiliary_headers_out): Swap out the sections header.
	(nlm_compute_section_file_positions): Account for the size of the
	sections header.
1994-04-21 16:13:01 +00:00
Ian Lance Taylor
1f573a795d * internal.h (struct nlm_internal_cygnus_section_header): Define.
* external.h (struct nlmNAME(external_cygnus_section_header):
	Define.
1994-04-21 15:58:02 +00:00
Jim Kingdon
96f7edbde8 * printcmd.c (print_command_1): Annotate the top-level expressions
that we print.
	(print_frame_args): Annotate each argument.
	* printcmd.c, defs.h (print_value_flags): New function.
	* cp-valprint.c (cp_print_value_fields): Annotate each field.
	* valprint.c (val_print_array_elements): Annotate each array element.
1994-04-21 04:28:08 +00:00
Ken Raeburn
71b4de6fb8 * config/obj-coff.h, config/obj-coff.c: Deleted all code used only when
BFD_ASSEMBLER is not defined, and all conditionals relating to such code.  No
such targets remain.

Fixes for stabs-in-coff:
* config/obj-coff.c: Include subsegs.h.
(coff_frob_section): New function.
(obj_coff_init_stab_section): New function.
* config/obj-coff.h (obj_coff_init_stab_section, coff_frob_section): Declare.
(obj_frob_section): New macro; uses coff_frob_section.
(INIT_STAB_SECTION): New macro; uses obj_coff_init_stab_section.
1994-04-20 23:01:40 +00:00
Ken Raeburn
a6652b1c62 * config/tc-sparc.c (md_section_align): Always round up to multiple of
alignment power specified in bfd target vector.
1994-04-20 22:58:13 +00:00
Ken Raeburn
d924d209d3 * gasp.c: Include ctype.h. 1994-04-20 22:48:12 +00:00
Ken Raeburn
4a5bfdbc73 * coff-sparc.c (sparccoff_vec): Change minimum alignment power to 2, so that
stab sections can be multiples of 4 bytes only.
1994-04-20 22:44:52 +00:00
Ken Raeburn
71363c410e * hosts/i386aix.h: Changes to avoid prototypes conflicts with the ones defined
in stdlib.h.  (From Minh Tran-Le.)
1994-04-20 22:42:57 +00:00
Peter Schauer
59746d9ff1 * findvar.c (read_var_value): Handle LOC_REPARM_ADDR case correctly,
the register contains a pointer to the type, not the type itself.
1994-04-20 20:28:32 +00:00
Jim Kingdon
6c803036a9 * main.c (main): Accept --annotate=N option and make --fullname
the same as --annotate=1.
	(command_line_input): Print annotatation before and after prompt.
	* blockframe.c (flush_cached_frames): Print annotation.
	* Rename frame_file_full_name to annotation_level and move it from
	symtab.h to defs.h.
	* source.c (identify_source_line): If annotation_level > 1,
	change output format.
	* breakpoint.c: Print annotation whenever a breakpoint changes.
	* main.c: New variable server_command.
	(command_line_input): Parse "server " and set server_command.
	(dont_repeat): Check server_command.
1994-04-20 19:23:30 +00:00
Ian Lance Taylor
a95abbb3ec PowerPC NetWare changes. 1994-04-20 18:49:18 +00:00
Ian Lance Taylor
476d01f08a start-sanitize-powerpc-netware
* nlm32-ppc.c: Complete rewrite for new version of PowerPC
	NetWare.  Old code still present, but ifdeffed out.
end-sanitize-powerpc-netware

	* nlmcode.h (nlm_swap_auxiliary_headers_in): Don't assume a
	particular format for the customer header.  Allocate a block of
	memory and read it into that.
	(nlm_swap_auxiliary_headers_out): Write out the block of memory.
	(nlm_compute_section_file_positions): Include length of customer
	header when computing its size.
1994-04-20 18:38:22 +00:00
Ian Lance Taylor
c59fa195b8 start-sanitize-powerpc-netware
* nlmconv.c (powerpc_build_stubs): Take new outbfd argument.
	Change caller.  Create custom header for new PowerPC NetWare
	format.
end-sanitize-powerpc-netware

	* Makefile.in (nlmheader.o, nlmconv.o): Update dependencies.
	* nlmconv.c: Include bfd.h and libiberty.h with "", not <>.
	* nlmheader.y: Include bfd.h with "", not <>.
1994-04-20 18:37:13 +00:00
Ian Lance Taylor
276971d7d3 nlm_custom_header changes. 1994-04-20 18:31:56 +00:00