I found that the relax failure for execute/930628-1.c is due to gas
incorrectly relaxing an out-of-range conditional branch with delay slot.
It turned:
bf.s L6 (slot mov.l r12,@(44,r0))
into:
* Moved gdbtk_hooks.c & gdbtk_cmds.c to gdbtk-hooks.c &
gdbtk-cmds.c to comply with the gdb conventions. Changed the
configure & makefile to reflect the change...
* dvp-opc.c (DVP_OPERAND_RELOC_11_S4): Temporarily back out
the DVP_OPERAND_RELOC_11_S4 relocation.
* dvp-opc.c (LIMM11, LUIMM15): New symbol types
DVP_OPERAND_RELOC_U15_S3 and DVP_OPERAND_RELOC_11_S4 to allow labels to
be used as immediate values.
* main.tcl (gdbtk_preloop): Call gdbtk_idle on spec. If there was an
error in loading an executible specified on the command line,
then the pre_add_symbol hook would have called gdbtk_busy but
the corresponding call to gdbtk_idle would not have occured.
Also changed some catch calls so they didn't use
"catch {set foo [real_command]}"
but rather the more efficient:
"catch {real_command} foo"
* register.tcl: more catch cleanups
* src.tcl: more catch cleanups
* stack.tcl: more catch cleanups
* target.tcl: more catch cleanups
* tdump.tcl: more catch cleanups
* variables.tcl: more catch cleanups
* watch.tcl: more catch cleanups
* gdbtk.c (gdbtk_init): Fixed a bug in the startup code on Windows
that caused gdbtk not to find the share directory unless
GDBTK_LIBRARY was set.
* gdbtk.c: removed all the commands and hooks from this file so
now it contains only the startup code.
* gdbtk_cmds.c: New file - this contains all the Tcl commands that
gdb defines. All the old commands were moved here, the
string-based commands were converted to object commands, and the
object-based commands were all converted to uniformly use the
call_wrapper. A new function, Gdbtk_Init was added to centralize
initializing the gdb package. Also added gdbtk as a package
into gdbtk_interp.
* gdbtk_hooks.c: New file - All the hooks were moved here, and a new
function, gdbtk_add_hooks was added to centralize adding all these
hook functions. gdbtk_fputs was also modified to handle the new
result_ptr structure. See the comments in gdbtk.h for more
details.
* gdbtk.h: New file - this contains all the defines and globals
shared by gdbtk.c, gdbtk_cmds.c & gdbtk_hooks.c
* Makefile.in, configure.in & configure: mutatis mutandi for the
new files.
Based on patches from Andrew Kozin
<[email protected]>:
* winduni.h: New file, from windres.h.
* winduni.c: New file, from windres.c.
* windres.c: Move Unicode functions into winduni.c.
* windres.h: Move Unicode declarations into winduni.h. Include
winduni.h.
(RT_ACCELERATOR): Rename from RT_ACCELERATORS to match Windows
macro. Change all uses.
(RT_PLUGPLAY, RT_VXD): Correct values.
* Makefile.am (HFILES): Add windres.h.
(CFILES): Add winduni.c.
(windres_SOURCES): Add winduni.c.
Jeff Law [Tue, 30 Jun 1998 16:04:44 +0000 (16:04 +0000)]
* m10300-opc.c: Reorder "movbu" and "movhu" instructions too.
Why oh why didn't they take our advice about register prefixing. It would
have avoided the ambigious syntax issues. Sigh.
Jeff Law [Tue, 30 Jun 1998 16:00:12 +0000 (16:00 +0000)]
* elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function.
(bfd_elf32_bfd_merge_private_bfd_data): Define.
So the machine id gets propagated into executables.
Keith Seitz [Sat, 27 Jun 1998 00:45:20 +0000 (00:45 +0000)]
* symtab.h (enum namespace): Add new namespaces FUNCTIONS_NAMESPACE,
TYPES_NAMESPACE, METHODS_NAMESPACE, and VARIABLES_NAMESPACE used by
new search_symbols.
Add prototype for search_symbols and free_search_symbols.
* symtab.c (list_symbols): Rewrite to use new search_symbols.
(file_matches): New helper function for search_symbols.
(free_search_symbols): New function which frees data returned from
search_symbols.
(print_symbol_info): New helper function which prints info about a
matched symbol to stdout. Extracted from old list_symbols.
(print_msymbol_info): New helper function which prints info about
a matched msymbol to stdout. Extracted from old list_symbols.
(symtab_symbol_info): Extracted from old list_symbols.
(variables_info): Use symtab_symbol_info.
(functions_info): Use symtab_symbol_info.
(types_info): Use symtab_symbol_info.
(rbreak_command): Rewrite to use new search_symbols.
* gdbtk.c: Change all references to static global "interp" to
"gdbtk_interp" and export this global.
(gdbtk_init): If gdbtk_source_filename is not NULL, source this file
into the interpreter when it goes idle.
Add new command "gdb_search".
(gdb_search): New function which searches the symbol table.
(gdbtk_test): New function called by main when the --tclcommand
option is used.
* main.c (main): Add a new option "--tclcommand" which is used
by the testsuite to source a file into the interpreter when it
goes idle.
Vladimir Makarov [Fri, 26 Jun 1998 22:25:39 +0000 (22:25 +0000)]
* objcopy.c (strip_main): keep_specific_list == NULL as additional
condition to set up strip all symbols by default.
(copy_archive): don't change archive when error in object files of
the archive.
PR16197
Peter Schauer [Fri, 26 Jun 1998 21:59:29 +0000 (21:59 +0000)]
* gdb.fortran/types.exp: Escape brackets in expect patterns
for test_float_literal_types_accepted tests.
* gdb.base/scope.exp: Remove extraneous newline in filelocal_bss
before run test.
Jeff Law [Fri, 26 Jun 1998 17:24:34 +0000 (17:24 +0000)]
* config/tc-mn10300.c (set_arch_mach): New function.
(md_pseudo_table): Add pseudo-ops to set the current machine type.
(md_begin): Default to mn10300 mode.
(md_assemble): Only accept instructions for the core mn10300
chip and the active machine type.
Jeff Law [Fri, 26 Jun 1998 17:12:10 +0000 (17:12 +0000)]
* m10300-dis.c: Only recognize instructions from the currently
selected machine.
* m10300-opc.c: Add field indicating the particular variant of
the mn10300 each instruction is available on.
Jeff Law [Fri, 26 Jun 1998 16:59:08 +0000 (16:59 +0000)]
* archures.c (bfd_mach_mn10300): Define.
* elf-m10300.c: Include elf/mn10300.h
(elf_mn10300_mach): New function.
(_bfd_mn10300_elf_final_write_processing): Likewise.
(_bfd_mn10300_elf_object_p): Likewise.
(elf_backendfinal_write_processing): Define.
(elf_backend_object_p): Likewise.
start-sanitize-am33
* archures.c (bfd_mach_am33): Define.
* cpu-m10300.c (bfd_am33_arch): New arch info structure. Link it
into the NEXT field of bfd_mn10300_arch.
end-sanitize-am33
* vax-dis.c: New file, from work by Pauline Middelink
<[email protected]>.
* disassemble.c (ARCH_vax): Define if ARCH_all.
(disassembler): Add case for ARCH_vax.
* makefile.vms: Support compilation on vms/vax.
* dv-mn103tim.c: Include sim-assert.h
* dv-mn103ser.c (do_polling_event): Check for incoming data on
serial line and schedule next polling event.
(read_status_reg): schedule events to check for incoming data on
serial line and issue interrupt if necessary.
Jeff Law [Wed, 24 Jun 1998 16:00:43 +0000 (16:00 +0000)]
* mn10300-dis.c (print_insn_mn10300): 0xf9 opcode prefix specifies
3 byte instructions.
(disassemble): Handle new instruction formats FMT_D6, FMT_D7, FMT_D8
FMT_D9 and FMT_D10. Handle various new opcode flags for the am33.
Jeff Law [Wed, 24 Jun 1998 15:56:40 +0000 (15:56 +0000)]
* mn10300-opc.c (IMM32_HIGH8_MEM): New operand type.
(mn10300_opcodes): Reorder so as to try and select opcodes from
the core chip when multiple alternatives exist. Change several
am33 instructions to use IMM32_HIGH8_MEM. Fix typos in "mac" and
"macbu" instructions. Fix typos in a couple DSP instructions too.
Jeff Law [Wed, 24 Jun 1998 15:44:27 +0000 (15:44 +0000)]
* config/tc-mn10300.c (r_registers): Add a0-a3,d0-d3 and e0-e7
as synonyms for "rN" registers.
(xr_registers): Add mcrh, mcrl, mcvf, mdrq and sp as synonyms
for "xrN" registers.
(md_assemble): Fix typo computing the size of relocations.
Jim Wilson [Wed, 24 Jun 1998 01:48:42 +0000 (01:48 +0000)]
Fix irix6-x-h8300 gas bug found while looking at gcc nightly testing failure.
* config/tc-h8300.c (do_a_fix_imm, build_bytes): Replace cast to
char with code that explicitly sign-extends.
* config/mips/tm-irix5.h: Modify to work better on irix 6, by
making FP registers 8 bytes instead of 4.
REGISTER_BYTES: redefine. REGISTER_BYTE(): redefine.
REGISTER_VIRTUAL_TYPE: redefine. MIPS_LAST_ARG_REGNUM: redefine.
* irix5-nat.c (fetch_core_registers): read 8 bytes per FP register.
* mips-tdep.c (FP_REGISTER_DOUBLE): new macro to distinguish
targets with 8-byte FP registers (don't use TARGET_MIPS64).
(STACK_ARGSIZE): new macro, how much space is taken up on the
stack for each function argument (don't use TARGET_MIPS64).
(mips_push_arguments): modify logic to work better on Irix 6
(n32 ABI).