OSDN Git Service
bauermann [Thu, 25 Sep 2008 14:13:43 +0000 (14:13 +0000)]
2008-09-25 Sérgio Durigan Júnior <sergiodj@linux.vnet.ibm.com>
* linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
amodra [Thu, 25 Sep 2008 03:16:42 +0000 (03:16 +0000)]
* ld-elf/eh-group.exp: Only run on ELF targets.
* ld-elf/eh5b.s: Export main, start, __start.
jjohnstn [Thu, 25 Sep 2008 03:00:03 +0000 (03:00 +0000)]
2008-09-24 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/setenv_r.c (_unsetenv_r): Modify to return -1 only if
name is NULL, empty, or contains equal sign.
amodra [Thu, 25 Sep 2008 02:33:59 +0000 (02:33 +0000)]
* ldexp.c (fold_binary): Evaluate rhs when lhs not valid.
jjohnstn [Thu, 25 Sep 2008 01:23:08 +0000 (01:23 +0000)]
2008-09-24 Pawel Veselov <pawel.veselov@gmail.com>
Fix setenv/getenv/unsetenv to be OpenGroup compliant:
* libc/include/stdlib.h (unsetenv, _unsetenv_r): Redefine with integer
return types.
* libc/stdlib/getenv_r.c (_findenv_r): Do no special processing with
names that contain equal chars.
* libc/stdlib/setenv.c: Redefine _unsetenv_r as returning int.
* libc/stdlib/setenv_r.c (_setenv_r): Return -1 and set errno to
EINVAL if name contains an equal sign. Do not remove any equal signs
from the value.
(_unsetenv_r): Modified to return int. Return -1 and set EINVAL
if name contains equal sign. Return -1 if no variable(s) were found
and return 0 otherwise.
amodra [Thu, 25 Sep 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 25 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
ironhead [Wed, 24 Sep 2008 23:32:42 +0000 (23:32 +0000)]
2008-09-24 Chris Sutcliffe <ir0nh34d@users.sf.net>
* include/vfw.h (WM_CAP_SET_CALLBACK_ERRORA, WM_CAP_SET_CALLBACK_ERRORW,
WM_CAP_SET_CALLBACK_STATUS, WM_CAP_SET_CALLBACK_YIELD,
WM_CAP_SET_CALLBACK_FRAMEA, WM_CAP_SET_CALLBACK_FRAMEW,
WM_CAP_SET_CALLBACK_VIDEOSTREAM, WM_CAP_SET_CALLBACK_WAVESTREAM,
WM_CAP_GET_USER_DATA, WM_CAP_SET_USER_DATA, WM_CAP_DRIVER_CONNECT,
WM_CAP_DRIVER_DISCONNECT, WM_CAP_DRIVER_GET_NAMEA, WM_CAP_DRIVER_GET_NAMEW,
WM_CAP_DRIVER_GET_VERSIONA, WM_CAP_DRIVER_GET_VERSIONW,
WM_CAP_DRIVER_GET_CAPS, WM_CAP_FILE_SET_CAPTURE_FILEA,
WM_CAP_FILE_SET_CAPTURE_FILEW, WM_CAP_FILE_GET_CAPTURE_FILEA,
WM_CAP_FILE_GET_CAPTURE_FILEW, WM_CAP_FILE_ALLOCATE, WM_CAP_FILE_SAVEASA,
WM_CAP_FILE_SAVEASW, WM_CAP_FILE_SET_INFOCHUNK, WM_CAP_FILE_SAVEDIBA,
WM_CAP_FILE_SAVEDIBW, WM_CAP_EDIT_COPY, WM_CAP_SET_AUDIOFORMAT,
WM_CAP_GET_AUDIOFORMAT, WM_CAP_DLG_VIDEOFORMAT, WM_CAP_DLG_VIDEOSOURCE,
WM_CAP_DLG_VIDEODISPLAY, WM_CAP_GET_VIDEOFORMAT, WM_CAP_SET_VIDEOFORMAT,
WM_CAP_DLG_VIDEOCOMPRESSION, WM_CAP_SET_PREVIEW, WM_CAP_SET_OVERLAY,
WM_CAP_SET_PREVIEWRATE, WM_CAP_SET_SCALE, WM_CAP_GET_STATUS,
WM_CAP_SET_SCROLL, WM_CAP_GRAB_FRAME, WM_CAP_GRAB_FRAME_NOSTOP,
WM_CAP_SEQUENCE, WM_CAP_SEQUENCE_NOFILE, WM_CAP_SET_SEQUENCE_SETUP,
WM_CAP_GET_SEQUENCE_SETUP, WM_CAP_SET_MCI_DEVICEA, WM_CAP_SET_MCI_DEVICEW,
WM_CAP_GET_MCI_DEVICEA, WM_CAP_GET_MCI_DEVICEW, WM_CAP_STOP, WM_CAP_ABORT,
WM_CAP_SINGLE_FRAME_OPEN, WM_CAP_SINGLE_FRAME_CLOSE, WM_CAP_SINGLE_FRAME,
WM_CAP_PAL_OPENA, WM_CAP_PAL_OPENW, WM_CAP_PAL_SAVEA, WM_CAP_PAL_SAVEW,
WM_CAP_PAL_PASTE, WM_CAP_PAL_AUTOCREATE, WM_CAP_PAL_MANUALCREATE,
WM_CAP_SET_CALLBACK_CAPCONTROL): Define using WM_USER.
(capSendMessage): Don't undef.
dj [Wed, 24 Sep 2008 23:29:37 +0000 (23:29 +0000)]
* m32c/varvects.S: New.
* m32c/varvects.h: New.
* m32c/sample.c: New.
* m32c/Makefile.in: Add m32cgloss library support.
* m32c/crt0.S: Tweaks to support interrupts by default.
* m32c/m32c.tmpl: Likewise.
rth [Wed, 24 Sep 2008 23:21:03 +0000 (23:21 +0000)]
include/
* elf/dwarf2.h (DW_OP_GNU_encoded_addr): New.
binutils/
* dwarf.c (size_of_encoded_value, get_encoded_value): Move up.
(decode_location_expression): Add section parameter. Handle
DW_OP_GNU_encoded_addr.
(read_and_display_attr_value): Update decode_location_expression call.
(display_debug_loc, display_debug_frames): Likewise.
gas/
* dw2gencfi.c (DWARF2_ADDR_SIZE): Provide default.
(struct cfi_insn_data): Add ea member.
(CFI_val_encoded_addr, dot_cfi_val_encoded_addr): New.
(output_cfi_insn): Handle CFI_val_encoded_addr.
(select_cie_for_fde): Don't match CFI_val_encoded_addr.
* doc/as.texinfo (.cfi_val_encoded_addr): Document.
vprus [Wed, 24 Sep 2008 16:37:22 +0000 (16:37 +0000)]
* remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
amodra [Wed, 24 Sep 2008 14:38:02 +0000 (14:38 +0000)]
PR 6913
* listing.c (print_options): Don't call fprintf without format string.
amodra [Wed, 24 Sep 2008 14:37:35 +0000 (14:37 +0000)]
PR 6913
* dwarf.c (print_dwarf_vma): Don't call printf without format string.
schwab [Wed, 24 Sep 2008 12:59:48 +0000 (12:59 +0000)]
* frame.c (get_frame_register_bytes): Avoid excessive function calls.
schwab [Wed, 24 Sep 2008 12:17:19 +0000 (12:17 +0000)]
* frame.c (get_frame_register_bytes): Take pseudo registers into
account.
ironhead [Wed, 24 Sep 2008 00:59:03 +0000 (00:59 +0000)]
2008-09-23 Chris Sutcliffe <ir0nh34d@users.sf.net>
* Makefile.in: Don't include host_os as part of snapshot filename.
amodra [Wed, 24 Sep 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 24 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
devans [Tue, 23 Sep 2008 18:35:29 +0000 (18:35 +0000)]
* dcache.c (state_chars): New static global.
(ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
All uses updated.
(dcache_info): Print cache state as mnemonically useful letters instead
of magic numbers.
* doc/gdb.texinfo (info dcache): Update.
devans [Tue, 23 Sep 2008 18:35:11 +0000 (18:35 +0000)]
* dcache.c (state_chars): New static global.
(ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
All uses updated.
(dcache_info): Print cache state as mnemonically useful letters instead
of magic numbers.
* doc/gdb.texinfo (info dcache): Update.
devans [Tue, 23 Sep 2008 17:36:50 +0000 (17:36 +0000)]
* dwarf2read.c (comp_unit_head): Reorganize for better packing.
amodra [Tue, 23 Sep 2008 00:00:07 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 23 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
kseitz [Mon, 22 Sep 2008 18:32:41 +0000 (18:32 +0000)]
* generic/gdbtk-cmds.c (gdb_clear_file): The global "attach_flag"
is now per-inferior.
tromey [Mon, 22 Sep 2008 18:18:06 +0000 (18:18 +0000)]
* symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
printf_filtered.
cgf [Mon, 22 Sep 2008 16:55:30 +0000 (16:55 +0000)]
* setup2.sgml: Clarify heap allocation.
ian [Mon, 22 Sep 2008 16:37:41 +0000 (16:37 +0000)]
* plugin-api.h (ld_plugin_status): Remove comma from the last item.
Use C style comment.
(ld_plugin_api_version, ld_plugin_output_file_type,
ld_plugin_symbol_kind, ld_plugin_symbol_visibility,
ld_plugin_symbol_resolution, ld_plugin_level, ld_plugin_tag): Remove
comma from the last item.
sandra [Mon, 22 Sep 2008 16:31:00 +0000 (16:31 +0000)]
2008-09-22 Sandra Loosemore <sandra@codesourcery.com>
gdb/doc
* gdb.texinfo (Packets): Add info on thread-id syntax and
multiprocess extensions.
<D>: Document multiprocess form of packet.
<H>: Use thread-id syntax.
<T>: Likewise.
<vCont>: Likewise. Note this is required for multiprocess.
<vKill>: New packet.
(Stop Reply Packets) <T>: Use thread-id syntax.
<W>: Document multiprocess form of reply.
<X>: Likewise.
(General Query Packets) <qC>: Use thread-id syntax.
<qfThreadInfo>: Likewise.
<qGetTLSAddr>: Likewise.
<qP>: Likewise.
<qSupported>: Add "multiprocess" feature.
<qThreadExtraInfo>: Use thread-id syntax.
palves [Mon, 22 Sep 2008 15:26:52 +0000 (15:26 +0000)]
* infrun.c (follow_exec): Don't do a generic mourn. Instead
inline the required bits.
* breakpoint.h (enum inf_context): Add inf_execd.
palves [Mon, 22 Sep 2008 15:25:54 +0000 (15:25 +0000)]
* infrun.c (handle_inferior_event): In the follow exec case,
context-switch before doing anything else.
palves [Mon, 22 Sep 2008 15:24:49 +0000 (15:24 +0000)]
* top.c (any_thread_of, kill_or_detach): New functions.
(quit_target): Iterate over all inferiors, killing or detaching
accordingly.
palves [Mon, 22 Sep 2008 15:21:30 +0000 (15:21 +0000)]
Remove the attach_flag global, and make it per-inferior.
* inferior.h (attach_flag): Delete.
(inferior_process): Declare.
* solib.c (update_solib_list): Adjust.
* gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
* inf-ptrace.c (inf_ptrace_detach): Adjust.
(inf_ptrace_files_info): Get it from the current inferior.
* inf-ttrace.c (inf_ttrace_attach): Adjust.
(inf_ttrace_files_info): Get it from the current
inferior.
* inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
(clear_sigint_trap): Get it from the current process.
* remote.c (extended_remote_attach_1)
(extended_remote_create_inferior_1): Adjust.
* top.c (quit_confirm, quit_target): Get it from the current inferior.
* procfs.c (do_detach): Adjust.
(procfs_wait): Get it from the event inferior.
(procfs_files_info): Get it from the current inferior.
* nto-procfs.c (procfs_files_info): Likewise.
(procfs_attach): Adjust. Set the attach_flag here.
(do_attach): Don't set it here.
(procfs_detach): Don't clear it.
(procfs_mourn_inferior): Don't clear it.
* solib-osf.c (osf_solib_create_inferior_hook): Adjust.
* target.c (attach_flag): Delete.
(generic_mourn_inferior): Don't clear it.
* win32-nat.c (get_win32_debug_event): Get it from the event
process.
(do_initial_win32_stuff): Add attaching argument. Set attach_flag
in the inferior accordingly.
(win32_attach): Don't set the attach_flag here. Pass 1 to
do_intial_win32_stuff.
(win32_files_info): Get it from the current inferior.
(win32_create_inferior): Dont clear attach_flag here. Pass 0 to
do_intial_win32_stuff.
palves [Mon, 22 Sep 2008 15:20:07 +0000 (15:20 +0000)]
Make the stop_soon global be per-inferior instead.
* infcmd.c (attach_command_post_wait): Adjust.
(attach_command): Likewise.
* inferior.h (stop_soon): Delete.
(struct inferior): Add stop_soon member.
* infrun.c (stop_soon): Delete.
(clear_proceed_status, start_remote)
(fetch_inferior_event, handle_inferior_event): Adjust.
(signal_stop_state): Don't check stop_soon here. Check in callers
instead.
(save_inferior_status, restore_inferior_status): Adjust.
* linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
signals to common code if starting up the inferior.
* inferior.h (struct inferior_info): Added stop_soon member.
* inferior.c (add_inferior) Clear stop_soon.
* mips-tdep.c (heuristic_proc_start): Adjust.
* nto-procfs.c (procfs_create_inferior): Adjust.
* solib-irix.c (irix_solib_create_inferior_hook): Adjust.
* solib-osf.c (osf_solib_create_inferior_hook): Adjust.
* solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
* solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
* win32-nat.c (do_initial_win32_stuff): Adjust.
* alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
palves [Mon, 22 Sep 2008 15:18:30 +0000 (15:18 +0000)]
Implement remote multi-process extensions.
* remote.c (struct remote_state): Add extended and
multi_process_aware fields.
(remote_multi_process_p): New.
(PACKET_vKill): New.
(record_currthread): Use thread_change_ptid. Notice new
inferiors.
(set_thread, remote_thread_alive): Use write_ptid.
(write_ptid, read_ptid): New.
(remote_current_thread, remote_threads_extra_info): Use them.
(remote_threads_info): Likewise. Detect new inferiors.
(remote_start_remote): Add inferior to inferior list.
(remote_multi_process_feature): New.
(remote_protocol_features): Add "multiprocess" feature.
(remote_query_supported): Pass "multiprocess+" as supported
features.
(remote_open_1): Clear multi_process_aware. Set extended
accordingly.
(remote_detach_1): Detach current process. Use extended packet
format for extended-remote multi-process. Detach process from the
inferior list. Only mourn after printing output.
(extended_remote_attach_1): Add process to the inferior list.
(remote_vcont_resume): Use write_ptid to pass the thread ids.
(remote_wait): Use read_ptid. Implement the extended
multi-process extension format of the 'W' and 'X' reply packets.
Remove exited inferiors from inferior list.
(remote_xfer_memory): Set general thread.
(remote_vkill): New.
(extended_remote_kill): New.
(remote_mourn_1): Discard all inferiors.
(select_new_thread_callback): New.
(extended_remote_mourn_1): If there are more processes to debug,
switch to a thread in another process, and don't pop the target.
(extended_remote_create_inferior_1): Add the new process to the
inferior list.
(remote_stopped_by_watchpoint): Indenting.
(remote_xfer_partial): Set the general thread.
(remote_pid_to_str): If the remote is multi-process aware, print
the process id as well as the thread id.
(remote_get_thread_local_address): Use write_ptid.
(init_extended_remote_ops): Register extended_remote_kill.
(_initialize_remote): Register new packets. Change
magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
member to 42000.
* thread.c (thread_change_ptid): Also account for the inferior pid
changing.
* inferior.h (discard_all_inferiors): Declare.
* inferior.c (discard_all_inferiors): New.
palves [Mon, 22 Sep 2008 15:16:51 +0000 (15:16 +0000)]
* gnu-nat.c (gnu_attach): Add process to inferiors table.
(gnu_detach): Remove it.
* go32-nat.c (go32_create_inferior): Add process to gdb's inferior
table.
* inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
to inferior table accordingly.
(inf_ptrace_attach): Add new process to inferior table.
(inf_ptrace_detach): Remove it.
* inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
to inferior table accordingly.
(inf_ttrace_attach): Add process to inferior table.
(inf_ttrace_detach): Remove it.
* linux-fork.c (init_fork_list): Delete any left over inferior.
(linux_fork_mourn_inferior, detach_fork_command): Also delete
processes from inferior list.
* monitor.c (monitor_open): Add process to inferior list.
(monitor_close): Remove it.
* nto-procfs.c (procfs_attach): Add process to inferior list.
Find threads after pushing the target.
(procfs_detach): Remove process from inferior list.
(procfs_create_inferior): Add process to inferior list.
* procfs.c (procfs_detach): Remove process from inferior list.
(do_attach): Add process to inferior list.
* remote-sim.c (sim_create_inferior): Add process to inferior list.
(gdbsim_close): Remove it.
* target.c (generic_mourn_inferior): If inferior_ptid is not
null_ptid, remove the corresponding inferior from inferior list.
* win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
(win32_detach): Remove it.
* linux-nat.c (linux_child_follow_fork): Delete and add inferiors
to inferior list accordingly.
* fork-child.c (fork_inferior): Add process to inferior list.
* corelow.c (CORELOW_PID): Define.
(core_close): Remove core from inferior list.
(core_open): Add it.
palves [Mon, 22 Sep 2008 15:12:18 +0000 (15:12 +0000)]
gdb/
* inferior.h: Forward declare struct ui_out.
Forward declare struct private_inferior.
(struct inferior): New.
(init_inferior_list, add_inferior, add_inferior_silent)
(delete_inferior, delete_inferior_silent, detach_inferior)
(gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
(valid_inferior_id, find_inferior_pid): New functions.
(inferior_callback_func): New typedef.
(iterate_over_inferiors, print_inferior, have_inferiors)
(current_inferior): New functions.
* inferior.c: New file.
* Makefile.in (SFILES): Add inferior.c.
(COMMON_OBS): Add inferior.o.
gdb/doc/
* gdb.texinfo (Inferiors): New section.
jlarmour [Mon, 22 Sep 2008 15:03:06 +0000 (15:03 +0000)]
* arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
instead of determining symbol and line info directly.
* MAINTAINERS: Update my email address.
jlarmour [Mon, 22 Sep 2008 15:02:54 +0000 (15:02 +0000)]
* arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
instead of determining symbol and line info directly.
jlarmour [Mon, 22 Sep 2008 15:02:04 +0000 (15:02 +0000)]
Update my email address.
drow [Mon, 22 Sep 2008 14:56:15 +0000 (14:56 +0000)]
* symtab.c (skip_prologue_using_sal): Treat two consecutive lines
at the same address as a prologue marker. Do not skip an entire
function.
ams [Mon, 22 Sep 2008 13:36:28 +0000 (13:36 +0000)]
2008-09-22 Andrew Stubbs <ams@codesourcery.com>
* frame.c (get_frame_register_bytes): Comment improvments.
palves [Mon, 22 Sep 2008 11:00:39 +0000 (11:00 +0000)]
gdb/
* linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
all-stop mode.
gdb/testsuite/
* lib/mi-support.exp (mi_expect_interrupt): New.
(mi_reverse_list, mi_check_thread_states): New, moved and renamed
from gdb.mi/mi-nonstop.exp.
* gdb.mi/mi-nsintrall.exp, gdb.mi/nsintrall.c: New.
* gdb.mi/mi-nonstop.exp (myreverse, check_thread_states): Moved to
lib/mi-support.exp.
Use mi_check_thread_states throughout. Avoid ".*" and do not
require an anchor after -exec-run.
gdbadmin [Mon, 22 Sep 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 22 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
ironhead [Sun, 21 Sep 2008 16:56:44 +0000 (16:56 +0000)]
2008-09-21 Chris Sutcliffe <ir0nh34d@users.sf.net>
* incude/sspi.h: include subauth.h to fix issue of UNICODE_STRING being
undefined.
gdbadmin [Sun, 21 Sep 2008 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Sun, 21 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
rsandifo [Sat, 20 Sep 2008 09:47:43 +0000 (09:47 +0000)]
ld/testsuite/
* ld-mips-elf/reloc-estimate-1.d: Make endian-neutral.
jkratoch [Sat, 20 Sep 2008 08:42:53 +0000 (08:42 +0000)]
Provide virtual target "cfi" for targets supporting CFI.
* ld-elf/eh-frame-hdr.d: Replace target and xfail statements by single
`target: cfi'.
* ld-elf/eh-group.exp: Call check_as_cfi instead of is_elf_format.
* ld-elf/eh-group1.s, elf/eh-group2.s: Use more compatible section
flags prefix '%'.
* ld-elf/eh5.d: Replace target statement by `target: cfi' with an Alpha
exception. Relax the `Code alignment factor' matching.
* lib/ld-lib.exp: Rename istarget as istarget_ld.
(istarget, check_as_cfi): New procedure.
(run_dump_test): New comment for the virtual target `cfi'.
amodra [Sat, 20 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 20 Sep 2008 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
ericb [Fri, 19 Sep 2008 23:29:24 +0000 (23:29 +0000)]
* errno.cc (_sys_errlist): Add ECANCELED, ENOTRECOVERABLE, EOWNERDEAD.
ccoutant [Fri, 19 Sep 2008 22:54:57 +0000 (22:54 +0000)]
Add plugin functionality for link-time optimization (LTO).
include/:
* plugin-api.h: New file.
gold/:
* configure.ac (plugins): Add --enable-plugins option.
* configure: Regenerate.
* config.in: Regenerate.
* Makefile.am (LIBDL): New variable.
(CCFILES): Add plugin.cc.
(HFILES): Add plugin.h.
(ldadd_var): Add LIBDL.
* Makefile.in: Regenerate.
* archive.cc: Include "plugin.h".
(Archive::setup): Don't preread archive symbols when using a plugin.
(Archive::get_file_and_offset): Add memsize parameter. Change callers.
(Archive::get_elf_object_for_member): Call plugin hooks for claiming
files.
(Archive::include_member): Add symbols from plugin objects.
* archive.h (Archive::get_file_and_offset): Add memsize parameter.
* descriptors.cc (Descriptors::open): Check for file descriptors
abandoned by plugins.
(Descriptors::claim_for_plugin): New function.
* descriptors.h (Descriptors::claim_for_plugin): New function.
(Open_descriptor::is_claimed): New field.
(claim_descriptor_for_plugin): New function.
* fileread.cc (File_read::claim_for_plugin): New function.
* fileread.h (File_read::claim_for_plugin): New function.
(File_read::descriptor): New function.
* gold.cc: Include "plugin.h".
(queue_initial_tasks): Add task to call plugin hooks for generating
new object files.
* main.cc: Include "plugin.h".
(main): Load plugin libraries.
* object.h (Pluginobj): Declare.
(Object::pluginobj): New function.
(Object::do_pluginobj): New function.
(Object::set_target): New function.
* options.cc: Include "plugin.h".
(General_options::parse_plugin): New function.
(General_options::General_options): Initialize plugins_ field.
(General_options::add_plugin): New function.
* options.h (Plugin_manager): Declare.
(General_options): Add --plugin option.
(General_options::has_plugins): New function.
(General_options::plugins): New function.
(General_options::add_plugin): New function.
(General_options::plugins_): New field.
* plugin.cc: New file.
* plugin.h: New file.
* readsyms.cc: Include "plugin.h".
(Read_symbols::do_read_symbols): Check for archive before checking
for ELF file. Call plugin hooks to claim files.
* resolve.cc (Symbol_table::resolve): Record when symbol is referenced
from a real object file; force override when processing replacement
files.
* symtab.cc (Symbol::init_fields): Initialize in_real_elf_ field.
(Symbol::init_base_object): Likewise.
(Symbol::init_base_output_data): Likewise.
(Symbol::init_base_output_segment): Likewise.
(Symbol::init_base_constant): Likewise.
(Symbol::init_base_undefined): Likewise.
(Symbol::output_section): Assert that object is not a plugin.
(Symbol_table::add_from_pluginobj): New function.
(Symbol_table::sized_finalize_symbol): Treat symbols from plugins as
undefined.
(Symbol_table::sized_write_globals): Likewise.
(Symbol_table::add_from_pluginobj): Instantiate template.
* symtab.h (Sized_pluginobj): Declare.
(Symbol::in_real_elf): New function.
(Symbol::set_in_real_elf): New function.
(Symbol::in_real_elf_): New field.
(Symbol_table::add_from_pluginobj): New function.
* testsuite/Makefile.am (AM_CFLAGS): New variable.
(LIBDL): New variable.
(LDADD): Add LIBDL.
(check_PROGRAMS): Add plugin_test_1 and plugin_test_2.
(check_SCRIPTS): Add plugin_test_1.sh and plugin_test_2.sh.
(check_DATA): Add plugin_test_1.err and plugin_test_2.err.
(MOSTLYCLEANFILES): Likewise.
* testsuite/Makefile.in: Regenerate.
* testsuite/plugin_test.c: New file.
* testsuite/plugin_test_1.sh: New file.
* testsuite/plugin_test_2.sh: New file.
keithmarshall [Fri, 19 Sep 2008 22:41:01 +0000 (22:41 +0000)]
keithmarshall [Fri, 19 Sep 2008 21:32:42 +0000 (21:32 +0000)]
ams [Fri, 19 Sep 2008 18:33:10 +0000 (18:33 +0000)]
2008-09-19 Andrew Stubbs <ams@codesourcery.com>
* MAINTAINERS: Update my email address.
ams [Fri, 19 Sep 2008 18:12:16 +0000 (18:12 +0000)]
2008-09-19 Andrew Stubbs <ams@codesourcery.com>
* frame.c (get_frame_register_bytes): Detect bad debug info.
jjohnstn [Fri, 19 Sep 2008 16:11:35 +0000 (16:11 +0000)]
2008-09-19 Eric Blake <ebb9@byu.net>
Supply missing POSIX errno values.
* libc/include/sys/errno.h (ENOTRECOVERABLE, EOWNERDEAD): Define.
* libc/string/strerror.c (strerror): Decode them, and ECANCELED.
amodra [Fri, 19 Sep 2008 10:00:40 +0000 (10:00 +0000)]
* write.c (TC_FORCE_RELOCATION_SUB_LOCAL): Heed md_register_arithmetic.
(TC_VALIDATE_FIX_SUB): Likewise.
* config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise.
* config/tc-hppa.h (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise.
* config/tc-mn10300.h (TC_VALIDATE_FIX_SUB): Likewise.
* config/tc-sh.h (TC_VALIDATE_FIX_SUB): Likewise.
(TC_FORCE_RELOCATION_SUB_LOCAL): Likewise.
* config/tc-sh64.h (TC_VALIDATE_FIX_SUB): Likewise.
* config/tc-xtensa.h (TC_VALIDATE_FIX_SUB): Likewise.
* doc/internals.texi (TC_FORCE_RELOCATION_SUB_ABS,
TC_FORCE_RELOCATION_SUB_LOCAL, TC_VALIDATE_FIX_SUB): Show new param.
amodra [Fri, 19 Sep 2008 09:51:31 +0000 (09:51 +0000)]
* elf32-ppc.c (ppc_elf_finish_dynamic_sections): Handle vxworks
_GLOBAL_OFFSET_TABLE_ in .got.plt section. Add BFD_ASSERTs.
denis [Fri, 19 Sep 2008 08:18:37 +0000 (08:18 +0000)]
Avoid gdb.gdbtk testsuite to stop when TCL_LIBRARY environment variable
is not set.
2008-09-19 Denis Pilat <denis.pilat@st.com>
* insight-support.exp (gdbtk_start): test TCL_LIBRARY env. variable
before being unset.
denis [Fri, 19 Sep 2008 07:23:16 +0000 (07:23 +0000)]
Fix insight crash when setting pending breakpoints:
2008-09-19 Denis Pilat <denis.pilat@st.com>
* generic/gdbtk-bp.c (gdb_get_breakpoint_info): Manage the case of NULL
location to handle pending breakpoint in a better way.
(gdb_find_bp_at_addr): Likewise.
amodra [Fri, 19 Sep 2008 02:11:02 +0000 (02:11 +0000)]
* write.c (md_register_arithmetic): Define.
(fixup_segment): Adjust TC_FORCE_RELOCATION_SUB_ABS invocation.
Modify error message when registers involved.
(TC_FORCE_RELOCATION_SUB_ABS): Heed md_register_arithmetic.
* config/tc-sh.h (TC_FORCE_RELOCATION_SUB_ABS): Likewise.
amodra [Fri, 19 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 19 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
kseitz [Thu, 18 Sep 2008 18:28:44 +0000 (18:28 +0000)]
From Pedro Alves <pedro@codesourcery.com>:
* generic/gdbtk-cmds.c (gdb_cmd, gdb_immediate_command): Adjust to
new bpstat_do_actions inferface.
* generic/gdbtk-hooks.c: Include gdbthread.h.
(gdbtk_annotate_signal): Get the stop_signal from the current
thread.
bwilson [Thu, 18 Sep 2008 00:37:47 +0000 (00:37 +0000)]
* elf32-xtensa.c (elf_xtensa_check_relocs): Check for negative refcount.
amodra [Thu, 18 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 18 Sep 2008 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
jkratoch [Wed, 17 Sep 2008 21:48:48 +0000 (21:48 +0000)]
Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
* infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
initialization ...
(fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
...
(handle_inferior_event): ... here after the add_thread call together
with the local adjust_pc_after_break and reinit_frame_cache calls.
jkratoch [Wed, 17 Sep 2008 07:50:28 +0000 (07:50 +0000)]
bfd/
PR 6893 - Do not consider FDEs for discarded sections as invalid.
* elf-eh-frame.c (_bfd_elf_parse_eh_frame): New REQUIRE_CLEARED_RELOCS.
Consider FDEs with cleared relocations as valid and ignorable.
ld/testsuite/
* ld-elf/eh-group.exp, ld-elf/eh-group1.s, ld-elf/eh-group2.s: New test.
binutils/
Suppress warnings on NONE relocations to discarded sections.
* readelf.c (is_none_reloc): New function.
(debug_apply_relocations): Ignore is_none_reloc() relocations.
jkratoch [Wed, 17 Sep 2008 07:43:49 +0000 (07:43 +0000)]
Fix testcases compilation failures due to unused variables.
* ld-elfcomm/common1b.c (dummy1): Mark the variable for GCC as USED.
* ld-shared/main.c (main): Move the P variable only to the places where
it is used.
amodra [Wed, 17 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 17 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
daney [Tue, 16 Sep 2008 18:54:59 +0000 (18:54 +0000)]
* breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
all hardware bpstats.
brobecke [Tue, 16 Sep 2008 18:21:33 +0000 (18:21 +0000)]
* gstdint.h: Delete.
ian [Tue, 16 Sep 2008 17:23:36 +0000 (17:23 +0000)]
* target-reloc.h (relocate_section): Check whether a symbol is
defined by the ABI before reporting an undefined symbol error.
* target.h (Target::is_defined_by_abi): Make parameter const.
(Target::do_is_defined_by_abi): Likewise.
* i386.cc (Target_i386::do_is_defined_by_abi): Likewise.
* powerpc.cc (Target_powerpc::do_is_defined_by_abi): Likewise.
* sparc.cc (Target_sparc::do_is_defined_by_abi): Likewise.
* x86_64.cc (Target_x86_64::do_is_defined_by_abi): Likewise.
* testsuite/Makefile.am (tls_test_shared.so): Add -Wl,-z,defs.
* testsuite/Makefile.in: Rebuild.
ian [Tue, 16 Sep 2008 17:17:22 +0000 (17:17 +0000)]
* fileread.cc (make_view): Add casts to avoid warning.
hjl [Tue, 16 Sep 2008 14:09:34 +0000 (14:09 +0000)]
bfd/
2008-09-16 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6877
* elflink.c (_bfd_elf_merge_symbol): Allow a common symbol to
override the function in a shared library.
ld/testsuite/
2008-09-16 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6877
* ld-elf/comm1.c: New.
* ld-elf/func1.c: Likewise.
* ld-elf/shared.exp: Add tests for libfunc1.so and comm1.
amodra [Tue, 16 Sep 2008 13:43:35 +0000 (13:43 +0000)]
PR 6844
* elf32-ppc.c (SYM_VAL): Define. Use throughout to find symbol vma.
(ppc_elf_relocate_section): Correct GOT offset calculation.
(ppc_elf_finish_dynamic_symbol): Use PPC_HA and PPC_LO.
(ppc_elf_finish_dynamic_sections): Likewise. Error if
htab->elf.hgot symbol is not defined in htab->got section.
aoliva [Tue, 16 Sep 2008 04:31:25 +0000 (04:31 +0000)]
* i386.cc (Target_i386::define_tls_base_symbol): Update comments.
* x86_64.cc (Target_x86_64::define_tls_base_symbol): Likewise.
aoliva [Tue, 16 Sep 2008 04:23:29 +0000 (04:23 +0000)]
* options.h (General_options::output_is_executable): New.
(General_options::output_is_pie): New.
* i386.cc (Target_i386::define_tls_base_symbol): Use SEGMENT_START
for shared libraries.
* x86_64.cc (Target_x86_64::define_tls_base_symbol): Likewise.
cgf [Tue, 16 Sep 2008 02:04:26 +0000 (02:04 +0000)]
* cygtls.h (unionent): Move from net.cc.
(unionent::struct_type): Move enum here.
(_local_storage::hostent_buf): Define as unionent.
(_local_storage::protoent_buf): Ditto.
(_local_storage::servent_buf): Ditto.
* net.cc (unionent): Move to cygtls.h.
(struct_type): Ditto.
(dup_ent): Define one function per {host,proto,serv}ent type.
(cygwin_getprotobyname): Simplify dup_ent call. Removed now-unneeded return
type coercion.
(cygwin_getprotobynumber): Ditto.
(cygwin_getservbyname): Ditto.
(cygwin_getservbyport): Ditto.
(cygwin_gethostbyname): Ditto.
(cygwin_gethostbyaddr): Ditto. tlsoffsets.h: Regenerate.
gdbadmin [Tue, 16 Sep 2008 00:00:36 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Tue, 16 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
amodra [Mon, 15 Sep 2008 23:41:55 +0000 (23:41 +0000)]
PR 6888
* elf32-ppc.c (ppc_elf_relocate_section): Handle NULL symbol section
on R_PPC_TOC16, R_PPC_SDAREL16, R_PPC_EMB_SDA2REL, R_PPC_EMB_SDA21,
R_PPC_EMB_RELSDA, R_PPC_SECTOFF* relocs.
kettenis [Mon, 15 Sep 2008 20:14:04 +0000 (20:14 +0000)]
* infcall.c (generic_push_dummy_code): Remove.
(push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
devans [Mon, 15 Sep 2008 15:31:58 +0000 (15:31 +0000)]
* dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
(struct attribute): Ditto.
amodra [Mon, 15 Sep 2008 13:53:46 +0000 (13:53 +0000)]
* gas/all/gas.exp: Don't run redef tests on a bunch of targets.
* gas/elf/elf.exp: Likewise.
amodra [Mon, 15 Sep 2008 13:53:17 +0000 (13:53 +0000)]
* write.c (install_reloc): Correct EMIT_SECTION_SYMBOLS test.
amodra [Mon, 15 Sep 2008 05:22:31 +0000 (05:22 +0000)]
* config/tc-frv.c (md_apply_fix): Use abs_section_sym for
relocs with no symbol.
* config/tc-mmix.c (md_assemble): Mark fake symbol on
BFD_RELOC_MMIX_BASE_PLUS_OFFSET as OK for use by relocs.
(mmix_md_end): Likewise mark mmix reg contents section symbol.
danglin [Mon, 15 Sep 2008 02:19:47 +0000 (02:19 +0000)]
* hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
danglin [Mon, 15 Sep 2008 01:56:31 +0000 (01:56 +0000)]
* hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
"#if 0" "#endif". Fix mapping of DWARF DBX registers to GDB registers.
Correct arguments and improve comments.
(hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum. Delete
disabled code.
* hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
point DBX register, change error to warning, and improve comments.
devans [Mon, 15 Sep 2008 01:22:01 +0000 (01:22 +0000)]
* dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
gdbadmin [Mon, 15 Sep 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 15 Sep 2008 00:00:06 +0000 (00:00 +0000)]
daily update
danglin [Sun, 14 Sep 2008 14:08:41 +0000 (14:08 +0000)]
* hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
arnoldm [Sun, 14 Sep 2008 14:04:00 +0000 (14:04 +0000)]
Add new tests for z80
arnoldm [Sun, 14 Sep 2008 08:38:02 +0000 (08:38 +0000)]
Fix bugs in the disassembly of some ld-instructions
brobecke [Sun, 14 Sep 2008 06:37:18 +0000 (06:37 +0000)]
* defs.h (GCC_GENERATED_STDINT_H): Define.