OSDN Git Service
jjohnstn [Fri, 3 Apr 2009 22:46:14 +0000 (22:46 +0000)]
2009-04-03 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
* libc/include/stdio.h [__SCLE] (__sgetc_r): Prototype before define
to avoid a warning with -Wmissing-prototypes.
jjohnstn [Fri, 3 Apr 2009 22:42:31 +0000 (22:42 +0000)]
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/mmap_ea.c (mmap_ea): Check length argument.
jjohnstn [Fri, 3 Apr 2009 22:37:40 +0000 (22:37 +0000)]
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* spu/Makefile.in: Add new files.
* spu/times.c: New File.
* spu/getitimer.c: Likewise.
* spu/setitimer.c: Likewise.
jjohnstn [Fri, 3 Apr 2009 22:34:12 +0000 (22:34 +0000)]
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/sys/linux_syscalls.h: include <sys/types.h>
(linux_getpid, linux_gettid): Declare.
jjohnstn [Fri, 3 Apr 2009 22:32:25 +0000 (22:32 +0000)]
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* spu/Makefile.in: Add linux_getpid.o and linux_gettid.o.
* spu/linux_getpid.c: New file.
* spu/linux_getpid.c: New file.
jjohnstn [Fri, 3 Apr 2009 22:29:24 +0000 (22:29 +0000)]
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/spu-gmon.c: Tweaks to support simultaneous SPU
profiling.
jjohnstn [Fri, 3 Apr 2009 22:27:30 +0000 (22:27 +0000)]
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* spu/crt0.S (_start): Place spu_id in the first agument register.
uweigand [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.
jjohnstn [Fri, 3 Apr 2009 17:42:26 +0000 (17:42 +0000)]
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/include/math.h: Remove duplicate copysign prototype.
Fix __math_68881 define typo. Guard functions of the rint family.
jjohnstn [Fri, 3 Apr 2009 17:39:19 +0000 (17:39 +0000)]
2009-04-03 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_llrint.c: New file, implementing llrint().
* libm/common/sf_llrint.c: New file, implementing llrintf().
* libm/common/Makefile.am: Add s_llrint.c (src); sf_llrint.c (fsrc).
* libm/common/Makefile.in: Regenerate.
uweigand [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.
uweigand [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.
uweigand [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.
uweigand [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.
corinna [Fri, 3 Apr 2009 11:51:31 +0000 (11:51 +0000)]
* Various syntactical and semantical fixes throughout.
corinna [Fri, 3 Apr 2009 11:50:25 +0000 (11:50 +0000)]
* utils.sgml: Various syntactical and semantical fixes.
* cygcheck.cc (usage): Fix --find-package explanation.
palves [Fri, 3 Apr 2009 11:40:02 +0000 (11:40 +0000)]
* linux-low.c (usr_store_inferior_registers): Declare local `pid'
variable.
vprus [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.
nathan [Fri, 3 Apr 2009 10:15:20 +0000 (10:15 +0000)]
* ld-scripts/rgn-at.s: Use explicit .section pseudos.
davek [Fri, 3 Apr 2009 09:25:31 +0000 (09:25 +0000)]
* ld-pe/image_size.d (#target): Also run test on Cygwin and x86_64
MinGW targets.
nathan [Fri, 3 Apr 2009 07:45:27 +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.
davek [Fri, 3 Apr 2009 07:00:25 +0000 (07:00 +0000)]
* ld-pe/export_dynamic_warning.s: Make dummy code portable.
amodra [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 ***
palves [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".
jkratoch [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.
corinna [Thu, 2 Apr 2009 17:44:01 +0000 (17:44 +0000)]
* environ.cc (build_env): Fix length calculation of resulting
wide char environment string.
kseitz [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.
davek [Thu, 2 Apr 2009 16:44:23 +0000 (16:44 +0000)]
* ld-pe/export_dynamic_warning.d (#warning): Fix regex pattern.
palves [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.
brobecke [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".
brobecke [Thu, 2 Apr 2009 15:54:49 +0000 (15:54 +0000)]
* gdb.texinfo (Print Settings): Add kindex for command "set
print frame-arguments".
palves [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.
davek [Thu, 2 Apr 2009 14:42:40 +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.
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.
davek [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.
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.
nickc [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.
nickc [Thu, 2 Apr 2009 09:34:21 +0000 (09:34 +0000)]
PR 9987
* lib/ld-lib.exp (check_gc_sections_available): Do not run garbage
collection tests for cygwin targets.
corinna [Thu, 2 Apr 2009 08:48:01 +0000 (08:48 +0000)]
* include/netdb.h: #include <inttypes.h>, <netinet/in.h>,
and <sys/socket.h> per SUSv3.
corinna [Thu, 2 Apr 2009 07:53:11 +0000 (07:53 +0000)]
* libc/ctype/ctype_c.c: Move inclusion of ctype_iso.h and
ctype_cp.h out of ALLOW_NEGATIVE_CTYPE_INDEX case.
(__ctype_ptr__): Constify in !_MB_CAPABLE case. Otherwise,
de-constify in !ALLOW_NEGATIVE_CTYPE_INDEX case, too. Add comment.
(__set_ctype): Set __ctype_ptr__ pointer according to definition
of ALLOW_NEGATIVE_CTYPE_INDEX.
* libc/include/ctype.h (__ctype_ptr__): Constify in !_MB_CAPABLE case.
ian [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.
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 [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.
matt [Thu, 2 Apr 2009 00:10:45 +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).
amodra [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 ***
palves [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.
palves [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.
palves [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.
palves [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.
palves [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.
brobecke [Wed, 1 Apr 2009 22:08:02 +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".
brobecke [Wed, 1 Apr 2009 22:05:29 +0000 (22:05 +0000)]
* stack.c (print_frame_arguments): Set initial value to "scalars".
sterling [Wed, 1 Apr 2009 21:07:12 +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
rsandifo [Wed, 1 Apr 2009 20:13:10 +0000 (20:13 +0000)]
bfd/
* xcofflink.c (xcoff_archive_info): Add contains_shared_object_p
and know_contains_shared_object_p.
(xcoff_archive_contains_shared_object_p): Add an "info" parameter.
Cache the result in the archive_info table.
(xcoff_auto_export_p): Add an "info" parameter and update the
call to xcoff_archive_contains_shared_object_p.
(xcoff_mark_auto_exports): Update accordingly.
(xcoff_post_gc_symbol): Likewise.
rsandifo [Wed, 1 Apr 2009 20:09:02 +0000 (20:09 +0000)]
bfd/
* xcofflink.c (bfd_link_input_bfd): Treat __rtinit as C_HIDEXT
rather than C_EXT.
ld/testsuite/
* ld-powerpc/aix-gc-1.nd: New test.
* ld-powerpc/aix52.exp: Run it.
rsandifo [Wed, 1 Apr 2009 20:04:28 +0000 (20:04 +0000)]
bfd/
* coff-rs6000.c (member_layout): New structure.
(archive_iterator): Likewise.
(member_layout_init): New function.
(archive_iterator_begin): Likewise.
(archive_iterator_next): Likewise.
(xcoff_write_armap_old): Use the new iterator functions.
(do_shared_object_padding): Delete.
(xcoff_write_armap_big): Use the new iterator functions. Simplify
handling of arch_info.
(xcoff_write_archive_contents_old): Allocate arelt_data in the
first loop rather than the second. Allocate a member header if
there isn't one, then work out the stat information and length
in the first loop too. Use the new iterators for the second loop.
(xcoff_write_archive_contents_big): Likewise.
rsandifo [Wed, 1 Apr 2009 19:53:52 +0000 (19:53 +0000)]
bfd/
* bfd-in.h (bfd_xcoff_split_import_path): Declare.
(bfd_xcoff_set_archive_import_path): Likewise.
* bfd-in2.h: Regenerate.
* xcofflink.c: Include libiberty.h.
(xcoff_archive_info): New structure.
(xcoff_archive_info_hash): New function.
(xcoff_archive_info_eq): Likewise.
(xcoff_get_archive_info): Likewise.
(_bfd_xcoff_bfd_link_hash_table_create): Initialize archive_info.
(bfd_xcoff_split_import_path): New function.
(bfd_xcoff_set_archive_import_path): Likewise.
(xcoff_set_import_path): Move earlier in file.
(xcoff_link_add_dynamic_symbols): Set the import path of a non-archive
object to the the directory part of the bfd's filename. Get the
import path and filename of an archive object from the archive's
xcoff_tdata, initializing it if necessary. Update use of
import_file_id.
(bfd_link_input_bfd): Update use of import_file_id.
(xcoff_write_global_symbol): Likewise.
ld/
* emultempl/aix.em (gld${EMULATION_NAME}_open_dynamic_archive): New
function.
(ld_${EMULATION_NAME}_emulation): Use it.
rsandifo [Wed, 1 Apr 2009 19:38:11 +0000 (19:38 +0000)]
include/coff/
* xcoff.h (xcoff_link_hash_table): Move to bfd/xcofflink.c.
bfd/
* xcofflink.c (xcoff_link_hash_table): Moved from include/coff/xcoff.h.
rsandifo [Wed, 1 Apr 2009 19:27:37 +0000 (19:27 +0000)]
bfd/
* xcofflink.c (xcoff_link_create_extra_sections): Don't create
a .loader section for relocatable links.
(xcoff_need_ldrel_p): New function.
(xcoff_mark): Use it.
(bfd_xcoff_link_count_reloc): Only count loader relocs if there's
a loader section.
(xcoff_build_ldsym): New function, split out from...
(xcoff_build_ldsyms): ...here. Rename to...
(xcoff_post_gc_symbol): ...this. Only export symbols, and only
call xcoff_build_ldsym, if there's a loader section.
(xcoff_build_loader_section): New function, extracted verbatim from...
(bfd_xcoff_size_dynamic_sections): ...here. Only call it if
there's a loader section. Only add an __rtinit loader symbol
if there's a loader section. Update after above name change.
(xcoff_symbol_section, xcoff_create_ldrel): New functions.
(bfd_link_input_bfd): Use xcoff_need_ldrel_p, xcoff_symbol_section
and xcoff_create_ldrel.
(xcoff_write_global_symbol): Use xcoff_create_ldrel.
(xcoff_reloc_link_order): Likewise, but only call it if there's
a loader section. Use xcoff_symbol_section.
(_bfd_xcoff_bfd_final_link): Only use fdinfo.ldrel and fdinfo.ldsym
if there's a loader section.
ld/testsuite/
* ld-powerpc/aix-rel-1.s, ld-powerpc/aix-rel-1.od: New test.
* ld-powerpc/aix52.exp: Run it.
aristovski [Wed, 1 Apr 2009 19:13:41 +0000 (19:13 +0000)]
* mips-tdep.c (mips_numeric_register_alieses): New definition.
(mips_gdbarch_init): Add user registers from
mips_numeric_register_aliases.
brobecke [Wed, 1 Apr 2009 19:07:50 +0000 (19:07 +0000)]
* linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
rsandifo [Wed, 1 Apr 2009 19:05:53 +0000 (19:05 +0000)]
bfd/
* xcofflink.c (bfd_link_input_bfd): Fix buffer overrun.
brobecke [Wed, 1 Apr 2009 18:56:29 +0000 (18:56 +0000)]
* linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
this is the last one.
palves [Wed, 1 Apr 2009 17:41:55 +0000 (17:41 +0000)]
* remote.c (append_resumption): New.
(remote_vcont_resume): Use it.
hjl [Wed, 1 Apr 2009 17:30:34 +0000 (17:30 +0000)]
2009-04-01 H.J. Lu <hongjiu.lu@intel.com>
* common.h (EM_INTEL178): Removed.
(EM_INTEL179): Likewise.
(EM_ETPU): New.
(EM_SLE9X): Likewise.
(EM_INTEL181): Likewise.
(EM_INTEL182): Likewise.
davek [Wed, 1 Apr 2009 17:20:18 +0000 (17:20 +0000)]
binutils/ChangeLog
* dlltool.c (set_dll_name_from_def): Accept new second arg that
indicates if we are building DLL or EXE, and use it to add a
default suffix to the output filename when none is already present.
(def_name): Indicate we are building an EXE when calling it.
(def_library): Indicate we are building a DLL when calling it.
ld/testsuite/ChangeLog
* ld-cygwin/exe-export.exp: Add "-lkernel32" when linking test exe.
* ld-cygwin/testexe.c (testexe_main): Indicate whether global_a
was set to correct final value using error return status.
(testexe_dummy): Dummy function calls an import from kernel32.dll
to ensure it is mapped into the process space at runtime.
corinna [Wed, 1 Apr 2009 16:56:08 +0000 (16:56 +0000)]
* faq-using.xml (faq.using.symlinkstoppedworking): Rename.
(faq.using.ipv6): New IPv6 FAQ.
* gdb.sgml: Remove incorrect statement about Insight.
ramana [Wed, 1 Apr 2009 16:49:28 +0000 (16:49 +0000)]
2009-04-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/tc-arm.c (arm_validate_fix): Define only for OBJ_COFF.
(find_real_start): Likewise.
* config/tc-arm.h (TC_VALIDATE_FIX): Likewise
brobecke [Wed, 1 Apr 2009 16:35:40 +0000 (16:35 +0000)]
* windows-nat.c (+windows_get_ada_task_ptid): New function.
(init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
clyon [Wed, 1 Apr 2009 15:45:12 +0000 (15:45 +0000)]
2009-04-01 Christophe Lyon <christophe.lyon@st.com>
opcodes/
* arm-dis.c (print_insn): Print BE8 opcodes in little endianness.
ld/testsuite/
* ld-arm/arm-elf.exp: BE8 tests expect the same output as the
default ones.
* ld-arm/arm-be8.d: Print opcodes in little endian.
* ld-arm/farcall-thumb-arm-be8.d: Removed useless expected result.
* ld-arm/farcall-arm-arm-be8.d: Likewise.
clyon [Wed, 1 Apr 2009 15:34:11 +0000 (15:34 +0000)]
2009-04-01 Christophe Lyon <christophe.lyon@st.com>
bfd/
* elf32-arm.c (group_sections): Rewrite loops for better
readability.
nickc [Wed, 1 Apr 2009 14:57:10 +0000 (14:57 +0000)]
PR 9972
* doc/binutils.texi (strings): Document the -V alias for the
--version option.
* strings.c (usage): Likewise.
nathan [Wed, 1 Apr 2009 14:02:53 +0000 (14:02 +0000)]
* config/tc-arm.c (do_nop): Generate v6k nops whenever possible.
(arm_handle_align): Generate v6k ARM, thumb2 wide & narrow nops
whenever possible.
testsuite/
* gas/arm/align.s, gas/arm/align.d: New.
* gas/arm/thumb32.d, gas/arm/arch6zk.d, gas/arm/arch6zk.s,
arm/thumb2_relax.d: Adjust for align changes.
corinna [Wed, 1 Apr 2009 09:49:25 +0000 (09:49 +0000)]
* strfuncs.cc (sys_cp_mbstowcs): Check if ASCII SO is followed by at
least two chars and the next byte is a valid UTF-8 start byte before
trying to convert the followup bytes as UTF-8 sequence.
bergner [Wed, 1 Apr 2009 01:41:05 +0000 (01:41 +0000)]
gas/
* config/tc-ppc.c (ppc_handle_align): Handle power7's group ending nop.
gas/testsuite/
* gas/ppc/power7.d ("ori", ".p2align"): Add tests for group ending nop.
* gas/ppc/power7.s: Likewise.
* gas/ppc/power6.d: Likewise.
* gas/ppc/power6.s: Likewise.
dj [Wed, 1 Apr 2009 01:23:18 +0000 (01:23 +0000)]
merge from gcc
amodra [Wed, 1 Apr 2009 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 1 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
palves [Tue, 31 Mar 2009 22:46:36 +0000 (22:46 +0000)]
* server.c (main): After the inferior having exited, call
remote_close before exiting gdbserver.
ppluzhnikov [Tue, 31 Mar 2009 22:39:27 +0000 (22:39 +0000)]
[obvious] Kill left-over merge marker
hjl [Tue, 31 Mar 2009 21:19:02 +0000 (21:19 +0000)]
2009-03-31 H.J. Lu <hongjiu.lu@intel.com>
* common.h (EM_INTEL178): New.
(EM_INTEL179): Likewise.
(EM_INTEL180): Likewise.
tromey [Tue, 31 Mar 2009 20:20:58 +0000 (20:20 +0000)]
gdb
2009-03-31 Daniel Jacobowitz <dan@codesourcery.com>
Keith Seitz <keiths@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
PR gdb/6817
* Makefile.in (dbxread.o): Update.
* dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
* dwarf2read.c (GDB_FORM_cached_string): New.
(read_partial_die): Use dwarf2_canonicalize_name.
(dwarf2_linkage_name): Use dwarf2_name.
(dwarf2_canonicalize_name): New.
(dwarf2_name): Use dwarf2_canonicalize_name.
(dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
* stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
* symtab.c (lookup_symbol_in_language): Canonicalize input before
searching.
* cp-name-parser.y: operator() requires two parameters,
according to libiberty.
* minsyms.c (lookup_minimal_symbol): Canonicalize input
before searching.
* NEWS: Update.
gdb/testsuite
2009-03-31 Daniel Jacobowitz <dan@codesourcery.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
PR gdb/931
* gdb.cp/gdb1355.exp (f_li, f_lui, f_si, f_sui): Allow canonical
output.
* gdb.cp/templates.exp: Allow canonical output. Remove KFAILs
for gdb/931.
* dw2-strp.S (DW_AT_language): Change to C++.
(DW_TAG_variable (name ""), Abbrev code 7, .Lemptyname): New.
brobecke [Tue, 31 Mar 2009 16:51:01 +0000 (16:51 +0000)]
* gdb.texinfo (Ada Tasks): Add documentation about task-specific
breakpoints.
(Set Breaks): Add reference to thread-specific and task-specific
breakpoints.
brobecke [Tue, 31 Mar 2009 16:48:48 +0000 (16:48 +0000)]
* gdb.ada/tasks: New testcase.
brobecke [Tue, 31 Mar 2009 16:44:17 +0000 (16:44 +0000)]
Provide support for (Ada) task-specific breakpoints.
* ada-lang.h (ada_get_task_number): Add declaration.
(breakpoint_ada_task_match): Delete declaration.
* ada-tasks.c (ada_get_task_number): Make non-static.
* breakpoint.h (struct breakpoint): Add field "task".
* breakpoint.c (print_one_breakpoint_location): Add handling of
task-specific breakpoints.
(create_breakpoint, create_breakpoints, find_condition_and_thread):
New parameter "task".
(break_command_really): Update calls to find_condition_and_thread
and create_breakpoints.
(breakpoint_re_set_one): Update call to find_condition_and_thread.
Set b->task.
brobecke [Tue, 31 Mar 2009 16:33:35 +0000 (16:33 +0000)]
* gdb.texinfo (Ada Tasks): Remove the documentation about
the "Running" state, as this state has been eliminated.
Now all runnable tasks are shown as "Runnable".
brobecke [Tue, 31 Mar 2009 16:31:23 +0000 (16:31 +0000)]
* ada-tasks.c (short_task_info): Eliminate the "Running" task state.
palves [Tue, 31 Mar 2009 15:23:54 +0000 (15:23 +0000)]
* remote.c (remote_notice_new_inferior): Use ptid_is_pid. Check
if the thread's ptid without a thread id field is in the list
before calling thread_change_ptid.
(extended_remote_attach_1): In non-stop mode, do not rely on
querying the current thread, instead, query the thread list, and
select the first thread of the process.
* gdbthread.h (first_thread_of_process): Declare.
* thread.c (first_thread_of_process): Define.
corinna [Tue, 31 Mar 2009 14:58:13 +0000 (14:58 +0000)]
* shm.cc (struct shm_attached_list): Convert access type to ULONG.
(fixup_shms_after_fork): Fix comment. Use NtMapViewOfSection rather
than MapViewOfFileEx to recreate shared memory regions. Add function
name to api_fatal output.
(shmat): Use NtMapViewOfSection to create shared memory region
top-down.
corinna [Tue, 31 Mar 2009 11:17:08 +0000 (11:17 +0000)]
* setup2.sgml (setup-locale-problems): Fix an incomplete sentence.
corinna [Tue, 31 Mar 2009 10:54:28 +0000 (10:54 +0000)]
* faq-using.xml (faq.using.unicode): Modernize.
(faq.api.symlinkstoppedworking): Move here from faq-api.xml.
corinna [Tue, 31 Mar 2009 09:42:57 +0000 (09:42 +0000)]
* ctype.cc: Remove implementation of ctype functions in favor of
pointer-based newlib implementation.
(_ctype_b): Declare.
(__ctype_cp): Move to newlib. Declare.
(__ctype_iso): Ditto.
(__set_ctype): Implement changing __ctype_ptr__. Only copy character
class data in applications built under older Cygwin.
* cygwin.din (__ctype_ptr__): Export.
* include/ctype.h: Remove in favor of newlib implementation.
* include/cygwin/config.h (__EXPORT): Define alongside __IMPORT.
* include/cygwin/version.h (CYGWIN_VERSION_CHECK_FOR_OLD_CTYPE):
Define check for old vs. new ctype implementation.
Bump API minor number.
corinna [Tue, 31 Mar 2009 09:31:37 +0000 (09:31 +0000)]
* libc/ctype/Makefile.am: Remove _tolower.c and _toupper.c
source files. Add a dependency rule for ctype_o to note
changes in ctype_iso.h and ctype_cp.h.
* libc/ctype/Makefile.in: Regenerate.
* libc/ctype/_tolower.c: Remove file.
* libc/ctype/_toupper.c: Remove file.
* libc/ctype/ctype_.c: Make sure ALLOW_NEGATIVE_CTYPE_INDEX
is always defined on Cygwin.
(_ctype_b): Don't make `static const' on Cygwin.
(ctype_iso.h): Include if _MB_EXTENDED_CHARSETS_ISO is set.
(ctype_cp.h): Include if _MB_EXTENDED_CHARSETS_WINDOWS is set.
(__ctype_ptr): Drop definition.
(__ctype_ptr__): De-constify. Mark as __EXPORT symbol.
(_ctype_): Add Cygwin-specifc asm define.
(__set_ctype): New function to set __ctype_ptr__ according to
current charset.
* libc/ctype/ctype_cp.h: New file containing Windows codepage
specific character class tables.
* libc/ctype/ctype_iso.h: New file containing ISO-8859-x
specific character class tables.
* libc/ctype/tolower.c (tolower): Reimplement to support any singlebyte
charset if one of the extended charsets is enabled.
* libc/ctype/toupper.c (toupper): Ditto.
* libc/include/ctype.h (_tolower): Define as macro per POSIX.
(_toupper): Ditto.
(__ctype_ptr__): De-constify.
(toupper): Disable macro on systems supporting extended charsets.
(tolower): Ditto.
* libc/include/sys/config.h (__EXPORT): Define empty if not defined.
* libc/locale/locale.c (__mb_cur_max): Mark as __EXPORT symbol.
(__set_ctype): Declare unconditionally.
(loadlocale): Remove __CYGWIN__ guard around __set_ctype call.
nickc [Tue, 31 Mar 2009 08:08:33 +0000 (08:08 +0000)]
PR 9992
* configure.in: Import Solaris specific largefile test from
bfd/configure.in.
* configure: Regenerate.
shebs [Tue, 31 Mar 2009 05:08:25 +0000 (05:08 +0000)]
2009-03-30 Stan Shebs <stan@codesourcery.com>
Make tracepoints into a type of breakpoint.
* breakpoint.h (enum bptype): Add bp_tracepoint.
(struct breakpoint): Add fields step_count, pass_count, actions.
(get_tracepoint, get_tracepoint_by_number): Declare.
(all_tracepoints): Declare.
* breakpoint.c: Include tracepoint.h, readline.h.
(ALL_TRACEPOINTS): Move here from tracepoint.c.
(tracepoint_count): Ditto.
(should_be_inserted): GDB does not insert tracepoints itself.
(print_it_typical): Add tracepoint case.
(bpstat_what): Ditto.
(print_one_breakpoint_location): Ditto, and add printing for
pass count, step count, and action list.
(user_settable_breakpoint): Add tracepoint case.
(allocate_bp_location): Ditto.
(set_breakpoint_location_function): Ditto.
(disable_breakpoints_in_shlibs): Ditto.
(mention): Ditto.
(break_command_really): Add argument traceflag, use to choose
basic breakpoint type.
(break_command_1): Pass extra argument.
(set_breakpoint, handle_gnu_v3_exceptions): Ditto.
(breakpoint_re_set_one): Add tracepoint case.
(disable_command, enable_command): Ditto.
(set_tracepoint_count): Move here from tracepoint.c.
(trace_command): Move here from tracepoint.c and use
break_command_really.
(tracepoints_info): Move here from tracepoint.c and call
breakpoints_info.
(enable_trace_command): Move here from tracepoint.c and call
enable_command.
(disable_trace_command): Move here from tracepoint.c and call
disable_command.
(delete_trace_command): Move here from tracepoint.c and call
delete_breakpoint.
(trace_pass_command): Move here from tracepoint.c.
(get_tracepoint_by_number): Ditto.
(tracepoint_save_command): Ditto.
(get_tracepoint): New function.
(all_tracepoints): New function.
(_initialize_breakpoint): Move tracepoint init from tracepoint.c,
deprecate "enable trace" and "disable trace" commands.
* tracepoint.h (struct tracepoint): Remove.
(tracepoint_chain): Remove decl.
(deprecated_create_tracepoint_hook): Remove decl.
(deprecated_delete_tracepoint_hook): Remove decl.
(deprecated_modify_tracepoint_hook): Remove decl.
(ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
(free_actions): Update signature.
(validate_actionline): Update signature.
(end_actions_pseudocommand): Declare.
(while_stepping_pseudocommand): Declare.
* tracepoint.c: Include breakpoint.h.
(tracepoint_chain, tracepoint_count): Remove.
(free_actions, make_cleanup_free_actions): Update signature.
(trace_command, set_raw_tracepoint): Remove.
(trace_mention): Remove.
(tracepoints_info): Remove.
(tracepoint_operation, map_args_over_tracepoints): Remove.
(get_tracepoint_by_number): Remove.
(enable_trace_command, disable_trace_command): Remove.
(delete_trace_command, trace_pass_command): Remove.
(trace_actions_command, read_actions): Update signature.
(validate_actionline): Update signature, use bp loc.
(encode_actions): Ditto.
(download_tracepoint): New function, body of trace_start_command.
(trace_start_command): Call it, use all_tracepoints.
(tracepoint_save_command): Remove.
(tracepoint_dump_command): Use get_tracepoint.
(end_actions_pseudocommand): Make globally visible.
(while_stepping_pseudocommand): Ditto.
(_initialize_tracepoint): Move command definitions to breakpoint.c.
doc/
* gdb.texinfo (Tracepoints): Describe tracepoints as a
special case of breakpoints.
(Enable and Disable Tracepoints): Mention deprecation.
(Listing Tracepoints): Update description and example.
testsuite/
* gdb.trace/actions.exp: Update to match new info trace format.
* gdb.trace/deltrace.exp: Ditto.
* gdb.trace/infotrace.exp: Ditto.
* gdb.trace/passcount.exp: Ditto.
* gdb.trace/save-trace.exp: Ditto.
* gdb.trace/while-stepping.exp: Ditto.
* gdb.trace/tracecmd.exp: Ditto, plus don't allow pending option.
gdbtk/
* generic/gdbtk-bp.c (gdb_actions_command): Update to handle
tracepoints as breakpoints.
(gdb_get_tracepoint_info): Ditto, plus use get_tracepoint and
breakpoint locations.
(tracepoint_exists): Ditto, plus use all_tracepoints.
davek [Tue, 31 Mar 2009 04:57:48 +0000 (04:57 +0000)]
* doc/internals.texi: Fix trivial syntax errors.
dj [Tue, 31 Mar 2009 01:42:28 +0000 (01:42 +0000)]
* elflink.c (elf_link_input_bfd): Don't try to resolve complex
relocs when doing a relocatable link.