Jan Beulich [Thu, 10 Jun 2010 07:10:04 +0000 (07:10 +0000)]
gas/
2010-06-10 Jan Beulich <jbeulich@novell.com>
* config/tc-i386.c (cpu_arch): Add comment.
(i386_target_format): Set cpu_arch_isa_flags and cpu_arch_tune_flags
from the generic entries of cpu_arch[].
Nick Clifton [Wed, 9 Jun 2010 14:14:18 +0000 (14:14 +0000)]
* yyscript.y (input_list_element): Allow strings prefixed with
the '-' character. Treat these as libraries.
* script.cc (script_add_library): New function. Adds a library
specified by "-l<name>" found in an input script.
* script-c.h: Add prototype for script_add_library.
Nick Clifton [Tue, 8 Jun 2010 10:38:48 +0000 (10:38 +0000)]
* gprof.texi (Sampling Error): Note that call counts and basic
block counts are only reliable for multi-threaded applications if
the counting function itself is thread safe.
Nick Clifton [Tue, 8 Jun 2010 10:30:56 +0000 (10:30 +0000)]
etc/ChangeLog
* standards.texi: Relicense under GFDL v1.3.
* fdl.texi: Replace with v1.3 text.
gas/ChangeLog
* doc/as.texinfo: Replace abbreviated 20th century year numbers
with full versions.
gprof/ChangeLog
* gprof.texi: Replace abbreviated 20th century year numbers with
full versions.
ld/ChangeLog
* fdl.texi: Replace with v1.3 text.
* ld.texinfo: Replace abbreviated 20th century year numbers with
full versions.
* ldint.texinfo: Likewise.
Relicense under GFDL v1.3. Replace text of v1.1 FDL with an
include of the fdl.texi file.
Doug Kwan [Tue, 8 Jun 2010 00:33:41 +0000 (00:33 +0000)]
2010-06-07 Doug Kwan <dougkwan@google.com>
* arm.cc (Target_arm::do_relax): Reserve more space for stubs.
Restrict stub-group size to be within long conditional branch
range when working around cortex-A8 erratum.
Jan Kratochvil [Mon, 7 Jun 2010 19:42:58 +0000 (19:42 +0000)]
gdb/
* dwarf2loc.c (struct dwarf_expr_baton) Replace objfile by per_cu.
(dwarf_expr_tls_address): Use per_cu instead of objfile.
(dwarf2_evaluate_loc_desc): Drop initialization of BATON.OBJFILE.
Initialize new BATON.PER_CU. Adjust CTX->GDBARCH initialization for
this change.
(struct needs_frame_baton): New field per_cu.
(dwarf2_loc_desc_needs_frame): Initialize new BATON.PER_CU.
* dwarf2read.c (struct dwarf2_per_cu_data) <cu>: Extend the comment.
Sami Wagiaalla [Mon, 7 Jun 2010 17:51:03 +0000 (17:51 +0000)]
Fix operator doubly nested namespace search.
2010-06-07 Sami Wagiaalla <swagiaal@redhat.com>
* cp-support.c (make_symbol_overload_list_namespace): Only search
static and global blocks.
(make_symbol_overload_list_block): New function.
(make_symbol_overload_list): Separate namespace search from block
search.
(make_symbol_overload_list_qualified): Use
make_symbol_overload_list_block.
Sami Wagiaalla [Mon, 7 Jun 2010 16:11:35 +0000 (16:11 +0000)]
Test and support all cpp operator types.
2010-06-07 Sami Wagiaalla <swagiaal@redhat.com>
* value.h: Created oload_search_type enum.
(find_overload_match): Use oload_search_type enum.
* valops.c (find_overload_match): Support combined member and
non-member search.
* eval.c (evaluate_subexp_standard): Calls to
find_overload_match now use oload_search_type enum.
(oload_method_static): Verify index is a proper value.
* valarith.c (value_user_defined_cpp_op): Search for and handle
both member and non-member operators.
(value_user_defined_cpp_op): New function.
(value_user_defined_op): New function.
(value_x_unop): Use value_user_defined_op.
(value_x_binop): Ditto.
* cp-support.c (make_symbol_overload_list_using): Added block
iteration.
Add check for namespace aliases and imported declarations.
2010-06-07 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/koenig.exp: Test for ADL operators.
* gdb.cp/koenig.cc: Added ADL operators.
* gdb.cp/operator.exp: New test.
* gdb.cp/operator.cc: New test.
Jan Kratochvil [Mon, 7 Jun 2010 13:38:25 +0000 (13:38 +0000)]
gdb/
Clear stale specific bp_location from former whole breakpoint.
* breakpoint.c (delete_breakpoint): Move the stale referencing clear
code ...
(free_bp_location): ... here. Rename there the called function to
bpstat_remove_bp_location_callback.
(bpstat_remove_breakpoint_callback): Rename to ...
(bpstat_remove_bp_location_callback): ... here, change DATA resolution
to struct bp_location. Change the called function to
bpstat_remove_bp_location. Create new declaration for the function.
(bpstat_remove_breakpoint): Rename to ...
(bpstat_remove_bp_location): ..., change the parameter to loc, adjust
code for the new parameter type.
Jan Kratochvil [Sat, 5 Jun 2010 14:11:54 +0000 (14:11 +0000)]
gdb/
Fix duplicate types for single DIE.
* dwarf2read.c (read_structure_type): Move set_descriptive_type after
set_die_type.
(read_array_type): Remove type initialization. Recheck get_die_type
after initial die_type. Move set_die_type before set_descriptive_type.
(read_set_type): New variable domain_type. Recheck get_die_type after
initial die_type. Move attr initialization later.
(read_tag_pointer_type, read_tag_reference_type): New variable
target_type. Recheck get_die_type after initial die_type.
(read_tag_ptr_to_member_type): Recheck get_die_type after initial
die_type and die_containing_type.
(read_tag_const_type, read_tag_volatile_type, read_subroutine_type):
Recheck get_die_type after initial die_type.
(read_subrange_type): Recheck get_die_type after initial die_type.
Move set_die_type before set_descriptive_type.
(set_die_type): Extend the function comment. Call complaint if DIE has
some type already set.
doc/
* gdb.texinfo (Python API): New node `Disabling Pretty-Printers'.
testsuite/
* gdb.python/py-prettyprint.exp: Add new test for enabled and
disabled printers.
* gdb.python/py-prettyprint.py (disable_lookup_function): New function.
(enable_lookup_function): New function.
Joel Brobecker [Thu, 3 Jun 2010 20:29:27 +0000 (20:29 +0000)]
do not emit PASS for gdb_test_no_output test if message is empty string.
This patch makes gdb_test_no_output not emit a PASS for a sucessful
test when the message is the empty string. As requested, this makes
it consistent with what gdb_test does.
2010-06-03 Joel Brobecker <brobecker@adacore.com>
* lib/gdb.exp (gdb_test_no_output): Do not emit pass for
successful test if message is the empty string.
Jan Kratochvil [Wed, 2 Jun 2010 22:41:56 +0000 (22:41 +0000)]
gdb/
Support DW_TAG_module as separate namespaces.
* dwarf2read.c (typename_concat): New parameter physname.
(read_module_type): New function and declaration.
(scan_partial_symbols): Scan also DW_TAG_module children.
(partial_die_parent_scope): Accept scope even from DW_TAG_module. Pass
to typename_concat backward compatible physname value 0.
(partial_die_full_name, read_namespace_type): Pass to typename_concat
backward compatible physname value 0.
(add_partial_module, read_module): Remove FIXME comment.
(process_die) <DW_TAG_module>: Set PROCESSING_HAS_NAMESPACE_INFO.
(die_needs_namespace) <DW_TAG_variable>: Allow returning true even for
DIEs under DW_TAG_module.
(dwarf2_compute_name): Move the ada block for DW_AT_linkage_name and
DW_AT_MIPS_linkage_name first, extend it for language_fortran
&& physname and return there instead of just setting NAME. Extend
the main block for language_fortran. Pass physname parameter to the
typename_concat call.
(read_import_statement, read_func_scope, get_scope_pc_bounds)
(load_partial_dies, determine_prefix): Support also DW_TAG_module.
(new_symbol): Fill in cplus_specific.demangled_name if it is still
missing from SYMBOL_SET_NAMES in the language_fortran case.
(new_symbol) <DW_TAG_variable>: Force LOC_UNRESOLVED for gfortran module
variables.
(read_type_die) <DW_TAG_module>: New.
(MAX_SEP_LEN): Increase to 7.
(typename_concat): New parameter physname. New variable lead. Support
also language_fortran.
* f-exp.y (yylex): Consider : also as a symbol name character class.
* f-lang.c: Include cp-support.h.
(f_word_break_characters, f_make_symbol_completion_list): New functions.
(f_language_defn): Use cp_lookup_symbol_nonlocal,
f_word_break_characters and f_make_symbol_completion_list.
* f-typeprint.c (f_type_print_base) <TYPE_CODE_MODULE>: New.
* gdbtypes.h (enum type_code) <TYPE_CODE_MODULE>: New.
* symtab.c (symbol_init_language_specific): Support language_fortran.
(symbol_find_demangled_name): New comment on language_fortran.
(symbol_natural_name, symbol_demangled_name): Use demangled_name even
for language_fortran.
(lookup_symbol_aux_local): Check imports also for language_fortran.
(default_make_symbol_completion_list): Rename to ...
(default_make_symbol_completion_list_break_on): ... this name. New
parameter break_on, use it.
(default_make_symbol_completion_list): New stub.
* symtab.h (default_make_symbol_completion_list_break_on): New
prototype.
gdb/testsuite/
Support DW_TAG_module as separate namespaces.
* gdb.fortran/library-module.exp, gdb.fortran/library-module-main.f90,
gdb.fortran/library-module-lib.f90: New.
* gdb.fortran/module.exp: Replace startup by a prepare_for_testing call.
(print i): Remove.
(continue to breakpoint: i-is-1, print var_i value 1)
(continue to breakpoint: i-is-2, print var_i value 2)
(continue to breakpoint: a-b-c-d, print var_a, print var_b, print var_c)
(print var_d, print var_i value 14, ptype modmany, complete `modm)
(complete `modmany, complete `modmany`, complete `modmany`var)
(show language, setting breakpoint at module): New tests.
* gdb.fortran/module.f90 (module mod): Remove.
(module mod1, module mod2, module modmany, subroutine sub1)
(subroutine sub2, program module): New.
Sriraman Tallam [Tue, 1 Jun 2010 23:37:58 +0000 (23:37 +0000)]
* gold.h (is_wildcard_string): New function.
* layout.cc (Layout::layout): Pass this pointer to add_input_section.
(Layout::layout_eh_frame): Ditto.
(Layout::find_section_order_index): New method.
(Layout::read_layout_from_file): New method.
* layout.h (Layout::find_section_order_index): New method.
(Layout::read_layout_from_file): New method.
(Layout::input_section_position_): New private member.
(Layout::input_section_glob_): New private member.
* main.cc (main): Call read_layout_from_file here.
* options.h (--section-ordering-file): New option.
* output.cc (Output_section::input_section_order_specified_): New
member.
(Output_section::Output_section): Initialize new member.
(Output_section::add_input_section): Add new parameter.
Keep input sections when --section-ordering-file is used.
(Output_section::set_final_data_size): Sort input sections when
section ordering file is specified.
(Output_section::Input_section_sort_entry): Add new parameter.
Check sorting type.
(Output_section::Input_section_sort_entry::compare_section_ordering):
New method.
(Output_section::Input_section_sort_compare::operator()): Change to
consider section_order_index.
(Output_section::Input_section_sort_init_fini_compare::operator()):
Change to consider section_order_index.
(Output_section::Input_section_sort_section_order_index_compare
::operator()): New method.
(Output_section::sort_attached_input_sections): Change to sort
according to section order when specified.
(Output_section::add_input_section<32, true>): Add new parameter.
(Output_section::add_input_section<64, true>): Add new parameter.
(Output_section::add_input_section<32, false>): Add new parameter.
(Output_section::add_input_section<64, false>): Add new parameter.
* output.h (Output_section::add_input_section): Add new parameter.
(Output_section::input_section_order_specified): New
method.
(Output_section::set_input_section_order_specified): New method.
(Input_section::Input_section): Initialize section_order_index_.
(Input_section::section_order_index): New method.
(Input_section::set_section_order_index): New method.
(Input_section::section_order_index_): New member.
(Input_section::Input_section_sort_section_order_index_compare): New
struct.
(Output_section::input_section_order_specified_): New member.
* script-sections.cc (is_wildcard_string): Delete and move modified
method to gold.h.
(Output_section_element_input::Output_section_element_input): Modify
call to is_wildcard_string.
(Output_section_element_input::Input_section_pattern
::Input_section_pattern): Ditto.
(Output_section_element_input::Output_section_element_input): Ditto.
* testsuite/Makefile.am (final_layout): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/final_layout.cc: New file.
* testsuite/final_layout.sh: New file.