OSDN Git Service
Joel Brobecker [Thu, 16 Apr 2009 17:21:06 +0000 (17:21 +0000)]
* ada-lang.c (symtab_for_sym): Delete.
(user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
Joel Brobecker [Thu, 16 Apr 2009 17:16:17 +0000 (17:16 +0000)]
* ada-lang.c (extract_string): Delete.
(ada_main_name): Reimplement using target_read_string instead of
extract_string.
Nick Clifton [Thu, 16 Apr 2009 17:11:21 +0000 (17:11 +0000)]
Fix typo in previous commit.
Nick Clifton [Thu, 16 Apr 2009 15:39:39 +0000 (15:39 +0000)]
Add new binutils target: moxie
Andreas Schwab [Thu, 16 Apr 2009 15:26:48 +0000 (15:26 +0000)]
* m68klinux-nat.c: Remove obsolete comment.
(fetch_register, store_register): Don't call
gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
which are always nops here.
gdbadmin [Thu, 16 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 16 Apr 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Tom Tromey [Wed, 15 Apr 2009 22:20:30 +0000 (22:20 +0000)]
gdb
* c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
(c_printstr): Likewise.
* charset.c: Include gdb_wait.h.
(make_wchar_iterator): Use INTERMEDIATE_ENCODING.
(find_charset_names): Use pexecute. Handle libiconv's output.
Detect errors.
(_initialize_charset): Use xstrdup.
* gdb_wchar.h: Check HAVE_BTOWC. Split PHONY_ICONV and wchar
cases.
(INTERMEDIATE_ENCODING): New define.
* configure, config.in: Rebuild.
* configure.ac: Check for btowc.
gdb/doc
* gdb.texinfo (Character Sets): Document default character set.
Tom Tromey [Wed, 15 Apr 2009 21:55:04 +0000 (21:55 +0000)]
gdb
* c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
gdb/testsuite
* gdb.base/charset.exp: Add regression test.
Eli Zaretskii [Wed, 15 Apr 2009 20:40:51 +0000 (20:40 +0000)]
* utils.c (parse_escape): Initialize target_char to pacify GCC.
clyon [Wed, 15 Apr 2009 13:49:53 +0000 (13:49 +0000)]
2009-04-15 Christophe Lyon <christophe.lyon@st.com>
bfd/
* elf32-arm.c (elf32_arm_final_link_relocate): Don't convert ARM
branch to an undef weak symbol into a jump to next instruction if
a PLT entry will be created.
testsuite/
* ld-arm/arm-elf.exp: Add 1 more test to check undef weak
reference with PLT in ARM mode.
* ld-arm/thumb2-bl-undefweak1.d, ld-arm/thumb2-bl-undefweak1.s:
New files.
Jan Beulich [Wed, 15 Apr 2009 13:31:27 +0000 (13:31 +0000)]
gas/testsuite/
2009-04-15 Jan Beulich <jbeulich@novell.com>
* gas/i386/x86-64-sse5.s: Add test of protd.
* gas/i386/x86-64-sse5.d: Adjust expectations to match input.
opcodes/
2009-04-15 Jan Beulich <jbeulich@novell.com>
* i386-opc.tbl (protb, protw, protd, protq): Set opcode
extension to None.
(pshab, pshaw, pshad, pshaq): Likewise.
* i386-tbl.h: Re-generate.
Alan Modra [Wed, 15 Apr 2009 01:00:04 +0000 (01:00 +0000)]
daily update
gdbadmin [Wed, 15 Apr 2009 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Jan Kratochvil [Tue, 14 Apr 2009 21:54:33 +0000 (21:54 +0000)]
gdb/
* c-lang.c (c_get_string): Fix xfree crash on a failed string read.
Pierre Muller [Tue, 14 Apr 2009 19:04:21 +0000 (19:04 +0000)]
ARI fix: sprintf rule.
* ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
* ada-lang.c (add_angle_brackets): Use xstrprintf.
(ada_decode): Replace sprintf by xsnprintf.
(find_old_style_renaming_symbol): Ditto.
(ada_to_fixed_type_1, ada_enum_name): Ditto.
Pierre Muller [Tue, 14 Apr 2009 18:18:41 +0000 (18:18 +0000)]
* gdbint.texinfo: Change server name from sources.redhat.com to
sourceware.org throughout.
DJ Delorie [Tue, 14 Apr 2009 18:05:57 +0000 (18:05 +0000)]
merge from gcc
Joel Brobecker [Tue, 14 Apr 2009 16:49:56 +0000 (16:49 +0000)]
* gdb.base/exe-lock.exp: New testcase.
Joel Brobecker [Tue, 14 Apr 2009 16:48:07 +0000 (16:48 +0000)]
* target.c (target_mourn_inferior): Call bfd_cache_close_all
after having executed the target mourn_inferior routine.
Eli Zaretskii [Tue, 14 Apr 2009 14:25:12 +0000 (14:25 +0000)]
config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if undefined.
Dave Korn [Tue, 14 Apr 2009 09:47:42 +0000 (09:47 +0000)]
bfd/ChangeLog
* coffgen.c (make_a_section_from_file): Set the backend long
section names enable if long section names found on input.
* coffcode.h: Extend long section names documentation to match.
binutils/ChangeLog
* objcopy.c (enum long_section_name_handling): New enum type.
(enum command_line_switch): Add OPTION_LONG_SECTION_NAMES.
(copy_options[]): Add entry for --long-section-names option.
(copy_usage): Document it.
(set_long_section_mode): New subroutine.
(copy_file): Call it.
(copy_main): Accept OPTION_LONG_SECTION_NAMES and parse arg.
* doc/binutils.texi: Update objcopy documentation with details
of new option.
Alan Modra [Tue, 14 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
David Daney [Tue, 14 Apr 2009 00:59:46 +0000 (00:59 +0000)]
2009-04-13 David Daney <ddaney@caviumnetworks.com>
* infrun.c (maybe_software_singlestep): New function.
(resume): Call maybe_software_singlestep.
(handle_inferior_event): Same.
gdbadmin [Tue, 14 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Tom Tromey [Mon, 13 Apr 2009 20:54:58 +0000 (20:54 +0000)]
gdb
* python/python-frame.c (frapy_richcompare): Return
Py_NotImplemented, not an error. Handle Py_NE as well.
gdb/testsuite
* gdb.python/python-frame.exp (gdb_py_test_silent_cmd): Test !=
operator on Frame.
DJ Delorie [Mon, 13 Apr 2009 19:42:49 +0000 (19:42 +0000)]
merge from gcc
Eli Zaretskii [Mon, 13 Apr 2009 18:55:15 +0000 (18:55 +0000)]
Fix typo in the last change.
Eli Zaretskii [Mon, 13 Apr 2009 18:49:27 +0000 (18:49 +0000)]
* charset.c (EILSEQ): Define if not defined by system headers.
Kai Tietz [Mon, 13 Apr 2009 10:48:27 +0000 (10:48 +0000)]
Merged from gcc head revision 146001.
2009-04-13 Ozkan Sezer <sezeroz@gmail.com>
PR target/39397
* pex-common.h (struct pex_obj): Store pid values as pid_t,
not as long (members *children and (*wait))
* pex-common.c (pex_run_in_environment): Likewise.
* pex-win32.c (pex_win32_wait): Return pid_t and properly check
returned pid value.
* pex-djgpp.c (pex_djgpp_wait): Return pid_t.
* pex-msdos.c (pex_msdos_wait): Likewise.
Alan Modra [Mon, 13 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
gdbadmin [Mon, 13 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 12 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
gdbadmin [Sun, 12 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Eli Zaretskii [Sat, 11 Apr 2009 19:21:10 +0000 (19:21 +0000)]
*** empty log message ***
Eli Zaretskii [Sat, 11 Apr 2009 18:06:02 +0000 (18:06 +0000)]
*** empty log message ***
Eli Zaretskii [Sat, 11 Apr 2009 18:03:51 +0000 (18:03 +0000)]
* config/djgpp/config.sed: Tweak ac_config_files in intl/configure
to be consistent with renaming config.intl.h into config_intl.h.
Eli Zaretskii [Sat, 11 Apr 2009 17:57:34 +0000 (17:57 +0000)]
* go32-nat.c (go32_attach, go32_detach:) Fix prototypes to be
consistent with the change from 2009-03-17.
Alan Modra [Sat, 11 Apr 2009 01:00:04 +0000 (01:00 +0000)]
daily update
gdbadmin [Sat, 11 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Jan Kratochvil [Fri, 10 Apr 2009 16:00:49 +0000 (16:00 +0000)]
gdb/
* varobj.c (varobj_invalidate): Fix formatting text width.
Jan Kratochvil [Fri, 10 Apr 2009 15:57:52 +0000 (15:57 +0000)]
gdb/
* varobj.c (varobj_invalidate): Fix indentation.
Jan Kratochvil [Fri, 10 Apr 2009 03:36:29 +0000 (03:36 +0000)]
* gdbtypes.c: Remove excessive parentheses at the return keywords.
Alan Modra [Fri, 10 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
gdbadmin [Fri, 10 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Joel Brobecker [Thu, 9 Apr 2009 20:11:57 +0000 (20:11 +0000)]
* gdb.texinfo (Set Breaks): Rewrite a paragraph to avoid a warning
about a missing dot or coma after @xref.
H.J. Lu [Thu, 9 Apr 2009 15:54:10 +0000 (15:54 +0000)]
2009-04-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* configure.ac: Bump minimum GMP/MPFR versions to 4.2 and 2.3.1.
* configure: Regenerate.
H.J. Lu [Thu, 9 Apr 2009 15:40:57 +0000 (15:40 +0000)]
2009-04-09 H.J. Lu <hongjiu.lu@intel.com>
PR gas/10039
* configure.ac: Require texinfo 4.7.
* configure: Regenerated.
H.J. Lu [Thu, 9 Apr 2009 15:39:50 +0000 (15:39 +0000)]
2009-04-09 Steve Ellcey <sje@cup.hp.com>
* Makefil.def (languages): New entries.
* Makefile.tpl (check-gcc-*): New generic target.
* Makefile.in: Regenerate.
Alan Modra [Thu, 9 Apr 2009 01:00:04 +0000 (01:00 +0000)]
daily update
gdbadmin [Thu, 9 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
DJ Delorie [Wed, 8 Apr 2009 20:39:35 +0000 (20:39 +0000)]
[cgen]
* cpu/mep-c5.cpu: New.
* cpu/mep-core.cpu: Add C5 support.
* cpu/mep.opc: Likewise.
[opcodes]
* mep-asm.c: Regenerate.
* mep-desc.c: Regenerate.
* mep-desc.h: Regenerate.
* mep-dis.c: Regenerate.
* mep-ibld.c: Regenerate.
* mep-opc.c: Regenerate.
* mep-opc.h: Regenerate.
[sid]
* component/cache/cache.cxx (cache_component::cache_component):
Add write_hint_pin(). Attach it to write-hint.
(cache_component::write_hint): New.
* component/cache/cache.h (write_hint_pin): New.
(write_hint): New.
* component/cgen-cpu/mep/Makefile.am: Regenerate.
* component/cgen-cpu/mep/Makefile.in: Regenerate.
* component/cgen-cpu/mep/mep-core1-decode.cxx: Regenerate.
* component/cgen-cpu/mep/mep-core1-decode.h: Regenerate.
* component/cgen-cpu/mep/mep-core1-defs.h: Regenerate.
* component/cgen-cpu/mep/mep-core1-model.cxx: Regenerate.
* component/cgen-cpu/mep/mep-core1-model.h: Regenerate.
* component/cgen-cpu/mep/mep-core1-sem.cxx: Regenerate.
* component/cgen-cpu/mep/mep-decode.cxx: Regenerate.
* component/cgen-cpu/mep/mep-decode.h: Regenerate.
* component/cgen-cpu/mep/mep-defs.h: Regenerate.
* component/cgen-cpu/mep/mep-desc.h: Regenerate.
* component/cgen-cpu/mep/mep-model.cxx: Regenerate.
* component/cgen-cpu/mep/mep-model.h: Regenerate.
* component/cgen-cpu/mep/mep-sem.cxx: Regenerate.
* component/cgen-cpu/mep/mep.cxx (mep_cpu): Connect
write-hint pin.
(do_cache): Add C5 support.
(do_cache_prefetch): Likewise.
(do_casb3, do_cash3, do_casw3): New.
* component/cgen-cpu/mep/mep.h: Add C5 support and write-hint pin.
(do_casb3, do_cash3, do_casw3): New.
* component/families/mep/Makefile.in: Regenerate.
* component/families/mep/dsu.in: Add C5 support.
* main/dynamic/mainDynamic.cxx: Add C5 support.
* main/dynamic/mepCfg.cxx: Connect write-hint pin.
* main/dynamic/mepCfg.h: Add C5 support.
DJ Delorie [Wed, 8 Apr 2009 16:42:56 +0000 (16:42 +0000)]
merge from gcc
H.J. Lu [Wed, 8 Apr 2009 16:04:48 +0000 (16:04 +0000)]
bfd/
2009-04-08 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (elf_link_add_object_symbols): Warn alternate ELF
machine code.
include/
2009-04-08 H.J. Lu <hongjiu.lu@intel.com>
* bfdlink.h (bfd_link_info): Add warn_alternate_em.
ld/
2009-04-08 H.J. Lu <hongjiu.lu@intel.com>
* lexsup.c (option_values): Add OPTION_WARN_ALTERNATE_EM.
(ld_options): Likewise.
(parse_args): Likewise.
* ld.texinfo: Document --warn-alternate-em.
* NEWS: Mention --warn-alternate-em.
Vladimir Prus [Wed, 8 Apr 2009 06:58:36 +0000 (06:58 +0000)]
Implement -exec-jump.
* mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
* mi/mi-main.c (mi_cmd_exec_jump): New.
* mi/mi-cmds.c (mi_cmds): Register exec-jump.
DJ Delorie [Wed, 8 Apr 2009 02:24:18 +0000 (02:24 +0000)]
[include/elf]
* mep.h (EF_MEP_CPU_C5): New.
[bfd]
* archures.c: Add bfd_mach_mep_c5.
* bfd-in2.h: Likewise.
* cpu-mep.c: Add bfd_c5_arch.
* elf32-mep.c: Support it.
[gas]
* config/tc-mep.c: Add UCI/DSP instruction support. Add C5 support.
(md_show_usage): Change default endian to little.
* config/tc-mep.h (TARGET_BYTES_BIG_ENDIAN): Change default to little.
[ld]
* emulparams/elf32mep.sh: Change default endian to little.
Alan Modra [Wed, 8 Apr 2009 01:00:09 +0000 (01:00 +0000)]
daily update
gdbadmin [Wed, 8 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Tue, 7 Apr 2009 20:43:49 +0000 (20:43 +0000)]
* symfile.c (symbol_file_clear): Fix indentation.
H.J. Lu [Tue, 7 Apr 2009 20:04:07 +0000 (20:04 +0000)]
2009-04-07 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (_bfd_elf_section_already_linked): Add `\n' for
info->callbacks->einfo.
* linker.c (_bfd_generic_section_already_linked): Likewise.
Peter Bergner [Tue, 7 Apr 2009 18:28:02 +0000 (18:28 +0000)]
opcodes/
* ppc-opc.c (powerpc_opcodes) <"tlbilxlpid", "tlbilxpid", "tlbilxva",
"tlbilx">: Use secondary opcode "18" as per the ISA 2.06 documentation.
Reorder entries so the extended mnemonics are listed before tlbilx.
gas/testsuite/
* gas/ppc/e500mc.d: Update to match extended mnemonics.
DJ Delorie [Tue, 7 Apr 2009 18:21:20 +0000 (18:21 +0000)]
[bfd]
* elf32-h8300.c (elf32_h8_relax_section): Relax MOVA opcodes.
[gas]
* tc-h8300.c (do_a_fix_imm): Pass the insn, force relocs for MOVA
immediates.
(build_bytes): Pass insn to do_a_fix_imm.
[include/opcode]
* h8300.h: Add relaxation attributes to MOVA opcodes.
Alan Modra [Tue, 7 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
gdbadmin [Tue, 7 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
H.J. Lu [Mon, 6 Apr 2009 16:48:35 +0000 (16:48 +0000)]
2009-04-06 H.J. Lu <hongjiu.lu@intel.com>
* coff-x86_64.c (bfd_pe_print_pdata): Defined to
_bfd_pex64_print_pdata only if PE is defined.
* libpei.h (_bfd_pep_print_x64_pdata): Renamed to ...
(_bfd_pex64_print_pdata): This.
* peXXigen.c (_bfd_pep_print_x64_pdata): Renamed to ...
(_bfd_pex64_print_pdata): This. Defined only if COFF_WITH_pex64
is defined.
Alan Modra [Mon, 6 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
gdbadmin [Mon, 6 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Mark Kettenis [Sun, 5 Apr 2009 22:37:19 +0000 (22:37 +0000)]
* sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
Kai Tietz [Sun, 5 Apr 2009 18:12:20 +0000 (18:12 +0000)]
2009-04-05 Kai Tietz <kai.tietz@onevision.com>
* coff-x86_64.c (bfd_pe_print_pdata): Define as
_bfd_pep_print_x64_pdata.
* libpei.h (_bfd_pep_print_x64_pdata): Add prototype.
* peXXigen.c (_bfd_pep_print_x64_pdata): New.
Alan Modra [Sun, 5 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
gdbadmin [Sun, 5 Apr 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
gdbadmin [Sat, 4 Apr 2009 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 4 Apr 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Ulrich Weigand [Fri, 3 Apr 2009 20:15:51 +0000 (20:15 +0000)]
* inferiors.c (get_thread_process): Make global.
* server.h (get_thread_process): Add prototype.
* thread-db.c (find_one_thread): Use get_thread_process
instead of current_process.
(thread_db_get_tls_address): Do not crash if called when
thread layer is not yet initialized.
Ulrich Weigand [Fri, 3 Apr 2009 16:07:03 +0000 (16:07 +0000)]
* ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
(ppc_linux_auxv_parse): New function.
(ppc_linux_read_description): Use ppc_linux_target_wordsize.
(_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
sterling [Fri, 3 Apr 2009 16:06:39 +0000 (16:06 +0000)]
2009-04-02 Sterling Augustine <sterling@jaw.hq.tensilica.com>
* elf32-xtensa.c (relax_property_section): Always set r_offset
to zero.
Ulrich Weigand [Fri, 3 Apr 2009 14:38:38 +0000 (14:38 +0000)]
* remote-utils.c (prepare_resume_reply): Null-terminate packet.
* spu-low.c (current_tid): Rename to ...
(current_ptid): ... this.
(fetch_ppc_register, fetch_ppc_memory, store_ppc_memory,
spu_proc_xfer_spu, spu_resume, spu_request_interrupt): Use
ptid_get_lwp (current_ptid) instead of current_tid.
(spu_kill, spu_detach, spu_join, spu_wait): Use pid argument
instead of current_tid. Use find_process_pid to verify pid
argument is valid. Pass proper argument to remove_process.
(spu_thread_alive): Compare current_ptid instead of current_tid.
(spu_resume): Likewise.
Ulrich Weigand [Fri, 3 Apr 2009 14:37:56 +0000 (14:37 +0000)]
* spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
BFD to contents of SPU name note.
(spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
with "from_tty" argument 1 instead of 0.
Ulrich Weigand [Fri, 3 Apr 2009 14:37:03 +0000 (14:37 +0000)]
* gdb.base/attach.exp: Re-enable for spu*-*-* targets.
* gdb.server/ext-attach.exp: Likewise.
Pedro Alves [Fri, 3 Apr 2009 11:40:02 +0000 (11:40 +0000)]
* linux-low.c (usr_store_inferior_registers): Declare local `pid'
variable.
Vladimir Prus [Fri, 3 Apr 2009 11:23:18 +0000 (11:23 +0000)]
Eliminate some sleep usage.
* gdb.mi/basics.c (do_nothing): New.
(main): Use do_nothing instead of printf, so that
not to introduce race condition between output of
inferiour and output of gdb. Do not use sleep as it
is not generally available on embedded targets.
Alan Modra [Fri, 3 Apr 2009 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 3 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Thu, 2 Apr 2009 22:40:09 +0000 (22:40 +0000)]
* gdb.server/ext-attach.exp: Expect an optional process id after
"Detached from remote process".
Jan Kratochvil [Thu, 2 Apr 2009 21:01:40 +0000 (21:01 +0000)]
gdb/
* dwarf2read.c
(new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
Create the symbol in local scope.
* symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
gdb/testsuite/
* gdb.dwarf2/dw2-unresolved-main.c, gdb.dwarf2/dw2-unresolved.S,
gdb.dwarf2/dw2-unresolved.exp: New.
Keith Seitz [Thu, 2 Apr 2009 17:34:24 +0000 (17:34 +0000)]
* stabsread.c (read_member_functions): GCC may emit an extra space
at the end of the names "__base_ctor" and "__base_dtor"; so ignore
whitespace when looking for these functions.
Pedro Alves [Thu, 2 Apr 2009 16:11:47 +0000 (16:11 +0000)]
* gdb.mi/mi-nonstop-exit.exp: Don't check isnative. Use
mi_run_to_main.
Joel Brobecker [Thu, 2 Apr 2009 15:56:08 +0000 (15:56 +0000)]
* gdb.texinfo (Backtrace): Add a parameter in frame 1 of the first
example, and add a small explanation about it.
(Print Settings): Change the documentation of the "set print
frame-arguments" to reflect the fact that the default is now "scalars".
Joel Brobecker [Thu, 2 Apr 2009 15:54:49 +0000 (15:54 +0000)]
* gdb.texinfo (Print Settings): Add kindex for command "set
print frame-arguments".
Pedro Alves [Thu, 2 Apr 2009 15:43:09 +0000 (15:43 +0000)]
* gdb.mi/mi-nonstop.exp: Don't check isnative. Use
mi_run_to_main. Skip thread exit test on remote targets.
* gdb.mi/mi-nsintrall.exp: Don't check isnative. Use
mi_run_to_main.
* gdb.mi/mi-nsmoribund.exp: Don't check isnative. Use
mi_run_to_main.
* lib/mi-support.exp (mi_gdb_target_cmd): Remove trailing anchor
when expecting ^connected. Detect when the target doesn't support
non-stop mode.
(mi_run_cmd): Detect if non-stop mode was requested by isn't
supported. Return -1 on error, 0 on success.
(mi_runto_helper): Don't expect a stop if mi_run_cmd failed.
(mi_runto): Return mi_runto_helper's result explicitly.
clyon [Thu, 2 Apr 2009 14:12:44 +0000 (14:12 +0000)]
2009-04-02 Christophe Lyon <christophe.lyon@st.com>
bfd/
* elf32-arm.c (elf32_arm_stub_long_branch_v4t_thumb_thumb,
elf32_arm_stub_long_branch_v4t_thumb_thumb_pic): Two new long
branch stubs.
(elf32_arm_stub_type): New enum values for the two new stubs.
(arm_type_of_stub): Make use of the two new stubs.
(arm_size_one_stub): Handle the two new stubs.
testsuite/
* ld-arm/farcall-thumb-thumb-pic-veneer.d: Update expected
results.
* ld-arm/farcall-thumb-thumb.d: Likewise.
Peter Bergner [Thu, 2 Apr 2009 13:30:53 +0000 (13:30 +0000)]
opcodes/
* ppc-dis.c (powerpc_init_dialect): Do not choose a default dialect
due to -many/-Many.
(print_insn_powerpc): Make sure we only deprecate instructions using
the original dialect and not a modified dialect due to -Many handling.
Move the handling of the condition register and default operands to
the end of the if/else if/else chain.
* ppc-opc.c (powerpc_opcodes): Reorder the opcode table so that
instructions from newer processors are listed before older ones.
<"icblce", "sync", "eieio", "tlbld">: Deprecate for processors
that have instructions with conflicting opcodes.
Peter Bergner [Thu, 2 Apr 2009 00:42:28 +0000 (00:42 +0000)]
opcodes/
* ppc-opc.c (powerpc_opcodes) <"dcbzl">: Merge the POWER4 and
E500MC entries.
Matt Thomas [Thu, 2 Apr 2009 00:20:41 +0000 (00:20 +0000)]
2009-04-01 Matt Thomas <matt@netbsd.org>
* elf32-vax.c (elf_vax_check_relocs): Do not put relocations against
hidden symbols into the GOT or PLT.GOT.
(elf_vax_relocate_section): Do not emit a PCREL reloc
into a shared object if it is against a hidden symbol.
Alan Modra [Thu, 2 Apr 2009 00:00:08 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 2 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Wed, 1 Apr 2009 22:50:24 +0000 (22:50 +0000)]
2009-04-01 Pedro Alves <pedro@codesourcery.com>
Implement the multiprocess extensions, and add linux multiprocess
support.
* server.h (ULONGEST): Declare.
(struct ptid, ptid_t): New.
(minus_one_ptid, null_ptid): Declare.
(ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
(ptid_get_tid, ptid_equal, ptid_is_pid): Declare.
(struct inferior_list_entry): Change `id' type from unsigned from
to ptid_t.
(struct sym_cache, struct breakpoint, struct
process_info_private): Forward declare.
(struct process_info): Declare.
(current_process): Declare.
(all_processes): Declare.
(initialize_inferiors): Declare.
(add_thread): Adjust to use ptid_t.
(thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): Ditto.
(add_process, remove_process, find_thread_pid): Declare.
(find_inferior_id): Adjust to use ptid_t.
(cont_thread, general_thread, step_thread): Change type to ptid_t.
(multi_process): Declare.
(push_event): Adjust to use ptid_t.
(read_ptid, write_ptid): Declare.
(prepare_resume_reply): Adjust to use ptid_t.
(clear_symbol_cache): Declare.
* inferiors.c (all_processes): New.
(null_ptid, minus_one_ptid): New.
(ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
(ptid_get_tid, ptid_equal, ptid_is_pid): New.
(add_thread): Change unsigned long to ptid. Remove gdb_id
parameter. Adjust.
(thread_id_to_gdb_id, thread_to_gdb_id): Change unsigned long to ptid.
(gdb_id_to_thread): Rename to ...
(find_thread_pid): ... this. Change unsigned long to ptid.
(gdb_id_to_thread_id, find_inferior_id): Change unsigned long to ptid.
(loaded_dll, pull_pid_from_list): Adjust.
(add_process, remove_process, find_process_pid)
(get_thread_process, current_process, initialize_inferiors): New.
* target.h (struct thread_resume) <thread>: Change type to ptid_t.
(struct target_waitstatus) <related_pid>: Ditto.
(struct target_ops) <kill, detach>: Add `pid' argument. Change
return type to int.
(struct target_ops) <join>: Add `pid' argument.
(struct target_ops) <thread_alive>: Change pid's type to ptid_t.
(struct target_ops) <wait>: Add `ptid' field. Change return type
to ptid.
(kill_inferior, detach_inferior, join_inferior): Add `pid' argument.
(mywait): Add `ptid' argument. Change return type to ptid_t.
(target_pid_to_str): Declare.
* target.c (set_desired_inferior): Adjust to use ptids.
(mywait): Add new `ptid' argument. Adjust.
(target_pid_to_str): New.
* mem-break.h (free_all_breakpoints): Declare.
* mem-break.c (breakpoints): Delelete.
(set_breakpoint_at, delete_breakpoint, find_breakpoint_at)
(check_mem_read, check_mem_write, delete_all_breakpoints): Adjust
to use per-process breakpoint list.
(free_all_breakpoints): New.
* remote-utils.c (struct sym_cache) <name>: Drop `const'.
(symbol_cache, all_symbols_looked_up): Delete.
(hexchars): New.
(ishex, unpack_varlen_hex, write_ptid, hex_or_minus_one,
read_ptid): New.
(prepare_resume_reply): Change ptid argument's type from unsigned
long to ptid_t. Adjust. Implement W;process and X;process.
(free_sym_cache, clear_symbol_cache): New.
(look_up_one_symbol): Adjust to per-process symbol cache. *
* server.c (cont_thread, general_thread, step_thread): Change type
to ptid_t.
(attached): Delete.
(multi_process): New.
(last_ptid): Change type to ptid_t.
(struct vstop_notif) <ptid>: Change type to ptid_t.
(queue_stop_reply, push_event): Change `ptid' argument's type to
ptid_t.
(discard_queued_stop_replies): Add `pid' argument.
(start_inferior): Adjust to use ptids. Adjust to mywait interface
changes. Don't reference the `attached' global.
(attach_inferior): Adjust to mywait interface changes.
(handle_query): Adjust to use ptids. Parse GDB's qSupported
features. Handle and report "multiprocess+". Handle
"qAttached:PID".
(handle_v_cont): Adjust to use ptids. Adjust to mywait interface
changes.
(handle_v_kill): New.
(handle_v_stopped): Adjust to use target_pid_to_str.
(handle_v_requests): Allow multiple attaches and runs when
multiprocess extensions are in effect. Handle "vKill".
(myresume): Adjust to use ptids.
(queue_stop_reply_callback): Add `arg' parameter. Handle it.
(handle_status): Adjust to discard_queued_stop_replies interface
change.
(first_thread_of, kill_inferior_callback)
(detach_or_kill_inferior_callback, join_inferiors_callback): New.
(main): Call initialize_inferiors. Adjust to use ptids, killing
and detaching from all inferiors. Handle multiprocess packet
variants.
* linux-low.h: Include gdb_proc_service.h.
(struct process_info_private): New.
(struct linux_target_ops) <pid_of>: Use ptid_get_pid.
<lwpid_of>: Use ptid_get_lwp.
(get_lwp_thread): Adjust.
(struct lwp_info): Add `dead' member.
(find_lwp_pid): Declare.
* linux-low.c (thread_db_active): Delete.
(new_inferior): Adjust comment.
(inferior_pid): Delete.
(linux_add_process): New.
(handle_extended_wait): Adjust.
(add_lwp): Change unsigned long to ptid.
(linux_create_inferior): Add process to processes table. Adjust
to use ptids. Don't set new_inferior here.
(linux_attach_lwp): Rename to ...
(linux_attach_lwp_1): ... this. Add `initial' argument. Handle
it. Adjust to use ptids.
(linux_attach_lwp): New.
(linux_attach): Add process to processes table. Don't set
new_inferior here.
(struct counter): New.
(second_thread_of_pid_p, last_thread_of_process_p): New.
(linux_kill_one_lwp): Add `args' parameter. Handle it. Adjust to
multiple processes.
(linux_kill): Add `pid' argument. Handle it. Adjust to multiple
processes. Remove process from process table.
(linux_detach_one_lwp): Add `args' parameter. Handle it. Adjust
to multiple processes.
(any_thread_of): New.
(linux_detach): Add `pid' argument, and handle it. Remove process
from processes table.
(linux_join): Add `pid' argument. Handle it.
(linux_thread_alive): Change unsighed long argument to ptid_t.
Consider dead lwps as not being alive.
(status_pending_p): Rename `dummy' argument to `arg'. Filter out
threads we're not interested in.
(same_lwp, find_lwp_pid): New.
(linux_wait_for_lwp): Change `pid' argument's type from int to
ptid_t. Adjust.
(linux_wait_for_event): Rename to ...
(linux_wait_for_event_1): ... this. Change `pid' argument's type
from int to ptid_t. Adjust.
(linux_wait_for_event): New.
(linux_wait_1): Add `ptid' argument. Change return type to
ptid_t. Adjust. Use last_thread_of_process_p. Remove processes
that exit from the process table.
(linux_wait): Add `ptid' argument. Change return type to ptid_t.
Adjust.
(mark_lwp_dead): New.
(wait_for_sigstop): Adjust to use ptids. If a process exits while
stopping all threads, mark its main lwp as dead.
(linux_set_resume_request, linux_resume_one_thread): Adjust to use
ptids.
(fetch_register, usr_store_inferior_registers)
(regsets_fetch_inferior_registers)
(regsets_store_inferior_registers, linux_read_memory)
(linux_write_memory): Inline `inferior_pid'.
(linux_look_up_symbols): Adjust to use per-process
`thread_db_active'.
(linux_request_interrupt): Adjust to use ptids.
(linux_read_auxv): Inline `inferior_pid'.
(initialize_low): Don't reference thread_db_active.
* gdb_proc_service.h (struct ps_prochandle) <pid>: Remove.
* proc-service.c (ps_lgetregs): Use find_lwp_pid.
(ps_getpid): Return the pid of the current inferior.
* thread-db.c (proc_handle, thread_agent): Delete.
(thread_db_create_event, thread_db_enable_reporting): Adjust to
per-process data.
(find_one_thread): Change argument type to ptid_t. Adjust to
per-process data.
(maybe_attach_thread): Adjust to per-process data and ptids.
(thread_db_find_new_threads): Ditto.
(thread_db_init): Ditto.
* spu-low.c (spu_create_inferior, spu_attach): Add process to
processes table. Adjust to use ptids.
(spu_kill, spu_detach): Adjust interface. Remove process from
processes table.
(spu_join, spu_thread_alive): Adjust interface.
(spu_wait): Adjust interface. Remove process from processes
table. Adjust to use ptids.
* win32-low.c (current_inferior_tid): Delete.
(current_inferior_ptid): New.
(debug_event_ptid): New.
(thread_rec): Take a ptid. Adjust.
(child_add_thread): Add `pid' argument. Adjust to use ptids.
(child_delete_thread): Ditto.
(do_initial_child_stuff): Add `attached' argument. Add process to
processes table.
(child_fetch_inferior_registers, child_store_inferior_registers):
Adjust.
(win32_create_inferior): Pass 0 to do_initial_child_stuff.
(win32_attach): Pass 1 to do_initial_child_stuff.
(win32_kill): Adjust interface. Remove process from processes
table.
(win32_detach): Ditto.
(win32_join): Adjust interface.
(win32_thread_alive): Take a ptid.
(win32_resume): Adjust to use ptids.
(get_child_debug_event): Ditto.
(win32_wait): Adjust interface. Remove exiting process from
processes table.
Pedro Alves [Wed, 1 Apr 2009 22:48:05 +0000 (22:48 +0000)]
Non-stop mode support.
* server.h (non_stop): Declare.
(gdb_client_data, handler_func): Declare.
(delete_file_handler, add_file_handler, start_event_loop):
Declare.
(handle_serial_event, handle_target_event, push_event)
(putpkt_notif): Declare.
* target.h (enum resume_kind): New.
(struct thread_resume): Replace `step' field by `kind' field.
(TARGET_WNOHANG): Define.
(struct target_ops) <wait>: Add `options' argument.
<supports_non_stop, async, start_non_stop>: New fields.
(target_supports_non_stop, target_async): New.
(start_non_stop): Declare.
(mywait): Add `options' argument.
* target.c (mywait): Add `options' argument. Print child exit
notifications here.
(start_non_stop): New.
* server.c (non_stop, own_buf, mem_buf): New globals.
(struct vstop_notif): New.
(notif_queue): New global.
(queue_stop_reply, push_event, discard_queued_stop_replies)
(send_next_stop_reply): New.
(start_inferior): Adjust to use resume_kind. Adjust to mywait
interface changes.
(attach_inferior): In non-stop mode, don't wait for the target
here.
(handle_general_set): Handle QNonStop.
(handle_query): When handling qC, return the current general
thread, instead of the first thread of the list.
(handle_query): If the backend supports non-stop mode, include
QNonStop+ in the qSupported query response.
(handle_v_cont): Adjust to use resume_kind. Handle resume_stop
and non-stop mode.
(handle_v_attach, handle_v_run): Handle non-stop mode.
(handle_v_stopped): New.
(handle_v_requests): Report support for vCont;t. Handle vStopped.
(myresume): Adjust to use resume_kind. Handle non-stop.
(queue_stop_reply_callback): New.
(handle_status): Handle non-stop mode.
(main): Clear non_stop flag on reconnection. Use the event-loop.
Refactor serial protocol handling from here ...
(process_serial_event): ... to this new function. When GDB
selects any thread, select one here. In non-stop mode, wait until
GDB acks all pending events before exiting.
(handle_serial_event, handle_target_event): New.
* remote-utils.c (remote_open): Install remote_desc in the event
loop.
(remote_close): Remove remote_desc from the event loop.
(putpkt_binary): Rename to...
(putpkt_binary_1): ... this. Add `is_notic' argument. Handle it.
(putpkt_binary): New as wrapper around putpkt_binary_1.
(putpkt_notif): New.
(prepare_resume_reply): In non-stop mode, don't change the
general_thread.
* event-loop.c: New.
* Makefile.in (OBJ): Add event-loop.o.
(event-loop.o): New rule.
* linux-low.h (pid_of): Moved here.
(lwpid_of): New.
(get_lwp_thread): Use lwpid_of.
(struct lwp_info): Delete `lwpid' field. Add `suspended' field.
* linux-low.c (pid_of): Delete.
(inferior_pid): Use lwpid_of.
(linux_event_pipe): New.
(target_is_async_p): New.
(delete_lwp): New.
(handle_extended_wait): Use lwpid_of.
(add_lwp): Don't set lwpid field.
(linux_attach_lwp): Adjust debug output. Use lwpid_of.
(linux_kill_one_lwp): If killing a running lwp, stop it first.
Use lwpid_of. Adjust to linux_wait_for_event interface changes.
(linux_detach_one_lwp): If detaching from a running lwp, stop it
first. Adjust to linux_wait_for_event interface changes. Use
lwpid_of.
(linux_detach): Don't delete the main lwp here.
(linux_join): Use my_waitpid. Avoid signal_pid. Use lwpid_of.
(status_pending_p): Don't consider explicitly suspended lwps.
(linux_wait_for_lwp): Take an integer pid instead of a lwp_info
pointer. Add OPTIONS argument. Change return type to int. Use
my_waitpid instead of sleeping. Handle WNOHANG. Use lwpid_of.
(linux_wait_for_event): Take an integer pid instead of a lwp_info
pointer. Add status pointer argument. Return a pid instead of a
status. Use lwpid_of. Adjust to linux_wait_for_lwp interface
changes. In non-stop mode, don't switch to a random thread.
(linux_wait): Rename to...
(linux_wait_1): ... this. Add target_options argument, and handle
it. Adjust to use resume_kind. Use lwpid_of. In non-stop mode,
don't handle the continue thread. Handle TARGET_WNOHANG. Merge
clean exit and signal exit code. Don't stop all threads in
non-stop mode. In all-stop mode, only stop all threads when
reporting a stop to GDB. Handle explicit thread stop requests.
(async_file_flush, async_file_mark): New.
(linux_wait): New.
(send_sigstop): Use lwpid_of.
(wait_for_sigstop): Use lwpid_of. Adjust to linux_wait_for_event
interface changes. In non-stop mode, don't switch to a random
thread.
(linux_resume_one_lwp): Use lwpid_of.
(linux_continue_one_thread, linux_queue_one_thread): Merge into ...
(linux_resume_one_thread): ... this. Handle resume_stop. In
non-stop mode, don't look for pending flag in all threads.
(resume_status_pending_p): Don't consider explicitly suspended
threads.
(my_waitpid): Reimplement. Emulate __WALL.
(linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
Use lwpid_of.
(sigchld_handler, linux_supports_non_stop, linux_async)
(linux_start_non_stop): New.
(linux_target_ops): Register linux_supports_non_stop, linux_async
and linux_start_non_stop.
(initialize_low): Install SIGCHLD handler.
* thread-db.c (thread_db_create_event, find_one_thread)
(thread_db_get_tls_address): Use lwpid_of.
* win32-low.c (win32_detach): Adjust to use resume_kind.
(win32_wait): Add `options' argument.
* spu-low.c (spu_resume): Adjust to use resume_kind.
(spu_wait): Add `options' argument.
Pedro Alves [Wed, 1 Apr 2009 22:31:45 +0000 (22:31 +0000)]
Decouple target code from remote protocol.
* target.h (enum target_waitkind): New.
(struct target_waitstatus): New.
(struct target_ops) <wait>: Return an unsigned long. Take a
target_waitstatus pointer instead of a char pointer.
(mywait): Likewise.
* target.c (mywait): Change prototype to return an unsigned long.
Take a target_waitstatus pointer instead of a char pointer. Adjust.
* server.h (thread_from_wait, old_thread_from_wait): Delete
declarations.
(prepare_resume_reply): Change prototype to take a
target_waitstatus.
* server.c (thread_from_wait, old_thread_from_wait): Delete.
(last_status, last_ptid): New.
(start_inferior): Remove "statusptr" argument. Adjust. Return a
pid instead of a signal.
(attach_inferior): Remove "status" and "signal" parameters.
Adjust.
(handle_query): For qGetTLSAddr, parse the thread id with strtol,
not as an address.
(handle_v_cont, handle_v_attach, handle_v_run, handle_v_kill)
(handle_v_requests, myresume): Remove "status" and "signal"
parameters. Adjust.
(handle_status): New.
(main): Delete local `status'. Adjust.
* remote-utils.c: Include target.h.
(prepare_resume_reply): Change prototype to take a
target_waitstatus. Adjust.
* linux-low.c (linux_wait): Adjust to new target_ops->wait
interface.
* spu-low.c (spu_wait): Adjust.
* win32-low.c (enum target_waitkind, struct target_waitstatus):
Delete.
(win32_wait): Adjust.
Pedro Alves [Wed, 1 Apr 2009 22:29:33 +0000 (22:29 +0000)]
* target.h (struct thread_resume): Delete leave_stopped member.
(struct target_ops): Add a `n' argument to the `resume' callback.
* server.c (start_inferior): Adjust.
(handle_v_cont, myresume): Adjust.
* linux-low.c (check_removed_breakpoint): Adjust to resume
interface change, and to removed leave_stopped field.
(resume_ptr): Delete.
(struct thread_resume_array): New.
(linux_set_resume_request): Add new `arg' parameter. Adjust to
resume interface change.
(linux_continue_one_thread, linux_queue_one_thread)
(resume_status_pending_p): Check if the resume field is NULL
instead of checking the leave_stopped member.
(linux_resume): Adjust to the target resume interface change.
* spu-low.c (spu_resume): Adjust to the target resume interface
change.
* win32-low.c (win32_detach, win32_resume): Ditto.