external/binutils.git
15 years ago2009-04-01 Pedro Alves <pedro@codesourcery.com>
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.

15 years ago Non-stop mode support.
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.

15 years ago Decouple target code from remote protocol.
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.

15 years ago * target.h (struct thread_resume): Delete leave_stopped member.
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.

15 years agogdb/gdbserver/
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.

15 years ago * gdb.base/funcargs.exp: Set print frame-arguments to "all".
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".

15 years ago * stack.c (print_frame_arguments): Set initial value to "scalars".
Joel Brobecker [Wed, 1 Apr 2009 22:05:30 +0000 (22:05 +0000)]
    * stack.c (print_frame_arguments): Set initial value to "scalars".

15 years ago2009-04-01 Sterling Augustine <sterling@jaw.hq.tensilica.com>
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

15 years agobfd/
Richard Sandiford [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.

15 years agobfd/
Richard Sandiford [Wed, 1 Apr 2009 20:09:03 +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.

15 years agobfd/
Richard Sandiford [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.

15 years agobfd/
Richard Sandiford [Wed, 1 Apr 2009 19:53:53 +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.

15 years agoinclude/coff/
Richard Sandiford [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.

15 years agobfd/
Richard Sandiford [Wed, 1 Apr 2009 19:27:38 +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.

15 years ago* mips-tdep.c (mips_numeric_register_alieses): New definition.
Aleksandar Ristovski [Wed, 1 Apr 2009 19:13:42 +0000 (19:13 +0000)]
* mips-tdep.c (mips_numeric_register_alieses): New definition.
(mips_gdbarch_init): Add user registers from
mips_numeric_register_aliases.

15 years ago * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
Joel Brobecker [Wed, 1 Apr 2009 19:07:50 +0000 (19:07 +0000)]
    * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.

15 years agobfd/
Richard Sandiford [Wed, 1 Apr 2009 19:05:53 +0000 (19:05 +0000)]
bfd/
* xcofflink.c (bfd_link_input_bfd): Fix buffer overrun.

15 years ago * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
Joel Brobecker [Wed, 1 Apr 2009 18:56:30 +0000 (18:56 +0000)]
    * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
        this is the last one.

15 years ago * remote.c (append_resumption): New.
Pedro Alves [Wed, 1 Apr 2009 17:42:03 +0000 (17:42 +0000)]
* remote.c (append_resumption): New.
(remote_vcont_resume): Use it.

15 years ago2009-04-01 H.J. Lu <hongjiu.lu@intel.com>
H.J. Lu [Wed, 1 Apr 2009 17:30:35 +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.

15 years agobinutils/ChangeLog
Dave Korn [Wed, 1 Apr 2009 17:20:19 +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.

15 years ago2009-04-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Ramana Radhakrishnan [Wed, 1 Apr 2009 16:49:32 +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

15 years ago * windows-nat.c (+windows_get_ada_task_ptid): New function.
Joel Brobecker [Wed, 1 Apr 2009 16:35:41 +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.

15 years ago2009-04-01 Christophe Lyon <christophe.lyon@st.com>
Christophe Lyon [Wed, 1 Apr 2009 15:45:13 +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.

15 years ago2009-04-01 Christophe Lyon <christophe.lyon@st.com>
Christophe Lyon [Wed, 1 Apr 2009 15:34:12 +0000 (15:34 +0000)]
2009-04-01  Christophe Lyon  <christophe.lyon@st.com>

bfd/
* elf32-arm.c (group_sections): Rewrite loops for better
readability.

15 years ago PR 9972
Nick Clifton [Wed, 1 Apr 2009 14:57:11 +0000 (14:57 +0000)]
    PR 9972
        * doc/binutils.texi (strings): Document the -V alias for the
        --version option.
        * strings.c (usage): Likewise.

15 years ago * config/tc-arm.c (do_nop): Generate v6k nops whenever possible.
Nathan Sidwell [Wed, 1 Apr 2009 14:02:57 +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.

15 years agogas/
Peter Bergner [Wed, 1 Apr 2009 01:41:07 +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.

15 years agomerge from gcc
DJ Delorie [Wed, 1 Apr 2009 01:23:18 +0000 (01:23 +0000)]
merge from gcc

15 years agodaily update
Alan Modra [Wed, 1 Apr 2009 00:00:04 +0000 (00:00 +0000)]
daily update

15 years ago*** empty log message ***
gdbadmin [Wed, 1 Apr 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***

15 years ago * server.c (main): After the inferior having exited, call
Pedro Alves [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.

15 years ago[obvious] Kill left-over merge marker
Paul Pluzhnikov [Tue, 31 Mar 2009 22:39:27 +0000 (22:39 +0000)]
[obvious] Kill left-over merge marker

15 years ago2009-03-31 H.J. Lu <hongjiu.lu@intel.com>
H.J. Lu [Tue, 31 Mar 2009 21:19:03 +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.

15 years agogdb
Tom Tromey [Tue, 31 Mar 2009 20:21:08 +0000 (20:21 +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.

15 years ago * gdb.texinfo (Ada Tasks): Add documentation about task-specific
Joel Brobecker [Tue, 31 Mar 2009 16:51:02 +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.

15 years ago * gdb.ada/tasks: New testcase.
Joel Brobecker [Tue, 31 Mar 2009 16:48:49 +0000 (16:48 +0000)]
    * gdb.ada/tasks: New testcase.

15 years ago Provide support for (Ada) task-specific breakpoints.
Joel Brobecker [Tue, 31 Mar 2009 16:44:18 +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.

15 years ago * gdb.texinfo (Ada Tasks): Remove the documentation about
Joel Brobecker [Tue, 31 Mar 2009 16:33:37 +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".

15 years ago * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
Joel Brobecker [Tue, 31 Mar 2009 16:31:24 +0000 (16:31 +0000)]
    * ada-tasks.c (short_task_info): Eliminate the "Running" task state.

15 years ago * remote.c (remote_notice_new_inferior): Use ptid_is_pid. Check
Pedro Alves [Tue, 31 Mar 2009 15:23:57 +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.

15 years ago PR 9992
Nick Clifton [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.

15 years ago2009-03-30 Stan Shebs <stan@codesourcery.com>
Stan Shebs [Tue, 31 Mar 2009 05:08:37 +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.

15 years ago * doc/internals.texi: Fix trivial syntax errors.
Dave Korn [Tue, 31 Mar 2009 04:57:48 +0000 (04:57 +0000)]
* doc/internals.texi:  Fix trivial syntax errors.

15 years ago* elflink.c (elf_link_input_bfd): Don't try to resolve complex
DJ Delorie [Tue, 31 Mar 2009 01:42:29 +0000 (01:42 +0000)]
* elflink.c (elf_link_input_bfd): Don't try to resolve complex
relocs when doing a relocatable link.

15 years agodaily update
Alan Modra [Tue, 31 Mar 2009 00:00:09 +0000 (00:00 +0000)]
daily update

15 years ago*** empty log message ***
gdbadmin [Tue, 31 Mar 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***

15 years ago * ffsll.c (ffsll): Correct implementation.
Ian Lance Taylor [Mon, 30 Mar 2009 23:17:11 +0000 (23:17 +0000)]
* ffsll.c (ffsll): Correct implementation.

15 years agobinutils/
Richard Sandiford [Mon, 30 Mar 2009 20:39:43 +0000 (20:39 +0000)]
binutils/
* MAINTAINERS: Add self.

15 years agogdb/
Thiago Jung Bauermann [Mon, 30 Mar 2009 19:54:33 +0000 (19:54 +0000)]
gdb/
Expose frames to Python.
* Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
(SUBDIR_PYTHON_SRCS): Add python-frame.c.
(python-frame.o): New target.
* python/python-frame.c: New file.
* python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
gdbpy_initialize_frames): New prototypes.
* python/python.c (_initialize_python): Call gdbpy_initialize_frames.
(GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
entries.
* stack.c (find_frame_funname): New function, factored out of
print_frame.
(print_frame): Call find_frame_funname.
* stack.h (find_frame_funname): Add prototype.

gdb/doc/
* gdb.texinfo (Frames in Python): New node.
(Python API): Update.

gdb/testsuite/
* gdb.python/python-frame.c: New file.
* gdb.python/python-frame.exp: New file.

15 years agogas/testsuite:
Joseph Myers [Mon, 30 Mar 2009 14:41:31 +0000 (14:41 +0000)]
gas/testsuite:
* gas/arm/mapsecs.d, gas/arm/mapsecs.s: New.

opcodes:
* arm-dis.c (print_insn): Also check section matches in backwards
search for mapping symbol.

15 years agomerge from gcc
DJ Delorie [Mon, 30 Mar 2009 03:01:38 +0000 (03:01 +0000)]
merge from gcc

15 years agomerge from gcc
DJ Delorie [Mon, 30 Mar 2009 00:01:29 +0000 (00:01 +0000)]
merge from gcc

15 years ago*** empty log message ***
gdbadmin [Mon, 30 Mar 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***

15 years agodaily update
Alan Modra [Mon, 30 Mar 2009 00:00:05 +0000 (00:00 +0000)]
daily update

15 years ago Remove unused value_object attribute `owned_by_gdb'.
Thiago Jung Bauermann [Sun, 29 Mar 2009 21:19:40 +0000 (21:19 +0000)]
Remove unused value_object attribute `owned_by_gdb'.
* python/python-value.c (value_object): Remove owned_by_gdb
attribute.
(valpy_dealloc): Remove reference to self->owned_by_gdb.
(valpy_new): Likewise.
(value_to_value_object): Likewise.

15 years agogdb/
Thiago Jung Bauermann [Sun, 29 Mar 2009 21:11:11 +0000 (21:11 +0000)]
gdb/
Change gdb.Value.address from a method to an attribute.
* python/python-value.c (value_object): Add `address' element.
(valpy_dealloc): Decrement reference to self->address if set.
(valpy_new): Initialize val_obj->address.
(valpy_address): Rename to ...
(valpy_get_address): ... this.  Change signature from method to
attribute.  Update self->address if not set.
(value_to_value_object): Initialize val_obj->address.
(value_object_getset): Add `address' element.
(value_object_methods): Remove `address' element.

gdb/testsuite/
* gdb.python/python-value.exp: Add tests for the address
attribute.

gdb/doc/
* gdb.texinfo (Values From Inferior): Change gdb.Value.address
from a method to an attribute.

15 years ago* gdb.arch/powerpc-prologue.exp: Update for disassemble-next-line.
Andreas Schwab [Sun, 29 Mar 2009 14:52:54 +0000 (14:52 +0000)]
* gdb.arch/powerpc-prologue.exp: Update for disassemble-next-line.

15 years ago* observer.sh: Set LANG/LC_ALL to C, not c.
Andreas Schwab [Sun, 29 Mar 2009 13:36:27 +0000 (13:36 +0000)]
* observer.sh: Set LANG/LC_ALL to C, not c.

15 years agomerge from gcc
DJ Delorie [Sun, 29 Mar 2009 02:15:39 +0000 (02:15 +0000)]
merge from gcc

15 years ago*** empty log message ***
gdbadmin [Sun, 29 Mar 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***

15 years agodaily update
Alan Modra [Sun, 29 Mar 2009 00:00:06 +0000 (00:00 +0000)]
daily update

15 years ago * coff-arm.c (coff_arm_merge_private_bfd_data): Use "error:", not
Mark Mitchell [Sat, 28 Mar 2009 23:19:00 +0000 (23:19 +0000)]
* coff-arm.c (coff_arm_merge_private_bfd_data): Use "error:", not
"ERROR:", in error messages.
* cpu-arm.c (bfd_arm_merge_machines): Likewise.
* elf-attrs.c (_bfd_elf_merge_object_attributes): Likewise.
* elf32-arm.c (tag_cpu_arch_combine): Likewise.
(elf32_arm_merge_eabi_attributes): Likewise.
(elf32_arm_merge_private_bfd_data): Likewise.

15 years ago * ffsll.c: New file.
Ian Lance Taylor [Sat, 28 Mar 2009 05:22:30 +0000 (05:22 +0000)]
* ffsll.c: New file.
* configure.ac: Call AC_REPLACE_FUNCS on ffsll.
* gold.h (ffsll): Declare if HAVE_FFSLL is not defined.
* ftruncate.c (ftruncate): Declare before definition.
* mremap.c (mremap): Likewise.
* pread.c (pread): Likewise.
* configure, Makefile.in, config.in: Rebuild.

15 years ago * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
Kevin Buettner [Sat, 28 Mar 2009 04:56:42 +0000 (04:56 +0000)]
* mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
`char' is unsigned.

15 years ago * remote.c (remote_stop_ns): If multi-process extensions are off,
Pedro Alves [Sat, 28 Mar 2009 01:15:13 +0000 (01:15 +0000)]
* remote.c (remote_stop_ns): If multi-process extensions are off,
and GDB is requesting the whole process to stop, sent "vCont;t",
not "vCont;t:-1"

15 years ago * inf-loop.c (inferior_event_handler): Avoid calling is_running on
Pedro Alves [Sat, 28 Mar 2009 00:58:31 +0000 (00:58 +0000)]
* inf-loop.c (inferior_event_handler): Avoid calling is_running on
null inferior_ptid.

15 years agodaily update
Alan Modra [Sat, 28 Mar 2009 00:00:05 +0000 (00:00 +0000)]
daily update

15 years ago*** empty log message ***
gdbadmin [Sat, 28 Mar 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***

15 years ago * mremap.c: New file.
Ian Lance Taylor [Fri, 27 Mar 2009 23:21:09 +0000 (23:21 +0000)]
* mremap.c: New file.
* configure.ac: Call AC_REPLACE_FUNCS on mremap.
* gold.h (MREMAP_MAYMOVE): Define if HAVE_MREMAP is not defined.
(mremap): Declare if HAVE_MREMAP is not defined.
* configure, Makefile.in, config.in: Rebuild.

15 years agomerge from gcc
DJ Delorie [Fri, 27 Mar 2009 23:07:30 +0000 (23:07 +0000)]
merge from gcc

15 years ago * powerpc.cc (Target_powerpc::check_non_pic): Assert that output is
Cary Coutant [Fri, 27 Mar 2009 18:19:09 +0000 (18:19 +0000)]
* powerpc.cc (Target_powerpc::check_non_pic): Assert that output is
position independent.
* sparc.cc (Target_sparc::check_non_pic): Likewise.
* x86_64.cc (Target_x86_64::check_non_pic): Likewise.

15 years ago * dwarf.c (display_debug_ranges): Add the base address to the
Nick Clifton [Fri, 27 Mar 2009 14:27:02 +0000 (14:27 +0000)]
    * dwarf.c (display_debug_ranges): Add the base address to the
        displayed values for 'Begin' and 'End'.

15 years agoAdd one more tweak for readline/examples.
Eli Zaretskii [Fri, 27 Mar 2009 13:59:38 +0000 (13:59 +0000)]
Add one more tweak for readline/examples.

15 years ago * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
Eli Zaretskii [Fri, 27 Mar 2009 13:38:31 +0000 (13:38 +0000)]
* config/djgpp/fnchange.lst: Update to fix ARI-reported problems.

15 years ago * djunpack.bat: Use ".." quoting in Sed command, for the sake of
Eli Zaretskii [Fri, 27 Mar 2009 13:37:09 +0000 (13:37 +0000)]
* djunpack.bat: Use ".." quoting in Sed command, for the sake of
Windows builds of Sed.

15 years ago * section.c (bfd_get_section_contents): Detect and handle the case
Nick Clifton [Fri, 27 Mar 2009 11:38:30 +0000 (11:38 +0000)]
    * section.c (bfd_get_section_contents): Detect and handle the case
        where a section has the SEC_IN_MEMORY flag set but no actual
        contents allocated.

15 years agoRemove merge markers
Nick Clifton [Fri, 27 Mar 2009 08:26:18 +0000 (08:26 +0000)]
Remove merge markers

15 years ago * thread.c (do_restore_current_thread_cleanup): Redo test for
Doug Evans [Fri, 27 Mar 2009 02:44:51 +0000 (02:44 +0000)]
* thread.c (do_restore_current_thread_cleanup): Redo test for
whether to restore old->inferior_ptid.

* gdb.mi/mi-nonstop-exit.exp: New file.
* gdb.mi/non-stop-exit.c: New file.

15 years ago2009-03-26 H.J. Lu <hongjiu.lu@intel.com>
H.J. Lu [Fri, 27 Mar 2009 00:28:32 +0000 (00:28 +0000)]
2009-03-26  H.J. Lu  <hongjiu.lu@intel.com>

* i386-dis.c (get_valid_dis386): Abort on unhandled table.

15 years ago*** empty log message ***
gdbadmin [Fri, 27 Mar 2009 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***

15 years agodaily update
Alan Modra [Fri, 27 Mar 2009 00:00:10 +0000 (00:00 +0000)]
daily update

15 years agogdb
Tom Tromey [Thu, 26 Mar 2009 23:30:12 +0000 (23:30 +0000)]
gdb
* breakpoint.c (resolve_sal_pc): Preserve original line number
when skipping prologue.
gdb/testsuite
Update for change to prologue skipping:
* gdb.mi/mi2-simplerun.exp: Update.
* gdb.mi/mi2-break.exp: Update.
* gdb.mi/mi-simplerun.exp: Update.
* gdb.mi/mi-break.exp: Update.
* gdb.base/ending-run.exp: Update.

15 years ago * thread.c (inferior_thread) Remove "extern" in definition.
Doug Evans [Thu, 26 Mar 2009 21:30:26 +0000 (21:30 +0000)]
* thread.c (inferior_thread) Remove "extern" in definition.

15 years agogdb/
Thiago Jung Bauermann [Thu, 26 Mar 2009 20:58:11 +0000 (20:58 +0000)]
gdb/
Add gdb.Value.is_optimized_out attribute.
* python/python-value.c (valpy_get_is_optimized_out): New
function.
(value_object_getset): New variable.
(value_object_type): Initialize tp_getset element.

gdb/doc/
* gdb.texinfo (Values From Inferior): Document is_optimized_out
attribute.

gdb/testsuite/
* gdb.python/python-value.exp (test_value_in_inferior): Test
gdb.Value.is_optimized_out attribute.

15 years agogdb/
Jan Kratochvil [Thu, 26 Mar 2009 14:47:19 +0000 (14:47 +0000)]
gdb/
Recognize missing DW_AT_location as <value optimized out>.
* dwarf2read.c
(new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
Call add_symbol_to_list.

gdb/testsuite/
* gdb.dwarf2/dw2-noloc-main.c: New file.
* gdb.dwarf2/dw2-noloc.S: New symbols matrix.
(.text): Remove.
(.data): New.
(DW_AT_stmt_list, .debug_line, DW_AT_frame_base): Remove.
(DW_AT_low_pc, DW_AT_high_pc): Reference `dw2-noloc-main.c'.
(DW_TAG_subprogram func_cu1, noloc): Remove.
(main): New.
* gdb.dwarf2/dw2-noloc.exp: Use prepare_for_testing, compile also
`dw2-noloc-main.c'.  Test the new DIEs from `dw2-noloc.S'.
(file_symbols): New procedure.

15 years ago2009-03-26 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Ramana Radhakrishnan [Thu, 26 Mar 2009 13:59:28 +0000 (13:59 +0000)]
2009-03-26  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * gas/arm/wince_inst.d: Convert to unified syntax.

15 years ago PR 6494
Alan Modra [Thu, 26 Mar 2009 12:23:52 +0000 (12:23 +0000)]
PR 6494
* elf.c (copy_elf_program_header): Do not check that PT_GNU_RELRO
p_filesz and p_memsz are equal.  Use p_memsz as the segment size.
(assign_file_positions_for_non_load_sections): Zap PT_GNU_RELRO
if we don't find matching PT_LOAD when copying.

15 years ago PR 10005
Alan Modra [Thu, 26 Mar 2009 02:41:12 +0000 (02:41 +0000)]
PR 10005
* config/tc-i386.c (reloc): Don't abort on lack of required
reloc type.

15 years ago * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
Tom Tromey [Thu, 26 Mar 2009 01:27:45 +0000 (01:27 +0000)]
* gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
* stack.c (print_this_frame_argument_p): Use check_typedef.

15 years ago * configure: Rebuild.
Tom Tromey [Thu, 26 Mar 2009 01:18:35 +0000 (01:18 +0000)]
* configure: Rebuild.
* acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
Rearrange flags setting.  Add comments.

15 years ago * config/i386/nm-i386.h: Remove code within
Pierre Muller [Thu, 26 Mar 2009 00:18:46 +0000 (00:18 +0000)]
* config/i386/nm-i386.h: Remove code within
I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
* config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
macro.
* config/i386/nm-cygwin64.h: Ditto.
* config/i386/nm-fbsd.h: Ditto.
* config/i386/nm-go32.h: Ditto.
* config/i386/nm-linux.h: Ditto.
* config/i386/nm-linux64.h: Ditto.

15 years agodaily update
Alan Modra [Thu, 26 Mar 2009 00:00:04 +0000 (00:00 +0000)]
daily update

15 years ago*** empty log message ***
gdbadmin [Thu, 26 Mar 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***

15 years ago ARI fix: "xasprintf" rule.
Pierre Muller [Wed, 25 Mar 2009 22:38:46 +0000 (22:38 +0000)]
ARI fix: "xasprintf" rule.
* printcmd.c (sym_info): Replace xasprintf by xstrprintf.

15 years ago * remote.c (remote_start_remote): In non-stop mode, call
Pedro Alves [Wed, 25 Mar 2009 22:27:49 +0000 (22:27 +0000)]
* remote.c (remote_start_remote): In non-stop mode, call
init_wait_for_inferior before adding threads and inferiors.

15 years ago * breakpoint.c (breakpoint_thread_match): Split a large condition
Joel Brobecker [Wed, 25 Mar 2009 22:08:29 +0000 (22:08 +0000)]
    * breakpoint.c (breakpoint_thread_match): Split a large condition
        into several smaller conditions.  No behavior change.

15 years agoFix the date in the last entry.
Joel Brobecker [Wed, 25 Mar 2009 22:07:16 +0000 (22:07 +0000)]
Fix the date in the last entry.

15 years agogdb/
Pedro Alves [Wed, 25 Mar 2009 21:53:11 +0000 (21:53 +0000)]
gdb/
* infrun.c (infrun_thread_thread_exit): New.
(_initialize_infrun): Attach it to the thread_exit observer.
* thread.c (delete_thread_1): Always call the observer, passing it
the silent flag.
* mi/mi-interp.c (mi_thread_exit): Add "silent" parameter.  If
SILENT, return immediately.

gdb/doc/
* observer.texi (thread_exit): Add "silent" parameter.

15 years ago * infrun.c (normal_stop): Use has_stack_frames instead of
Pedro Alves [Wed, 25 Mar 2009 21:42:35 +0000 (21:42 +0000)]
* infrun.c (normal_stop): Use has_stack_frames instead of
target_has_stack.
* mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
when there is no thread selected.
(mi_cmd_execute): Don't special case commands that can run without
a valid selected thread.
* top.c (execute_command): Don't special case commands that can
run without a valid selected thread.  Use has_stack_frames.
* infcmd.c (ensure_valid_thread): New.
(continue_1, step_1, jump_command, signal_command): Use it.
(detach_command): Error out if there's no selected thread/inferior.
* thread.c (print_thread_info): Allow having no thread selected.
(switch_to_thread): Don't read the PC if there is no current thread.
(do_restore_current_thread_cleanup): Don't record the current
frame if there is no current thread.
(make_cleanup_restore_current_thread): Don't read frame info if
there is no selected thread.
(_initialize_thread): Don't mark commands as
"no_selected_thread_ok".
* frame.c (get_current_frame): Error out if there is no valid
selected thread.
(has_stack_frames): Return false if there is no valid
selected thread.
* cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
"no_selected_thread_ok".
* cli/cli-decode.c (set_cmd_no_selected_thread_ok)
(get_cmd_no_selected_thread_ok): Delete.
* cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
(set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
Delete declaration.
* stack.c (get_selected_block): Use has_stack_frames.