* elfcode.h (elf_link_create_dynamic_sections): Set type of
_DYNAMIC to STT_OBJECT.
(NAME(bfd_elf,record_link_assignment)): Always create hash table
entry. Set type to STT_OBJECT.
(elf_link_output_extsym): Don't set type of weak defined symbol to
STB_WEAK if symbol was referenced.
* elf32-i386.c (elf_i386_create_dynamic_sections): Set type of
_GLOBAL_OFFSET_TABLE to STT_OBJECT.
(elf_i386_check_relocs): Ignore local PLT32 relocs.
(elf_i386_relocate_section): Treat local PLT32 relocs as PC32.
linker stub, then return the address the stub will return to.
(frame_saved_pc): Correctly restart the search for the saved
pc when a linker stub is encountered.
* hppa-tdep.c (inst_saves_gr): Handle 16 and 8 bit instruction
register stores emitted by the version 9 HP compilers.
(inst_saves_fr): Relax test for a specific base register (%r1);
this avoids losing with the version 9 HP compilers.
(skip_prologue): Try to skip argument stores emitted by the HP
compilers. It's not perfect, but it's better than before.
(md_parse_option) [NO_V9]: Complain if v9 was selected.
(md_show_usage): Derive architecture list in usage message from
architecture_pname array.
(cypress): Macro deleted.
(op_hash): Don't initialize.
(s_common): Use bfd_und_section_ptr instead of bfd_und_section.
(BSR): New function.
(sparc_ip): Use it for right-shift operations of 32 bits or more.
(sparc_ip): Implement new operand type 'x'.
--enable-xxx configure option by adding ENABLE_{CLIBS DEPFILES}
where appropriate.
* General hackery to support alternate user-interface.
* breakpoint.c (mention, delete_breakpoint, enable_breakpoint,
disable_breakpoint): Call hooks for alternate user-interface.
* defs.h: Add declarations for alternate user-interface hooks.
* main.c (main): Add --nw (and --nowindows) options to disable
the GUI.
* (near call to command_loop): Call command_loop_hook if set.
* (fputs_unfiltered): Call fputs_unfiltered_hook if set.
* stack.c: Call print_frame_info_listing_hook if set.
* top.c (gdb_init): Initialize targets.c and utils.c prior to
other files to make sure that calls to error and warning will
work. Call init_ui_hook after everything else.
* utils.c (query): Call query_hook if set.
* (gdb_flush): Call flush_hook if set.
* Change _initialize_utils to initialize_utils cuz we don't use
automatic initialization of utils.c anymore.
* Support for TK GUI.
* Makefile.in: Add rule for gdbtk.o.
* configure.in: Add support for --enable-gdbtk.
* gdbtk.c: New file. Contains support routines for TK interface.
* gdbtk.tcl: New file. Implements GUI policy.
* remote.c: Get rid of #ifdef DONT_USE_REMOTE. It's no longer
necessary.
(diststuff): Add for new distribution support.
(gdb.tar.Z, make-proto-gdb.dir, setup-to-dist,
gdb-$(VERSION).tar.Z, make-proto-gdb-1, make-proto-testsuite.dir):
Remove old distribution building rules, now uses standard
distribution support in parent directory Makefile.in.
(setup-dirs-gdb, gdb.tar.gz, make-gdb.tar.gz): Remove old rules.
(gdb.tar.gz): Add new rule to use standard distribution building
mechanism.
(Also, changed taz rule to abort building of unsanitary
distributions - not recorded in ChangeLog)
* config/tc-i960.h (TC_COFF_SET_MACHINE): New macro. Calls tc_headers_hook.
* config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX was used
previously.
(tc_headers_hook): If I_CX2 is found, set flags to F_I960CA.
* config/tc-i960.c (po_hash): Declaration deleted.
(next_object_file_charP): Ditto.
(regnames, aregs, coj): Now const.
(parse_memop): Static array def_scale now const.
(md_begin): Cast away const when passing hash routines addresses of values in
regnames or aregs.
(md_longopts): Added "link-relax" and "no-relax" hyphenated forms. Continue to
accept one-word forms.
(struct tabentry, arch_tab): Moved to top level from inside md_parse_option.
Now const.
(md_show_usage): Use arch_tab to generate usage message. Print hyphenated
forms of relax options.
* config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC,
TC_S_FORCE_TO_*): Moved from here...
* config/tc-i960.c: ... to here. Changed DEFINE_I960_AOUT stuff to test
OBJ_AOUT and OBJ_BOUT directly.
* config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ, M1-M3, REG_OPC,
R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F, {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK,
FP_OK, REG_ALIGN, MEMOP, I_*): Macros deleted.
* config/tc-i960.c (ARCH_XL): Define.
(arch_tab): Include XL.
(targ_has_sfr, targ_has_iclass): Handle XL.
(tc_headers_hook): Set flags to F_I960XL for i960XL.
* config/obj-coff.h: Moved common includes and TARGET_FORMAT definitions
together.
(WORKING_DOT_WORD, WARN_SIGNED_OVERFLOW_WORD, OBJ_COFF_OMIT_OPTIONAL_HEADER,
BFD_HEADERS, BFD) [!BFD_ASSEMBLER]: Moved these definitions to the start of the
file, before the includes.
(SYMBOLS_NEED_BACKPOINTERS, OBJ_COFF_MAX_AUXENTRIES): Always define these.
(S_GET_ZEROES): Deleted.
(S_SET_ZEROES): Moved to obj-coff.c.
* config/obj-coff.c (obj_coff_* psuedo-op fns): Deleted forward declarations.
(obj_pseudo_table): Moved to one version end of file, conditionalized
internally.
(stack typedef, stack_init, stack_delete, stack_push, stack_pop, tag_hash,
tag_init, tag_insert, tag_find, tag_find_or_make): Moved to one combined
version at top of file, unconditional. Deleted forward declarations.
(s_get_name): Moved one copy of declarations to start of file.
(def_symbol_in_progress): Ditto. Don't initialize.
(S_SET_ZEROES): Moved here from obj-coff.h.
(write_object_file): If TC_COFF_SET_MACHINE is defined, call it on the file
headers.
* config/obj-coff.c (seg_info_off_by_4): Now const and static.
(SEG_INFO_FROM_SEG_NUMBER): Unused macro deleted.
(previous_file_symbol, def_symbol_in_progress, symbol_externP,
symbol_extern_lastP, last_functionP) [!BFD_ASSEMBLER]: Don't bother explicitly
initializing to zero value.
* config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME and
SF_GET_CALLNAME instead of the TC_S_IS_ versions.