Jeff Law [Thu, 29 Sep 1994 04:26:50 +0000 (04:26 +0000)]
* hpread.c (hpread_type_translate): Handle T_UNS_LONG types with
lengths other than 32bits (HP C 9.69 represents an "unsigned char"
as an T_UNS_LONG with length 8).
Jeff Law [Thu, 29 Sep 1994 03:25:03 +0000 (03:25 +0000)]
* gas/hppa/reloc/reduce.s: Renamed from relocreduce.s
* gas/hppa/reloc/reduce2.s: Renamed from relocreduce2.s
* gas/hppa/reloc/r_no_reloc.s: Renamed from r_no_relocbug.s
Ken Raeburn [Wed, 28 Sep 1994 20:27:31 +0000 (20:27 +0000)]
(resolve_symbol_value, case O_symbol): Don't do any processing if add_symbol is
undefined or in expr_section.
(resolve_symbol_value, case O_add): For symbol plus constant-valued symbol,
convert to O_symbol and re-reduce.
(S_GET_VALUE): If symbol needs resolving, resolve it.
(indent_level): No longer static.
(print_symbol_value_1): Don't print frag address if it matches
zero_address_frag. Don't print "resolving" if already resolved. Print segment
name. Don't call print_expr_1 on an undefined symbol.
(print_expr_1): Fix whitespace before printing X_add_number.
Ian Lance Taylor [Wed, 28 Sep 1994 19:53:22 +0000 (19:53 +0000)]
* Makefile.in (arparse.c): Don't ignore errors from mv.
(sysinfo.c): Likewise. Also, depend upon arparse.c, to prevent a
parallel make from trying to build both arparse.c and sysinfo.c
simultaneously.
(nlmheader.c): Similar change.
(arparse.h): Separate target from arparse.c, so that a parallel
make does not try to build both at once. Depend upon arparse.c.
(sysinfo.h): Similar change.
Ken Raeburn [Wed, 28 Sep 1994 19:20:11 +0000 (19:20 +0000)]
(fix_new_exp): Handle O_add by creating an expression-valued symbol, and
calling fix_new_exp recursively.
(adjust_reloc_syms): If a fixup's symbol value is a sum of an undefined symbol
and a constant, fold the constant into the fixup, and refer to the undefined
symbol directly. Then process the fixup again from scratch.
(write_object_file): Before calling adjust_reloc_syms, make a pass through the
symbol list trying to resolve values.
(print_fixup): New routine, for debugging.
(write_relocs): Call bfd_install_relocation. Deleted various hacks for working
around problems with bfd_perform_relocation.
Ian Lance Taylor [Wed, 28 Sep 1994 17:41:07 +0000 (17:41 +0000)]
* config/tc-mips.c: Include subsegs.h.
(md_apply_fix): If an unconditional b or bal overflows, and we are
not assembling PIC code, replace it with a j or jal.
Ian Lance Taylor [Wed, 28 Sep 1994 16:21:32 +0000 (16:21 +0000)]
* config/default.exp: Set variables as and nm. Create tmpdir if
it does not already exist.
* ld.bootstrap/bootstrap.exp: Don't create tmpdir here.
* ld.cdtest/cdtest.exp: Likewise.
* ld.scripts/defined.exp: Likewise. Also, don't set as and nm
here. Change perror for no variables found to fail.
* ld.scripts/script.exp: New test.
* ld.scripts/script.t, ld.scripts/script.s: New files.
Jeff Law [Wed, 28 Sep 1994 06:42:24 +0000 (06:42 +0000)]
* hpread.c (struct hpread_symfile_info): Delete have_module field
and accessor macro. Minor indentation fix.
(hpread_build_psymtabs, case K_MODULE): Only start a new psymtab
and reset state variables have_name & texthigh if pst is NULL.
(hpread_build_psymtabs, case K_SRCFILE): Only reset the name of a
partial symbol table if pst is non-NULL. If pst is NULL, then
start a new psymtab.
(hpread_process_one_debug_symbol, case K_MODULE): Now empty.
(hpread_process_one_debug_symbol, case K_SRCFILE): Simplify and
correct handling of subfiles.
Ian Lance Taylor [Wed, 28 Sep 1994 00:06:27 +0000 (00:06 +0000)]
* ld.scripts: New directory.
* ld.scripts/defined.exp, ld.scripts/defined.s: New files.
* ld.scripts/defined.t: New file.
* lib/ld.exp (default_ld_simple_link): New function.
(default_ld_assemble, default_ld_nm): New functions.
* config/default.exp: Rename from unix-ld.exp.
(ld_simple_link, ld_assemble, ld_nm): New functions.
Ian Lance Taylor [Tue, 27 Sep 1994 22:41:51 +0000 (22:41 +0000)]
* ldexp.c (fold_name): For DEFINED case, don't try to look up the
name in the hash table during the first phase--the hash table does
not even exist at that point, much less have the right value.
PR 5699.
Ian Lance Taylor [Tue, 27 Sep 1994 22:25:04 +0000 (22:25 +0000)]
* Makefile.in (CC): Define.
(CXX): Move definition, change from g++ to gcc.
(EXPECT, RUNTEST): Copy definitions from top level Makefile.in.
(RUNTEST_CC, RUNTEST_CFLAGS): Remove.
(RUNTEST_CXX, RUNTEST_CXXFLAGS): Remove.
(CC_FOR_TARGET, CXX_FOR_TARGET): Copy from top level Makefile.in.
(.cc.o): Comment out.
(testdir): Remove.
(site.exp): Don't create testdir or set tmpdir.
(check): Run checks even if not running native. Use CC_FOR_TARGET
instead of RUNTEST_CC, and likewise for CXX.
(cdtest targets): Comment out.
* config/solaris2.mh (HOSTING_LIBS): Only mention crtend.o once.
* cdtest-bar.cc, cdtest-foo.cc, cdtest-foo.h: Remove.
* cdtest-main.cc, cdtest.exp: Remove.
Ian Lance Taylor [Tue, 27 Sep 1994 22:23:51 +0000 (22:23 +0000)]
* config/unix-ld.exp: Set ld using findfile.
* lib/ld.exp (default_ld_relocate): Return a value. Change format
of log messages.
(default_ld_compile): Likewise.
(default_ld_link): Likewise. Also, don't include $BFDLIB and
$LIBIBERTY in link.
* ld.bootstrap/bootstrap.exp: Rewrite.
* ld.cdtest/cdtest.exp: Rewrite.
* ld.cdtest/cdtest-foo.cc: Update from top level ld directory.
* ld.cdtest/cdtest-foo.h: Likewise.
* ld.cdtest/cdtest-main.cc: Likewise.
Ian Lance Taylor [Mon, 26 Sep 1994 22:08:57 +0000 (22:08 +0000)]
* emulparams/elf32bmip.sh: Rename from elf32mipb.sh to avoid DOS
file naming problems.
* emulparams/elf32lmip.sh: Rename from elf32mipl.sh.
* Makefile.in (ALL_EMULATIONS): Rename eelf32mipb.o to
eelf32bmip.o and eelf32mipl.o to eelf32lmip.o.
(eelf32bmip.c): Rename from eelf32mipb.c. Use elf32bmip.sh.
(eelf32lmip.c): Rename from eelf32mipl.c. Use elf32lmip.sh.
* config/mipsb-elf32.mt (EMUL): Use elf32bmip, not elf32mipb.
* config/mipsl-elf32.mt (EMUL): Use elf32lmip, not elf32mipl.
Ian Lance Taylor [Mon, 26 Sep 1994 15:01:59 +0000 (15:01 +0000)]
* bfd-in.h (bfd_seek): Change declaration to not mark fp const.
* bfd-in2.h: Rebuild.
* libbfd.c (bfd_seek): Don't mark parameters const, to avoid
conflicts with declaration.
Jim Kingdon [Sun, 25 Sep 1994 13:21:22 +0000 (13:21 +0000)]
* TODO: Remove item about adding general multi-threaded stuff;
this is done.
Remove item about specifying arbitrary locations of stack frames
(this works on some machines).
Remove item about debugging functions without a frame pointer
(this works on some machines).
Remove item about re-writing macros which handle frame chaining and
frameless functions. They have been re-written at least once
since that item was written.
Remove item about gdb catching SIGINT when attached; this is done.
Remove item about having list_command not read symbols--why bother?
Peter Schauer [Sat, 24 Sep 1994 09:00:50 +0000 (09:00 +0000)]
* corelow.c (add_solib_stub): Remove copying of to_sections,
pass current_target to SOLIB_ADD. The Sep 10 change failed
if SOLIB_ADD errored out, or if SOLIB_ADD was trying to access
target memory.
* corelow.c (core_open): After reading the shared libraries,
copy the modified to_sections vector from current_target to
core_ops, so that core_close can free it later.
* config/rs6000/nm-rs6000.h, rs6000-nat.c (xcoff_relocate_core):
Pass down target parameter from SOLIB_ADD and use it instead of
directly accessing core_ops.
* solib.c: *BSD systems need <a.out.h> to be included before
<link.h>.
* i386b-nat.c: Add i386_float_info(), etc.
* config/i386/nm-nbsd.h: #define FLOAT_INFO.
* config/nm-nbsd.h: New file, for generic NetBSD native support.
* config/i386/nm-nbsd.h: Use it.
* config/sparc/nm-nbsd.h: Use it.
* config/ns32k/nm-nbsd.h: Use it.
* configure.in (i386-*-netbsd): Use config/i386/nbsd.m[ht].
(ns32k-*-netbsd): Use config/ns32k/nbsd.m[ht].
* config/i386/{nbsd.mh,nbsd.mt,nm-nbsd.h,tm-nbsd.h,xm-nbsd.h}:
New files, support for NetBSD/i386.
* config/ns32k/{nbsd.mh,nbsd.mh,nm-nbsd.h,tm-nbsd.h,xm-nbsd.h}:
New files, support for NetBSD/ns32k.
Kung Hsu [Thu, 22 Sep 1994 20:43:39 +0000 (20:43 +0000)]
Modified Files:
ChangeLog ecoff.c read.c
* ecoff.c (ecoff_generate_asm_lineno): check if
current_stabs_filename is NULL before strcmp.
* read.c (read_a_source_file): fxi a bug in generate_asm_lineno
checking.
Ken Raeburn [Wed, 21 Sep 1994 22:21:25 +0000 (22:21 +0000)]
Combine two existing mechanisms for copying symbol attributes, and fix a bug:
* symbols.c (copy_symbol_attributes): New function. Copies BFD symbol flags
and calls OBJ_COPY_SYMBOL_ATTRIBUTES.
(resolve_symbol_value, case O_symbol): Call it, if X_add_number is zero. Don't
call obj_frob_forward_symbol.
* read.c (pseudo_set): Call copy_symbol_attributes, but only if X_add_number is
zero.
* config/obj-elf.h (obj_frob_forward_symbol): Deleted.
Ian Lance Taylor [Wed, 21 Sep 1994 17:43:17 +0000 (17:43 +0000)]
* config/tc-ppc.c (ppc_current_block): New static variable.
(ppc_stabx): Set sy_tc.within of a C_STSYM symbol to
ppc_current_block. Don't move around any stab symbol, just those
for common symbols.
(ppc_bs): Set ppc_current_block.
(ppc_es): Clear ppc_current_block.
(ppc_frob_symbol): Set the value of a C_STSYM symbol to the offset
from the csect of the enclosing block.
PR 5658.
Ian Lance Taylor [Wed, 21 Sep 1994 17:03:04 +0000 (17:03 +0000)]
* config/tc-mips.c (insns_since_cache_access): Remove.
(append_insn): Remove setting of insns_since_cache_access, and
special 4600 handling; it turns out not to be required.
PR 5664.
Ian Lance Taylor [Tue, 20 Sep 1994 21:16:11 +0000 (21:16 +0000)]
* ld.h (args_type): Add new field endian.
* lexsup.c (parse_args): Handle -EB and -EL by setting
command_line.endian.
* ldgram.y (ifile_p1): Accept OUTPUT_FORMAT with three arguments.
* ldlang.c (lang_add_output_format): Add arguments big and little.
If command_line.endian is set, use it to select big or little
rather than the default. Changed all callers.
* ldlang.h (lang_add_output_format): Update declaration.
* emulparams/elf32mipb.sh: Define BIG_OUTPUT_FORMAT and
LITTLE_OUTPUT_FORMAT.
* emulparams/elf32mipl.sh: Likewise.
* emulparams/mipsbig.sh: Likewise.
* emulparams/mipsbsd.sh: Likewise.
* emulparams/mipsidt.sh: Likewise.
* emulparams/mipsidtl.sh: Likewise.
* emulparams/mipslit.sh: Likewise.
* scripttempl/elf.sc: Define BIG_OUTPUT_FORMAT and
LITTLE_OUTPUT_FORMAT if not already defined. Pass them to
OUTPUT_FORMAT.
* scripttempl/mips.sc: Pass BIG_OUTPUT_FORMAT and
LITTLE_OUTPUT_FORMAT to OUTPUT_FORMAT.
* scripttempl/mipsbsd.sc: Likewise.
Ian Lance Taylor [Tue, 20 Sep 1994 20:16:24 +0000 (20:16 +0000)]
* config/tc-mips.c (md_shortopts): Remove E.
(md_longopts): Add EB and EL.
(md_parse_option): Handle -EB and -EL as separate options, rather
than as a single -E option with an argument.
Per Bothner [Tue, 20 Sep 1994 01:30:19 +0000 (01:30 +0000)]
* config.guess (HP-UX): Patch from Harlan Stenn
<harlan@landmark.com> to also emit release level.
* config.guess (sun4*:SunOS:*:*): Change '-JL' to '_JL'.
Ken Raeburn [Mon, 19 Sep 1994 16:40:00 +0000 (16:40 +0000)]
* read.c (pseudo_set, case O_symbol): If OBJ_COPY_SYMBOL_ATTRIBUTES is defined,
invoke it.
[BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
Ken Raeburn [Mon, 19 Sep 1994 16:37:32 +0000 (16:37 +0000)]
* read.c (pseudo_set, case O_symbol): If OBJ_COPY_SYMBOL_ATTRIBUTES is defined,
invoke it.
[BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
Jim Kingdon [Mon, 19 Sep 1994 15:00:03 +0000 (15:00 +0000)]
Mon Sep 19 07:48:36 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* dbxread.c (read_dbx_dynamic_symtab): Cast bfd_asymbol_name to
char * (from const char *) before assigning. Don't save string we
pass to record_minimal_symbol (it already saves it).
Peter Schauer [Sat, 17 Sep 1994 11:35:51 +0000 (11:35 +0000)]
* cp-valprint.c (static_field_print): New variable, controls
printing of static members.
(_initialize_cp_valprint): New print set subcommand
"static-members". Turn on printing of static members by default.
(cp_print_value_fields): Print static members if necessary.
* solib.c: Remove inclusion of libelf.h and elf/mips.h.
(elf_locate_base): Use only standard BFD functions to collect
information about the .dynamic section. Check for DT_MIPS_RLD_MAP
tag only if it got defined via the inclusion of <link.h>.
* f-exp.y: Write block for OP_VAR_VALUE.
* f-valprint.c (info_common_command): Handle `info common'
without an argument correctly.
* c-typeprint.c (c_type_print_base): Handle template constructors.
* symtab.c (gdb_mangle_name): Handle template method mangling,
get rid of GCC_MANGLE_BUG code, which only applied to gcc-2.2.2.
Per Bothner [Sat, 17 Sep 1994 00:38:23 +0000 (00:38 +0000)]
* gdbtypes.h (TYPE_INDEX_TYPE): New macro.
* ch-typeprint.c, ch-valprint.c: Use TYPE_INDEX_TYPE.
* ch-valprint.c (chill_val_print): Pass index type directly
(instead of its TYPE_TARGET_TYPE) to print_type_scalar.
* stabsread.c (read_type): Don't set TYPE_FLAG_TARGET_STUB
if the index type is a stub.
Stu Grossman [Fri, 16 Sep 1994 22:57:37 +0000 (22:57 +0000)]
* defs.h (QUIT): Call interactive_hook to allow GUI to interrupt.
Also, add decl for symtab_to_filename.
* gdbtk.c: Replace calls to full_filename with symtab_to_filename.
* gdbtk.tcl: New routine pc_to_line replaces in line code. New
routine decr replaces in line code.
* (create_file_win): Use catch to handle open failures more
elegantly. Also, create special window to display file open
failure message. Move opening of file prior to creation of text
widget.
* (create_asm_win): Add PC as argument. We now base disassembly
on PC instead of function name, since function names can be
ambiguous (usually seen with shared libs). Also, use catch to
simplify code where we don't care about failures.
* source.c (symtab_to_filename): New. Returns the file
associated with a symtab.
* top.c: Define interactive_hook. Called during QUIT to animate
the GUI.