aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2008-04-19 * object.cc (Xindex::initialize_symtab_xindex): New function.Ian Lance Taylor26-358/+1402
(Xindex::read_symtab_xindex): New function. (Xindex::sym_xindex_to_shndx): New function. (Sized_relobj::find_symtab): Pick up SHT_SYMTAB_SHNDX section if available. (Sized_relobj::do_initialize_xindex): New function. (Sized_relobj::do_read_symbols): Adjust section links. (Sized_relobj::symbol_section_and_value): Add is_ordinary parameter. Change all callers. (Sized_relobj::include_section_group): Adjust section links and symbol section indexes. (Sized_relobj::do_layout): Adjust section links. (Sized_relobj::do_count_local_symbols): Adjust section links and symbol section indexes. (Sized_relobj::do_finalize_local_symbols): Distinguish between ordinary and special symbols. (Sized_relobj::write_local_symbols): Add symtab_xindex and dynsym_xindex parameters. Change all callers. Adjust section links. Use SHN_XINDEX when needed. (Sized_relobj::get_symbol_location_info): Adjust section links. Don't get fooled by special symbols. * object.h (class Xindex): Define. (class Object): Add xindex_ parameter. Declare virtual functoin do_initialize_xindex. (Object::adjust_sym_shndx): New function. (Object::set_xindex): New protected function. (class Symbol_value): Add is_ordinary_shndx_ field. (Symbol_value::Symbol_value): Initialize is_ordinary_shndx_. (Symbol_value::value): Assert ordinary section. (Symbol_value::initialize_input_to_output_map): Likewise. (Symbol_value::set_input_shndx): Add is_ordinary parameter. Change all callers. (Symbol_value::input_shndx): Add is_ordinary parameter. Change all callers. (class Sized_relobj): Update declarations. (Sized_relobj::local_symbol_input_shndx): Add is_ordinary parameter. Change all callers. (Sized_relobj::adjust_shndx): New function. * dynobj.cc (Sized_dynobj::Sized_dynobj): Initialize dynsym_shndx_ field. (Sized_dynobj::find_dynsym_sections): Remove pdynsym_shndx parameter. Change all callers. Pick up SHT_DYNSYM_SHNDX section for SHT_DYNSYM section if available. Set dynsym_shndx_ field. (Sized_dynobj::read_dynsym_section): Adjust section links. (Sized_dynobj::read_dynamic): Likewise. (Sized_dynobj::do_read_symbols): Use dynsym_shndx_ field. Adjust section links. (Sized_dynobj::do_initialize_xindex): New function. * dynobj.h (class Sized_dynobj): Add dynsym_shndx_ field. Declare do_initialize_xindex. (Sized_dynobj::adjust_shndx): New function. * layout.cc (Layout::Layout): Initialize symtab_xindex_ and dynsym_xindex_ fields. (Layout::finalize): Add a call to set_section_indexes before creating the symtab sections. (Layout::set_section_indexes): Don't do anything if the section already has a section index. (Layout::create_symtab_sections): Add shnum parameter. Change caller. Create .symtab_shndx section if needed. (Layout::create_shdrs): Add shstrtab_section parameter. Change caller. (Layout::allocated_output_section_count): New function. (Layout::create_dynamic_symtab): Create .dynsym_shndx section if needed. * layout.h (class Layout): Add symtab_xindex_ and dynsym_xindex_ fields. Update declarations. (Layout::symtab_xindex): New function. (Layout::dynsym_xindex): New function. (class Write_symbols_task): Add layout_ field. (Write_symbols_task::Write_symbols_task): Add layout parameter. Change caller. * output.cc (Output_section_headers::Output_section_headers): Add shstrtab_section parameter. Change all callers. (Output_section_headers::do_sized_write): Store overflow values for section count and section string table section index in section header zero. (Output_file_header::do_sized_write): Check for overflow of section count and section string table section index. (Output_symtab_xindex::do_write): New function. (Output_symtab_xindex::endian_do_write): New function. * output.h (class Output_section_headers): Add shstrtab_section_. Update declarations. (class Output_symtab_xindex): Define. (Output_section::has_out_shndx): New function. * symtab.cc (Symbol::init_fields): Initialize is_ordinary_shndx_ field. (Symbol::init_base): Add st_shndx and is_ordinary parameters. Change all callers. (Sized_symbol::init): Likewise. (Symbol::output_section): Check for ordinary symbol. (Symbol_table::add_from_object): Remove orig_sym parameter. Add st_shndx, is_ordinary, and orig_st_shndx parameters. Change all callers. (Symbol_table::add_from_relobj): Add symndx_offset parameter. Change all callers. Simplify handling of symbols from sections not included in the link. (Symbol_table::add_from_dynobj): Handle ordinary symbol distinction. (Weak_alias_sorter::operator()): Assert that symbols are ordinary. (Symbol_table::sized_finalize_symbol): Handle ordinary symbol distinction. (Symbol_table::write_globals): Add symtab_xindex and dynsym_xindex parameters. Change all callers. (Symbol_table::sized_write_globals): Likewise. Handle ordinary symbol distinction. Use SHN_XINDEX when needed. (Symbol_table::write_section_symbol): Add symtab_xindex parameter. Change all callers. (Symbol_table::sized_write_section_symbol): Likewise. Use SHN_XINDEX when needed. * symtab.h (class Symbol): Add is_ordinary_shndx_ field. Update declarations. (Symbol::shndx): Add is_ordinary parameter. Change all callers. (Symbol::is_defined): Check is_ordinary. (Symbol::is_undefined, Symbol::is_weak_undefined): Likewise. (Symbol::is_absolute, Symbol::is_common): Likewise. (class Sized_symbol): Update declarations. (class Symbol_table): Update declarations. * resolve.cc (Symbol::override_base): Add st_shndx and is_ordinary parameters. Change all callers. (Sized_symbol::override): Likewise. (Symbol_table::override): Likewise. (symbol_to_bits): Add is_ordinary parameter. Change all callers. (Symbol_table::resolve): Remove orig_sym parameter. Add st_shndx, is_ordinary, and orig_st_shndx parameters. Change all callers. * copy-relocs.cc (Copy_relocs::emit_copy_reloc): Require symbol to be in an ordinary section. * dwarf_reader.cc (Sized_dwarf_line_info::symbol_section): Add object and is_ordinary parameters. Change all callers. (Sized_dwarf_line_info::read_relocs): Add object parameter. Change all callers. Don't add undefined or non-ordinary symbols to reloc_map_. (Sized_dwarf_line_info::read_line_mappings): Add object parameter. Change all callers. * dwarf_reader.h (class Sized_dwarf_line_info): Update declarations. * ehframe.cc (Eh_frame::read_fde): Check for ordinary symbol. * reloc.cc (Sized_relobj::do_read_relocs): Adjust section links. (Sized_relobj::relocate_sections): Likewise. * target-reloc.h (scan_relocs): Adjust section symbol index. (scan_relocatable_relocs): Likewise. * i386.cc (Scan::local): Check for ordinary symbols. * sparc.cc (Scan::local): Likewise. * x86_64.cc (Scan::local): Likewise. * testsuite/binary_unittest.cc (Sized_binary_test): Update calls to symbol_section_and_value. * testsuite/many_sections_test.cc: New file. * testsuite/Makefile.am (BUILT_SOURCES): Define. (check_PROGRAMS): Add many_sections_test. (many_sections_test_SOURCES): Define. (many_sections_test_DEPENDENCIES): Define. (many_sections_test_LDFLAGS): Define. (BUILT_SOURCES): Add many_sections_define.h. (many_sections_define.h): New target. (BUILT_SOURCES): Add many_sections_check.h. (many_sections_check.h): New target. (check_PROGRAMS): Add many_sections_r_test. (many_sections_r_test_SOURCES): Define. (many_sections_r_test_DEPENDENCIES): Define. (many_sections_r_test_LDFLAGS): Define. (many_sections_r_test_LDADD): Define. (many_sections_r_test.o): New target. * testsuite/Makefile.in: Rebuild.
2008-04-19 * mi/mi-cmd-var.c (varobj_update_one): Print newVladimir Prus4-0/+20
value for variable objects that changed type.
2008-04-19 * varobj.c (varobj_invalidate): Don't touch floatingVladimir Prus2-0/+10
varobjs.
2008-04-19* symtab.c: (multiple_symbols_modes, multiple_symbols_ask)Mark Kettenis3-6/+12
(multiple_symbols_cancel): Remove extra const. * symtab.h: Likewise.
2008-04-19(linespec.o, mi-interp.o): Add dependencies.Nick Roberts1-3/+3
2008-04-19Include interps.h and mi/mi-cmds.h.Nick Roberts1-1/+4
(decode_line_2): When using MI, always set all breakpoints in menu.
2008-04-19New extern for top_level_interpreter.Nick Roberts1-0/+1
2008-04-19(top_level_interpreter): Rename static variable...Nick Roberts1-6/+12
(top_level_interpreter_ptr): ...to this. (top_level_interpreter): New function.
2008-04-19*** empty log message ***Nick Roberts1-1/+14
2008-04-19 * configure.ac (AC_SEARCH_LIBS): Add check for zlib.Craig Silverstein9-23/+1025
* config.in, configure: Regenerate. * dwarf2read.c: Include zlib.h if present. Modified *_SECTION macros. (section_is_p): New. (dwarf2_locate_sections): Use section_is_p instead of strcmp (dwarf2_resize_section): New. to determine whether a given section has a given name. (zlib_decompress_section): New. (dwarf2_read_section): Read the compressed section if present in the binary. * testsuite/gdb.dwarf2/dw2-compressed.S: New file. * testsuite/gdb.dwarf2/dw2-compressed.exp: New file. * MAINTAINERS: Added myself to section Write After Approval.
2008-04-19 * defs.h (exec_set_section_offsets): Remove prototype.Thiago Jung Bauermann3-40/+5
* exec.c (exec_set_section_offsets): Remove function.
2008-04-19 * gdb.ada/atomic_enum: New test program.Joel Brobecker5-0/+133
* gdb.ada/atomic_enum.exp: New testcase.
2008-04-19 * stabsread.c (cleanup_undefined_types_1): Add instance flags checkJoel Brobecker2-1/+28
in the search for the matching symbol.
2008-04-19*** empty log message ***gdbadmin1-1/+1
2008-04-19daily updateAlan Modra1-1/+1
2008-04-18 * doc/c-sparc.texi: Add syntax section.David S. Miller2-6/+402
2008-04-182008-04-18 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-9/+5
* config/tc-i386.c (build_modrm_byte): Don't check FMA to swap REG and NDS for instructions with immediate operand.
2008-04-18merge from gccDJ Delorie10-18/+90
2008-04-18gas/H.J. Lu11-776/+910
2008-04-18 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (build_modrm_byte): Swap REG and NDS for FMA. gas/testsuite/ 2008-04-18 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/arch-10.d: Updated. * gas/i386/avx.d: Likewise. * gas/i386/avx-intel.d: Likewise. * gas/i386/x86-64-arch-2.d: Likewise. * gas/i386/x86-64-avx.d: Likewise. * gas/i386/x86-64-avx-intel.d: Likewise. opcodes/ 2008-04-18 H.J. Lu <hongjiu.lu@intel.com> * i386-dis.c (OP_VEX_FMA): New. (OP_EX_VexImmW): Likewise. (VexFMA): Likewise. (Vex128FMA): Likewise. (EXVexImmW): Likewise. (get_vex_imm8): Likewise. (OP_EX_VexReg): Likewise. (vex_i4_done): Renamed to ... (vex_w_done): This. (prefix_table): Replace EXVexW with EXVexImmW on vpermil2ps and vpermil2pd. Replace Vex/Vex128 with VexFMA/Vex128FMA on FMA instructions. (print_insn): Updated. (OP_EX_VexW): Rewrite to swap register in VEX with EX. (OP_REG_VexI4): Check invalid high registers.
2008-04-182008-04-18 Paolo Bonzini <bonzini@gnu.org>Paolo Bonzini7-13/+244
Sync with gcc: 2008-04-18 Paolo Bonzini <bonzini@gnu.org> PR bootstrap/35457 * configure.ac: Include override.m4. * configure: Regenerate. 2008-04-18 Paolo Bonzini <bonzini@gnu.org> * Makefile.tpl (restrap): Call `make all' using double-colon rules. * Makefile.in: Regenerate. 2008-04-11 Eric B. Weddington <eweddington@cso.atmel.com> * configure.ac: Do not build libssp for the AVR. * configure: Regenerate. config: 2008-04-18 Paolo Bonzini <bonzini@gnu.org> PR bootstrap/35457 * override.m4: Add this. Make sure aclocal always picks it. Add more lenient precious variable check, backported from autoconf trunk.
2008-04-18 * aix5ppc-core.c: Define macros for the default architecture andNick Clifton3-2/+44
machine for matching core files. (xcoff64_core_p): Set the architecture and machine to the default values defined in the macros mentioned above. * rs6000-core.c: Define macros to determine whether or not the core file header uses the core_dumpxx header format. (rs6000coff_core_p): Don't match core files that use the core_dumpxx header format.
2008-04-18[patch]: ctor/dtor section must start at alignment of 8 for x86_64-pc-mingw32.Kai Tietz2-0/+5
* scripttempl/pep.sc: Align start of symbol __CTOR_LIST__.
2008-04-18* MAINTAINERS: Replace reference to configure.in with reference to configure.ac.Nick Clifton2-1/+6
2008-04-18 * config/tc-sparc.c (sparc_ip): Recognize %pc22 and %pc10.David S. Miller1-0/+2
2008-04-18 * configure.ac (cr16-*-*): Add case for cr16 target and include gdbNick Clifton3-0/+12
as nonconfigurable directories list. * configure: Regenerate.
2008-04-18 * Makefile.in (distclean): Add gstdint.h.Ben Elliston2-1/+5
2008-04-182008-04-17 Marc Khouzam <marc.khouzam@ericsson.com>Marc Khouzam2-6/+10
* breakpoint.c (update_watchpoint): Always reparse condition.
2008-04-18daily updateAlan Modra1-1/+1
2008-04-18*** empty log message ***gdbadmin1-1/+1
2008-04-17 * gdb.opt/Makefile.in: Fix whitespace.Doug Evans2-12/+16
2008-04-17 * errors.cc (Errors::info): New function.Cary Coutant8-28/+102
(gold_info): New function. * errors.h (Errors::info): New function. * gold.h (gold_info): New function. * object.cc (Input_objects::add_object): Print trace output. * options.cc (options::parse_set): New function. (General_options::parse_wrap): Deleted. (General_options::General_options): Deleted initializer. * options.h (options::String_set): New typedef. (options::parse_set): New function. (DEFINE_set): New macro. (General_options::wrap): Changed to use DEFINE_set. Changed callers of any_wrap_symbols and is_wrap_symbol. (General_options::trace, General_options::trace_symbol): New options. (General_options::any_wrap_symbols, General_options::is_wrap_symbol) (General_options::wrap_symbols_): Deleted. * symtab.cc (Symbol_table::add_from_object): Print trace output.
2008-04-17 * breakpoint.c (print_one_breakpoint_location): Make sure to printJoel Brobecker2-1/+6
the breakpoint address only once.
2008-04-172008-04-17 Daniel Jacobowitz <dan@codesourcery.com>Ulrich Weigand2-0/+6
* gdb.threads/linux-dp.exp: Continue after unrecognized lines.
2008-04-17 * configure.srv [powerpc64-*-linux*]: Remove powerpc-e500.o fromUlrich Weigand3-43/+121
srv_regobj. Remove rs6000/powerpc-e500.xml and rs6000/power-spe.xml from reg_xmlfiles. * linux-ppc-low.c: Include <elf.h>. (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Define. (ppc_hwcap): New global variable. (ppc_regmap): Remove __SPE__ #ifdef sections. (ppc_regmap_e500): New global variable. (ppc_cannot_store_register): Update __SPE__ special case. (ppc_get_hwcap): New function. (ppc_arch_setup): Use it to determine whether inferior supports AltiVec or SPE registers. Set the_low_target.regmap if appropriate. (ppc_fill_vrregset, ppc_store_vrregset): Define unconditionally. Do not access registers if target does not support AltiVec. (ppc_fill_evrregset, ppc_store_evrregset): Define unconditionally. Do not access registers if target does not support SPE. (target_regsets): Unconditionally include AltiVec and SPE regsets.
2008-04-172008-04-17 Daniel Jacobowitz <dan@codesourcery.com>Ulrich Weigand2-37/+35
* linux-low.c (disabled_regsets, num_regsets): New. (use_regsets_p): Delete. (linux_wait_for_process): Clear disabled_regsets. (regsets_fetch_inferior_registers): Check and set it. (regsets_store_inferior_registers): Likewise. (linux_fetch_registers, linux_store_registers): Do not use use_regsets_p. (initialize_low): Allocate disabled_regsets.
2008-04-17 * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,Joel Brobecker2-12/+8
rather than a hard-coded architecture, for xcoff executables.
2008-04-17 * options.cc (General_options::parse_V): New function.David S. Miller3-0/+23
* options.h: Add entries for -V and -Qy.
2008-04-17 * buildsym.c (watch_main_source_file_lossage): New fn.Doug Evans6-0/+257
(end_symtab): Call it. * gdb.base/hashline1.exp: New testcase. * gdb.base/hashline2.exp: New testcase. * gdb.base/hashline2.exp: New testcase.
2008-04-17 * source.c (find_and_open_source): Add some comments clarifyingDoug Evans2-8/+11
handling of FULLNAME argument. Make static. Remove pointless xstrdup/xfree.
2008-04-17 gdb/Pedro Alves5-0/+104
* inf-loop.c (inferior_event_handler): Also run the intermediate continuations in the INF_EXEC_COMPLETE case. gdb/testsuite/ * gdb.base/step-break.exp, gdb.base/step-break.c: New files.
2008-04-17 * common.cc (Symbol_table::allocate_commons): Remove optionsIan Lance Taylor16-72/+360
parameter. Change caller. (Symbol_table::do_allocate_commons): Remove options parameter. Change caller. Just call do_allocate_commons_list twice. (Symbol_table::do_allocate_commons_list): New function, broken out of do_allocate_commons. * common.h (class Allocate_commons_task): Remove options_ field. Update constructor. * symtab.cc (Symbol_table::Symbol_table): Initialize tls_commons_. (Symbol_table::add_from_object): Put TLS common symbols on tls_commons_ list. (Symbol_table::sized_finalize_symbol): Handle STT_TLS symbols which are IN_OUTPUT_DATA. * symtab.h (class Symbol_table): Add tls_commons_ field. Update allocate_commons and do_allocate_commons declarations. Declare do_allocate_commons_list. * gold.cc (queue_middle_tasks): Update creation of Allocate_commons_task to not pass options. * testsuite/Makefile.am (INCLUDES): Add -I.. . (TLS_TEST_C_FLAGS): New variable. (tls_test_c_pic.o): New target. (tls_test_shared.so): Link in tls_test_c_pic.o. (tls_test_c_pic_ie.o): New target. (tls_test_ie_shared.so): Link in tls_test_c_pic_ie.o. (tls_test_DEPENDENCIES, tls_test_LDADD): Add tls_test_c.o. (tls_test_c.o): New target. (tls_pic_test_DEPENDENCIES): Add tls_test_c_pic.o. (tls_pic_test_LDADD): Likewise. (tls_shared_gd_to_ie_test_DEPENDENCIES): Add tls_test_c_pic.o. (tls_shared_gd_to_ie_test_LDADD): Likewise. (tls_test_c_gnu2.o): New target. (tls_shared_gnu2_gd_to_ie_test_DEPENDENCIES): Add tls_test_c_gnu2.o. (tls_shared_gnu2_gd_to_ie_test_LDADD): Likewise. (tls_test_gnu2_shared.so): Link in tls_test_c_gnu2.o. (tls_test_shared_nonpic.so): Link in tls_test_c.o. * testsuite/tls_test.cc: Include "config.h". (t_last): Call t11_last. * testsuite/tls_test.h (t11, t11_last): Declare. * testsuite/tls_test_c.c: New file. * testsuite/tls_test_main.cc (thread_routine): Call t11. * configure.ac: Check for OpenMP support. * configure, config.in, Makefile.in: Rebuild. * testsuite/Makefile.in: Rebuild.
2008-04-17 * sparc.cc (Target_sparc::Scan): Change from struct to class.David S. Miller2-1/+114
Add issued_non_pic_error_ field. Declare check_non_pic. (Target_sparc::Scan::check_non_pic): New function. (Target_sparc::Scan::local): Call check_non_pic as appropriate. (Target_sparc::Scan::global): Likewise.
2008-04-17 * configure.ac (FN_PTRS_IN_SO_WITHOUT_PIC): Add sparc64.David S. Miller3-0/+5
* configure: Rebuild.
2008-04-17 * i386.cc (Target_i386::define_tls_base_symbol): New function.Cary Coutant4-3/+75
(Target_i386::tls_base_symbol_defined_): New field. (Target_i386::Scan::local): Define _TLS_MODULE_BASE_ symbol. (Target_i386::Scan::global): Likewise. * symtab.cc (sized_finalize_symbol): Add check for TLS symbol. * x86_64.cc (Target_x86_64::define_tls_base_symbol): New function. (Target_x86_64::tls_base_symbol_defined_): New field. (Target_x86_64::Scan::local): Define _TLS_MODULE_BASE_ symbol. (Target_x86_64::Scan::global): Likewise.
2008-04-17 * cli/cli-decode.h (CMD_ASYNC_OK): New define.Tom Tromey7-16/+52
(set_cmd_async_ok, get_cmd_async_ok): Declare. * cli/cli-decode.c (set_cmd_async_ok): New function. (get_cmd_async_ok): New function. * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and "show" as async-ok. * top.c (execute_command): Use get_cmd_async_ok. * infcmd.c: Include cli/cli-decode.h. (_initialize_infcmd): Mark "interrupt" as async-ok. * Makefile.in (infcmd.o): Depend on cli_decode_h.
2008-04-17 * symtab.h (Symbol::is_strong_undefined): Removed unused function.Cary Coutant8-51/+217
(Symbol::needs_plt_entry): Allow weak undefined symbols. (Symbol::needs_dynamic_reloc): Allow weak undefined symbols when building shared libraries. * testsuite/Makefile.am (weak_undef_nonpic_test): New target. (weak_undef_file1_nonpic.o, weak_undef_file2_nonpic.o) (weak_undef_lib_nonpic.so, alt/weak_undef_lib_nonpic.so): New targets. * testsuite/Makefile.in: Rebuild. * testsuite/weak_undef.h: New file. * testsuite/weak_undef_file1.cc: Add extra test cases. * testsuite/weak_undef_file2.cc: Likewise. * testsuite/weak_undef_test.cc: Likewise.
2008-04-17*** empty log message ***gdbadmin1-1/+1
2008-04-17daily updateAlan Modra1-1/+1
2008-04-16elfcpp/David S. Miller5-0/+109
* elfcpp.h (DF_1_NOW, DF_1_GLOBAL, DF_1_GROUP, DF_1_NODELETE, DF_1_LOADFLTR, DF_1_INITFIRST, DF_1_NOOPEN, DF_1_ORIGIN, DF_1_DIRECT, DF_1_TRANS, DF_1_INTERPOSE, DF_1_NODEFLIB, DF_1_NODUMP, DF_1_CONLFAT): New enum constants. gold/ * options.h (DEFINE_enable): New macro. (new_dtags): New enable option. (initfirst, interpose, loadfltr, nodefaultlib, nodelete, nodlopen, nodump): New -z options. * layout.cc (Layout:finish_dynamic_section): If new dtags enabled, emit DT_RUNPATH. Also, emit a DT_FLAGS_1 containing any specified -z flags.
2008-04-16 PR gdb/2445Daniel Jacobowitz2-1/+6
* exec.c: Correct "arch-utils.h" include.