OSDN Git Service
uweigand [Wed, 21 May 2008 15:08:39 +0000 (15:08 +0000)]
* frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
nickc [Wed, 21 May 2008 14:50:07 +0000 (14:50 +0000)]
* reloc-macros.h: Add a comment about the use of the
END_RELOC_NUMBERS symbol as a sentinel value.
* arm.h (END_RELOC_NUMBERS): Provide a maximum value.
uweigand [Wed, 21 May 2008 14:47:25 +0000 (14:47 +0000)]
* alpha-mdebug-tdep.c: Include "trad-frame.h".
(struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
struct trad_frame_saved_reg *.
(alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
trad_frame_alloc_saved_regs. Update accesses. Record previous
value of SP as being vfp.
(alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
* Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
nickc [Wed, 21 May 2008 12:16:22 +0000 (12:16 +0000)]
PR ld/6519
* ld.texinfo (Orphan Sections): Mention that the linker will
provide start and stop symbols for orphaned sections if their
names are valid C identifiers.
* NEWS: Add an addendum to the description of the linker feature
for providing orphan section start and end symbols.
nickc [Wed, 21 May 2008 12:01:35 +0000 (12:01 +0000)]
Multi-GOT support for m68k.
bfd/
* elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
glist): New fields.
(struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
struct elf_m68k_multi_got): New data structures.
(struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
allow_multigot_p, multi_got_): New fields.
(elf_m68k_multi_got): New macro.
(elf_m68k_link_hash_newfunc): Initialize new fields of
struct elf_m68k_link_hash_entry.
(elf_m68k_link_hash_table_create): Initialize new fields of
struct elf_m68k_link_hash_table.
(elf_m68k_link_hash_table_free): New static function implementing hook.
(elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
static functions for struct elf_m68k_got.
(elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
elf_m68k_got_entry_eq): New static functions for
struct elf_m68k_got_entry.
(ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
(enum elf_m68k_get_entry_howto): New enum.
(elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
elf_m68k_remove_got_entry_type): New static functions for
struct elf_m68k_got_entry.
(elf_m68k_add_entry_to_got): New static function.
(elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
functions for struct elf_m68k_bfd2got_entry.
(struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
elf_m68k_can_merge_gots): New traversal.
(struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
elf_m68k_merge_gots): Ditto.
(struct elf_m68k_finalize_got_offsets_arg,
elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
(struct elf_m68k_partition_multi_got_arg,
elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
elf_m68k_partition_multi_got): Ditto.
(elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
functions.
(elf_m68k_copy_indirect_symbol): New static function implementing
a hook.
(elf_m68k_check_relocs): Update to add entries to multi-GOT.
(elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
(elf_m68k_always_size_sections): Assign BFDs to GOTs.
(elf_m68k_relocate_section): Update to properly handle GOT relocations.
(elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
of a global symbol.
(bfd_elf_m68k_set_target_options): New function.
(bfd_elf32_bfd_link_hash_table_free): Define hook.
(bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
to skip generic calculation of GOT offsets.
(elf_backend_copy_indirect_symbol): Define hook.
* bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
* bfd-in2.h: Regenerate.
ld/
* configure.in (--enable-got): New option. Handle it.
* configure: Regenerate.
* config.in: Regenerate.
* emultempl/m68kelf.em: (got_handling_target_default): New shell
variable.
(GOT_HANDLING_TARGET_DEFAULT): New macro.
(GOT_HANDLING_DEFAULT): New macro. Initialize it from configure
option if one was given.
(got_handling): New static variable.
(elf_m68k_create_output_section_statements): New static function
implementing hook.
(PARSE_AND_LIST_PROLOGUE): Define shell variable.
(OPTION_GOT): New macro.
(PARSE_AND_LIST_LONGOPTS): Define shell variable. Specify
--got option.
(got): New linker option.
(PARSE_AND_LIST_OPTIONS): Define shell variable. Print help string
for --got option.
(PARSE_AND_LIST_ARGS_CASES): Define shell variable. Handle --got
option.
* ld.texinfo: Document --got=<type> option.
* gen-doc.texi: Add M68K.
* NEWS: Mention the new feature.
ld/testsuite/
* ld-m68k/got-12.s: New file.
* ld-m68k/got-13.s: New file.
* ld-m68k/got-14.s: New file.
* ld-m68k/got-15.s: New file.
* ld-m68k/got-34.s: New file.
* ld-m68k/got-35.s: New file.
* ld-m68k/got-single-12-ok.d: New dump test.
* ld-m68k/got-single-13-er.d: New dump test.
* ld-m68k/got-negative-14-ok.d: New dump test.
* ld-m68k/got-negative-15-er.d: New dump test.
* ld-m68k/got-negative-12-13-14-34-ok.d: New dump test.
* ld-m68k/got-negative-12-13-14-35-er.d: New dump test.
* ld-m68k/got-multigot-14-ok.d: New dump test.
* ld-m68k/got-multigot-15-er.d: New dump test.
* ld-m68k/got-multigot-12-13-14-34-35-ok.d: New dump test.
* ld-m68k/xgot-15.s: New source.
* ld-m68k/got-xgot-15-ok.d: New test.
* ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: New test.
* ld-m68k/m68k.exp: Run new tests.
nickc [Wed, 21 May 2008 11:46:42 +0000 (11:46 +0000)]
PR 868
* dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free memory allocated
for filenames in function tables and variable tables.
nickc [Wed, 21 May 2008 10:59:11 +0000 (10:59 +0000)]
PR ld/6430
* ld.texinfo (--sort-common): Correct documentation to indicate
that sorting is performed by alignment, not size, biggest
alignment first.
corinna [Wed, 21 May 2008 10:23:18 +0000 (10:23 +0000)]
* fhandler_disk_file.cc (get_ino_by_handle): Rename pfai to fai.
(fhandler_base::fstat_by_handle): Drop fai_size and pfai in favor of
static struct fai_buf. Restructure.
(fhandler_base::fstat_by_name): Drop fvi_size and pfvi. Drop fdi_size
and pfdi in favor of static struct fdi_buf. Drop redundant test for
existance. Use FileDirectoryInformation class instead of
FileBothDirectoryInformation. Drop call to NtQueryVolumeInformationFile
in favor of using pc.fs_serial_number (). Fix FileId information given
to fstat_helper.
(fhandler_disk_file::fstatvfs): Drop fvi_size, pfvi, fai_size and pfai.
Drop getting FileFsVolumeInformation and FileFsAttributeInformation in
favor of using the related path_conv info.
(fhandler_disk_file::opendir): Fix comment.
(fhandler_disk_file::readdir): Ditto. Use FileDirectoryInformation
class instead of FileBothDirectoryInformation.
* path.cc (fs_info::update): Store MaximumComponentNameLength in new
member name_len.
* path.h (struct fs_info): Use ULONG rather than DWORD. Add member
name_len to store MaximumComponentNameLength. Add accessor methods.
(path_conv::fs_name_len): New method.
corinna [Wed, 21 May 2008 09:02:42 +0000 (09:02 +0000)]
* fhandler.h (dirent_states): Add dirent_nfs_d_ino state and add it to
dirent_info_mask.
* fhandler_disk_file.cc (fhandler_disk_file::opendir): Set
dirent_nfs_d_ino flag for NFS shares. Explain why.
(fhandler_disk_file::readdir): Use FileNamesInformation instead of
FileBothDirectoryInformation info class on NFS clients not supporting
the FileIdBothDirectoryInformation info class. Use local pointers to
accommodate different offsets.
* path.cc (symlink_info::check): Don't test directories for symlinks
on NFS shares. Enhance comment.
nickc [Wed, 21 May 2008 08:20:16 +0000 (08:20 +0000)]
* config/tc-arm.c (arm_cpus): Add Faraday ARMv4 and ARMv5TE
compatible cores: fa526, fa626, fa626te, fa726te.
* doc/c-arm.texi (ARM Opts): Add -mcpu={fa526, fa626, fa626te,
fa726te} options.
nickc [Wed, 21 May 2008 08:09:38 +0000 (08:09 +0000)]
* ld.texinfo (ARM): Document --stub-group-size=N option.
Move description of --pic-veneer option into the ARM section.
* NEWS: Mention the support for long function calls.
corinna [Wed, 21 May 2008 08:05:52 +0000 (08:05 +0000)]
* syscalls.cc (FILTERED_MODE): Define valid chmod mode mask.
(chmod): Call fh->fchmod with filtered mode.
(fchmod): Ditto.
nickc [Wed, 21 May 2008 07:50:54 +0000 (07:50 +0000)]
* cr16-dis.c (build_mask): Adjust the mask for 32-bit bcond.
nickc [Wed, 21 May 2008 07:44:31 +0000 (07:44 +0000)]
* libc/sys/sysnecv850/crt0.S (___dso_handle): Define (weak).
* iq2000/crt0.S (__dso_handle): Define (weak).
* frv/crt0.S (__dso_handle): Define (weak).
* mn10300/crt0.S (___dso_handle): Define (weak).
deuling [Wed, 21 May 2008 04:19:44 +0000 (04:19 +0000)]
* score-tdep.c (score_print_insn): Get the current endianess from
disassemble_info instead of gdbarch_byte_order.
nickrob [Wed, 21 May 2008 01:59:49 +0000 (01:59 +0000)]
Add @r{, annotation} marker to new-thread function index entry.
amodra [Wed, 21 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 21 May 2008 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
palves [Tue, 20 May 2008 22:21:18 +0000 (22:21 +0000)]
* frame.c (get_prev_frame_1): Build frame id before setting
this_frame->prev_p, not after.
nickrob [Tue, 20 May 2008 21:11:04 +0000 (21:11 +0000)]
Test for new annotation.
nickrob [Tue, 20 May 2008 21:10:31 +0000 (21:10 +0000)]
*** empty log message ***
nickrob [Tue, 20 May 2008 21:09:37 +0000 (21:09 +0000)]
(Multi-threaded Apps): New node for new annotation.
nickrob [Tue, 20 May 2008 21:09:07 +0000 (21:09 +0000)]
*** empty log message ***
corinna [Tue, 20 May 2008 21:08:39 +0000 (21:08 +0000)]
* fhandler_disk_file.cc (fhandler_disk_file::fchmod): Fix test for
S_IFSOCK in mode bits.
corinna [Tue, 20 May 2008 21:08:22 +0000 (21:08 +0000)]
* fhandler_disk_file.cc (fhandler_disk_file::fchmod): Fix test for
S_IFSOCK in mode bits.
nickrob [Tue, 20 May 2008 21:06:56 +0000 (21:06 +0000)]
(thread.o): Add dependency on annotate.h.
nickrob [Tue, 20 May 2008 21:05:07 +0000 (21:05 +0000)]
(add_thread_with_info): Use it.
nickrob [Tue, 20 May 2008 21:04:13 +0000 (21:04 +0000)]
(annotate_new_thread): New extern.
nickrob [Tue, 20 May 2008 21:03:34 +0000 (21:03 +0000)]
(annotate_new_thread): New function for new-thread
annotation.
nickrob [Tue, 20 May 2008 21:02:27 +0000 (21:02 +0000)]
*** empty log message ***
brobecke [Tue, 20 May 2008 18:36:36 +0000 (18:36 +0000)]
* win32-nat.c (win32_wait): Block the control-c event while
waiting for a debug event.
corinna [Tue, 20 May 2008 18:26:45 +0000 (18:26 +0000)]
* path.cc (symlink_worker): Fix EA buffer size info given to
NtCreateFile.
(symlink_info::check_nfs_symlink): Get 64K buffer for EA buffer.
Change EA buffer size info given to NtQueryEaFile accordingly.
corinna [Tue, 20 May 2008 18:19:32 +0000 (18:19 +0000)]
* path.cc (symlink_info::check_shortcut): Minimize requested file
access flags.
(symlink_info::check_sysfile): Ditto. Add missing `else'.
(symlink_info::check): Only retry to open file if first try failed
with access denied.
jjohnstn [Tue, 20 May 2008 18:00:10 +0000 (18:00 +0000)]
2008-05-20 DJ Delorie <dj@redhat.com>
* libc/sys/sysnecv850/isatty.c (_isatty): Renamed from isatty.
corinna [Tue, 20 May 2008 17:18:08 +0000 (17:18 +0000)]
* path.cc (fs_info::update): Re-add opening the unsplitted path
for fillout_mntent's sake.
corinna [Tue, 20 May 2008 16:24:06 +0000 (16:24 +0000)]
* fhandler_disk_file.cc (fhandler_disk_file::mkdir): Create directories
on NFS shares with correct mode bits.
corinna [Tue, 20 May 2008 15:39:26 +0000 (15:39 +0000)]
* winsup.h (cygwin_inet_addr): Fix type of declaration.
corinna [Tue, 20 May 2008 15:11:15 +0000 (15:11 +0000)]
* Makefile.in (DLL_OFILES): Add nfs.o.
* fhandler.cc (fhandler_base::open): Open files on NFS shares with
correct access flags and EAs.
* fhandler.h (fhandler_base::fstat_by_nfs_ea): Declare.
* fhandler_disk_file.cc (fhandler_base::fstat_by_nfs_ea): New method.
(fhandler_base::fstat_by_handle): Call fstat_by_nfs_ea for files on
NFS shares.
(fhandler_disk_file::fchmod): Use NFS specific method to set mode for
files on NFS shares. Don't overrule errno from call to
set_file_attribute with errno from NtSetInformationFile call.
(fhandler_disk_file::fchown): Add comment.
* mount.cc (fillout_mntent): Accommodate change in second parameter
to fs_info::update.
* nfs.cc: New file.
* nfs.h: New file.
* path.cc (fs_info::update): Take handle instead of bool as second
parameter. Use that handle if it's not NULL. Only close handle if
it has been opened here. Use static defined buffers instead of
alloca'd buffers.
(path_conv::check): Call symlink_info::check with reference to fs.
Don't call fs.update here if file exists.
(conv_path_list): Prefer tmp_pathbuf buffer over using alloca.
(symlink_worker): Use NFS specific method to create symlinks on NFS
shares. Prefer tmp_pathbuf buffer over using alloca.
(symlink_info::check_shortcut): Reopen file from incoming handle
with necessary FILE_GENERIC_READ flag. Prefer tmp_pathbuf buffer over
using alloca.
(symlink_info::check_sysfile): Ditto.
(symlink_info::check_reparse_point): Use tmp_pathbuf buffer to
allocate REPARSE_DATA_BUFFER.
(symlink_info::check_nfs_symlink): New method.
(enum symlink_t): Remove.
(symlink_info::check): Don't use NtQueryAttributesFile. Rather, open
file with necessary access flags and call NtQueryInformationFile. Fix
error handling in case file can't be opened. For existing files, call
fs_info::update here. Restructure symlink checking to accommodate the
fact that the file is already open. Add case for NFS symlinks.
* path.h (fs_info::update): Take handle instead of bool as second
parameter.
corinna [Tue, 20 May 2008 10:24:25 +0000 (10:24 +0000)]
* syscalls.cc (rename): Fix condition when to start a transaction.
corinna [Tue, 20 May 2008 10:18:12 +0000 (10:18 +0000)]
* path.cc (path_conv::check): Free wide_path and normalized_path if
necessary.
* path.h (path_conv::path_conv): Set wide_path, normalized_path and
normalized_path_size to 0 in all constructors.
ian [Tue, 20 May 2008 04:00:46 +0000 (04:00 +0000)]
* options.h (class General_options): Add -z relro.
* layout.cc (Layout::Layout): Initialize relro_segment_.
(Layout::add_output_section_data): Return the output section.
(Layout::make_output_section): Rcognize relro sections and mark
them appropriately.
(Layout::attach_allocated_section_to_segment): Put relro sections
in a PT_GNU_RELRO segment.
(Layout::create_initial_dynamic_sections): Mark the .dynamic
section as relro.
(Layout::segment_precedes): Sort PT_GNU_RELRO segments after
PT_TLS segments.
(Layout::linkonce_mapping): Map d.rel.ro.local to
.data.rel.ro.local.
(Layout::output_section_name): Us .data.rel.ro.local for any
section which begins with that.
* layout.h (class Layout): Update add_output_section_data
declaration. Add relro_segment_ field.
* output.cc (Output_section::Output_section): Initialize is_relro_
and is_relro_local_ fields.
(Output_segment::add_output_section): Group relro sections.
(Output_segment::is_first_section_relro): New function.
(Output_segment::maximum_alignment): If there is a relro section,
align the segment to the common page size.
(Output_segment::set_section_addresses): Track whether we are
looking at relro sections. If the last section is a relro
section, align to the common page size.
(Output_segment::set_section_list_addresses): Add in_relro
parameter. Change all callers. Align to the page size when
moving from relro to non-relro section.
(Output_segment::set_offset): Align memsz of a PT_GNU_RELRO
segment.
* output.h (class Output_section): Add is_relro_ and
is_relro_local_ fields.
(Output_section::is_relro): New function.
(Output_section::set_is_relro): New function.
(Output_section::is_relro_local): New function.
(Output_section::set_is_relro_local): New function.
(class Output_segment): Update declarations.
* i386.cc (Target_i386::got_section): Mark .got section as relro.
* sparc.cc (Target_sparc::got_section): Likewise.
* x86_64.cc (Target_x86_64::got_section): Likewise.
* testsuite/relro_test_main.cc: New file.
* testsuite/relro_test.cc: New file.
* testsuite/Makefile.am (check_PROGRAMS): Add relro_test.
(relro_test_SOURCES, relro_test_DEPENDENCIES): New variables.
(relro_test_LDFLAGS, relro_test_LDADD): New variables.
(relro_test.so, relro_test_pic.o): New targets.
* testsuite/Makefile.in: Rebuild.
amodra [Tue, 20 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 20 May 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
corinna [Mon, 19 May 2008 20:22:28 +0000 (20:22 +0000)]
* syscalls.cc (rename): Allocate temporary path buffers using
tmp_pathbuf. Don't try to unset R/O attribute on dstpc if a
removepc exists. dstpc is a non-existant file in that case.
palves [Mon, 19 May 2008 18:37:05 +0000 (18:37 +0000)]
* symtab.h (lookup_symbol_in_language): Update comment.
* symtab.c (lookup_symbol_aux_block): Update comment.
* ada-lang.c (ada_lookup_symbol_list): Update comment.
uweigand [Mon, 19 May 2008 15:50:09 +0000 (15:50 +0000)]
* symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
(lookup_symbol): Likewise.
* symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
(lookup_symbol): Likewise.
(search_symbols): Update.
* linespec.c (find_methods, collect_methods): Update.
(add_matching_methods, add_constructors): Update.
(decode_compound, decode_dollar, decode_variable): Update.
(lookup_prefix_sym): Update.
(symbol_found): Remove SYM_SYMTAB parameter.
Use SYMBOL_SYMTAB (sym) instead.
* gdbtypes.c (lookup_typename): Update.
(lookup_struct, lookup_union, lookup_enum): Update.
(lookup_template_type): Update.
(check_typedef): Update.
* language.c (lang_bool_type): Update.
* mdebugread.c (parse_procedure): Update.
* mi/mi-cmd-stack.c (list_args_or_locals): Update.
* parse.c (write_dollar_variable): Update.
* printcmd.c (address_info): Update.
* source.c (select_source_symtab): Update.
* stack.c (print_frame_args, print_frame_arg_vars): Update.
* valops.c (find_function_in_inferior): Update.
(value_struct_elt_for_reference): Update.
* value.c (value_static_field, value_fn_field): Update.
* alpha-mdebug-tdep.c (find_proc_desc): Update.
* arm-tdep.c (arm_skip_prologue): Update.
* mt-tdep.c (mt_skip_prologue): Update.
* xstormy16-tdep.c (xstormy16_skip_prologue): Update.
* ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
* ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
(add_defn_to_vec): Likewise.
(ada_add_block_symbols): Likewise.
(lookup_cached_symbol, cache_symbol): Likewise.
(standard_lookup): Update.
(ada_lookup_symbol_list): Update.
* c-valprint.c (c_val_print): Update.
* cp-support.c (cp_lookup_rtti_type): Update.
* jv-lang.c (java_lookup_class, get_java_object_type): Update.
* objc-lang.c (lookup_struct_typedef, find_imps): Update.
* p-valprint.c (pascal_val_print): Update.
* scm-lang.c (scm_lookup_name): Update.
* c-exp.y: Update.
* f-exp.y: Update.
* jv-exp.y: Update.
* m2-exp.y: Update.
* objc-exp.y: Update.
* p-exp.y: Update.
uweigand [Mon, 19 May 2008 15:49:13 +0000 (15:49 +0000)]
* language.h (struct language_defn): Remove SYMTAB parameter from
la_lookup_symbol_nonlocal callback function pointer.
* ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
(ada_lookup_encoded_symbol): Likewise.
* ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
Always call fixup_symbol_section.
(ada_lookup_symbol): Remove SYMTAB parameter.
(ada_lookup_symbol_nonlocal): Likewise.
* ada-exp.y (write_object_renaming): Update.
(find_primitive_type): Likewise.
* cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
(cp_lookup_symbol_namespace): Likewise.
* cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
(lookup_symbol_file): Likewise.
(lookup_possible_namespace_symbol): Likewise.
(cp_lookup_symbol_nonlocal): Likewise.
(cp_lookup_symbol_namespace): Likewise.
(cp_lookup_nested_type): Update.
* scm-valprint.c (scm_inferior_print): Update.
* valops.c (value_maybe_namespace_elt): Update.
* solist.h (struct target_so_ops): Remove SYMTAB parameter from
lookup_lib_global_symbol callback function pointer.
(solib_global_lookup): Remove SYMTAB parameter.
* solib.c (solib_global_lookup): Remove SYMTAB parameter.
* solib-svr4.c (elf_lookup_lib_symbol): Likewise.
* symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
(lookup_symbol_static): Likewise.
(lookup_symbol_global): Likewise.
(lookup_symbol_aux_block): Likewise.
(lookup_global_symbol_from_objfile): Likewise.
* symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
(lookup_symbol_aux_local): Likewise.
(lookup_symbol_aux_block): Likewise.
(lookup_symbol_aux_symtabs): Likewise.
(lookup_symbol_aux_psymtabs): Likewise.
(lookup_global_symbol_from_objfile): Likewise.
(basic_lookup_symbol_nonlocal): Likewise.
(lookup_symbol_static): Likewise.
(lookup_symbol_global): Likewise.
(lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
amodra [Mon, 19 May 2008 06:06:02 +0000 (06:06 +0000)]
PR 2995, PR 6473
* elf.c (_bfd_elf_make_section_from_shdr): Leave lma equal to
vma when all p_paddr fields are zero and there is more than
one PT_LOAD header.
gdbadmin [Mon, 19 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 19 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
amodra [Sun, 18 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 18 May 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
cgf [Sat, 17 May 2008 21:34:05 +0000 (21:34 +0000)]
* include/stdint.h: Use int rather than long for {u,}int32_t.
palves [Sat, 17 May 2008 11:28:29 +0000 (11:28 +0000)]
* remote.c (init_extended_remote_ops): Fix typo.
gdbadmin [Sat, 17 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Sat, 17 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
ian [Fri, 16 May 2008 22:29:04 +0000 (22:29 +0000)]
* output.cc (Output_segment::add_output_section): Remove front
parameter.
* output.h (class Output_segment): Remove
add_initial_output_section and overloaded add_output_section.
Update declaration of remaining add_output_section.
* layout.cc (Layout::create_interp): Call add_output_section
rather than add_initial_output_section.
(Layout::finish_dynamic_section): Likewise.
ian [Fri, 16 May 2008 20:44:22 +0000 (20:44 +0000)]
* i386.cc (Target_i386::Relocate::relocate_tls): Set dynamic type
for TLS_GOTDESC and TLS_DESC_CALL. Only optimize TLS_LDO_32 if we
know the dynamic type.
* x86_64.cc (Target_x86_64::Relocate): Add saw_tls_block_reloc_
field. Initialize it in constructor.
(Target_x86_64::Relocate::relocate_tls): Record that we saw a TLS
block reloc for TLSGD, GOTPC32_TLSDESC, TLSDESC_CALL, and TLSLD.
Only optimize DTPOFF32 and DTPOFF64 if we have seen a TLS block
reloc.
palves [Fri, 16 May 2008 15:54:07 +0000 (15:54 +0000)]
* NEWS: Mention new DICOS x86 target configuration.
ian [Fri, 16 May 2008 15:27:49 +0000 (15:27 +0000)]
* output.cc (Output_reloc::get_address): Change return type to
Elf_Addr.
* output.h (class Output_reloc): Update get_address declaration.
* x86_64.cc (Output_data_plt_x86_64::do_write): Use 64-bit types
for section addresses.
uweigand [Fri, 16 May 2008 12:58:48 +0000 (12:58 +0000)]
gdb/
2008-05-15 Pedro Alves <pedro@codesourcery.com>
Ulrich Weigand <uweigand@de.ibm.com>
* minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
* symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
* symtab.c (fixup_section): Remove prototype. Add ADDR parameter;
use it instead of ginfo->value.address. Look up minimal symbol by
address and name. Assume OBJFILE is non-NULL.
(fixup_symbol_section): Ensure we always have an objfile to look
into. Extract and pass to fixup_section the symbol's address that
will match the minimal symbol's address.
(fixup_psymbol_section): Likewise.
(find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
overlays and the addrmap returned the wrong section.
* dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
calling fixup_symbol_section.
gdb/testsuite/
2008-05-15 Pedro Alves <pedro@codesourcery.com>
* gdb.base/fixsection.exp: New file.
* gdb.base/fixsection0.c: New file.
* gdb.base/fixsection1.c: New file.
uweigand [Fri, 16 May 2008 12:51:21 +0000 (12:51 +0000)]
* minsyms.c: Include "target.h".
(find_solib_trampoline_target): Handle minimal symbols pointing
to function descriptors as well.
* Makefile.in (minsyms.o): Update dependencies.
* ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
(ppc64_standard_linkage1): ... this. Fix optional instructions.
(PPC64_STANDARD_LINKAGE_LEN): Rename to ...
(PPC64_STANDARD_LINKAGE1_LEN): ... this.
(ppc64_standard_linkage2, ppc64_standard_linkage3): New.
(PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
(ppc64_standard_linkage_target): Rename to ...
(ppc64_standard_linkage1_target): ... this.
(ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
(ppc64_skip_trampoline_code): Support three variants of standard
linkage stubs. Call find_solib_trampoline_target to handle
glink stubs.
uweigand [Fri, 16 May 2008 12:49:47 +0000 (12:49 +0000)]
* ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
ppc64_sysv_abi_adjust_breakpoint_address.
* ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
* ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
uweigand [Fri, 16 May 2008 12:48:58 +0000 (12:48 +0000)]
* ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
(ppc_linux_init_abi): Install find_solib_trampoline_target instead
of ppc_linux_skip_trampoline_code.
uweigand [Fri, 16 May 2008 12:48:08 +0000 (12:48 +0000)]
* gdb.base/annota1.exp: Accept printf@... in place of printf.
* gdb.base/annota3.exp: Likewise.
drow [Fri, 16 May 2008 12:34:38 +0000 (12:34 +0000)]
* src-release (DEVO_SUPPORT): Add ChangeLog, MAINTAINERS,
README-maintainer-mode, lt~obsolete.m4, ltgcc.m4, depcomp,
mkdep, and compile. Update comments.
(ETC_SUPPORT): Add ChangeLog and update comments.
corinna [Fri, 16 May 2008 10:37:27 +0000 (10:37 +0000)]
* Makefile.in (install-license): Install COPYING file as well.
corinna [Fri, 16 May 2008 08:40:39 +0000 (08:40 +0000)]
* CYGWIN_LICENSE: New text.
corinna [Fri, 16 May 2008 08:40:07 +0000 (08:40 +0000)]
* CYGWIN_LICENSE: Remove duplicate file here.
drow [Fri, 16 May 2008 00:27:21 +0000 (00:27 +0000)]
* gdbarch.sh: Delete dwarf_reg_to_regnum.
* gdbarch.c, gdbarch.h: Regenerated.
* amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
* gdbint.texinfo (Target Conditionals): Delete entry for
gdbarch_dwarf_reg_to_regnum.
amodra [Fri, 16 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 16 May 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
ironhead [Thu, 15 May 2008 23:27:29 +0000 (23:27 +0000)]
2008-05-15 Ramiro Polla <ramiro@lisha.ufsc.br>
* include/stdlib.h: Fix strtod under C++.
palves [Thu, 15 May 2008 20:11:47 +0000 (20:11 +0000)]
* linux-nat.c (trap_ptid): Delete.
(linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
Adjust.
* linux-thread-db.c (thread_db_wait): Adjust.
brobecke [Thu, 15 May 2008 19:24:46 +0000 (19:24 +0000)]
* linespec.c (decode_line_1): Fix a couple of comments.
corinna [Thu, 15 May 2008 17:23:28 +0000 (17:23 +0000)]
* syscalls.cc (rename): ONly start transaction if FS supports them.
corinna [Thu, 15 May 2008 17:14:31 +0000 (17:14 +0000)]
* include/winnt.h (FILE_SEQUENTIAL_WRITE_ONCE): Define.
(FILE_SUPPORTS_TRANSACTIONS): Define.
nickc [Thu, 15 May 2008 17:00:11 +0000 (17:00 +0000)]
bfd/
* elf32-arm.c (THM2_MAX_FWD_BRANCH_OFFSET): Define.
(THM2_MAX_BWD_BRANCH_OFFSET): Define.
(ARM_MAX_FWD_BRANCH_OFFSET): Define.
(ARM_MAX_BWD_BRANCH_OFFSET): Define.
(THM_MAX_FWD_BRANCH_OFFSET): Define.
(THM_MAX_BWD_BRANCH_OFFSET): Define.
(arm_long_branch_stub): Define.
(arm_pic_long_branch_stub): Define.
(arm_thumb_v4t_long_branch_stub): Define.
(arm_thumb_thumb_long_branch_stub): Define.
(arm_thumb_arm_v4t_long_branch_stub): Define.
(STUB_SUFFIX): Define.
(elf32_arm_stub_type): Define.
(elf32_arm_stub_hash_entry): Define.
(elf32_arm_link_hash_entry): Add stub_cache field.
(arm_stub_hash_lookup): Define.
(elf32_arm_link_hash_table): Add stub_hash_table, stub_bfd,
add_stub_section, layout_sections_again, stub_group, bfd_count,
top_index, input_list fields.
(elf32_arm_link_hash_newfunc): Init new field.
(stub_hash_newfunc): New function.
(elf32_arm_link_hash_table_create): Init stub_hash_table.
(elf32_arm_hash_table_free): New function.
(arm_type_of_stub): New function.
(elf32_arm_stub_name): New function.
(elf32_arm_get_stub_entry): New function.
(elf32_arm_stub_add_mapping_symbol): New function.
(elf32_arm_add_stub): New function.
(arm_build_one_stub): New function.
(arm_size_one_stub): New function.
(elf32_arm_setup_section_lists): New function.
(elf32_arm_next_input_section): New function.
(group_sections): New function.
(elf32_arm_size_stubs): New function.
(elf32_arm_build_stubs): New function.
(bfd_elf32_arm_add_glue_sections_to_bfd): Skip stub sections.
(bfd_elf32_arm_process_before_allocation): No longer handle
R_ARM_CALL and R_ARM_THM_CALL.
(using_thumb_only): New function.
(elf32_arm_final_link_relocate): Redirect calls to stub if range
exceeds encoding capabilities.
(bfd_elf32_bfd_link_hash_table_free): Define.
* bfd-in.h (R_ARM_max): Fix value to 130.
(elf32_arm_setup_section_lists): Protype.
(elf32_arm_next_input_section): Protype.
(elf32_arm_size_stubs): Protype.
(elf32_arm_build_stubs): Protype.
ld/
* emultempl/armelf.em (build_section_lists): New function.
(stub_file): Define.
(need_laying_out): Define.
(group_size): Define.
(hook_stub_info): Define.
(hook_in_stub): New function.
(elf32_arm_add_stub_section): New function.
(gldarm_layout_sections_again): New function.
(gld${EMULATION_NAME}_finish): Replace arm_elf_finish(). Generate
stubs for long calls if needed.
(arm_elf_create_output_section_statements): create stub_file bfd.
(arm_for_each_input_file_wrapper): New function.
(arm_lang_for_each_input_file): New function.
(lang_for_each_input_file): Define.
(PARSE_AND_LIST_PROLOGUE): Add option token OPTION_STUBGROUP_SIZE.
(PARSE_AND_LIST_LONGOPTS): Add option stub-group-size.
(PARSE_AND_LIST_OPTIONS): Add option stub-group-size.
(PARSE_AND_LIST_ARGS_CASES): Add OPTION_STUBGROUP_SIZE case.
(LDEMUL_FINISH): Update to gld${EMULATION_NAME}_finish.
* ld/lang.c (print_input_statement): Skip if bfd has
BFD_LINKER_CREATED.
ld/testsuite
* ld-arm/arm-elf.exp (armelftests): Add farcall-arm-arm,
farcall-arm-arm-pic-veneer, farcall-arm-arm-be8 farcall-arm-thumb,
farcall-arm-thumb-blx, farcall-arm-thumb-pic-veneer,
farcall-arm-thumb-blx-pic-veneer, farcall-thumb-thumb,
farcall-thumb-thumb-pic-veneer, farcall-thumb-thumb-blx,
farcall-thumb-thumb-m, farcall-thumb-thumb-m-pic-veneer,
farcall-thumb-thumb-blx-pic-veneer, farcall-thumb-arm,
farcall-thumb-arm-pic-veneer, farcall-thumb-arm-blx,
farcall-thumb-arm-blx-pic-veneer.
Change thumb2-bl-as-thumb1-bad, thumb2-bl-bad.
* ld-arm/thumb2-bl-as-thumb1-bad.d: Reflects farcall stub
generation.
* ld-arm/thumb2-bl-bad.d: Likewise.
* ld-arm/thumb2-bl-as-thumb1-bad.s: Update comments.
* ld-arm/thumb2-bl-bad.s: Likewise.
corinna [Thu, 15 May 2008 16:34:00 +0000 (16:34 +0000)]
* autoload.cc (LoadDLLfuncNt): Re-invent.
(NtCreateTransaction): Define.
(NtCommitTransaction): Define.
(NtRollbackTransaction): Define.
(RtlGetCurrentTransaction): Define.
(RtlSetCurrentTransaction): Define.
* ntdll.h (TRANSACTION_ALL_ACCESS): Define.
(NtCreateTransaction): Declare.
(NtCommitTransaction): Declare.
(NtRollbackTransaction): Declare.
(RtlGetCurrentTransaction): Declare.
(RtlSetCurrentTransaction): Declare.
* syscalls.cc (start_transaction): New static function to start TxF
transaction.
(stop_transaction): New static function to end TxF transaction.
(rename): Call start_transaction and stop_transaction where appropriate
on systems supporting transactions.
* wincap.h (wincaps::has_transactions): New element.
* wincap.cc: Implement above element throughout.
amodra [Thu, 15 May 2008 13:23:33 +0000 (13:23 +0000)]
* dbxread.c: Formatting.
(INTERNALIZE_SYMBOL): Init n_other.
(set_namestring): Take pointer to nlist arg rather than struct
copy. Update all callers.
corinna [Thu, 15 May 2008 11:01:25 +0000 (11:01 +0000)]
* Makefile.in (CYGWIN_BINS): Remove ipcrm and ipcs.
* ipcrm.c: Remove.
* ipcs.c: Remove.
schwab [Thu, 15 May 2008 09:38:39 +0000 (09:38 +0000)]
(dwarf2loc.o): Remove $(addrmap_h).
(dwarf2read.o): Add $(addrmap_h).
gdbadmin [Thu, 15 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Thu, 15 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
jjohnstn [Wed, 14 May 2008 22:09:10 +0000 (22:09 +0000)]
2008-05-14 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/reent.h: Change _REENT_INIT... macros to
access macro parameter with parentheses around it.
jjohnstn [Wed, 14 May 2008 22:08:56 +0000 (22:08 +0000)]
2008-05-14 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/reent.h: Change _REENT_INIT... macros to
access macro parameter with parentheses around it.
uweigand [Wed, 14 May 2008 18:28:59 +0000 (18:28 +0000)]
* ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
(ppc64_linux_convert_from_func_ptr_addr): ... to this. No longer try
to handle ppc32 PLT entries.
(ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
only on ppc64.
drow [Wed, 14 May 2008 18:14:33 +0000 (18:14 +0000)]
* elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
lookup_minimal_symbol_by_pc_section. Prefer trampolines if requested.
(lookup_minimal_symbol_by_pc_section): Use
lookup_minimal_symbol_by_pc_section_1.
(lookup_solib_trampoline_symbol_by_pc): Likewise.
uweigand [Wed, 14 May 2008 16:00:36 +0000 (16:00 +0000)]
* elf32-ppc.c (ppc_elf_get_synthetic_symtab): Fix memset calls.
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise.
corinna [Wed, 14 May 2008 10:21:21 +0000 (10:21 +0000)]
* fhandler_disk_file.cc (fhandler_disk_file::readdir_helper): Drop
explicit transformation of special DOS chars.
* strfuncs.cc (sys_wcstombs): Always transform UNICODE private use area
back to ASCII.
amodra [Wed, 14 May 2008 06:45:39 +0000 (06:45 +0000)]
update dependencies
brobecke [Wed, 14 May 2008 04:23:02 +0000 (04:23 +0000)]
* findcmd.c: Add #include "gdb_stdint.h".
* Makefile.in (findcmd.o): Update dependencies.
amodra [Wed, 14 May 2008 02:21:18 +0000 (02:21 +0000)]
* elf32-ppc.c (section_covers_vma): New function.
(ppc_elf_get_synthetic_symtab): New function.
(bfd_elf32_get_synthetic_symtab): Define.
* elf64-ppc.c (section_covers_vma): New function.
(ppc64_elf_get_synthetic_symtab): Generate sym@plt on glink branch
table entries, and __glink_PLTresolve on resolver stub.
(ppc64_elf_build_stubs): Rename __glink sym to __glink_PLTresolve.
gdbadmin [Wed, 14 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Wed, 14 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
froydnj [Tue, 13 May 2008 21:17:18 +0000 (21:17 +0000)]
* gdb.base/watch_thread_num.exp: Don't run tests that require
watchpoints if the target doesn't support them.
corinna [Tue, 13 May 2008 13:56:05 +0000 (13:56 +0000)]
* include/cygwin/stdlib.h (initstate): Declare.
(setstate): Declare.
corinna [Tue, 13 May 2008 13:44:03 +0000 (13:44 +0000)]
* path.cc (path_conv::set_normalized_path): Drop strip_tail argument.
Never strip trailing dots and spaces.
* (path_conv::check): Accomodate above change.
* path.h (path_conv::operator=): Ditto
* dtable.cc (build_fh_dev): Ditto.
* fhandler.h (fhandler_base::set_name): Ditto.
* path.cc (transform_chars): Disable converting trailing dots and
spaces.
* path.cc (path_conv::check): Remove two disabled code snippets.
corinna [Tue, 13 May 2008 11:40:44 +0000 (11:40 +0000)]
* random.cc (initstate): Align to POSIX definition.
(setstate): Ditto.
gdbadmin [Tue, 13 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***