OSDN Git Service
jturney [Tue, 19 Apr 2011 18:51:20 +0000 (18:51 +0000)]
2011-04-02 Jon TURNEY <jon.turney@dronecode.org.uk>
* thread.cc (semaphore::init): We cannot reliably infer anything from
the existing contents of sem, so merely warn rather than return EBUSY
if it looks like we are reinitialising a semaphore.
tromey [Tue, 19 Apr 2011 18:04:04 +0000 (18:04 +0000)]
gdb
* windows-tdep.c (windows_xfer_shared_library):
* windows-nat.c (get_module_name, windows_make_so):
* v850-tdep.c (v850_handle_pushm):
* utils.c (null_cleanup, gdb_realpath):
* ui-out.c (get_next_header):
* tracepoint.c (clear_traceframe_info):
* symtab.c (lookup_symtab):
* serial.h (struct serial_ops):
* mipsread.c (read_alphacoff_dynamic_symtab):
* infcmd.c (print_return_value):
* ia64-linux-tdep.c (ia64_linux_sigcontext_register_address):
* f-exp.y (parse_number):
* exceptions.c (catch_exceptions):
* dummy-frame.c (dummy_frame_this_id):
* defs.h (struct cleanup):
* breakpoint.c (disable_breakpoints_in_unloaded_shlib):
* arm-tdep.c (arm_push_dummy_call):
* amd64-tdep.h (amd64_collect_xsave):
* amd64-tdep.c (amd64_collect_xsave):
* alpha-tdep.c (alpha_heuristic_frame_unwind_cache):
* README (typing): Remove duplicate words.
* cli/cli-decode.c (lookup_cmd_composition): Add comma.
* infrun.c (siginfo_value_read): Fix typo.
* solib-frv.c (frv_fdpic_find_global_pointer): Likewise.
* top.c (source_line_number): Add comma.
gdb/doc
* gdbint.texinfo (Register Information Functions): Remove
duplicate "the".
* gdb.texinfo (Emacs): Remove duplicate "to".
(GDB/MI Variable Objects): Remove duplicate "the".
(General Query Packets): Likewise.
gdb/testsuite
* gdb.mi/mi-nsmoribund.exp:
* gdb.hp/gdb.objdbg/objdbg01.exp:
* gdb.base/structs.exp (test_struct_returns):
* gdb.base/call-sc.exp (test_scalar_returns):
* gdb.base/bigcore.exp: Remove duplicate words.
gdb/gdbserver
* win32-low.c (handle_load_dll): Remove duplicate "the".
hjl [Tue, 19 Apr 2011 17:06:21 +0000 (17:06 +0000)]
Remove the unused ld-plugin/plugin-ignore.d.
2011-04-19 H.J. Lu <hongjiu.lu@intel.com>
* ld-plugin/plugin-ignore.d: Removed.
corinna [Tue, 19 Apr 2011 16:52:50 +0000 (16:52 +0000)]
* COPYING: Replace with the GPLv3 definition.
* CYGWIN_LICENSE: Move Cygwin to GPLv3+. Align text to FSF speak.
marckhouzam [Tue, 19 Apr 2011 15:16:14 +0000 (15:16 +0000)]
2011-04-19 Marc Khouzam <marc.khouzam@ericsson.com>
* thread.c (any_live_thread_of_process): Prioritize threads
that are not executing.
* gdbthread.h (any_live_thread_of_process): Update comment
as per above change.
schwab [Tue, 19 Apr 2011 14:33:08 +0000 (14:33 +0000)]
* xcoffread.c (process_xcoff_symbol): Remove useless cast.
(scan_xcoff_symtab): Likewise.
muller [Tue, 19 Apr 2011 14:12:48 +0000 (14:12 +0000)]
* xcoffread.c (process_xcoff_symbol): ARI fix: Avoid assignment
inside if clause.
muller [Tue, 19 Apr 2011 12:57:36 +0000 (12:57 +0000)]
* xstormy16-tdep.c (xstormy16_push_dummy_call): Add local
variables to simplify code and avoid == operator at end of
line as this is against GNU coding standards.
muller [Tue, 19 Apr 2011 12:32:20 +0000 (12:32 +0000)]
* solib-svr4.c (svr4_keep_data_in_core): Rename local variable
lm_name to name_lm to avoid conflict with lm_name function.
muller [Tue, 19 Apr 2011 11:38:40 +0000 (11:38 +0000)]
ARI fixes: Use only lowercase function name for static functions.
* nto-tdep.c (LM_ADDR): Rename to...
(lm_addr): New function name.
(nto_relocate_section_addresses): Adapt to change above.
* solib-sunos.c (LM_ADDR): Rename to...
(lm_addr): New function name.
(LM_NEXT): Rename to...
(lm_next): New function name.
(sunos_current_sos, sunos_relocate_section_addresses): Adapt to
function name changes above.
* solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Rename to...
(lm_addr_from_link_map): New function name.
(HAS_LM_DYNAMIC_FROM_LINK_MAP): Rename to...
(has_lm_dynamic_from_link_map): New function name.
(LM_DYNAMIC_FROM_LINK_MAP): Rename to...
(lm_dynamic_from_link_map): New function name.
(LM_ADDR_CHECK): Rename to...
(lm_addr_check): New function name.
(LM_NEXT): Rename to...
(lm_next): New function name.
(LM_PREV): Rename to...
(lm_prev): New function name.
(LM_NAME): Rename to...
(lm_name): New function name.
(IGNORE_FIRST_LINK_MAP_ENTRY): Rename to...
(ignore_first_link_map_entry): New function name.
(svr4_keep_data_in_core): Adapt to function name changes above.
(svr4_current_sos): Likewise.
(enable_break): Likewise.
(svr4_relocate_section_addresses): Likewise.
corinna [Tue, 19 Apr 2011 10:15:06 +0000 (10:15 +0000)]
* autoload.cc (GetConsoleWindow): Drop.
(GetSystemWindowsDirectoryW): Drop.
* fhandler_console.cc (beep): Call GetSystemWindowsDirectoryW instead of
GetWindowsDirectoryW.
* uinfo.cc (cygheap_user::env_systemroot): Call
GetSystemWindowsDirectoryW and convert to multibyte on the fly.
* winlean.h (GetWindowsDirectoryW): Redefine to something invalid.
Explain why.
corinna [Tue, 19 Apr 2011 10:02:05 +0000 (10:02 +0000)]
* Makefile.in (DLL_IMPORTS): Drop advapi32.dll.
* autoload.cc: Enable autoloading advapi32 functions.
* environ.cc (regopt): Use wide char arguments in reg_key functions.
* fhandler_console.cc (beep): Ditto. Use WCHAR throughout.
* registry.cc (reg_key): Rewrite reg_key class to use native NT registry
functions. Use WCHAR string parameters throughout. Use PCWSTR rather
than const WCHAR. Drop multibyte char functionality. Drop unused
methods.
(get_registry_hive_path): Use RtlQueryRegistryValues to fetch path from
registry.
(load_registry_hive): Drop useless check for user hive being available.
Load hive using NtLoadKey.
* registry.h: Accommodate above changes.
* sched.cc (sched_rr_get_interval): Use wide char arguments in reg_key
functions.
* shared.cc (init_installation_root): Ditto.
(shared_info::init_obcaseinsensitive): Use RtlQueryRegistryValues to
fetch obcaseinsensitive value.
(shared_info::heap_slop_size): Use wide char arguments in reg_key
functions.
(shared_info::heap_chunk_size): Ditto.
* syscalls.cc (gethostid): Ditto.
* winsup.h (__WIDE): Define.
(_WIDE): Define.
* libc/minires-os-if.c (get_registry_dns_items): Don't fetch values
from registry. Just extract them from given UNICODE_STRING parameter.
(get_registry_dns): Fetch all registry values at once using
RtlQueryRegistryValues.
corinna [Tue, 19 Apr 2011 08:59:30 +0000 (08:59 +0000)]
* net.cc (get_ipv4fromreg_ipcnt): Rearrange to fetch all registry
values at once using RtlQueryRegistryValues.
(get_ipv4fromreg): Ditto.
corinna [Tue, 19 Apr 2011 08:45:36 +0000 (08:45 +0000)]
* fhandler_registry.cc (fhandler_registry::fstat): Use RegQueryInfoKeyW.
corinna [Tue, 19 Apr 2011 08:39:38 +0000 (08:39 +0000)]
* fhandler_proc.cc (read_value): Remove definition.
(print): Simplify.
(format_proc_cpuinfo): Drop useless call to GetSystemInfo. Rearrange
to use Rtl registry functions. Rename dwOldThreadAffinityMask to
orig_affinity_mask.
corinna [Tue, 19 Apr 2011 08:02:58 +0000 (08:02 +0000)]
* libc/include/sys/signal.h (_sig_func_ptr): Define with int parameter
per POSIX. Explain in comment.
nickc [Tue, 19 Apr 2011 07:44:07 +0000 (07:44 +0000)]
* config/tc-arm.c (v7m_psrs): Revert previous delta.
* gas/arm/mrs-msr-thumb-v7e-m.s: Restore name of basepri_max
register.
* gas/arm/mrs-msr-thumb-v7e-m.d: Likewise.
* gas/arm/arch7.d: Likewise.
* gas/arm/arch7.s: Likewise.
* arm-dis.c: Revert previous reversion.
nickc [Tue, 19 Apr 2011 07:27:26 +0000 (07:27 +0000)]
* gas/arm/arch7.s: Fix typo basepri_max should be basepri_mask.
* gas/arm/mrs-msr-thumb-v7e-m.s: Likewise.
* gas/arm/arch7.d: Update expected disassembly.
* gas/arm/attr-march-armv7.d: Remove Microcontroller tag.
* gas/arm/blx-bad.d: Only run for ELF based targets.
* gas/arm/mrs-msr-thumb-v6t2.d: Likewise.
* gas/arm/vldm-arm.d: Likewise.
* gas/arm/mrs-msr-thumb-v7-m.d: Likewise.
Remove qualifiers from PSR and IAPSR regsiter names.
* gas/arm/mrs-msr-thumb-v7e-m.d: Likewise.
* gas/arm/thumb2_bcond.d: Update expected disassembly to allow for
relaxing of branch insns.
* gas/arm/thumb32.d: Fix whitespace problems in disassembly.
* config/tc-arm.c (parse_psr): Use selected_cpu not cpu_variant to
detect M-profile targets.
(do_t_swi): Exclude v7 and higher variants from arm_ext_os test.
(v7m_psrs): Fix typo: basepri_max should be basepri_mask.
* arm-dis.c (psr_name): Revert previous delta.
* arm.h (ARM_AEXT_V7_ARM): Remove ARM_EXT_OS from bitmask.
muller [Tue, 19 Apr 2011 07:16:39 +0000 (07:16 +0000)]
ARI cleanup.
* xtensa-tdep.c (xtensa_register_type): Use xstrprintf instead of
sprintf. Simplify code and avoid loosing memory.
(xtensa_register_reggroup_p): Extract assignment out of IF clause.
(call0_frame_cache): Remove && operator from end of line.
gdbadmin [Tue, 19 Apr 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Tue, 19 Apr 2011 00:00:05 +0000 (00:00 +0000)]
daily update
hjl [Mon, 18 Apr 2011 21:45:37 +0000 (21:45 +0000)]
Update expected LTO linker errors for GCC 4.6.
2011-04-18 H.J. Lu <hongjiu.lu@intel.com>
* ld-plugin/plugin-7.d: Update expected LTO linker errors for
GCC 4.6.
* ld-plugin/plugin-8.d: Likewise.
corinna [Mon, 18 Apr 2011 19:07:17 +0000 (19:07 +0000)]
* localtime.cc (tzload): Don't change global timezone information
when called from gmtime or gmtime_r.
(tzparse): Ditto.
corinna [Mon, 18 Apr 2011 15:51:53 +0000 (15:51 +0000)]
* cygtls.cc (_cygtls::remove): Always close sockevt handle.
ktietz [Mon, 18 Apr 2011 15:40:27 +0000 (15:40 +0000)]
2011-04-18 Kai Tietz <ktietz@redhat.com>
* deffilep.y (def_aligncomm): Avoid duplets.
ktietz [Mon, 18 Apr 2011 15:38:02 +0000 (15:38 +0000)]
2011-04-18 Kai Tietz <ktietz@redhat.com>
* deffilep.y (def_pool_str): New type.
(pool_strs): Local static.
(def_pool_alloc): Local function.
(def_pool_strdup): Likewise.
(def_pool_free): Likewise.
(opt_name): Replace xmalloc/xstrdup by
def_pool_alloc/def_pool_strdup.
(dot_name): Likewise.
(anylang_id): Likewise.
(def_lex): Likewise.
(def_file_parse): Call def_pool_free on
exit and cleanup directives elements.
(def_file_add_directive): Call def_pool_free.
cgf [Mon, 18 Apr 2011 14:02:02 +0000 (14:02 +0000)]
fix typo
gingold [Mon, 18 Apr 2011 13:59:05 +0000 (13:59 +0000)]
2011-04-18 Tristan Gingold <gingold@adacore.com>
* coff-rs6000.c: Convert to ISO-C. Remove PARAMS macro.
gingold [Mon, 18 Apr 2011 13:44:35 +0000 (13:44 +0000)]
2011-04-18 Tristan Gingold <gingold@adacore.com>
* gas/macros/app1.s: Export symbol
* gas/macros/app2.s: Ditto
* gas/macros/app3.s: Ditto
* gas/macros/app4.s: Ditto
* gas/macros/app4b.s: Ditto
* gas/macros/app1.d: Adjust.
* gas/macros/app2.d: Ditto.
* gas/macros/app3.d: Ditto.
* gas/macros/app4.d: Ditto.
gingold [Mon, 18 Apr 2011 13:43:20 +0000 (13:43 +0000)]
2011-04-18 Tristan Gingold <gingold@adacore.com>
* lib/gas-defs.exp (get_standard_section_names): Add names for
alpha vms.
* gas/all/gas.exp: Do not test diff1.s on alpha-vms.
pbrook [Mon, 18 Apr 2011 13:41:39 +0000 (13:41 +0000)]
2011-04-18 Paul Brook <paul@codesourcery.com>
ld/
* emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS
for unwinding tables.
corinna [Mon, 18 Apr 2011 12:00:13 +0000 (12:00 +0000)]
* new-features.sgml (ov-new1.7.10): Document ppoll.
corinna [Mon, 18 Apr 2011 12:00:02 +0000 (12:00 +0000)]
* cygwin.din (ppoll): Export.
* poll.cc (ppoll): Implement.
* posix.sgml (std-gnu): Add ppoll.
* include/cygwin/version.h: Bump API minor number.
* include/sys/poll.h (ppoll): Declare.
corinna [Mon, 18 Apr 2011 11:44:16 +0000 (11:44 +0000)]
* fhandler_socket.cc (fhandler_socket::evaluate_events): Handle the
FD_CLOSE event specially when called from accept. Explain why.
(fhandler_socket::shutdown): Fake success on not-connected socket and
trigger socket event if the read side of a socket is affected. Explain
why.
* poll.cc (poll): Check for saw_shutdown_read on sockets to generate
POLLHUP as well.
corinna [Mon, 18 Apr 2011 11:26:36 +0000 (11:26 +0000)]
* Fix various copyrights.
corinna [Mon, 18 Apr 2011 10:23:21 +0000 (10:23 +0000)]
* setfacl.c (getaclentry): Allow extra colon in mask and other entries.
ian [Mon, 18 Apr 2011 05:39:43 +0000 (05:39 +0000)]
* object.cc (Relocate_info::location): Simplify location string.
* errors.cc (Errors::error_at_location): Don't print program
name.
(Errors::warning_at_location): Likewise.
(Errors::undefined_symbol): Likewise.
* testsuite/debug_msg.sh: Update accordingly.
cgf [Mon, 18 Apr 2011 01:46:56 +0000 (01:46 +0000)]
* * signal.cc (_pinfo::kill): Set this_process_state when process exists.
gdbadmin [Mon, 18 Apr 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 18 Apr 2011 00:00:05 +0000 (00:00 +0000)]
daily update
amodra [Sun, 17 Apr 2011 23:18:23 +0000 (23:18 +0000)]
PR ld/12365
PR ld/12672
missing changelog entries
amodra [Sun, 17 Apr 2011 23:15:11 +0000 (23:15 +0000)]
PR ld/12365
PR ld/12672
bfd/
* bfd.c (BFD_PLUGIN): Define.
(BFD_FLAGS_SAVED, BFD_FLAGS_FOR_BFD_USE_MASK): Add BFD_PLUGIN.
* bfd-in2.h: Regenerate.
* elflink.c (elf_link_output_extsym): Strip undefined plugin syms.
* opncls.c (bfd_make_readable): Don't lose original bfd flags.
ld/
* ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action
when no_more_claiming.
* ldmain.c (add_archive_element): Likewise.
(multiple_definition): Remove plugin_multiple_definition call.
(notice): Remove plugin_notice call.
* ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move.
Delete prototype.
(plugin_insert): New static var.
(open_input_bfds): Only rescan libs after plugin insert point.
(lang_gc_sections): Omit plugin claimed files.
(lang_process): Set plugin_insert. Only rescan when plugin adds
objects.
* plugin.h (no_more_claiming): Declare.
(plugin_notice, plugin_multiple_definition): Don't declare.
* plugin.c: Formatting.
(orig_notice_all, orig_allow_multiple_defs, orig_callbacks,
plugin_callbacks): New static vars.
(no_more_claiming): Make global.
(plugin_cached_allow_multiple_defs): Delete.
(plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section,
use newer bfd_make_section variant. Make COMMON section too.
Error handling. Correct setting of gp size.
(asymbol_from_plugin_symbol): Properly cast last arg of concat.
(message): Likewise for ACONCAT.
(asymbol_from_plugin_symbol): Use our COMMON section.
(get_symbols): When report_plugin_symbols, show visibility too.
(init_non_ironly_hash): Move. Don't test non_ironly_hash.
(plugin_load_plugins): Save state of linker callbacks, set up to
call plugin_notice instead. Call init_non_ironly_hash here.
(plugin_call_all_symbols_read): Set plugin_multiple_definition in
plugin callbacks.
(plugin_notice): Rewrite.
(plugin_multiple_definition): Make static, call original callback.
ld/testsuite/
* ld-plugin/plugin-7.d: Adjust for plugin changes.
* ld-plugin/plugin-8.d: Likewise.
* ld-plugin/plugin.exp: Pass --verbose=2 for visibility test, and
compare ld output to..
* ld-plugin/plugin-12.d: New.
cgf [Sun, 17 Apr 2011 21:45:27 +0000 (21:45 +0000)]
* signal.cc (_pinfo::kill): Return 0 when attempting to test for existence of
an existed process which has not yet been reaped.
cgf [Sun, 17 Apr 2011 19:56:24 +0000 (19:56 +0000)]
* cygheap.h (init_cygheap::ctty): Use base class so that console can join in
the fun.
* dtable.cc (dtable::stdio_init): Remove special-case call to set_console_ctty
().
* exceptions.cc (sigpacket::process): Conditionally flush terminal input on
certain signals.
* fhandler.h (fhandler_console::get_tty_stuff): Make non-static.
(fhandler_termios::get_ttyp): Move here.
(fhandler_termios::sigflush): Declare.
(fhandler_tty_common::get_ttyp): Delete.
* fhandler_console.cc (fhandler_console::get_tty_stuff): Pass this as "arch"
argument.
(set_console_ctty): Delete.
(tty_list::get_tty): Just return pointer to shared console region, delaying
get_tty_stuff until open().
(fhandler_console::init): Treat NULL handle as signifying that console should
be opened with O_NOCTTY flag. Rename handle argument to the more common 'h'.
* fhandler_termios.cc (fhandler_termios::sigflush): Define.
* fhandler_tty.cc (handler_tty_master::init_console): Pass NULL as first
argument to fhandler_console::init.
* pinfo.cc (_pinfo::set_ctty): Change third parameter to fhandler_termios *.
Add extra debugging.
* pinfo.h (_pinfo::set_ctty): Change third parameter to fhandler_termios *.
* sigproc.cc (handle_sigsuspend): Don't special-case non-main threads.
jkratoch [Sun, 17 Apr 2011 19:17:10 +0000 (19:17 +0000)]
gdb/
Fix libraries displacement if they change whether they were prelinked.
* solib-svr4.c (LM_ADDR_CHECK): Set L_ADDR even if the DYNAMIC pointer
does not match. Comment why.
gdb/testsuite/
* gdb.base/break-interp-lib.c (v, vptr): New variables.
* gdb.base/break-interp.exp (test_attach): New comment.
jkratoch [Sun, 17 Apr 2011 19:12:19 +0000 (19:12 +0000)]
gdb/
* corelow.c: Include wrapper.h.
(core_open): Call now gdb_target_find_new_threads.
* wrapper.c: Include target.h.
(gdb_target_find_new_threads): New.
* wrapper.h (gdb_target_find_new_threads): New declaration.
jkratoch [Sun, 17 Apr 2011 19:11:06 +0000 (19:11 +0000)]
gdb/
* linux-thread-db.c (find_new_threads_callback): Exit on zero TI_TID
even if !TARGET_HAS_EXECUTION.
gdb/testsuite/
* gdb.threads/gcore-thread.exp ($core0file): New variable.
(clear __stack_user.next, clear stack_used.next)
(save a zeroed-threads corefile): New test.
Call core_load for $core0file.
(zeroed-threads cannot be listed): New test.
jkratoch [Sun, 17 Apr 2011 19:04:07 +0000 (19:04 +0000)]
gdb/testsuite/
* gdb.threads/gcore-thread.exp ($testfile): Match it the .exp
filename.
($srcfile): Preserve the original value.
($testfile): Match it the .exp filename.
($corefile): New variable. Substitute it around.
Use clean_restart.
($prev_timeout): Remove.
(load_core): Move core loading into this proc.
Fix restore of $timeout if load_core fails.
jkratoch [Sun, 17 Apr 2011 18:38:41 +0000 (18:38 +0000)]
bfd/
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Do not check for
SEC_LOAD.
gdb/
Fix convert_code_addr_to_desc_addr for ppc64 files after eu-strip.
* elfread.c (elf_symfile_read): New variable synth_abfd, pass it to
bfd_get_synthetic_symtab.
* jit.c (jit_register_code): Pass NULL to the new parameter parent.
* machoread.c (macho_add_oso_symfile): Pass main_objfile to the new
parameter parent, remove the call to add_separate_debug_objfile.
* solib.c (solib_read_symbols): Pass NULL to the new parameter parent.
* symfile-mem.c (symbol_file_add_from_memory): Likewise.
* symfile.c (symbol_file_add_with_addrs_or_offsets): New parameter
parent, new comment for it, call add_separate_debug_objfile for it.
(symbol_file_add_separate): Pass objfile as the parameter parent,
remove the call to add_separate_debug_objfile.
(symbol_file_add_from_bfd): New parameter parent, pass it.
(symbol_file_add): Pass NULL to the new parameter parent.
* symfile.h (symbol_file_add_from_bfd): New parameter parent.
gdb/testsuite/
* gdb.base/eu-strip-infcall.c: New file.
* gdb.base/eu-strip-infcall.exp: New file.
jkratoch [Sun, 17 Apr 2011 18:08:57 +0000 (18:08 +0000)]
gdb/
* elfread.c (elf_symtab_read): Do not ignore .L symbols if they are
BSF_SYNTHETIC.
gdb/testsuite/
* gdb.base/callfuncs.c (Lcallfunc, callfunc): New functions.
* gdb.base/callfuncs.exp (print callfunc (Lcallfunc, 5)): New test.
jkratoch [Sun, 17 Apr 2011 14:14:21 +0000 (14:14 +0000)]
gdb/
Fix Python access to inlined frames.
* python/py-frame.c (frapy_read_var): Find BLOCK using get_frame_block.
* python/py-symbol.c (gdbpy_lookup_symbol): Likewise.
gdb/testsuite/
Fix Python access to inlined frames.
* gdb.python/py-frame-inline.c: New file.
* gdb.python/py-frame-inline.exp: New file.
gdbadmin [Sun, 17 Apr 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Sun, 17 Apr 2011 00:00:05 +0000 (00:00 +0000)]
daily update
vapier [Sat, 16 Apr 2011 18:16:33 +0000 (18:16 +0000)]
sim: add sim_complete_command stubs for non-common-using ports
For the ports that don't use the common/ subdir, we need to add stub funcs
to them to avoid build failures with gdb and command completion. These do
not implement the actual completion functionality ... any port that wants
that can either convert to the common/ subdir, or fill out the function on
their own time.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
vapier [Sat, 16 Apr 2011 17:37:55 +0000 (17:37 +0000)]
sim: bfin: use store buffer with more 32bit insns
A bunch of 32bit insns were not using the store buffer, so when they were
used in parallel insns, they would incorrectly clobber a register early.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
amodra [Sat, 16 Apr 2011 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 16 Apr 2011 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
ericb [Fri, 15 Apr 2011 20:26:04 +0000 (20:26 +0000)]
strchrnul: avoid segv
* libc/string/strchrnul.c (strchrnul): Fix strchrnul.
vapier [Fri, 15 Apr 2011 16:23:19 +0000 (16:23 +0000)]
gdb: sim: add style fixes lost between git->cvs
tromey [Fri, 15 Apr 2011 15:05:01 +0000 (15:05 +0000)]
* dwarf2read.c (add_index_entry): Use VEC_last, not VEC_length.
nickc [Fri, 15 Apr 2011 11:13:59 +0000 (11:13 +0000)]
* elf-bfd.h (struct sdt_note): New struct.
(struct elf_obj_tdata) <sdt_note_head>: New field.
* elf.c (elfobj_grok_stapsdt_note_1): New function.
(elfobj_grok_stapsdt_note): Likewise.
(elf_parse_notes): Added code to treat SystemTap note
sections.
* common.h (NT_STAPSDT): New define.
mkuvyrkov [Fri, 15 Apr 2011 09:58:22 +0000 (09:58 +0000)]
* ld-m68k/tls-gd-ie-1.d: Stabilize test.
* ld-m68k/tls-gd-3.[sd]: New test.
gary [Fri, 15 Apr 2011 09:28:31 +0000 (09:28 +0000)]
2011-04-15 Gary Benson <gbenson@redhat.com>
* MAINTAINERS: Add myself to write-after-approval section.
yselkowitz [Fri, 15 Apr 2011 09:22:13 +0000 (09:22 +0000)]
* thread.cc (pthread_setschedprio): New function.
* include/pthread.h (pthread_setschedprio): Declare.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
* cygwin.din (pthread_setschedprio): Export.
* posix.sgml (std-notimpl) Move pthread_setschedprio from here...
(std-susv4) ...to here.
amodra [Fri, 15 Apr 2011 03:47:30 +0000 (03:47 +0000)]
PR ld/12672
* ldlang.c (enum open_bfd_mode): New.
(open_input_bfds): Replace "force" param with "mode". Reload
archives for rescan. Update all callers.
(lang_process): Make another open_input_bfds pass for plugins.
vapier [Fri, 15 Apr 2011 03:43:44 +0000 (03:43 +0000)]
gdb: sim: add command line completion
For now, only the sub-command name is completed. No support yet for
completing options to that command. But even this is a huge step as
currently, nothing is completed, and the basic "help sim" is fairly
obtuse as to what exactly the "sim" command accepts.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
vapier [Fri, 15 Apr 2011 01:21:21 +0000 (01:21 +0000)]
sim: bfin: handle implicit DISALGNEXCPT with video insns
When most video related insns are used in parallel with Ireg loads, the
DISALGNEXCPT insn behavior is implicitly in effect.
Reported-by: Anton Shokurov <shokurov.anton.v@yandex.ru>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
amodra [Fri, 15 Apr 2011 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 15 Apr 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
ccoutant [Thu, 14 Apr 2011 23:29:41 +0000 (23:29 +0000)]
* gold/layout.cc (Layout::symtab_section_offset): New function.
* gold/layout.h (Layout::symtab_section_offset): New function.
* gold/reloc.cc (Sized_relobj::do_relocate): Call it.
krebbel [Thu, 14 Apr 2011 11:11:31 +0000 (11:11 +0000)]
2011-04-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/tc-s390.c (s390_machine): New prototype.
(md_pseudo_table): New pseudo-op .machine.
(s390_opcode_hash): Initialize to NULL.
(s390_parse_cpu): New function.
(md_parse_option): Use s390_parse_cpu.
(s390_setup_opcodes): New function.
(md_begin): Use s390_setup_opcodes.
(s390_machine): New hook handling the new .machine pseudo.
* doc/c-s390.texi: Document the new pseudo op .machine.
2011-04-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gas/s390/zarch-machine.s: New testcase.
* gas/s390/zarch-machine.d: New testcase output.
* gas/s390/s390.exp: Execute the new testcase.
bauermann [Thu, 14 Apr 2011 02:20:20 +0000 (02:20 +0000)]
* breakpoint.c (print_exception_catchpoint): Rename to ...
(print_it_exception_catchpoint): ... this.
(gnu_v3_exception_catchpoint_ops): Update with new name
for print_it_exception_catchpoint.
gdbadmin [Thu, 14 Apr 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Thu, 14 Apr 2011 00:00:04 +0000 (00:00 +0000)]
daily update
emachado [Wed, 13 Apr 2011 21:12:19 +0000 (21:12 +0000)]
* gdb.base/gdb1090.exp: Change breakpoint location to read the
content of 's24' correctly (avoiding "optimized out").
* gdb.base/gdb1090.c: Add comment in order to set breakpoint.
jkratoch [Wed, 13 Apr 2011 20:31:01 +0000 (20:31 +0000)]
gdb/testsuite/
* lib/gdb.exp (gdb_breakpoint): New case for a GDB internal error.
emachado [Wed, 13 Apr 2011 19:24:16 +0000 (19:24 +0000)]
2011-04-13 Edjunior Machado <emachado@linux.vnet.ibm.com>
* MAINTAINERS: Add myself for write after approval privileges.
mpolacek [Wed, 13 Apr 2011 18:43:17 +0000 (18:43 +0000)]
Update the gdb/ChangeLog.
mpolacek [Wed, 13 Apr 2011 18:33:17 +0000 (18:33 +0000)]
Add mpolacek to gdb/MAINTAINERS.
bauermann [Wed, 13 Apr 2011 18:32:24 +0000 (18:32 +0000)]
gdb/
* breakpoint.c (watch_command_1): Remove colon from exp_string.
gdb/testsuite/
* gdb.base/watchpoint.exp (test_inaccessible_watchpoint): Don't
expect a colon in watch -location output.
bauermann [Wed, 13 Apr 2011 18:28:26 +0000 (18:28 +0000)]
* breakpoint.c (save_breakpoints): Verify whether
breakpoint_ops.print_recreate is defined before calling it.
jkratoch [Wed, 13 Apr 2011 15:54:04 +0000 (15:54 +0000)]
gdb/testsuite/
* gdb.base/commands.exp (redefine_backtrace_test): Fix race.
New testcase `expect response to define backtrace'. Also remove
redundant `default' block.
nickc [Wed, 13 Apr 2011 13:20:21 +0000 (13:20 +0000)]
* v850-dis.c (disassemble): Always print a closing square brace if
an opening square brace was printed.
ktietz [Wed, 13 Apr 2011 12:53:35 +0000 (12:53 +0000)]
2011-04-13 Kai Tietz <ktietz@redhat.com>
PR binutils/12658
* deffile.h (def_file_add_export): Add is_dup argument.
(def_file_add_import): Likewise.
* deffilep.y (are_names_equal): New helper.
(cmp_export_elem): New helper.
(find_export_in_list): Add search routine for exports.
(def_file_add_export): Check for duplicates.
(cmp_import_elem): New helper.
(find_import_in_list): Add search routine for imports.
(def_file_add_import): Check for duplicates.
(def_exports): Handle duplicates.
(def_imports): Likewise.
* pe-dll.c (process_def_file_and_drectve): Likewise.
(pe_implied_import_dll): Likewise.
ktietz [Wed, 13 Apr 2011 12:02:36 +0000 (12:02 +0000)]
Adjust broken ChangeLog entry
jturney [Wed, 13 Apr 2011 11:42:43 +0000 (11:42 +0000)]
2011-04-12 Jon TURNEY <jon.turney@dronecode.org.uk>
* utils.sgml (strace): Fix a pair of exchanged lines in usage text.
nickc [Wed, 13 Apr 2011 07:50:13 +0000 (07:50 +0000)]
* windres.c (usage): Add new --preprocessor-arg option.
(option_values): Add new OPTION_PREPROCESSOR_ARG enumerator.
(option long_options): Add preprocessor-arg option.
(main): Handle it.
* doc/binutils.texi: Add documentation for --preprocessor-arg
option.
* NEWS: Add line about new --preprocessor-arg option for windres.
* binutils-all/windres/windres.exp: Add '// cpparg <option>' command
to rc file interpretation to specify addition pre-processor commands
as script option.
* binutils-all/windres/strtab3.rc: New.
* binutils-all/windres/strtab3.rsd: New.
* binutils-all/windres/README: Add note about cpparg script option.
argument
gdbadmin [Wed, 13 Apr 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Wed, 13 Apr 2011 00:00:05 +0000 (00:00 +0000)]
daily update
rth [Tue, 12 Apr 2011 23:23:02 +0000 (23:23 +0000)]
* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Do not
exclude empty .got sections.
ian [Tue, 12 Apr 2011 18:06:16 +0000 (18:06 +0000)]
* configure.ac: Check for sys/mman.h and mmap. Check for mremap
with MREMAP_MAYMOVE.
* output.h (class Output_file): Add map_is_allocated_ field.
* output.cc: Only #include <sys/mman.h> if it exists. If mmap is
not available, provide stubs. If mremap is not available, #define
it to gold_mremap.
(MREMAP_MAYMOVE): Define if not defined.
(Output_file::Output_file): Initialize map_is_allocated_.
(Output_file::resize): Check map_is_allocated_.
(Output_file::map_anonymous): If mmap fails, use malloc.
(Output_file::unmap): Don't do anything for an anonymous map.
* fileread.cc: Only #include <sys/mman.h> if it exists. If mmap
is not available, provide stubs.
(File_read::View::~View): Use free rather than delete[].
(File_read::make_view): Use malloc rather than new[]. If mmap
fails, use malloc.
(File_read::find_or_make_view): Use malloc rather than new[].
* gold.h: Remove HAVE_REMAP code.
* mremap.c: #include <errno.h>. Only #include <sys/mman.h> if it
exists. Rename mremap to gold_mremap. If mmap is not available
don't do anything.
* configure, config.in: Rebuild.
nickc [Tue, 12 Apr 2011 16:01:46 +0000 (16:01 +0000)]
PR binutils/12534
* arm-dis.c (thumb32_opcodes): Add %L suffix to LDRD and STRD insn
patterns.
(print_insn_thumb32): Handle %L.
* gas/arm/thumb32.s: Add PC relative LDRD and STRD insns.
* gas/arm/thumb32.l: Update expected output.
* gas/arm/thumb32.d: Update expected disassembly.
nickc [Tue, 12 Apr 2011 15:44:36 +0000 (15:44 +0000)]
PR gas/12532
* gas/arm/plt-1.d: Update expected disassembly.
* gas/arm/thumb2_bcond.d: Likewise.
* gas/arm/weakdef-1.d: Likewise.
hjl [Tue, 12 Apr 2011 13:57:49 +0000 (13:57 +0000)]
Start error message with lower case.
2011-04-12 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (i386_mach): Start error message with lower
case.
(md_begin): Likewise.
(md_parse_option): Likewise.
(i386_target_format): Likewise.
(check_byte_reg): Likewise.
(check_long_reg): Likewise.
(check_qword_reg): Likewise.
(check_word_reg): Likewise.
nickc [Tue, 12 Apr 2011 11:47:37 +0000 (11:47 +0000)]
PR gas/12532
* config/tc-arm.c (relax_branch): Do not relax branches to
preemptable global symbols.
amodra [Tue, 12 Apr 2011 06:21:24 +0000 (06:21 +0000)]
* gas/all/gas.exp (do_930509a): Don't xfail h8300 and mn10200.
ian [Tue, 12 Apr 2011 05:55:33 +0000 (05:55 +0000)]
* incremental.cc (Sized_incr_relobj::do_add_symbols): Always
initialize local variable v.
kseitz [Tue, 12 Apr 2011 05:11:08 +0000 (05:11 +0000)]
* generic/gdbtk-bp.c (tracepoint_exists): Remove recently
removed "not_found_ptr" argument from call to decode_line_1.
* generic/gdbtk-stack.c (gdb_get_vars_command): Likewise.
* generic/gdbtk-cmds.c (gdb_get_line_command): Likewise.
(gdb_get_file_command): Likewise.
(gdb_get_function_command): Likewise.
From Kevin Buettner <kevinb@redhat.com>
* generic/gdbtk-register.c (): Delete declaration of `buffer'.
Use `valaddr' in its place.
ccoutant [Tue, 12 Apr 2011 00:44:47 +0000 (00:44 +0000)]
* archive.cc (Archive::include_member): Adjust call to
report_object.
(Add_archive_symbols::run): Track argument serial numbers.
(Lib_group::include_member): Likewise.
(Add_lib_group_symbols::run): Adjust call to report_archive_begin.
* archive.h (Incremental_archive_entry::Archive_member):
Initialize arg_serial_.
(Archive_member::arg_serial_): New data member.
* dynobj.cc (Dynobj::Dynobj): Allow input_file_ to be NULL.
(Sized_dynobj::do_add_symbols): Track symbols when doing an
incremental link.
(Sized_dynobj::do_for_all_local_got_entries): New function.
* dynobj.h: (Sized_dynobj::do_for_all_local_got_entries): New
function.
* fileread.cc (get_mtime): New function.
* fileread.h (get_mtime): New function.
* gold.cc (queue_initial_tasks): Check for incremental update.
(process_incremental_input): New function.
(queue_middle_tasks): Don't force valid target for incremental
update.
* incremental-dump.cc (find_input_containing_global): Adjust
size of symbol info entry.
(dump_incremental_inputs): Dump argument serial number and
in_system_directory flag; bias shndx by 1; print symbol names
when dumping per-file symbol lists; use new symbol info readers.
* incremental.cc
(Output_section_incremental_inputs:update_data_size): New function.
(Sized_incremental_binary::setup_readers): Setup input readers
for each input file; build maps for files added from libraries
and scripts.
(Sized_incremental_binary::check_input_args): New function.
(Sized_incremental_binary::do_check_inputs): Build map of argument
serial numbers to input arguments.
(Sized_incremental_binary::do_file_has_changed): Rename
do_file_is_unchanged to this; compare file modification times.
(Sized_incremental_binary::do_init_layout): New function.
(Sized_incremental_binary::do_reserve_layout): New function.
(Sized_incremental_binary::do_get_input_reader): Remove.
(Sized_incremental_binary::get_symtab_view): New function.
(Incremental_checker::can_incrementally_link_output_file): Remove.
(Incremental_inputs::report_command_line): Exclude --debug options.
(Incremental_inputs::report_archive_begin): Add parameter; track
argument serial numbers; don't put input file entry for archive
before archive members.
(Incremental_inputs::report_archive_end): Put input file entry
for archive after archive members.
(Incremental_inputs::report_object): Add parameter; track argument
serial numbers and in_system_directory flag.
(Incremental_inputs::report_script): Add parameter; track argument
serial numbers.
(Output_section_incremental_inputs::set_final_data_size): Adjust
size of symbol info entry; check for forwarding symbols.
(Output_section_incremental_inputs::write_input_files): Write
in_system_directory flag and argument serial number.
(Output_section_incremental_inputs::write_info_blocks): Map section
indices between incremental info and original input file; store
input section index for each symbol.
(class Local_got_offset_visitor): Derive from Got_offset_list::Visitor;
change operator() to visit().
(class Global_got_offset_visitor): Likewise.
(class Global_symbol_visitor_got_plt):
(Output_section_incremental_inputs::write_got_plt): Use new visitor
classes.
(Sized_incr_relobj::Sized_incr_relobj): New constructor.
(Sized_incr_relobj::do_read_symbols): New function.
(Sized_incr_relobj::do_layout): New function.
(Sized_incr_relobj::do_layout_deferred_sections): New function.
(Sized_incr_relobj::do_add_symbols): New function.
(Sized_incr_relobj::do_should_include_member): New function.
(Sized_incr_relobj::do_for_all_global_symbols): New function.
(Sized_incr_relobj::do_for_all_local_got_entries): New function.
(Sized_incr_relobj::do_section_size): New function.
(Sized_incr_relobj::do_section_name): New function.
(Sized_incr_relobj::do_section_contents): New function.
(Sized_incr_relobj::do_section_flags): New function.
(Sized_incr_relobj::do_section_entsize): New function.
(Sized_incr_relobj::do_section_address): New function.
(Sized_incr_relobj::do_section_type): New function.
(Sized_incr_relobj::do_section_link): New function.
(Sized_incr_relobj::do_section_info): New function.
(Sized_incr_relobj::do_section_addralign): New function.
(Sized_incr_relobj::do_initialize_xindex): New function.
(Sized_incr_relobj::do_get_global_symbol_counts): New function.
(Sized_incr_relobj::do_read_relocs): New function.
(Sized_incr_relobj::do_gc_process_relocs): New function.
(Sized_incr_relobj::do_scan_relocs): New function.
(Sized_incr_relobj::do_count_local_symbols): New function.
(Sized_incr_relobj::do_finalize_local_symbols): New function.
(Sized_incr_relobj::do_set_local_dynsym_indexes): New function.
(Sized_incr_relobj::do_set_local_dynsym_offset): New function.
(Sized_incr_relobj::do_relocate): New function.
(Sized_incr_relobj::do_set_section_offset): New function.
(Sized_incr_dynobj::Sized_incr_dynobj): New function.
(Sized_incr_dynobj::do_read_symbols): New function.
(Sized_incr_dynobj::do_layout): New function.
(Sized_incr_dynobj::do_add_symbols): New function.
(Sized_incr_dynobj::do_should_include_member): New function.
(Sized_incr_dynobj::do_for_all_global_symbols): New function.
(Sized_incr_dynobj::do_for_all_local_got_entries): New function.
(Sized_incr_dynobj::do_section_size): New function.
(Sized_incr_dynobj::do_section_name): New function.
(Sized_incr_dynobj::do_section_contents): New function.
(Sized_incr_dynobj::do_section_flags): New function.
(Sized_incr_dynobj::do_section_entsize): New function.
(Sized_incr_dynobj::do_section_address): New function.
(Sized_incr_dynobj::do_section_type): New function.
(Sized_incr_dynobj::do_section_link): New function.
(Sized_incr_dynobj::do_section_info): New function.
(Sized_incr_dynobj::do_section_addralign): New function.
(Sized_incr_dynobj::do_initialize_xindex): New function.
(Sized_incr_dynobj::do_get_global_symbol_counts): New function.
(make_sized_incremental_object): New function.
(Incremental_library::copy_unused_symbols): New function.
(Incremental_library::do_for_all_unused_symbols): New function.
* incremental.h (enum Incremental_input_flags): New type.
(class Incremental_checker): Remove.
(Incremental_input_entry::Incremental_input_entry): Add argument
serial number.
(Incremental_input_entry::arg_serial): New function.
(Incremental_input_entry::set_is_in_system_directory): New function.
(Incremental_input_entry::is_in_system_directory): New function.
(Incremental_input_entry::arg_serial_): New data member.
(Incremental_input_entry::is_in_system_directory_): New data member.
(class Script_info): Move here from script.h.
(Script_info::Script_info): Add filename parameter.
(Script_info::filename): New function.
(Script_info::filename_): New data member.
(Incremental_script_entry::Incremental_script_entry): Add argument
serial number.
(Incremental_object_entry::Incremental_object_entry): Likewise.
(Incremental_object_entry::add_input_section): Build list of input
sections with map to original shndx.
(Incremental_object_entry::get_input_section_index): New function.
(Incremental_object_entry::shndx_): New data member.
(Incremental_object_entry::name_key_): Rename; adjust all refs.
(Incremental_object_entry::sh_size_): Rename; adjust all refs.
(Incremental_archive_entry::Incremental_archive_entry): Add argument
serial number.
(Incremental_inputs::report_archive_begin): Likewise.
(Incremental_inputs::report_object): Likewise.
(Incremental_inputs::report_script): Likewise.
(class Incremental_global_symbol_reader): New class.
(Incremental_input_entry_reader::Incremental_input_entry_reader): Read
and store flags and input file type.
(Incremental_input_entry_reader::arg_serial): New function.
(Incremental_input_entry_reader::type): Extract type from flags.
(Incremental_input_entry_reader::is_in_system_directory): New function.
(Incremental_input_entry_reader::get_input_section_count): Call
accessor function for type.
(Incremental_input_entry_reader::get_symbol_offset): Call accessor
function for type; adjust size of global symbol entry.
(Incremental_input_entry_reader::get_global_symbol_count): Call
accessor function for type.
(Incremental_input_entry_reader::get_object_count): Likewise.
(Incremental_input_entry_reader::get_object_offset): Likewise.
(Incremental_input_entry_reader::get_member_count): Likewise.
(Incremental_input_entry_reader::get_unused_symbol_count): Likewise.
(Incremental_input_entry_reader::get_member_offset): Likewise.
(Incremental_input_entry_reader::get_unused_symbol): Likewise.
(Incremental_input_entry_reader::Global_symbol_info): Remove.
(Incremental_input_entry_reader::get_global_symbol_info): Remove.
(Incremental_input_entry_reader::get_global_symbol_reader): New
function.
(Incremental_input_entry_reader::get_output_symbol_index): New
function.
(Incremental_input_entry_reader::type_): Remove.
(Incremental_input_entry_reader::flags_): New data member.
(Incremental_inputs_reader::input_file_offset): New function.
(Incremental_inputs_reader::input_file_index): New function.
(Incremental_inputs_reader::input_file): Call input_file_offset.
(Incremental_inputs_reader::input_file_at_offset): New function.
(Incremental_relocs_reader::get_r_type): Reformat.
(Incremental_relocs_reader::get_r_shndx): Reformat.
(Incremental_relocs_reader::get_r_offset): Reformat.
(Incremental_relocs_reader::data): New function.
(Incremental_binary::Incremental_binary): Initialize new data members.
(Incremental_binary::check_inputs): Add cmdline parameter.
(Incremental_binary::file_is_unchanged): Remove.
(Input_reader::arg_serial): New function.
(Input_reader::get_unused_symbol_count): New function.
(Input_reader::get_unused_symbol): New function.
(Input_reader::do_arg_serial): New function.
(Input_reader::do_get_unused_symbol_count): New function.
(Input_reader::do_get_unused_symbol): New function.
(Incremental_binary::input_file_count): New function.
(Incremental_binary::get_input_reader): Change signature to use
index instead of filename.
(Incremental_binary::file_has_changed): New function.
(Incremental_binary::get_input_argument): New function.
(Incremental_binary::get_library): New function.
(Incremental_binary::get_script_info): New function.
(Incremental_binary::init_layout): New function.
(Incremental_binary::reserve_layout): New function.
(Incremental_binary::output_file): New function.
(Incremental_binary::do_check_inputs): New function.
(Incremental_binary::do_file_is_unchanged): Remove.
(Incremental_binary::do_file_has_changed): New function.
(Incremental_binary::do_init_layout): New function.
(Incremental_binary::do_reserve_layout): New function.
(Incremental_binary::do_input_file_count): New function.
(Incremental_binary::do_get_input_reader): Change signature.
(Incremental_binary::input_args_map_): New data member.
(Incremental_binary::library_map_): New data member.
(Incremental_binary::script_map_): New data member.
(Sized_incremental_binary::Sized_incremental_binary): Initialize
new data members.
(Sized_incremental_binary::output_section): New function.
(Sized_incremental_binary::inputs_reader): Add const.
(Sized_incremental_binary::symtab_reader): Add const.
(Sized_incremental_binary::relocs_reader): Add const.
(Sized_incremental_binary::got_plt_reader): Add const.
(Sized_incremental_binary::get_symtab_view): New function.
(Sized_incremental_binary::Inputs_reader): New typedef.
(Sized_incremental_binary::Input_entry_reader): New typedef.
(Sized_incremental_binary::do_check_inputs): Add cmdline parameter.
(Sized_incremental_binary::do_file_is_unchanged): Remove.
(Sized_incremental_binary::do_file_has_changed): New function.
(Sized_incremental_binary::do_init_layout): New function.
(Sized_incremental_binary::do_reserve_layout): New function.
(Sized_input_reader::Inputs_reader): Remove.
(Sized_input_reader::Input_entry_reader): Remove.
(Sized_input_reader::do_arg_serial): New function.
(Sized_input_reader::do_get_unused_symbol_count): New function.
(Sized_input_reader::do_get_unused_symbol): New function.
(Sized_incremental_binary::do_input_file_count): New function.
(Sized_incremental_binary::do_get_input_reader): Change signature;
use index instead of filename.
(Sized_incremental_binary::section_map_): New data member.
(Sized_incremental_binary::input_entry_readers_): New data member.
(class Sized_incr_relobj): New class.
(class Sized_incr_dynobj): New class.
(make_sized_incremental_object): New function.
(class Incremental_library): New class.
* layout.cc (Free_list::num_lists): New static data member.
(Free_list::num_nodes): New static data member.
(Free_list::num_removes): New static data member.
(Free_list::num_remove_visits): New static data member.
(Free_list::num_allocates): New static data member.
(Free_list::num_allocate_visits): New static data member.
(Free_list::init): New function.
(Free_list::remove): New function.
(Free_list::allocate): New function.
(Free_list::dump): New function.
(Free_list::print_stats): New function.
(Layout_task_runner::run): Resize output file for incremental updates.
(Layout::Layout): Initialize new data members.
(Layout::set_incremental_base): New function.
(Layout::init_fixed_output_section): New function.
(Layout::layout_eh_frame): Do not build .eh_frame_hdr section for
incremental updates.
(Layout::create_gold_note): Do not create gold note section for
incremental updates.
(Layout::set_segment_offsets): Do not recalculate RELRO alignment
for incremental updates.
(Layout::set_section_offsets): For incremental updates, allocate space
from free list.
(Layout::create_symtab_sections): Layout with offsets relative to
start of section; for incremental updates, allocate space from free
list.
(Layout::create_shdrs): For incremental updates, allocate space from
free list.
(Layout::finish_dynamic_section): For incremental updates, do not
check --as-needed (fixed in subsequent patch).
* layout.h (class Free_list): New class.
(Layout::set_incremental_base): New function.
(Layout::incremental_base): New function.
(Layout::init_fixed_output_section): New function.
(Layout::allocate): New function.
(Layout::incremental_base_): New data member.
(Layout::free_list_): New data member.
* main.cc (main): Print Free_list statistics.
* object.cc (Relobj::finalize_incremental_relocs): Add
clear_counts parameter; clear counts only when clear_counts is set.
(Sized_relobj::Sized_relobj): Initialize new base class.
(Sized_relobj::do_layout): Don't report special sections.
(Sized_relobj::do_for_all_local_got_entries): New function.
(Sized_relobj::write_local_symbols): Add symtab_off parameter; add
symtab_off to all symbol table offsets.
(Sized_relobj::do_get_global_symbol_counts): Add typename keyword.
* object.h (class Got_offset_list): Move to top of file.
(Object::Object): Allow case where input_file == NULL.
(Object::~Object): Likewise.
(Object::input_file): Assert that input_file != NULL.
(Object::lock): Allow case where input_file == NULL.
(Object::unlock): Likewise.
(Object::is_locked): Likewise.
(Object::token): Likewise.
(Object::release): Likewise.
(Object::is_incremental): New function.
(Object::get_mtime): New function.
(Object::for_all_local_got_entries): New function.
(Object::clear_view_cache_marks): Allow case where input_file == NULL.
(Object::set_is_in_system_directory): New function.
(Object::is_in_system_directory): New function.
(Object::do_is_incremental): New function.
(Object::do_get_mtime): New function.
(Object::do_for_all_local_got_entries): New function.
(Object::is_in_system_directory_): New data member.
(Relobj::finalize_incremental_relocs): Add clear_counts parameter.
(class Sized_relobj_base): New class.
(class Sized_relobj): Derive from Sized_relobj_base.
(class Sized_relobj::Symbols): Redeclare from base class.
(class Sized_relobj::local_got_offset_list): Remove.
(class Sized_relobj::Output_sections): Redeclare from base class.
(class Sized_relobj::do_for_all_local_got_entries): New function.
(class Sized_relobj::write_local_symbols): Add offset parameter.
(class Sized_relobj::local_symbol_offset_): Update comment.
(class Sized_relobj::local_dynsym_offset_): Update comment.
* options.cc (Input_arguments::add_file): Remove const.
* options.h (Input_file_argument::Input_file_argument):
Initialize arg_serial_ (all constructors).
(Input_file_argument::set_arg_serial): New function.
(Input_file_argument::arg_serial): New function.
(Input_file_argument::arg_serial_): New data member.
(Input_arguments::Input_arguments): Initialize file_count_.
(Input_arguments::add_file): Remove const.
(Input_arguments::number_of_input_files): New function.
(Input_arguments::file_count_): New data member.
(Command_line::number_of_input_files): Call
Input_arguments::number_of_input_files.
* output.cc (Output_segment_headers::Output_segment_headers):
Set current size.
(Output_section::Input_section::current_data_size): New function.
(Output_section::Output_section): Initialize new data members.
(Output_section::add_input_section): Don't do merge sections for
an incremental link; allocate space from free list for an
incremental update.
(Output_section::add_output_section_data): Allocate space from
free list for an incremental update.
(Output_section::update_data_size): New function.
(Output_section::set_fixed_layout): New function.
(Output_section::reserve): New function.
(Output_segment::set_section_addresses): Remove const.
(Output_segment::set_section_list_addresses): Remove const; allocate
space from free list for an incremental update.
(Output_segment::set_offset): Adjust size of RELRO segment for an
incremental update.
* output.h (Output_data::current_data_size): Move here from
child classes.
(Output_data::pre_finalize_data_size): New function.
(Output_data::update_data_size): New function.
(Output_section_headers::update_data_size): new function.
(Output_section_data_build::current_data_size): Move to Output_data.
(Output_data_strtab::update_data_size): New function.
(Output_section::current_data_size): Move to Output_data.
(Output_section::set_fixed_layout): New function.
(Output_section::has_fixed_layout): New function.
(Output_section::reserve): New function.
(Output_section::update_data_size): New function.
(Output_section::has_fixed_layout_): New data member.
(Output_section::free_list_): New data member.
(Output_segment::set_section_addresses): Remove const.
(Output_segment::set_section_list_addresses): Remove const.
* plugin.cc (Sized_pluginobj::do_for_all_local_got_entries):
New function.
* plugin.h (Sized_pluginobj::do_for_all_local_got_entries):
New function.
* readsyms.cc (Read_symbols::do_read_symbols): Add library
parameter when calling Add_symbols constructor; store argument
serial number for members of a lib group.
(Add_symbols::locks): Allow case where token == NULL.
(Add_symbols::run): Report libraries denoted by --start-lib/--end-lib.
(Read_member::~Read_member): New function.
(Read_member::is_runnable): New function.
(Read_member::locks): New function.
(Read_member::run): New function.
(Check_script::~Check_script): New function.
(Check_script::is_runnable): New function.
(Check_script::locks): New function.
(Check_script::run): New function.
(Check_library::~Check_library): New function.
(Check_library::is_runnable): New function.
(Check_library::locks): New function.
(Check_library::run): New function.
* readsyms.h (Add_symbols::Add_symbols): Add library parameter.
(Add_symbols::library_): New data member.
(class Read_member): New class.
(class Check_script): New class.
(class Check_library): New class.
* reloc.cc (Read_relocs::is_runnable): Allow case where
token == NULL.
(Read_relocs::locks): Likewise.
(Scan_relocs::locks): Likewise.
(Relocate_task::locks): Likewise.
(Sized_relobj::do_scan_relocs): Tell finalize_incremental_relocs
to clear counters.
(Sized_relobj::incremental_relocs_scan): Fix comment.
(Sized_relobj::do_relocate): Pass output file offset to
write_local_symbols.
(Sized_relobj::incremental_relocs_write_reltype): Use reloc_size
from class declaration.
* script.cc (read_input_script): Allocate Script_info; pass
argument serial number to report_script.
* script.h (class Script_info): Move to incremental.h.
* symtab.cc (Symbol_table::add_from_incrobj): New function.
* symtab.h (Symbol_table::add_from_incrobj): New function.
(Symbol_table::set_file_offset): New function.
gdbadmin [Tue, 12 Apr 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***