Jonathan Wakely [Sat, 5 Jun 2010 17:43:29 +0000 (18:43 +0100)]
[multiple changes]
2010-06-05 Magnus Fromreide <magfr@lysator.liu.se>
Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/functional (function): Add nullptr_t support.
* include/bits/shared_ptr.h (shared_ptr): Likewise.
* include/bits/unique_ptr.h (unique_ptr): Likewise.
2010-06-05 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/shared_ptr_base.h (__shared_ptr): Add nullptr_t support.
(__shared_count): Add nullptr_t support and make constructors explicit.
* testsuite/20_util/shared_ptr/cons/43820.cc: Adjust.
* testsuite/20_util/shared_ptr/cons/nullptr.cc: New.
* testsuite/20_util/unique_ptr/cons/nullptr.cc: New.
* testsuite/20_util/unique_ptr/assign/nullptr.cc: New.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
From-SVN: r160324
Anatoly Sokolov [Sat, 5 Jun 2010 17:27:51 +0000 (21:27 +0400)]
target.h (struct gcc_target): Add memory_move_cost field.
* target.h (struct gcc_target): Add memory_move_cost field.
* target-def.h (TARGET_MEMORY_MOVE_COST): New.
(TARGET_INITIALIZER): Use TARGET_MEMORY_MOVE_COST.
* targhooks.c (default_memory_move_cost): New function.
* targhooks.h (default_memory_move_cost): Declare function.
* reload.h (memory_move_cost): Declare.
(memory_move_secondary_cost): Change type of 'in' argument to bool.
* reginfo.c (memory_move_cost): New function.
(memory_move_secondary_cost): Change type of 'in' argument to bool.
* ira.h (ira_memory_move_cost): Update comment.
* ira.c: (ira_memory_move_cost): Update comment.
(setup_class_subset_and_memory_move_costs): Replace MEMORY_MOVE_COST
with memory_move_cost.
* postreload.c (reload_cse_simplify_set): (Ditto.).
* reload1.c (choose_reload_regs): (Ditto.).
* doc/tm.texi (TARGET_MEMORY_MOVE_COST): New.
(MEMORY_MOVE_COST): Revise documentation.
* config/i386/i386.h (MEMORY_MOVE_COST): Remove macro.
* config/i386/i386-protos.h (int ix86_memory_move_cost): Remove.
* config/i386/i386.h (ix86_memory_move_cost): Make static. Change
type of 'in' argument to bool.
(TARGET_MEMORY_MOVE_COST): Define.
From-SVN: r160323
Jan Hubicka [Sat, 5 Jun 2010 17:02:26 +0000 (19:02 +0200)]
ipa-pure-const.c (propagate): Fix type in handling functions that can not return...
* ipa-pure-const.c (propagate): Fix type in handling functions
that can not return; be more cureful about merging the results
with previously known.
From-SVN: r160321
Matthias Klose [Sat, 5 Jun 2010 15:07:32 +0000 (15:07 +0000)]
gcc.c (cc1_options, [...]): Use find-plugindir spec function to add the -iplugindir option.
2010-06-05 Matthias Klose <doko@ubuntu.com>
* gcc.c (cc1_options, cpp_unique_options): Use find-plugindir spec
function to add the -iplugindir option.
(find_plugindir_spec_function): Add new declaration and function.
(static_spec_func): Use it for "find-plugindir".
From-SVN: r160319
Jakub Jelinek [Sat, 5 Jun 2010 15:02:32 +0000 (17:02 +0200)]
re PR c++/44361 (-Wunused-but-set-variable vs. explicit void cast)
PR c++/44361
* c-typeck.c (mark_exp_read): Handle C_MAYBE_CONST_EXPR.
* c-parser.c (c_parser_postfix_expression): Call mark_exp_read on
statement expression.
* c-c++-common/Wunused-var-9.c: New test.
From-SVN: r160318
Jakub Jelinek [Sat, 5 Jun 2010 14:49:16 +0000 (16:49 +0200)]
re PR c++/44361 (-Wunused-but-set-variable vs. explicit void cast)
PR c++/44361
* c-typeck.c (mark_exp_read): Handle C_MAYBE_CONST_EXPR.
* c-parser.c (c_parser_postfix_expression): Call mark_exp_read on
statement expression.
* c-c++-common/Wunused-var-9.c: New test.
From-SVN: r160317
Joseph Myers [Sat, 5 Jun 2010 14:43:58 +0000 (15:43 +0100)]
Fix ChangeLog typo.
From-SVN: r160316
Jan Hubicka [Sat, 5 Jun 2010 13:55:17 +0000 (15:55 +0200)]
df-problems.c (seen_in_block, [...]): Convert to bitmap_head.
* df-problems.c (seen_in_block, seen_in_insn): Convert to bitmap_head.
(df_rd_problem_data): Convert sparse_invalidated_by_call,
dense_invalidated_by_call to bitmap head.
(df_rd_alloc, df_rd_bb_local_compute_process_def,
df_rd_bb_local_compute, df_rd_confluence_n, df_rd_transfer_function,
df_rd_start_dump, df_lr_verify_transfer_functions,
df_live_verify_transfer_functions, df_chain_create_bb,
df_chain_add_problem, df_byte_lr_check_regs, df_byte_lr_alloc,
df_byte_lr_confluence_0, df_byte_lr_confluence_n, df_note_compute,
df_simulate_one_insn_forwards, df_md_alloc, df_md_bb_local_compute_process_def,
df_md_bb_local_compute_process_def, df_md_local_compute, df_md_transfer_function
df_md_free): Update.
From-SVN: r160315
Jason Merrill [Sat, 5 Jun 2010 13:13:57 +0000 (09:13 -0400)]
* g++.dg/cpp0x/noexcept06.C: Call set_unexpected.
From-SVN: r160314
Jason Merrill [Sat, 5 Jun 2010 13:13:46 +0000 (09:13 -0400)]
* testsuite/util/testsuite_abi.h: Work around glibc BZ 9694.
From-SVN: r160313
Joseph Myers [Sat, 5 Jun 2010 12:54:41 +0000 (13:54 +0100)]
re PR c/44322 (Bogus warning when assigning pointer-to-array with both "const" and "restrict")
PR c/44322
* c-typeck.c (build_unary_op): Merge qualifiers into pointer
target type for ADDR_EXPR; require no changes to qualifiers except
for function types.
* c-tree.h (c_build_type_variant): Remove.
testsuite:
* gcc.dg/c99-restrict-4.c: New test.
From-SVN: r160312
Fabien Chêne [Sat, 5 Jun 2010 09:40:11 +0000 (11:40 +0200)]
Add myself to MAINTAINERS in the right place
From-SVN: r160311
Eric Botcazou [Sat, 5 Jun 2010 08:00:14 +0000 (08:00 +0000)]
Fix formatting nits
From-SVN: r160310
Magnus Fromreide [Sat, 5 Jun 2010 04:52:18 +0000 (06:52 +0200)]
cvt.c (cp_convert_to_pointer): Use null_ptr_cst_p.
* cvt.c (cp_convert_to_pointer): Use null_ptr_cst_p.
* typeck.c (build_ptrmemfunc): Likewise.
From-SVN: r160309
Jason Merrill [Sat, 5 Jun 2010 04:52:07 +0000 (00:52 -0400)]
typeck2.c (merge_exception_specifiers): Adjust merging of throw() and noexcept(true).
* typeck2.c (merge_exception_specifiers): Adjust merging of
throw() and noexcept(true).
From-SVN: r160308
Segher Boessenkool [Sat, 5 Jun 2010 03:13:50 +0000 (05:13 +0200)]
genautomata.c (get_excl_set): Do work per element, not per char.
2010-06-05 Segher Boessenkool <segher@kernel.crashing.org>
genautomata.c (get_excl_set): Do work per element, not per char.
(check_presence_pattern_sets): Similar.
(check_absence_pattern_sets): Similar.
From-SVN: r160307
Segher Boessenkool [Sat, 5 Jun 2010 03:11:46 +0000 (05:11 +0200)]
genautomata.c (curr_state_pass_num): Delete.
2010-06-05 Segher Boessenkool <segher@kernel.crashing.org>
* genautomata.c (curr_state_pass_num): Delete.
(min_issue_delay_pass_states): Delete.
(min_issue_delay): Delete.
(initiate_min_issue_delay_pass_states): Delete.
(output_min_issue_delay_table): Compute min_issue_delay_vect
using a breadth-first search variant.
(output_tables): Don't call initiate_min_issue_delay_pass_states.
From-SVN: r160306
H.J. Lu [Sat, 5 Jun 2010 00:48:49 +0000 (00:48 +0000)]
Update df_lr_bb_local_compute for embedded bitmaps.
2010-06-04 H.J. Lu <hongjiu.lu@intel.com>
PR boostrap/44421
* df-problems.c (df_lr_bb_local_compute): Updated for embedded
bitmaps.
(df_byte_lr_bb_local_compute): Likewise.
From-SVN: r160305
GCC Administrator [Sat, 5 Jun 2010 00:17:43 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160304
Jason Merrill [Fri, 4 Jun 2010 21:59:22 +0000 (17:59 -0400)]
pt.c (value_dependent_expression_p): Avoid using an uninitialized variable.
* pt.c (value_dependent_expression_p) [NOEXCEPT_EXPR]: Avoid
using an uninitialized variable.
From-SVN: r160300
Jason Merrill [Fri, 4 Jun 2010 21:42:41 +0000 (17:42 -0400)]
cxx-pretty-print.c (pp_cxx_unary_expression): Handle NOEXCEPT_EXPR.
* cxx-pretty-print.c (pp_cxx_unary_expression): Handle NOEXCEPT_EXPR.
(pp_cxx_expression): Likewise.
From-SVN: r160299
Jason Merrill [Fri, 4 Jun 2010 21:21:23 +0000 (17:21 -0400)]
Implement noexcept-specification (15.4)
Implement noexcept-specification (15.4)
* parser.c (cp_parser_exception_specification_opt): Parse it.
Give -Wdeprecated warning about throw() specs.
* pt.c (tsubst_exception_specification): Handle it.
* error.c (dump_exception_spec): Handle it.
* cxx-pretty-print.c (pp_cxx_exception_specification): Likewise.
* typeck.c (comp_except_specs): Handle compatibility rules.
Change exact parm to take an enum.
* typeck2.c (merge_exception_specifiers): Handle noexcept.
* except.c (nothrow_spec_p, type_noexcept_p): New fns.
(type_throw_all_p, build_noexcept_spec): New fns.
* cp-tree.h (TYPE_NOTHROW_P, TYPE_NOEXCEPT_P): Use them.
(comp_except_specs): Define ce_derived, ce_normal, ce_exact enums.
(cp_tree_index): Add CPTI_NOEXCEPT_TRUE_SPEC, CPTI_NOEXCEPT_FALSE_SPEC.
(noexcept_true_spec, noexcept_false_spec): New macros.
* name-lookup.c (pushdecl_maybe_friend): Adjust.
* search.c (check_final_overrider): Adjust.
* decl.c (check_redeclaration_exception_specification): Adjust.
(use_eh_spec_block): Use type_throw_all_p.
(cxx_init_decl_processing): Set noexcept_false_spec,noexcept_true_spec.
Give operator new a noexcept-specification in C++0x mode.
* tree.c (build_exception_variant, cxx_type_hash_eq): Adjust.
(cp_build_type_attribute_variant): Don't test TYPE_RAISES_EXCEPTIONS.
From-SVN: r160298
Jason Merrill [Fri, 4 Jun 2010 21:21:13 +0000 (17:21 -0400)]
Implement noexcept operator (5.3.7)
Implement noexcept operator (5.3.7)
* c-common.c (c_common_reswords): Add noexcept.
* c-common.h (enum rid): Add RID_NOEXCEPT.
cp/
* cp-tree.def (NOEXCEPT_EXPR): New.
* except.c (check_noexcept_r, finish_noexcept_expr): New.
* cp-tree.h: Declare finish_noexcept_expr.
* parser.c (cp_parser_unary_expression): Parse noexcept-expression.
* pt.c (tsubst_copy_and_build): And tsubst it.
(type_dependent_expression_p): Handle it.
(value_dependent_expression_p): Handle it.
From-SVN: r160297
Jason Merrill [Fri, 4 Jun 2010 21:21:02 +0000 (17:21 -0400)]
call.c (build_conditional_expr): Never fold in unevaluated context.
* call.c (build_conditional_expr): Never fold in unevaluated context.
* tree.c (build_aggr_init_expr): Propagate TREE_NOTHROW.
* semantics.c (simplify_aggr_init_expr): Likewise.
* typeck.c (merge_types): Call merge_exception_specifiers.
* decl.c (duplicate_decls): Check DECL_SOURCE_LOCATION rather than
DECL_ANTICIPATED for preferring new type.
From-SVN: r160296
Joseph Myers [Fri, 4 Jun 2010 18:52:50 +0000 (19:52 +0100)]
darwin-driver.c (darwin_default_min_version): Use
* config/darwin-driver.c (darwin_default_min_version): Use
* GCC-specific formats in diagnostics.
* cppspec.c (lang_specific_driver): Use GCC-specific formats in
diagnostics.
* gcc.c (translate_options, read_specs, add_sysrooted_prefix,
execute, process_command, end_going_arg, do_self_spec, do_spec_1,
eval_spec_function, handle_braces, process_brace_body, main,
perror_with_name, used_arg, set_multilib_dir, print_multilib_info,
getenv_spec_function, compare_version_strings,
version_compare_spec_function): Use GCC-specific formats in
diagnostics.
cp:
* g++spec.c (lang_specific_driver): Use GCC-specific formats in
diagnostics.
fortran:
* gfortranspec.c (append_arg, lang_specific_driver): Use
GCC-specific formats in diagnostics.
java:
* jvspec.c (lang_specific_driver): Use GCC-specific formats in
diagnostics.
From-SVN: r160292
Jakub Jelinek [Fri, 4 Jun 2010 18:45:07 +0000 (20:45 +0200)]
re PR c++/44412 (Another bogus set-but-not-used warning)
PR c++/44412
* typeck.c (build_class_member_access_expr): Call mark_exp_read
on object for static data members.
* g++.dg/warn/Wunused-var-10.C: New test.
* g++.dg/warn/Wunused-var-11.C: New test.
From-SVN: r160290
Jakub Jelinek [Fri, 4 Jun 2010 18:42:42 +0000 (20:42 +0200)]
re PR c++/44362 (Bogus set-but-not-used warning)
PR c++/44362
* call.c (build_conditional_expr): If both arg2 and arg3 are lvalues
with the same type, call mark_lvalue_use on both.
* c-c++-common/Wunused-var-10.c: New test.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r160289
Uros Bizjak [Fri, 4 Jun 2010 17:55:54 +0000 (19:55 +0200)]
i386.md (*addhi_1_lea): Assert that operand 0 and operand 1 are equal.
* config/i386/i386.md (*addhi_1_lea) <TYPE_INCDEC, default>: Assert
that operand 0 and operand 1 are equal.
(*addqi_1_lea) <TYPE_INCDEC, default>: Ditto.
(*add<mode>_2) <TYPE_INCDEC>: Remove assert that operand 0
and operand 1 are equal.
<default>: Ditto. Remove ??? comment.
(*add<mode>_3) <TYPE_INCDEC>: Remove assert that operand 0
and operand 1 are equal.
<default>: Ditto. Remove ??? comment.
(*adddi_4) <default>: Remove assert that operand 0 and operand 1
are equal.
(*add<mode>_4) <default>: Ditto.
(*add<mode>_5) <TYPE_INCDEC, default>: Ditto.
From-SVN: r160287
Nathan Froyd [Fri, 4 Jun 2010 17:28:10 +0000 (17:28 +0000)]
i386-protos.h (ix86_print_operand): Declare.
* config/i386/i386-protos.h (ix86_print_operand): Declare.
* config/i386/i386.c (ix86_print_operand): Make non-static.
* config/i386/sol2.h (ASM_OUTPUT_CALL): Call ix86_print_operand.
* output.h (output_operand): Declare.
* final.c (output_operand): Make non-static.
From-SVN: r160286
Alexandre Oliva [Fri, 4 Jun 2010 16:43:42 +0000 (16:43 +0000)]
re PR rtl-optimization/44013 (VTA produces wrong code)
PR rtl-optimization/44013
* sched-deps.c (add_dependence_list_and_free): Don't free lists
when processing debug insns.
From-SVN: r160281
Alexandre Oliva [Fri, 4 Jun 2010 16:42:27 +0000 (16:42 +0000)]
re PR debug/41371 (var-tracking is slow and memory hungry)
PR debug/41371
* var-tracking.c (find_loc_in_1pdv): Mark initial value before
recursing. Check that recursion is bounded. Rename inner var
to avoid hiding incoming argument.
From-SVN: r160280
Uros Bizjak [Fri, 4 Jun 2010 15:47:49 +0000 (17:47 +0200)]
i386.md (*addqi_2): Do not assert operands[2] == 255 for TYPE_INCDEC operands.
* config/i386/i386.md (*addqi_2): Do not assert operands[2] == 255
for TYPE_INCDEC operands.
(*addqi_3): Ditto.
(*addqi_4): Ditto.
(*addqi_5): Ditto.
(*addqi_ext_1_rex64): Ditto.
(*addqi_ext_1): Ditto.
(*addqi_4): Check for incdec_operand in QImode.
(*add<mode>_2): Macroize insn from *add<mode>_2 and *add{qi,hi}_2
using SWI mode iterator.
(*add<mode>_3): Ditto from *add<mode>_3 and *add{qi,hi}_3.
(*add<mode>_4): Macroize insn from *add{qi,hi,si}_4 using SWI124
mode iterator.
(*add<mode>_5): Macroize insn from *add<mode>_5 and *add{qi,hi}_5
using SWI mode iterator.
From-SVN: r160277
Manuel López-Ibáñez [Fri, 4 Jun 2010 15:15:38 +0000 (15:15 +0000)]
re PR c/25880 (improve message of warning for discarding qualifiers)
2010-06-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c/25880
* c-objc-common.c (c_tree_printer): Handle %V, %v and %#v.
* c-format.c (gcc_diag_flag_specs): Add hash.
(gcc_cxxdiag_flag_specs): Use gcc_diag_flag_specs directly.
(gcc_tdiag_char_table,gcc_cdiag_char_table): Handle %V and %v.
* c-pretty-print.c (pp_c_cv_qualifier): Rename as
pp_c_cv_qualifiers. Handle qualifiers spelling here.
(pp_c_type_qualifier_list): Call the function above.
* c-pretty-print.h (pp_c_cv_qualifiers): Declare.
* c-typeck.c (handle_warn_cast_qual): Print qualifiers.
(WARN_FOR_QUALIFIERS): New macro.
(convert_for_assignment): Use it.
testsuite/
* gcc.dg/assign-warn-2.c: Update.
* gcc.dg/cpp/line3.c: Update.
* gcc.dg/c99-array-lval-8.c: Update.
* gcc.dg/cast-qual-2.c: Update.
* gcc.dg/c99-arraydecl-3.c: Update.
* gcc.dg/assign-warn-1.c: Update.
* gcc.dg/format/gcc_diag-1.c: Update.
From-SVN: r160274
Kai Tietz [Fri, 4 Jun 2010 15:00:35 +0000 (15:00 +0000)]
cygming.h (ASM_GENERATE_INTERNAL_LABEL): Prefix by '*'.
2010-06-04 Kai Tietz <kai.tietz@onevision.com>
* config/i386/cygming.h (ASM_GENERATE_INTERNAL_LABEL): Prefix
by '*'.
From-SVN: r160272
Jan Hubicka [Fri, 4 Jun 2010 14:27:50 +0000 (16:27 +0200)]
df.h (df_rd_bb_info, [...]): Embedd bitmap_head into the structure.
* df.h (df_rd_bb_info, df_md_bb_info, df_lr_bb_info, df_live_bb_info,
df_byte_lr_bb_info): Embedd bitmap_head into the structure.
(DF_LIVE_IN, DF_LIVE_OUT, DF_LR_IN, DF_LR_OUT, DF_BYTE_LR_IN,
DF_BYTE_LR_OUT): Update for embedded bitmaps.
* fwprop.c (single_def_use_enter_block): Likewise.
* ddg.c (create_ddg_dep_from_intra_loop_link,
add_cross_iteration_register_deps, build_inter_loop_deps): Likewise.
* loop-iv.c (latch_dominating_def): Likewise.
* df-problems.c (df_rd_free_bb_info, df_rd_alloc,
df_rd_bb_local_compute_process_def, df_rd_bb_local_compute_process_def,
df_rd_init_solution, df_rd_init_solution, df_rd_transfer_function,
df_rd_transfer_function, df_rd_top_dump,
df_rd_bottom_dump): Update.
(df_lr_free_bb_info, df_lr_alloc, df_lr_reset, df_lr_bb_local_compute,
df_lr_bb_local_compute, df_lr_bb_local_compute, df_lr_bb_local_compute,
df_lr_bb_local_compute, df_lr_local_compute, df_lr_init, df_lr_init,
df_lr_confluence_0, df_lr_free, df_lr_top_dump, df_lr_bottom_dump,
df_lr_verify_solution_start, df_lr_verify_solution_end,
df_lr_verify_transfer_functions, df_lr_verify_transfer_functions,
df_live_free_bb_info, df_live_alloc, df_live_reset,
df_live_bb_local_compute, df_live_init, df_live_transfer_function,
df_live_finalize, df_live_free, df_live_top_dump, df_live_bottom_dump,
df_live_verify_solution_start, df_live_verify_solution_end,
df_live_verify_transfer_functions, df_chain_create_bb,
df_byte_lr_free_bb_info, df_byte_lr_alloc, df_byte_lr_reset,
df_byte_lr_bb_local_compute, df_byte_lr_bb_local_compute,
df_byte_lr_bb_local_compute, df_byte_lr_bb_local_compute,
df_byte_lr_bb_local_compute, df_byte_lr_local_compute, df_byte_lr_init,
df_byte_lr_confluence_0, df_byte_lr_confluence_n,
df_byte_lr_transfer_function, df_byte_lr_top_dump,
df_byte_lr_bottom_dump, df_create_unused_note,
df_note_bb_compute, df_md_free_bb_info, df_md_alloc,
df_md_bb_local_compute_process_def, df_md_local_compute, df_md_reset,
df_md_transfer_function, df_md_init, df_md_confluence_0,
df_md_confluence_n,
df_md_top_dump, df_md_bottom_dump): Update. (struct df_lr_problem_data):
Embedd bitmap headers.
From-SVN: r160268
Rainer Orth [Fri, 4 Jun 2010 14:01:22 +0000 (14:01 +0000)]
check_jni_methods.sh.in: Don't use diff -U.
libjava/classpath:
* scripts/check_jni_methods.sh.in: Don't use diff -U.
Adapt grep regex, ignore file and problem message.
contrib:
* test_summary: Don't use diff -u.
Adapt egrep regex.
From-SVN: r160264
Jan Hubicka [Fri, 4 Jun 2010 13:27:51 +0000 (15:27 +0200)]
* dce.c (dce_process_block): Do not re-scan already marked instructions.
From-SVN: r160262
Bernd Schmidt [Fri, 4 Jun 2010 12:44:01 +0000 (12:44 +0000)]
re PR rtl-optimization/39871 (Code size increase on ARM due to poor register allocation)
PR rtl-optimization/39871
PR rtl-optimization/40615
PR rtl-optimization/42500
PR rtl-optimization/42502
* ira.c (init_reg_equiv_memory_loc: New function.
(ira): Call it twice.
* reload.h (calculate_elim_costs_all_insns): Declare.
* ira-costs.c: Include "reload.h".
(regno_equiv_gains): New static variable.
(init_costs): Allocate it.
(finish_costs): Free it.
(ira_costs): Call calculate_elim_costs_all_insns.
(find_costs_and_classes): Take estimated elimination costs
into account.
(ira_adjust_equiv_reg_cost): New function.
* ira.h (ira_adjust_equiv_reg_cost): Declare it.
* reload1.c (init_eliminable_invariants, free_reg_equiv,
elimination_costs_in_insn, note_reg_elim_costly): New static
functions.
(elim_bb): New static variable.
(reload): Move code out of here into init_eliminable_invariants and
free_reg_equiv. Call them.
(calculate_elim_costs_all_insns): New function.
(eliminate_regs_1): Declare. Add extra arg FOR_COSTS;
all callers changed. If FOR_COSTS is true, don't call alter_reg,
but call note_reg_elim_costly if we turned a valid memory address
into an invalid one.
* Makefile.in (ira-costs.o): Depend on reload.h.
testsuite/
PR rtl-optimization/39871
PR rtl-optimization/40615
PR rtl-optimization/42500
PR rtl-optimization/42502
* gcc.target/arm/eliminate.c: New test.
From-SVN: r160260
Julian Brown [Fri, 4 Jun 2010 12:30:10 +0000 (12:30 +0000)]
thumb2.md (*thumb2_movdf_soft_insn): Fix alternatives for pool ranges.
gcc/
* config/arm/thumb2.md (*thumb2_movdf_soft_insn): Fix alternatives
for pool ranges.
From-SVN: r160259
Richard Guenther [Fri, 4 Jun 2010 11:00:09 +0000 (11:00 +0000)]
re PR lto/41584 (WHOPR doesn't grok empty units)
2010-06-04 Richard Guenther <rguenther@suse.de>
PR lto/41584
* cgraph.h (struct varpool_node): Add lto_file_data field.
* lto-cgraph.c (input_varpool_node): Initialize it.
lto/
* lto.c (lto_1_to_1_map): Use the proper file_data for
varpool nodes.
From-SVN: r160258
Eric Botcazou [Fri, 4 Jun 2010 10:41:57 +0000 (10:41 +0000)]
gnatlink.adb (gnatlink): Remove support for -fsjlj switch.
* gnatlink.adb (gnatlink): Remove support for -fsjlj switch.
* gcc-interface/lang-specs.h: Likewise.
From-SVN: r160257
Thomas Koenig [Fri, 4 Jun 2010 06:50:11 +0000 (06:50 +0000)]
re PR libfortran/34670 (bounds checking for array intrinsics)
2010-06-04 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* intrinsics/date_and_time.c: Replace assert with runtime_error
when VALUE is too small.
From-SVN: r160253
Uros Bizjak [Fri, 4 Jun 2010 06:44:00 +0000 (08:44 +0200)]
predicates.md (pic_symbolic_operand): Remove predicate.
* config/i386/predicates.md (pic_symbolic_operand): Remove predicate.
* config/i386/i386.md (*add<mode>_1): Do not use pic_symbolic_operand
predicate in "type" attribute calculation.
(*addsi_1_zext): Ditto.
(*add<mode>_2): Do not use pic_symbolic_operand in insn predicate.
(*addsi_2_zext): Ditto.
(*add<mode>_3): Ditto.
(*addsi_3_zext): Ditto.
(*add<mode>_5): Ditto.
From-SVN: r160252
Jan Hubicka [Fri, 4 Jun 2010 05:26:56 +0000 (07:26 +0200)]
tree-into-ssa.c (mark_block_for_update): Avoid redundant call of bitmap_bit_p.
* tree-into-ssa.c (mark_block_for_update): Avoid redundant call
of bitmap_bit_p.
* cfganal.c (compute_dominance_frontiers_1): Likewise.
From-SVN: r160250
Jan Hubicka [Fri, 4 Jun 2010 05:25:23 +0000 (07:25 +0200)]
df-problems.c (df_create_unused_note, [...]): micro-optimize the checks when to add new note.
* df-problems.c (df_create_unused_note, df_note_bb_compute):
micro-optimize the checks when to add new note.
From-SVN: r160249
Nathan Froyd [Fri, 4 Jun 2010 01:49:15 +0000 (01:49 +0000)]
final.c (output_asm_insn): Call targetm.asm_out.print_operand_punct_valid_p.
* final.c (output_asm_insn): Call
targetm.asm_out.print_operand_punct_valid_p. Update comments.
(output_operand): Call targetm.asm_out.print_operand. Update comments.
(output_address): Call targetm.asm_out.print_operand_address.
Update comments.
* target.h (struct gcc_target): Add print_operand,
print_operand_address, and print_operand_punct_valid_p fields.
* targhooks.h (default_print_operand): Declare.
(default_print_operand_address): Declare.
(default_print_operand_punct_valid_p): Declare.
* targhooks.c (default_print_operand): Define.
(default_print_operand_address): Define.
(default_print_operand_punct_valid_p): Define.
* target-def.h (TARGET_PRINT_OPERAND): Define if not defined.
(TARGET_PRINT_OPERAND_ADDRESS): Likewise.
(TARGET_PRINT_OPERAND_PUNCT_VALID_P): Likewise.
(TARGET_ASM_OUT): Add TARGET_PRINT_OPERAND,
TARGET_PRINT_OPERAND_ADDRESS, and TARGET_PRINT_OPERAND_PUNCT_VALID_P.
* vmsdbgout.c (addr_const_to_string): Update comment.
* config/i386/i386.c (print_operand): Rename to...
(ix86_print_operand): ...this. Make static.
(print_operand_address): Rename to...
(ix86_print_operand_address): ...this. Make static. Call
ix86_print_operand instead of PRINT_OPERAND.
(ix86_print_operand_punct_valid_p): New function.
(TARGET_PRINT_OPERAND): Define.
(TARGET_PRINT_OPERAND_ADDRESS): Define.
(TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
* config/i386/i386.h (HI_REGISTER_NAMES): Update comment.
(PRINT_OPERAND_PUNCT_VALID_P): Delete.
(PRINT_OPERAND): Delete.
(PRINT_OPERAND_ADDRESS): Delete.
* config/i386/i386-protos.h (print_operand): Delete prototype.
(print_operand_address): Delete prototype.
From-SVN: r160245
GCC Administrator [Fri, 4 Jun 2010 00:17:57 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160243
Paolo Carlini [Thu, 3 Jun 2010 23:50:29 +0000 (23:50 +0000)]
re PR libstdc++/44410 (Revision 160231 caused new libstdc++ test failures)
2010-06-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/44410
* g++.old-deja/g++.jason/new.C: Qualify size_t with std::.
* g++.old-deja/g++.other/delete3.C: Likewise.
* g++.old-deja/g++.other/new.C: Likewise.
* g++.old-deja/g++.law/operators27.C: Likewise.
* g++.old-deja/g++.mike/p755.C: Likewise.
* g++.dg/eh/new1.C: Likewise.
* g++.dg/init/new5.C: Likewise.
From-SVN: r160239
Paolo Carlini [Thu, 3 Jun 2010 23:11:46 +0000 (23:11 +0000)]
testsuite_iterators.h: Don't include <cstddef>, don't use NULL, use std::size_t and std::ptrdiff_t.
2010-06-03 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/util/testsuite_iterators.h: Don't include <cstddef>,
don't use NULL, use std::size_t and std::ptrdiff_t.
* testsuite/18_support/exception/38732.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/util/testsuite_hooks.cc: Likewise.
* config/locale/gnu/codecvt_members.cc: Likewise.
* config/locale/gnu/messages_members.cc: Likewise.
* config/locale/gnu/c_locale.h: Likewise.
* config/locale/gnu/messages_members.h: Likewise.
* config/locale/gnu/monetary_members.cc: Likewise.
* config/locale/gnu/time_members.cc: Likewise.
* config/locale/gnu/time_members.h: Likewise.
* config/locale/generic/c_locale.cc: Likewise.
* config/locale/generic/codecvt_members.cc: Likewise.
* config/locale/generic/c_locale.h: Likewise.
* config/locale/generic/time_members.cc: Likewise.
* config/locale/generic/time_members.h: Likewise.
From-SVN: r160238
Richard Guenther [Thu, 3 Jun 2010 21:12:38 +0000 (21:12 +0000)]
re PR tree-optimization/44403 (vectorization does not maintain 'restrict' qualifier)
2010-06-03 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44403
* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
Preserve pointer qualifiers.
(vect_create_data_ref_ptr): Likewise.
From-SVN: r160235
Thomas Koenig [Thu, 3 Jun 2010 21:08:40 +0000 (21:08 +0000)]
unpack_bounds_1.f90: Remove execute property.
2010-06-03 Thomas Koenig <tkoenig@gcc.gnu.org>
* gfortran.dg/unpack_bounds_1.f90: Remove execute property.
* gfortran.dg/unpack_bounds_2.f90: Likewise.
* gfortran.dg/unpack_bounds_3.f90: Likewise.
From-SVN: r160234
Nathan Froyd [Thu, 3 Jun 2010 20:46:04 +0000 (20:46 +0000)]
class.c (struct vtbl_init_data_s): Remove last_init field.
* class.c (struct vtbl_init_data_s): Remove last_init field.
(struct secondary_vptr_vtt_init_data_s): Change type of inits field
to a VEC.
(finish_vtbls): Use a VEC rather than a TREE_LIST for the accumulated
initializers.
(build_vtt): Likewise.
(initialize_vtable): Take a VEC instead of a tree.
(build_vtt_inits): Change return type to void. Take a VEC **
instead of a tree *; accumulate results into said VEC.
(build_ctor_vtbl_group): Use a VEC rather than a TREE_LIST for the
accumulated initializers. Pass the vtable to accumulate_vtbl_inits.
(accumulate_vtbl_inits): Add extra vtable tree parameter; take a VEC
instead of a tree.
(dfs_accumulate_vtbl_inits): Likewise. Change return type to void.
(build_vtbl_initializer): Add VEC parameter; accumulate initializers
into it.
(dfs_build_secondary_vptr_vtt_inits): Use CONSTRUCTOR_APPEND_ELT
rather than tree_cons.
(build_vbase_offset_vtbl_entries): Likewise.
(add_vcall_offset): Likewise.
(build_rtti_vtbl_entries): Likewise.
* cp-tree.h (initialize_artificial_var): Take a VEC instead of a tree.
* decl.c (initialize_artificial_var): Use build_constructor instead
of build_constructor_from_list.
From-SVN: r160233
Fabien Chêne [Thu, 3 Jun 2010 20:34:55 +0000 (22:34 +0200)]
Add myself to MAINTAINERS
From-SVN: r160232
Paolo Carlini [Thu, 3 Jun 2010 19:15:56 +0000 (19:15 +0000)]
c++config (std::size_t, [...]): Provide typedefs.
2010-06-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/c++config (std::size_t, std::ptrdiff_t,
std::nullptr_t): Provide typedefs.
* include/c_std/cstddef: Don't provide std::size_t and
std::ptrdiff_t here.
* include/c_global/cstddef: Likewise.
* src/condition_variable.cc: Don't include <cstddef>,
don't use NULL, use std::size_t and std::ptrdiff_t.
* src/mt_allocator.cc: Likewise.
* src/localename.cc: Likewise.
* src/chrono.cc: Likewise.
* src/thread.cc: Likewise.
* include/debug/formatter.h: Likewise.
* include/debug/functions.h: Likewise.
* include/std/valarray: Likewise.
* include/std/thread: Likewise.
* include/std/type_traits: Likewise.
* include/std/atomic: Likewise.
* include/std/iterator: Likewise.
* include/std/bitset: Likewise.
* include/std/fstream: Likewise.
* include/std/mutex: Likewise.
* include/c_std/cstdlib: Likewise.
* include/c_std/cstdio: Likewise.
* include/c_std/ctime: Likewise.
* include/c_std/cwchar: Likewise.
* include/c_std/cstring: Likewise.
* include/parallel/multiway_merge.h: Likewise.
* include/parallel/multiseq_selection.h: Likewise.
* include/parallel/base.h: Likewise.
* include/parallel/basic_iterator.h: Likewise.
* include/parallel/multiway_mergesort.h
* include/parallel/partition.h: Likewise.
* include/ext/string_conversions.h: Likewise.
* include/ext/pb_ds/assoc_container.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp:
Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/
sample_resize_policy.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/
sample_resize_trigger.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_store_hash_fn_imps.hpp: Likewise.
* include/ext/pb_ds/d: Likewise.etail/cc_hash_table_map_/
insert_no_store_hash_fn_imps.hpp
* include/ext/pb_ds/detail/cc_hash_table_map_/
cmp_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_store_hash_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
info_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
entry_list_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
cc_ht_map_.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
iterator.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
const_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
const_point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
insert_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
const_child_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
r_erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
rotate_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
node_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
point_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
gp_ht_map_.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
standard_policies.hpp: Likewise.
* include/ext/pb_ds/detail/tree_policy/
sample_tree_node_update.hpp: Likewise.
* include/ext/pb_ds/detail/basic_tree_policy/
null_node_metadata.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
const_point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/trie_policy/
sample_trie_node_update.hpp: Likewise.
* include/ext/pb_ds/detail/trie_policy/
sample_trie_e_access_traits.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_metadata.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
null_metadata.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/
sample_ranged_probe_fn.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/
sample_ranged_hash_fn.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
info_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rc_binomial_heap_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rc_binomial_heap_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rc_binomial_heap_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Likewise.
* include/ext/pb_ds/list_update_policy.hpp: Likewise.
* include/ext/pb_ds/exception.hpp: Likewise.
* include/ext/pb_ds/tree_policy.hpp: Likewise.
* include/ext/pb_ds/tag_and_trait.hpp: Likewise.
* include/ext/pb_ds/hash_policy.hpp: Likewise.
* include/ext/pb_ds/trie_policy.hpp: Likewise.
* include/ext/pb_ds/priority_queue.hpp: Likewise.
* include/ext/throw_allocator.h: Likewis: Likewise.e.
* include/ext/bitmap_allocator.h
* include/ext/rc_string_base.h: Likewise.
* include/ext/new_allocator.h: Likewise.
* include/ext/codecvt_specializations.h: Likewise.
* include/ext/functional: Likewise.: Likewise.
* include/ext/array_allocator.h: Likewise.
* include/ext/mt_allocator.h: Likewise.
* include/ext/sso_string_base.h: Likewise.
* include/profile/impl/profiler_trace.h: Likewise.
* include/profile/impl/profiler_node.h: Likewise.
* include/bits/stl_algobase.h: Likewise.
* include/bits/functional_hash.h: Likewise.
* include/bits/locale_facets.tcc: Likewise.
* include/bits/locale_facets.h: Likewise.
* include/bits/stl_iterator_base_types.h: Likewise.
* include/bits/move.h: Likewise.
* include/bits/boost_concept_check.h: Likewise.
* include/bits/basic_string.tcc: Likewise.
* include/bits/locale_facets_nonio.tcc: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/bits/locale_facets_nonio.h: Likewise.
* include/c_global/cstdlib: Likewise.
* include/c_global/cstdio: Likewise.
* include/c_global/ctime: Likewise.
* include/c_global/cwchar: Likewise.
* include/c_global/cstring
* include/tr1/type_traits: Likewise.
* include/backward/hash_fun.h: Likewise.
* libsupc++/new: Likewise.
* libsupc++/initializer_list: Likewise.
* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
* testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputc/char/1057.cc: Likewise.
* testsuite/27_io/objects/wchar_t/5268.cc: Likewise.
* testsuite/27_io/objects/char/9661-1.cc: Likewise.
* testsuite/27_io/objects/char/5268.cc: Likewise.
* testsuite/27_io/objects/char/10.cc: Likewise.
* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
* testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
* testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputc/char/1057.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputn/char/1057.cc: Likewise.
* testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/wchar_t/
exceptions_null.cc
* testsuite/27_io/basic_istream/extractors_other/wchar_t/
1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/char/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/cons/3.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/
wchar_t/01.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/
char/01.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
wchar_t/2.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
wchar_t/3.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/2.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/3.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/9826.cc: Likewise.
* testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
* testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/
wchar_t/8.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/
char/8.cc: Likewise.
* testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputc/char/1057.cc: Likewise.
* testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputn/char/1057.cc: Likewise.
* testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
* testsuite/18_support/bad_exception/23591_thread-1.c
* testsuite/18_support/new_delete_placement.cc: Likewise.
* testsuite/18_support/pthread_guard.cc: Likewise.
* testsuite/21_strings/basic_string/operations/wchar_t/1.cc: Likewise.
* testsuite/21_strings/basic_string/operations/char/1.cc: Likewise.
* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
* testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
* testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/thread/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/
assign_neg.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/
copy_neg.cc: Likewise.
* testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
* testsuite/ext/slist/23781.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
* testsuite/22_locale/ctype/is/char/1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
* testsuite/22_locale/locale/cons/2.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
* testsuite/22_locale/locale/cons/29217.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/
requirements/iterator_null_neg.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/
requirements/iterator_null_neg.cc: Likewise.
* testsuite/29_atomics/atomic_address/cons/single_value.cc: Likewise.
* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Likewise.
* testsuite/23_containers/multimap/23781.cc: Likewise.
* testsuite/23_containers/set/23781.cc: Likewise.
* testsuite/23_containers/multiset/23781.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/list/23781.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/23_containers/map/23781.cc: Likewise.
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Likewise.
* testsuite/util/regression/rand/priority_queue/
container_rand_regression_test.tcc: Likewise.
* testsuite/util/regression/rand/assoc/
rand_regression_test.hpp: Likewise.
* testsuite/util/regression/rand/assoc/
container_rand_regression_test.tcc: Likewise.
* testsuite/util/testsuite_hooks.cc: Likewise.
* testsuite/util/testsuite_io.h: Likewise.
* testsuite/util/testsuite_iterators.h: Likewise.
* testsuite/util/replacement_memory_operators.h: Likewise.
* testsuite/util/testsuite_allocator.h: Likewise.
* testsuite/util/testsuite_performance.h: Likewise.
From-SVN: r160231
H.J. Lu [Thu, 3 Jun 2010 16:36:22 +0000 (16:36 +0000)]
Check MAX_FIXED_MODE_SIZE on bit-field in C++.
gcc/ada/
2010-06-03 H.J. Lu <hongjiu.lu@intel.com>
PR c++/44294
* gcc-interface/decl.c (MAX_FIXED_MODE_SIZE): Removed.
gcc/cp/
2010-06-03 H.J. Lu <hongjiu.lu@intel.com>
PR c++/44294
* class.c (layout_class_type): Check MAX_FIXED_MODE_SIZE on
bit-field.
gcc/
2010-06-03 H.J. Lu <hongjiu.lu@intel.com>
PR c++/44294
* defaults.h (MAX_FIXED_MODE_SIZE): New.
* stor-layout.c (MAX_FIXED_MODE_SIZE): Removed.
From-SVN: r160229
Richard Biener [Thu, 3 Jun 2010 16:08:49 +0000 (16:08 +0000)]
re PR lto/41921 (Cross language don't work with typedef unnamed structs)
2010-06-03 Richard Guenther <rguenther@suse.de>
PR lto/41921
* lib/lto.exp: Always load gcc.exp.
(lto-obj): For C source files invoke gcc_target_compile.
* g++.dg/lto/
20100603-1_0.C: New testcase.
* g++.dg/lto/
20100603-1_1.c: Likewise.
From-SVN: r160227
Richard Guenther [Thu, 3 Jun 2010 16:08:10 +0000 (16:08 +0000)]
re PR lto/41921 (Cross language don't work with typedef unnamed structs)
2010-06-03 Richard Guenther <rguenther@suse.de>
PR lto/41921
* lib/lto.exp: Always load gcc.exp.
(lto-obj): For C source files invoke gcc_target_compile.
* g++.dg/lto/
20100603-1_0.C: New testcase.
* g++.dg/lto/
20100603-1_1.c: Likewise.
From-SVN: r160226
H.J. Lu [Thu, 3 Jun 2010 14:53:06 +0000 (14:53 +0000)]
Add a testcasef for PR tree-optimization/43688.
2010-06-03 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/43688
* gfortran.dg/pr43688.f90: New.
From-SVN: r160224
Richard Guenther [Thu, 3 Jun 2010 14:22:46 +0000 (14:22 +0000)]
re PR lto/41584 (WHOPR doesn't grok empty units)
2010-06-03 Richard Guenther <rguenther@suse.de>
PR lto/41584
* gcc.dg/lto/
20100603-1_0.c: New testcase.
* gcc.dg/lto/
20100603-2_0.c: Likewise.
* gcc.dg/lto/
20100603-3_0.c: Likewise.
From-SVN: r160223
Jakub Jelinek [Thu, 3 Jun 2010 12:07:18 +0000 (14:07 +0200)]
re PR debug/44375 (goto_locus lost at -O0 during cfg cleanup)
PR debug/44375
* tree-cfg.c (gimple_can_merge_blocks_p): For -O0
return false if merging the bbs would lead to goto_locus
location being lost from the IL.
From-SVN: r160219
Jakub Jelinek [Thu, 3 Jun 2010 11:36:11 +0000 (13:36 +0200)]
var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if ...
* var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if
set->regs[i] is NULL or has just one entry.
From-SVN: r160217
Jakub Jelinek [Thu, 3 Jun 2010 11:27:49 +0000 (13:27 +0200)]
var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if ...
* var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if
set->regs[i] is NULL or has just one entry.
From-SVN: r160216
Jan Hubicka [Thu, 3 Jun 2010 10:00:03 +0000 (12:00 +0200)]
lto-cgraph.c (lto_varpool_encoder_size): Remove.
* lto-cgraph.c (lto_varpool_encoder_size): Remove.
* lto-streamer.h (lto_varpool_encoder_size): New inline function.
From-SVN: r160215
Kai Tietz [Thu, 3 Jun 2010 08:19:12 +0000 (10:19 +0200)]
Missed part of recent tm_p.h patch in c-common.c
From-SVN: r160214
Paul Brook [Thu, 3 Jun 2010 07:53:17 +0000 (07:53 +0000)]
arm.c (FL_TUNE): Define.
2010-06-03 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.c (FL_TUNE): Define.
(arm_default_cpu, arm_cpu_select): Remove.
(all_cores): Populate core field.
(arm_selected_arch, arm_selected_cpu, arm_selected_tune): New.
(arm_find_cpu): New function.
(arm_handle_option): Lookup cpu/architecture names.
(arm_override_options): Cleanup mcpu/march/mtune handling.
(arm_file_start): Ditto.
From-SVN: r160213
Ralf Wildenhues [Thu, 3 Jun 2010 06:45:02 +0000 (06:45 +0000)]
re PR bootstrap/42798 (--enable-build-with-cxx bootstrap fails on i686-pc-linux-gnu (Fedora12))
Fix PR bootstrap/42798.
libiberty/:
PR bootstrap/42798
* configure.ac: Check for declaration of 'basename(char *)'.
* configure: Regenerate.
libcpp/:
PR bootstrap/42798
* configure.ac: Check for declaration of 'basename(char *)'.
* configure: Regenerate.
* config.in: Regenerate.
libjava/:
* configure: Regenerate.
libjava/classpath/:
* configure: Regenerate.
fixincludes/:
PR bootstrap/42798
* configure.ac: Check for declaration of 'basename(char *)'.
* configure: Regenerate.
From-SVN: r160211
Joern Rennecke [Thu, 3 Jun 2010 06:32:27 +0000 (06:32 +0000)]
Import AC_CHECK_DECL for C++ fixes from git Autoconf.
config/:
PR bootstrap/42798
* override.m4 (_AC_CHECK_DECL_BODY, _AC_CHECK_DECLS): Import
definitions from git Autoconf.
Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r160210
Matthias Klose [Thu, 3 Jun 2010 05:05:26 +0000 (05:05 +0000)]
libtool-version: Bump soversion.
2010-06-03 Matthias Klose <doko@ubuntu.com>
* libtool-version: Bump soversion.
From-SVN: r160209
Alan Modra [Thu, 3 Jun 2010 02:47:11 +0000 (12:17 +0930)]
re PR rtl-optimization/44169 (Wrong code while generating TLS offsets)
PR target/44169
* config/rs6000/rs6000.md (load_toc_v4_PIC_1b): Add label operand.
* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Pass label
rtx to gen_load_toc_v4_PIC_1b. Tidy.
(rs6000_emit_load_toc_table): Likewise.
From-SVN: r160206
Jan Hubicka [Thu, 3 Jun 2010 02:06:01 +0000 (04:06 +0200)]
passes.c (init_optimization_passes): Put ipa reference after ipa pure-const.
* passes.c (init_optimization_passes): Put ipa reference
after ipa pure-const.
From-SVN: r160205
Jan Hubicka [Thu, 3 Jun 2010 02:04:20 +0000 (04:04 +0200)]
ipa-reference.c (ipa_reference_local_vars_info_d): Remove calls_read_all and calls_write_all.
* ipa-reference.c (ipa_reference_local_vars_info_d): Remove
calls_read_all and calls_write_all.
(get_reference_optimization_summary): Fix formatting.
(is_proper_for_analysis): Check that decl is not readonly.
(propagate_bits): Check CONST/PURE/noreturn flags.
(ipa_init): Move all_module_statics to optimization_summary_obstack.
(analyze_function): Ignore indirect edges.
(copy_global_bitmap): For all module statics, do nothing.
(generate_summary): Do not print calls_read_all/calls_write_all.
(read_write_all_from_decl): Take node as argument; check
cgraph_node_cannot_return.
(propagate): Reorganize read_all/write_all computation;
check indirect edges; check ecf flags; use all_module_statics
in the results; do not free all_module_statics.
(stream_out_bitmap): Handle all_module_statics.
(ipa_reference_write_optimization_summary): Likewise; use
varpool/cgraph encoders to get boundaries.
(ipa_reference_read_optimization_summary): Read in all_module_statics;
use it when possible.
From-SVN: r160204
GCC Administrator [Thu, 3 Jun 2010 00:17:35 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160203
Michael Meissner [Thu, 3 Jun 2010 00:06:12 +0000 (00:06 +0000)]
PR target/44218, improve -mrecip on powerpc
From-SVN: r160199
Jonathan Wakely [Wed, 2 Jun 2010 22:37:28 +0000 (22:37 +0000)]
parser.c (cp_parser_mem_initializer_list): Change error text.
2010-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
* parser.c (cp_parser_mem_initializer_list): Change error text.
From-SVN: r160198
Richard Guenther [Wed, 2 Jun 2010 22:22:52 +0000 (22:22 +0000)]
re PR middle-end/44291 (ICE in set_user_assembler_libfunc)
2010-06-03 Richard Guenther <rguenther@suse.de>
PR middle-end/44291
* optabs.c (init_one_libfunc): Use IDENTIFIER_HASH_VALUE.
(set_user_assembler_libfunc): Likewise.
From-SVN: r160197
Steven Bosscher [Wed, 2 Jun 2010 22:05:45 +0000 (22:05 +0000)]
mkconfig.sh: Include insn-flags.h and insn-constants.h before defaults.h.
* mkconfig.sh: Include insn-flags.h and insn-constants.h before
defaults.h.
* except.h: Move MUST_USE_SJLJ_EXCEPTIONS and USING_SJLJ_EXCEPTIONS
to defaults.h
* expr.h (BRANCH_COST, MOVE_RATIO, CLEAR_RATIO, SET_RATIO,
DEFAULT_FUNCTION_ARG_PADDING, FUNCTION_ARG_PADDING,
FUNCTION_ARG_BOUNDARY, STACK_SAVEAREA_MODE, STACK_SIZE_MODE,
STACK_CHECK_BUILTIN, STACK_CHECK_STATIC_BUILTIN,
STACK_CHECK_PROBE_INTERVAL_EXP, STACK_CHECK_MOVING_SP,
STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT,
STACK_CHECK_MAX_FRAME_SIZE, STACK_CHECK_FIXED_FRAME_SIZE,
STACK_CHECK_MAX_VAR_SIZE): Move target macro defaults to defaults.h.
* defaults.h: Updated for above mentioned changes.
From-SVN: r160195
H.J. Lu [Wed, 2 Jun 2010 21:17:50 +0000 (21:17 +0000)]
Use __SIZE_TYPE__ to define size_t.
2010-06-02 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/torture/pr44295.C (size_t): Use __SIZE_TYPE__.
From-SVN: r160193
Kai Tietz [Wed, 2 Jun 2010 21:05:47 +0000 (21:05 +0000)]
c-common.c: Remove header include of tm_p.h.
2010-06-02 Kai Tietz <kai.tietz@onevision.com>
* c-common.c: Remove header include of tm_p.h.
* Makefile.in (c-common.o): Remove TM_P_H dependency.
From-SVN: r160191
Jakub Jelinek [Wed, 2 Jun 2010 19:57:08 +0000 (21:57 +0200)]
re PR c++/44361 (-Wunused-but-set-variable vs. explicit void cast)
PR c++/44361
* cvt.c (convert_to_void): If implicit is NULL, call mark_rvalue_use
instead of calling mark_exp_read only when not an assignment.
From-SVN: r160188
Jakub Jelinek [Wed, 2 Jun 2010 19:55:33 +0000 (21:55 +0200)]
re PR debug/44367 (-O0 -g wrong DW_AT_location on c++ class retval)
PR debug/44367
* semantics.c (finalize_nrv): Don't copy DECL_ARTIFICIAL, DECL_IGNORED_P,
DECL_SOURCE_LOCATION and DECL_ABSTRACT_ORIGIN from var to result.
Set DECL_VALUE_EXPR on var.
From-SVN: r160187
Jakub Jelinek [Wed, 2 Jun 2010 19:52:07 +0000 (21:52 +0200)]
re PR debug/44367 (-O0 -g wrong DW_AT_location on c++ class retval)
PR debug/44367
* semantics.c (finalize_nrv): Don't copy DECL_ARTIFICIAL, DECL_IGNORED_P,
DECL_SOURCE_LOCATION and DECL_ABSTRACT_ORIGIN from var to result.
Set DECL_VALUE_EXPR on var.
From-SVN: r160186
Jakub Jelinek [Wed, 2 Jun 2010 19:49:21 +0000 (21:49 +0200)]
tree.h (struct tree_decl_map): New type.
* tree.h (struct tree_decl_map): New type.
(tree_decl_map_eq, tree_decl_map_marked_p): Define.
(tree_decl_map_hash): New prototype.
(debug_expr_for_decl, value_expr_for_decl): Change into
tree_decl_map hashtab from tree_map.
(init_ttree): Adjust initialization.
(tree_decl_map_hash): New function.
(decl_debug_expr_lookup, decl_debug_expr_insert,
decl_value_expr_lookup, decl_value_expr_insert): Adjust.
cp/
* cp-objcp-common.c (shadowed_var_for_decl): Change into
tree_decl_map hashtab from tree_map.
(decl_shadowed_for_var_lookup, decl_shadowed_for_var_insert): Adjust.
(init_shadowed_var_for_decl): Adjust initialization.
From-SVN: r160185
Jason Merrill [Wed, 2 Jun 2010 19:19:31 +0000 (15:19 -0400)]
* error.c (dump_type): Improve typedef handling.
From-SVN: r160184
Jason Merrill [Wed, 2 Jun 2010 19:19:05 +0000 (15:19 -0400)]
re PR c++/44333 (Ambiguity with typedef and using namespace)
PR c++/44333
* name-lookup.c (same_entity_p): New.
(ambiguous_decl): Multiple declarations of the same entity
are not ambiguous.
From-SVN: r160183
Jonathan Wakely [Wed, 2 Jun 2010 19:02:41 +0000 (19:02 +0000)]
pointer.cc: Fix which tests are run.
2010-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
* testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc: Fix
which tests are run.
* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
From-SVN: r160182
Rainer Orth [Wed, 2 Jun 2010 17:39:39 +0000 (17:39 +0000)]
configure.ac (gcc_cv_ld_sol2_emulation): Test for GNU ld *_sol2 linker emulations.
* configure.ac (gcc_cv_ld_sol2_emulation): Test for GNU ld *_sol2
linker emulations.
* configure: Regenerate.
* config.in: Regenerate.
* config/i386/sol2-10.h [TARGET_GNU_LD] (I386_EMULATION): Define.
(X86_64_EMULATION): Define.
(TARGET_LD_EMULATION): Use them.
* config/sparc/sol2-gld-bi.h (SPARC32_EMULATION): Define.
(SPARC64_EMULATION): Define.
(LINK_ARCH_SPEC): Use them.
From-SVN: r160178
H.J. Lu [Wed, 2 Jun 2010 17:08:12 +0000 (10:08 -0700)]
Remove testsuite/ from filenames.
From-SVN: r160170
H.J. Lu [Wed, 2 Jun 2010 17:04:13 +0000 (17:04 +0000)]
Add a testcase for PR middle-end/44372.
2010-06-02 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/44372
* g++.dg/ipa/pr44372.C: New.
From-SVN: r160169
Sebastian Pop [Wed, 2 Jun 2010 16:39:47 +0000 (16:39 +0000)]
Use smallest_mode_for_size for computing the precision types of new graphite IVs.
2010-06-02 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (gcc_type_for_interval): Use
smallest_mode_for_size for computing the precision types of new
graphite IVs. Do not call lang_hooks.types.type_for_size.
From-SVN: r160165
Sebastian Pop [Wed, 2 Jun 2010 16:39:37 +0000 (16:39 +0000)]
Only reset the GIMPLE_DEBUG information in the code gen of if-conversion.
2010-06-02 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (predicate_bbs): Do not reset the GIMPLE_DEBUG
information.
(remove_conditions_and_labels): Reset the GIMPLE_DEBUG information.
From-SVN: r160164
Sebastian Pop [Wed, 2 Jun 2010 16:39:26 +0000 (16:39 +0000)]
Fix PR44363: don't abort when the ifcvt analysis fails to recognize a Gimple stmt.
2010-06-02 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44363
* tree-if-conv.c (predicate_bbs): Do not call gcc_unreachable,
return false instead.
From-SVN: r160163
Jan Hubicka [Wed, 2 Jun 2010 15:39:43 +0000 (17:39 +0200)]
re PR middle-end/44295 (Failed to build 483.xalancbmk in SPEC CPU 2006)
PR middle-end/44295
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Do not
create new cgraph node to check callee.
* testsuite/g++.dg/torture/pr44295.C: Neww testcase.
From-SVN: r160159
Jan Hubicka [Wed, 2 Jun 2010 15:37:29 +0000 (17:37 +0200)]
* gcc.dg/tree-ssa/loadpre6.c: Update.
From-SVN: r160158
Richard Guenther [Wed, 2 Jun 2010 14:35:01 +0000 (14:35 +0000)]
header_plugin.c: Include cp-tree.h before diagnostic.h.
2010-06-02 Richard Guenther <rguenther@suse.de>
* g++.dg/plugin/header_plugin.c: Include cp-tree.h before
diagnostic.h.
From-SVN: r160155
Richard Guenther [Wed, 2 Jun 2010 14:27:22 +0000 (14:27 +0000)]
lto-streamer-in.c (input_gimple_stmt): Fix typo.
2010-06-02 Richard Guenther <rguenther@suse.de>
* lto-streamer-in.c (input_gimple_stmt): Fix typo.
From-SVN: r160154
Richard Guenther [Wed, 2 Jun 2010 13:58:27 +0000 (13:58 +0000)]
lto-wrapper.c (lto_wrapper_exit): Rename to ...
2010-06-02 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (lto_wrapper_exit): Rename to ...
(lto_wrapper_cleanup): ... this. Do not exit.
(fatal): Adjust. Exit here.
(fatal_perror): Likewise.
(fatal_signal): New function.
(main): Set up signal handlers to cleanup temporary files.
* Makefile.in (lto-wrapper.o): Adjust dependencies.
From-SVN: r160153
Richard Guenther [Wed, 2 Jun 2010 12:27:24 +0000 (12:27 +0000)]
re PR tree-optimization/44377 (ICE: gimple check: expected gimple_return(error_mark), have gimple_call() in gimple_return_retval, at gimple.h:4311 with -fipa-pta)
2010-06-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44377
* tree-ssa-structalias.c (find_func_aliases): Fix typo.
From-SVN: r160152
Andreas Krebbel [Wed, 2 Jun 2010 12:03:22 +0000 (12:03 +0000)]
2097.md (z10_fhex): Remove insn reservation.
2010-06-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/2097.md (z10_fhex): Remove insn reservation.
* config/s390/s390.md (UNSPEC_COPYSIGN): Remove unused constant.
(*mov<mode>_64 TD_TF, *mov<mode>_31 TD_TF, *mov<mode>_64dfp DD_DF,
*mov<mode>_64 DD_DF, *mov<mode>_31, mov<mode>): Remove load zero
instruction.
* config/s390/s390.c: Don't accept fp zeros as valid constants
anymore.
From-SVN: r160151
Jan Hubicka [Wed, 2 Jun 2010 11:53:16 +0000 (13:53 +0200)]
bitmap.c (bitmap_descriptor): Add search_iter.
* bitmap.c (bitmap_descriptor): Add search_iter.
(bitmap_find_bit): Increment it.
(print_statistics): Print it.
From-SVN: r160148
Nathan Froyd [Wed, 2 Jun 2010 11:40:13 +0000 (11:40 +0000)]
tree-vect-slp.c (vect_create_mask_and_perm): Use gimple_build_call instead of gimple_build_call_vec.
* tree-vect-slp.c (vect_create_mask_and_perm): Use gimple_build_call
instead of gimple_build_call_vec. Delete unnecessary local variable.
From-SVN: r160147