DJ Delorie [Mon, 13 Apr 2009 19:43:01 +0000 (19:43 +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:52 +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.
H.J. Lu [Sat, 11 Apr 2009 14:42:17 +0000 (14:42 +0000)]
Move testsuite ChangeLog entries to testsuite/ChangeLog*.
H.J. Lu [Sat, 11 Apr 2009 14:06:56 +0000 (14:06 +0000)]
2009-04-11 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10047
* ldfile.c (ldfile_find_command_file): First try raw name.
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:54 +0000 (15:57 +0000)]
gdb/
* varobj.c (varobj_invalidate): Fix indentation.
Jan Kratochvil [Fri, 10 Apr 2009 03:36:32 +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.
Nick Clifton [Thu, 9 Apr 2009 16:06:48 +0000 (16:06 +0000)]
PR 9824
* ld.texinfo (Output Section Constraint): New node. Documents the
ONLY_IF_RO and ONLY_IF_RW constraints.
(Symbolic Constants): New node. Documents the CONSTANT operator.
Catherine Moore [Thu, 9 Apr 2009 15:55:59 +0000 (15:55 +0000)]
2009-04-09 Catherine Moore <clm@codesourcery.com>
* config/tc-mips.c (mips_fix_24k): Declare.
(check_for_24k_errata): New.
(mips_cleanup): Call check_for_24k_errata.
(start_noreorder): Likewise.
(md_mips_end): Likewise.
(s_change_sec): Likewise.
(s_change_section): Likewise.
(append_insn): Call check_for_24k_errata. Prevent
ERET/DERET instructions from being moved into delay
slots.
(OPTION_FIX_24K): New.
(OPTION_NO_FIX_24k) New.
(md_longopts): Add "mfix-24k" and "mno-fix-24k".
(md_parse_option): Handle fix-24k options.
(md_show_usage): Display fix-24k options.
* doc/c-mips.texi: Document.
* testsuite/gas/mips/mips.exp: Run new tests.
* testsuite/gas/mips/eret.s: New test.
* testsuite/gas/mips/eret.d: New test output.
* testsuite/gas/mips/eret.l: New test output.
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:52 +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.
Adam Nemet [Thu, 9 Apr 2009 15:28:56 +0000 (15:28 +0000)]
* config/tc-mips.c (mips_dwarf2_addr_size): Use HAVE_64BIT_OBJECTS
instead of HAVE_64BIT_SYMBOLS.
Alan Modra [Thu, 9 Apr 2009 13:55:35 +0000 (13:55 +0000)]
* emultempl/spuelf.em (embedded_spu_file): Use pex_one in place
of fork/execvp.
Nick Clifton [Thu, 9 Apr 2009 13:07:34 +0000 (13:07 +0000)]
* corefile.c (core_create_function_syms): Initialise a symbol's
is_func field based on the setting of the BSF_FUNCTION flag.
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 ***
H.J. Lu [Wed, 8 Apr 2009 21:48:47 +0000 (21:48 +0000)]
2009-04-08 H.J. Lu <hongjiu.lu@intel.com>
* ld-i386/abs.d: Add --32 for assembler and -melf_i386 for
linker.
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:57 +0000 (16:42 +0000)]
merge from gcc
H.J. Lu [Wed, 8 Apr 2009 16:04:50 +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:37 +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:23 +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:51 +0000 (20:43 +0000)]
* symfile.c (symbol_file_clear): Fix indentation.
H.J. Lu [Tue, 7 Apr 2009 20:04:08 +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:22 +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.
Nick Clifton [Tue, 7 Apr 2009 08:07:08 +0000 (08:07 +0000)]
* ld.texinfo (Output Section Address): Note that specifying an
address for an output section will only change the location
counter if the output section is used.
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:36 +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.
Kazu Hirata [Mon, 6 Apr 2009 01:21:09 +0000 (01:21 +0000)]
* ldfile.c (ldfile_find_command_file): Initialize result.
Alan Modra [Mon, 6 Apr 2009 01:00:05 +0000 (01:00 +0000)]
daily update
Kazu Hirata [Mon, 6 Apr 2009 00:47:09 +0000 (00:47 +0000)]
* ld.texinfo (-L): Mention that -L options do not affect how ld
searches for a linker script unless -T option is specified.
* ldfile.c (ldfile_find_command_file): Append the path obtained
from the program name to the search path instead of
prepending. Add a new parameter "default_only". Restrict the
search to the default script location if the new parameter is
true.
(ldfile_open_command_file_1): New.
(ldfile_open_command_file): Call ldfile_open_command_file_1.
(ldfile_open_default_command_file): New.
gdbadmin [Mon, 6 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Mark Kettenis [Sun, 5 Apr 2009 22:37:20 +0000 (22:37 +0000)]
* sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
Kai Tietz [Sun, 5 Apr 2009 18:12:21 +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:04 +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 Augustine [Fri, 3 Apr 2009 16:06:40 +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:39 +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:57 +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:04 +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:19 +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.
Nathan Sidwell [Fri, 3 Apr 2009 10:15:21 +0000 (10:15 +0000)]
* ld-scripts/rgn-at.s: Use explicit .section pseudos.
Dave Korn [Fri, 3 Apr 2009 09:25:32 +0000 (09:25 +0000)]
* ld-pe/image_size.d (#target): Also run test on Cygwin and x86_64
MinGW targets.
Nathan Sidwell [Fri, 3 Apr 2009 07:45:28 +0000 (07:45 +0000)]
* ldlang.c (lang_leave_output_section_statement): Set lma_region
if it is not overridden and section is for the same vma region as
the previous section.
* ld-scripts/rgn-at.exp: New.
* ld-scripts/rgn-at.s: New.
* ld-scripts/rgn-at1.d: New.
* ld-scripts/rgn-at1.t: New.
* ld-scripts/rgn-at2.d: New.
* ld-scripts/rgn-at2.t: New.
* ld-scripts/rgn-at3.d: New.
* ld-scripts/rgn-at3.t: New.
Dave Korn [Fri, 3 Apr 2009 07:00:26 +0000 (07:00 +0000)]
* ld-pe/export_dynamic_warning.s: Make dummy code portable.
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:10 +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:41 +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:25 +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.
Dave Korn [Thu, 2 Apr 2009 16:44:23 +0000 (16:44 +0000)]
* ld-pe/export_dynamic_warning.d (#warning): Fix regex pattern.
Pedro Alves [Thu, 2 Apr 2009 16:11:48 +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:50 +0000 (15:54 +0000)]
* gdb.texinfo (Print Settings): Add kindex for command "set
print frame-arguments".
Pedro Alves [Thu, 2 Apr 2009 15:43:10 +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.
Dave Korn [Thu, 2 Apr 2009 14:42:41 +0000 (14:42 +0000)]
ld/ChangeLog
PR ld/6744
* ld.texinfo (--export-dynamic): Mention --export-all-symbols.
* emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Issue
warning if --export-dynamic was passed on command-line.
* emultempl/pep.em (gld_${EMULATION_NAME}_after_parse): Likewise.
ld/testsuite/ChangeLog
PR ld/6744
* ld-pe/export_dynamic_warning.d: New test control file.
* ld-pe/export_dynamic_warning.s: New test source file.
* ld-pe/pe.exp: Also run export_dynamic_warning dump test.
Christophe Lyon [Thu, 2 Apr 2009 14:12:46 +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.
Dave Korn [Thu, 2 Apr 2009 13:47:44 +0000 (13:47 +0000)]
* inutils-all/objcopy.exp (strip_executable): Delete remote dest
file before downloading.
(strip_executable_with_saving_a_symbol): Likewise.
(keep_debug_symbols_and_test_copy): Likewise.
Peter Bergner [Thu, 2 Apr 2009 13:30:56 +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.
Nick Clifton [Thu, 2 Apr 2009 09:43:56 +0000 (09:43 +0000)]
* config/tc-arm.c (arm_cpus): Add entry for ARM Cortex-M0.
* doc/c-arm.texi: Added codes for processors ARM Cortex-M0 and
Cortex-M1.
Nick Clifton [Thu, 2 Apr 2009 09:34:22 +0000 (09:34 +0000)]
PR 9987
* lib/ld-lib.exp (check_gc_sections_available): Do not run garbage
collection tests for cygwin targets.
Ian Lance Taylor [Thu, 2 Apr 2009 04:19:03 +0000 (04:19 +0000)]
* gold.h (reserve_unordered_map): Define, three versions, one for
each version of Unordered_map.
* layout.cc (Layout::Layout): Remove options parameter. Add
number_of_input_files parameter. Don't initialize options_.
Initialize number_of_input_files_ and resized_signatures_. Move
sections_are_attached_.
(Layout::layout_group): Reserve space for group_signatures_.
(Layout::find_or_add_kept_section): Change name parameter to be a
reference. Resize signatures_ map when it gets large enough.
(Layout::layout_eh_frame): Use parameters->options() instead of
this->options_.
(Layout::make_output_section): Likewise.
(Layout::attach_allocated_section_to_segment): Likewise.
(Layout::finalize, Layout::create_executable_stack): Likewise.
(Layout::set_segment_offsets, Layout::create_interp): Likewise.
(Layout::finish_dynamic_section, Layout::write_binary): Likewise.
* layout.h (class Layout): Update declarations. Remove options_
field. Add number_of_input_files_ and resized_signatures_
fields. Move sections_are_attached_ field.
* main.cc (main): Pass number of input files to Layout
constructor. Don't pass options.
Peter Bergner [Thu, 2 Apr 2009 00:42:29 +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:42 +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.
Matt Thomas [Thu, 2 Apr 2009 00:10:46 +0000 (00:10 +0000)]
2009-04-01 Matt Thomas <matt@netbsd.org>
* config/tc-vax.c (synthetic_votstrs): add "jbbcci" and "jbbssi"
(md_assemble): emit symbol name when used as immediate in PIC mode.
(md_assemble): fix LP64 bug (use sizeof (valueT) instead 4).
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.
Pedro Alves [Wed, 1 Apr 2009 22:25:44 +0000 (22:25 +0000)]
gdb/gdbserver/
* linux-low.c (linux_wait_for_event): Don't clear the `stepping'
flag.
(wait_for_sigstop): Don't leave a finished single-step SIGTRAP
pending.
(linux_continue_one_thread): Only preserve the stepping flag if
there's a pending breakpoint.
gdb/testsuite/
* gdb.threads/pending-step.c, gdb.threads/pending-step.exp: New.
Joel Brobecker [Wed, 1 Apr 2009 22:08:03 +0000 (22:08 +0000)]
* gdb.base/funcargs.exp: Set print frame-arguments to "all".
* gdb.base/call-ar-st.exp: Set print frame-arguments to "all".
* gdb.ada/ref_param.exp: Set print frame-arguments to "all".
* gdb.ada/lang_switch.exp: Set print frame-arguments to "all".
Joel Brobecker [Wed, 1 Apr 2009 22:05:30 +0000 (22:05 +0000)]
* stack.c (print_frame_arguments): Set initial value to "scalars".
Sterling Augustine [Wed, 1 Apr 2009 21:07:14 +0000 (21:07 +0000)]
2009-04-01 Sterling Augustine <sterling@jaw.hq.tensilica.com>
* config/tc-xtensa.c (parse_arguments): call demand_empty_rest_of_line