Richard Guenther [Mon, 23 Apr 2012 12:47:02 +0000 (12:47 +0000)]
re PR tree-optimization/53070 (ICE: in execute_cse_reciprocals, at tree-ssa-math-opts.c:513 with -O -ffast-math -ftree-loop-if-convert -fno-tree-loop-im)
2012-04-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53070
* tree-if-conv.c (combine_blocks): Free predicates in all blocks.
(main_tree_if_conversion): Verify we succeeded in that.
* gcc.dg/torture/pr53070.c: New testcase.
From-SVN: r186704
Paolo Carlini [Mon, 23 Apr 2012 12:26:43 +0000 (12:26 +0000)]
re PR libstdc++/53080 (tuple interface to std::array doesn't check bounds)
2012-04-23 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/53080
* include/std/array (tuple_element, get): static_assert I < N.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
New.
* testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
* testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.
From-SVN: r186702
Chris Jefferson [Mon, 23 Apr 2012 11:17:28 +0000 (11:17 +0000)]
re PR testsuite/53046 (New libstdc++ test failures)
2012-04-23 Chris Jefferson <chris@bubblescope.net>
PR testsuite/53046
* testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
of array A.
* testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
From-SVN: r186701
Jan Hubicka [Mon, 23 Apr 2012 11:13:46 +0000 (13:13 +0200)]
lto-symtab.c (lto_cgraph_replace_node): Do not call mark_reahcable_node.
* lto-symtab.c (lto_cgraph_replace_node): Do not call
mark_reahcable_node.
* cgraph.c (cgraph_remove_node): Do not clear reachable.
(cgraph_mark_reachable_node): Remove.
(cgraph_mark_force_output_node): Do not set reachable.
(dump_cgraph_node): Do not dump reachable.
(cgraph_create_virtual_clone): Do not set reachable.
* cgraph.h (cgraph_node): Remove reachable flag.
(varpool_node): Remove reachable flag.
(cgraph_mark_if_needed): Remove.
(cgraph_mark_reachable_node): Remove.
* tree-emutls.c (ipa_lower_emutls): Do not check
reachable.
* cgraphunit.c (cgraph_finalize_function): Do not mark node as
reachable.
(cgraph_add_new_function): Likewise.
(cgraph_mark_if_needed): Remove.
(cgraph_analyze_function): Do not set target as reachable.
(process_function_and_variable_attributes): Do not care about dllexport.
(cgraph_analyze_functions): Do not set reachable flags.
(cgraph_mark_functions_to_output): Do not check reachability.
(cgraph_copy_node_for_versioning): Do not set reachable flag.
(dbxout_expand_expr): Update.
* c-decl.c (merge_decls): Do not track changed externs.
* ipa.c: Include pointer-set.h
(enqueue_cgraph_node): Use reachable pointer set.
(process_references): Likewise.
(cgraph_remove_unreachable_nodes): Likewise.
(whole_program_function_and_variable_visibility): Do not recompute reachable.
* trans-mem.c (ipa_tm_execute): Do not check reachable flag.
From-SVN: r186700
Georg-Johann Lay [Mon, 23 Apr 2012 10:23:04 +0000 (10:23 +0000)]
extend.texi (AVR Named Address Spaces): Fix typos.
* doc/extend.texi (AVR Named Address Spaces): Fix typos.
From-SVN: r186697
Richard Biener [Mon, 23 Apr 2012 10:20:05 +0000 (10:20 +0000)]
re PR c/53060 (Typo in build_binary_op for scalar-vector ops)
2012-04-23 Richard Guenther <rguenther@suse.de>
PR c/53060
* c-typeck.c (build_binary_op): Fix typo.
* gcc.dg/pr53060.c: New testcase.
From-SVN: r186696
Jakub Jelinek [Mon, 23 Apr 2012 10:13:39 +0000 (12:13 +0200)]
re PR tree-optimization/52891 (ICE in adjust_bool_pattern)
PR tree-optimizations/52891
* tree-vect-patterns.c (adjust_bool_pattern): Use
build_nonstandard_type even if rhs1 has unsigned INTEGER_TYPE,
but with non-standard precision.
* gcc.c-torture/compile/pr52891-1.c: New test.
* gcc.c-torture/compile/pr52891-2.c: New test.
From-SVN: r186694
Jan Hubicka [Mon, 23 Apr 2012 10:04:48 +0000 (12:04 +0200)]
* tree-ssa-loop-ivopts.c (expr_invariant_in_loop_p): Bail out at NULL tree refs.
From-SVN: r186693
GCC Administrator [Mon, 23 Apr 2012 00:18:11 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186692
Jan Hubicka [Sun, 22 Apr 2012 21:28:07 +0000 (23:28 +0200)]
lto-symtab.c (lto_varpool_replace_node): Do not merge needed flags.
* lto-symtab.c (lto_varpool_replace_node): Do not merge needed flags.
* cgraphbuild.c (record_reference, record_type_list, mark_address,
mark_load, mark_store): Do not mark varpool nodes as needed.
* cgraph.c (cgraph_new_nodes): Remove.
(cgraph_create_function_alias): Do not mark nodes as reachable.
(cgraph_add_thunk): Likewise.
(cgraph_mark_reachable_node): Do not manage the queue.
* cgraph.h (cgraph_node): Remove next_needed.
(varpool_nodes_queue): Remove next_needed and prev_needed.
(x_cgraph_nodes_queue, x_cgraph_nodes_queue, cgraph_new_nodes): Remove.
(cgraph_new_nodes): Declare.
(x_varpool_nodes_queue, varpool_nodes_queue); Remove.
(varpool_analyze_pending_decls): Remove.
(varpool_analyze_node): New.
(varpool_mark_needed_node): Remove.
(varpool_first_variable, varpool_next_variable): New inlines.
(varpool_first_static_initializer, varpool_next_static_initializer): Update.
(FOR_EACH_STATIC_VARIABLE): Remove unused walker.
(varpool_first_defined_variable): New inline.
(varpool_next_defined_variable): New inline
(FOR_EACH_VARIABLE): Reimplement.
(FOR_EACH_DEFINED_VARIABLE): Reimplement.
* toplev.c (wrapup_global_declaration_2): Use analyzed instead of
needed flag.
* cgraphunit.c (cgraph_new_nodes): Declare here.
(enqueue_node): New function.
(cgraph_process_new_functions): update for new
node set; when constructing cgraph enqueue node for processing.
(cgraph_add_new_function): Use new node set.
(process_function_and_variable_attributes): Do not set varpool needed
flags.
(referred_to_p): New function.
(varpool_finalize_decl): Move here from varpool.c; enqueue needed node
when varpool is in construction.
(cgraph_analyze_functions): Rewrite.
(cgraph_expand_all_functions): Update.
(cgraph_output_in_order): Do not analyze pending decls; do not set needed flags.
(cgraph_optimize): Do not analyze pending decls.
* lto-cgraph.c (input_varpool_node): Clear analyzed flag for objects in other
partition; do not mark node as needed.
* dwarf2out.c (reference_to_unused): Use analyzed flag.
(premark_types_used_by_global_vars_helper): Likewise.
* ipa.c (process_references): Do not call varpool_mark_needed_node.
(cgraph_remove_unreachable_nodes): Do not rely on varpool and
cgrpah queues.
(function_and_variable_visibility): Do not mark node as needed.
(whole_program_function_and_variable_visibility): Likewise.
* Makefile.in (gt-varpool.h): No longer needed.
* passes.c (execute_one_pass, execute_ipa_pass_list): Update.
(ipa_write_summaries): Do not use needed flag.
* varpool.c: Do not include gt-varpool.h
(x_varpool_nodes_queue, x_varpool_last_needed_node,
x_varpool_last_needed_node, x_varpool_first_unanalyzed_node,
x_varpool_first_unanalyzed_node, varpool_assembled_nodes_queue):
Remove.
(varpool_remove_node): Do not update the lists.
(dump_varpool_node): Do not dump needed flag.
(varpool_enqueue_needed_node): Remove.
(varpool_mark_needed_node): Remove.
(varpool_reset_queue): Remove.
(varpool_finalize_decl): Move to cgraphunit.c
(varpool_analyze_node): New functions based on former
varpool_analyze_pending_decls.
(varpool_analyze_pending_decls): Remove.
(varpool_assemble_decl): Do not update the lists.
(enqueue_node): New function.
(varpool_remove_unreferenced_decls): Rewrite.
(varpool_empty_needed_queue): Remove.
(add_new_static_var): Do not mark node as needed.
(varpool_create_variable_alias): Handle expansion state
creation.
* except.c (output_ttype): Do not mark node as needed.
* varasm.c (mark_decl_referenced): Do not use mark_needed_node.
* tree-profile.c (init_ic_make_global_vars, init_ic_make_global_vars):
Likewise.
* tree-switch-conversion.c (build_one_array): Likewise.
* class.c (build_utf8_ref): Do not mark varpool node as needed.
* gcc-interface/utils.c (gnat_write_global_declarations): Do not mark
needed node.
* lto-partition.c (partition_varpool_node_p): Do not use needed flag.
* decl2.c (maybe_make_one_only): Mark keyed COMDATs as USED so they
gets finalized.
From-SVN: r186687
Ian Lance Taylor [Sun, 22 Apr 2012 20:07:23 +0000 (20:07 +0000)]
mksysinfo: More fixes to emulate master Go library.
From-SVN: r186685
Ian Lance Taylor [Sun, 22 Apr 2012 19:26:01 +0000 (19:26 +0000)]
mksysinfo: Define more structs.
From-SVN: r186683
Manuel López-Ibáñez [Sun, 22 Apr 2012 19:17:47 +0000 (19:17 +0000)]
re PR c/44774 (-Werror=edantic)
2012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c/44774
gcc/
* doc/invoke.texi (pedantic): Rename to Wpedantic.
* common.opt (Wpedantic): New.
(pedantic): Alias Wpedantic.
* diagnostic.c (warning_at): Likewise.
* c-decl.c (diagnose_mismatched_decls): Likewise.
(build_array_declarator): Likewise.
(mark_forward_parm_decls):
(check_bitfield_type_and_width): Likewise.
(grokdeclarator): Likewise.
(grokfield): Likewise.
(finish_struct): Likewise.
(build_enumerator): Likewise.
(store_parm_decls_oldstyle): Likewise.
(declspecs_add_qual): Likewise.
(declspecs_add_type): Likewise.
(finish_declspecs): Likewise.
* c-typeck.c (composite_type): Likewise.
(comp_target_types): Likewise.
(build_array_ref): Likewise.
(pointer_diff): Likewise.
(build_unary_op): Likewise.
(build_conditional_expr): Likewise.
(build_c_cast): Likewise.
(convert_for_assignment): Likewise.
(maybe_warn_string_init): Likewise.
(digest_init): Likewise.
(pop_init_level): Likewise.
(set_init_index): Likewise.
(c_finish_goto_label): Likewise.
(c_finish_return): Likewise.
(do_case): Likewise.
(build_binary_op): Likewise.
* c-parser.c (static): Likewise.
(c_parser_external_declaration): Likewise.
(c_parser_declaration_or_fndef): Likewise.
(c_parser_static_assert_declaration_no_se): Likewise.
(c_parser_enum_specifier): Likewise.
(c_parser_struct_or_union_specifier): Likewise.
(c_parser_struct_declaration): Likewise.
(c_parser_alignas_specifier): Likewise.
(c_parser_braced_init): Likewise.
(c_parser_initelt): Likewise.
(c_parser_compound_statement_nostart): Likewise.
(c_parser_conditional_expression): Likewise.
(c_parser_alignof_expression): Likewise.
(c_parser_postfix_expression): Likewise.
(c_parser_postfix_expression_after_paren_): Likewise.
(c_parser_objc_class_instance_variables): Likewise.
(c_parser_objc_method_definition): Likewise.
(c_parser_objc_methodprotolist): Likewise.
c-family/
* c.opt (Wpedantic): New.
(pedantic): Alias Wpedantic.
* c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
(c_common_post_options): Likewise.
(sanitize_cpp_opts): Likewise.
* c-lex.c (interpret_float): Likewise.
* c-format.c (check_format_types): Likewise.
* c-common.c (pointer_int_sum): Likewise.
(c_sizeof_or_alignof_type): Likewise.
(c_add_case_label): Likewise.
(c_do_switch_warnings): Likewise.
* c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
cp/
* typeck.c (composite_pointer_type): Likewise.
(cxx_sizeof_or_alignof_type): Likewise.
(cp_build_array_ref): Likewise.
(cp_build_function_call_vec): Likewise.
(cp_build_addr_expr_1): Likewise.
(convert_member_func_to_ptr): Likewise.
* decl.c (check_tag_decl): Likewise.
(check_static_variable_definition): Likewise.
(compute_array_index_type): Likewise.
(create_array_type_for_decl): Likewise.
(grokdeclarator): Likewise.
(grok_op_properties): Likewise.
* error.c (maybe_warn_cpp0x): Likewise.
* pt.c (maybe_process_partial_specialization): Likewise.
(convert_template_argument): Likewise.
(do_decl_instantiation): Likewise.
(do_type_instantiation): Likewise.
* parser.c (cp_parser_primary_expression): Likewise.
(cp_parser_postfix_expression): Likewise.
(cp_parser_unary_expression): Likewise.
(cp_parser_question_colon_clause): Likewise.
(cp_parser_lambda_introducer): Likewise.
(cp_parser_lambda_declarator_opt): Likewise.
(cp_parser_compound_statement): Likewise.
(cp_parser_jump_statement): Likewise.
(cp_parser_declaration_seq_opt): Likewise.
(cp_parser_enum_specifier): Likewise.
(cp_parser_enumerator_list): Likewise.
(cp_parser_initializer_list): Likewise.
(cp_parser_member_declaration): Likewise.
* call.c (build_conditional_expr_1): Likewise.
* friend.c (make_friend_class): Likewise.
* name-lookup.c (pushdecl_maybe_friend_1): Likewise.
From-SVN: r186681
Ian Lance Taylor [Sun, 22 Apr 2012 18:51:44 +0000 (18:51 +0000)]
godump.c (go_output_typedef): Dump size of structs.
* godump.c (go_output_typedef): Dump size of structs.
mksysinfo, syscall: Change Sizeof names from var to const.
From-SVN: r186678
Paolo Carlini [Sun, 22 Apr 2012 17:37:57 +0000 (17:37 +0000)]
re PR c++/53067 (c++0x GCC 4.7.0 Regression std::ref with unordered sets)
2012-04-22 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/53067
* include/bits/hashtable_policy.h: Change inheritances to public.
* testsuite/23_containers/unordered_map/requirements/53067.cc: New.
* testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
From-SVN: r186676
Tobias Burnus [Sun, 22 Apr 2012 17:28:34 +0000 (19:28 +0200)]
re PR libfortran/53051 (I/O: Support reading floating-point numbers which use "Q" for the exponent)
2012-04-22 Tobias Burnus <burnus@net-b.de>
PR fortran/53051
* io/list_read.c (parse_real): Support "q" for the
exponential.
* io/read.c (read_f): Ditto.
2012-04-22 Tobias Burnus <burnus@net-b.de>
PR fortran/53051
* gfortran.dg/read_float_4.f90: New.
From-SVN: r186675
Jonathan Wakely [Sun, 22 Apr 2012 14:38:33 +0000 (14:38 +0000)]
alloc_traits.h (__alloc_traits::difference_type): Define.
* include/ext/alloc_traits.h (__alloc_traits::difference_type):
Define.
From-SVN: r186673
Jonathan Wakely [Sun, 22 Apr 2012 14:15:51 +0000 (15:15 +0100)]
Add PR number to ChangeLog entry.
From-SVN: r186672
Jonathan Wakely [Sun, 22 Apr 2012 13:42:38 +0000 (13:42 +0000)]
ptr_traits.h (pointer_traits::rebind): Make public.
* include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
* testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
rebind works.
From-SVN: r186670
Jonathan Wakely [Sun, 22 Apr 2012 13:27:16 +0000 (13:27 +0000)]
forward_list (forward_list::splice_after): Check allocators are equal.
* include/debug/forward_list (forward_list::splice_after): Check
allocators are equal.
* src/c++11/debug.cc: Fix spelling.
* testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
New.
* testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
Likewise.
From-SVN: r186669
Uros Bizjak [Sun, 22 Apr 2012 12:58:59 +0000 (14:58 +0200)]
ChangeLog: Fix.
* ChangeLog: Fix.
* testsuite/ChangeLog: Ditto.
From-SVN: r186668
Razya Ladelsky [Sun, 22 Apr 2012 10:36:13 +0000 (10:36 +0000)]
Correcting transform_to_exit_first_loop + fix to PR tree-optimization/46886
2012-04-20 Razya Ladelsky <razya@il.ibm.com>
Correcting transform_to_exit_first_loop + fix to
PR tree-optimization/46886
* tree-parloops.c (transform_to_exit_first_loop):
* Remove setting of number of iterations according to
* the loop pattern.
Duplicate from entry to exit->src instead of
loop->latch.
(pallelize_loops): Remove the condition preventing
do-while loops.
* tree-cfg.c (bool bb_in_region_p): New.
(gimple_duplicate_sese_tail): Adjust duplication of the
the subloops.
Adjust redirection of the duplicated iteration.
From-SVN: r186667
GCC Administrator [Sun, 22 Apr 2012 00:18:29 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186662
Jan Hubicka [Sat, 21 Apr 2012 23:59:25 +0000 (01:59 +0200)]
method.c (make_alias_for): Do not set TREE_SYMBOL_REFERENCED.
* method.c (make_alias_for): Do not set TREE_SYMBOL_REFERENCED.
* decl2.c (mark_needed): Likewise.
(decl_needed_p): Do not test TREE_SYMBOL_REFERENCED.
* decl2.c (cxx_callgraph_analyze_expr): Remove.
* cp-objcp-common.h (LANG_HOOKS_CALLGRAPH_ANALYZE_EXPR): Remove.
* cp-tree.h (cxx_callgraph_analyze_expr): Remove.
From-SVN: r186658
Richard Sandiford [Sat, 21 Apr 2012 18:55:18 +0000 (18:55 +0000)]
re PR bootstrap/53021 (bootstrap failure on Linux/ia32)
gcc/
PR bootstrap/53021
* rtl.def (ADDRESS): Use "i" rather than "w".
* rtl.h (find_base_term): Delete.
(may_be_sp_based_p): Declare.
* rtl.c (rtx_code_size): Remove ADDRESS special case.
* alias.h (UNIQUE_BASE_VALUE_SP, UNIQUE_BASE_VALUE_ARGP)
(UNIQUE_BASE_VALUE_FP, UNIQUE_BASE_VALUE_HFP): Move to...
* alias.c: ...here.
(find_base_term): Make static.
(may_be_sp_based_p): New function.
* dse.c (record_store): Use it.
* store-motion.c (store_killed_in_insn): Likewise.
From-SVN: r186657
Ian Lance Taylor [Sat, 21 Apr 2012 18:49:58 +0000 (18:49 +0000)]
syscall: Additional constants, some type corrections.
From-SVN: r186655
Richard Sandiford [Sat, 21 Apr 2012 18:29:23 +0000 (18:29 +0000)]
Install right version, sigh.
From-SVN: r186654
Richard Sandiford [Sat, 21 Apr 2012 18:09:16 +0000 (18:09 +0000)]
fold-const.c (fold_checksum_tree): Fix VECTOR_CST case.
gcc/
* fold-const.c (fold_checksum_tree): Fix VECTOR_CST case.
From-SVN: r186653
Manuel López-Ibáñez [Sat, 21 Apr 2012 14:53:21 +0000 (14:53 +0000)]
re PR c/35441 (pretty-printer cannot handle some expressions)
2012-04-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR 35441
* c-typeck.c (inform_declaration): New.
(build_function_call_vec): Do not pretty-print
expressions when caret is enabled.
(convert_arguments): Use inform_declaration.
cp/
* typeck.c (cp_build_function_call_vec): Do not pretty-print
expressions when caret is enabled.
testsuite/
* c-c++-common/pr35441.C: New.
From-SVN: r186652
GCC Administrator [Sat, 21 Apr 2012 00:18:52 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186649
Ian Lance Taylor [Fri, 20 Apr 2012 21:20:36 +0000 (21:20 +0000)]
compiler: Don't call cgraph_mark_needed_node.
From-SVN: r186644
Ian Lance Taylor [Fri, 20 Apr 2012 20:18:49 +0000 (20:18 +0000)]
go-test.exp (go-set-goarch): Recognize powerpc*-*-*.
* go.test/go-test.exp (go-set-goarch): Recognize powerpc*-*-*.
(go-gc-tests): Skip nilptr.go on powerpc*-*-*.
From-SVN: r186642
Ian Lance Taylor [Fri, 20 Apr 2012 20:11:28 +0000 (20:11 +0000)]
net, syscall: Use native endianness for GNU/Linux netlink code.
From-SVN: r186640
Ian Lance Taylor [Fri, 20 Apr 2012 19:21:39 +0000 (19:21 +0000)]
compiler, runtime: Add explicit checks for zero and overflow division.
* lang.opt: Add -fgo-check-divide-zero and
-fgo-check-divide-overflow.
* gccgo.texi (Invoking gccgo): Document new options.
From-SVN: r186637
Ian Lance Taylor [Fri, 20 Apr 2012 18:51:05 +0000 (18:51 +0000)]
net/http: Ignore sigaltstack when running strace in test.
Avoids bug in strace 4.5.20 on powerpc-unknown-linux-gnu.
From-SVN: r186635
Ian Lance Taylor [Fri, 20 Apr 2012 18:44:09 +0000 (18:44 +0000)]
debug/dwarf: Fix address lookups for different types of lines.
This fixes the lookup when, e.g., discriminators force adding
new line arrays.
From-SVN: r186633
Ian Lance Taylor [Fri, 20 Apr 2012 18:40:14 +0000 (18:40 +0000)]
runtime: Disable memory profiling in gc_test.
From-SVN: r186631
Uros Bizjak [Fri, 20 Apr 2012 16:12:55 +0000 (18:12 +0200)]
test_passing_unions.c: Avoid undefined array access.
* gcc.target/x86_64/abi/avx/test_passing_unions.c: Avoid undefined
array access.
* gcc.target/x86_64/abi/avx/test_passing_structs.c: Likewise.
From-SVN: r186629
Jim Meyering [Fri, 20 Apr 2012 15:38:35 +0000 (15:38 +0000)]
genmodes: don't truncate a mode name of length >= 7
* genmodes.c (make_complex_modes): Don't truncate a mode name of
length 7 or more when prepending a "C". Suggested by Richard Guenther.
From-SVN: r186628
Jan Hubicka [Fri, 20 Apr 2012 15:18:39 +0000 (17:18 +0200)]
re PR bootstrap/53042 (AIX bootstrap: cgraph symbol table error)
PR target/53042
* decl2.c (maybe_emit_vtables): Do not initialize same_comdat_group
list when target has no support for it.
From-SVN: r186627
Michael Matz [Fri, 20 Apr 2012 14:40:09 +0000 (14:40 +0000)]
error.c (pedwarn_cxx98): Move va_end call after user of the va_list.
* error.c (pedwarn_cxx98): Move va_end call after user
of the va_list.
From-SVN: r186626
Bill Schmidt [Fri, 20 Apr 2012 14:19:13 +0000 (14:19 +0000)]
re PR rtl-optimization/44214 (Compiler does not optimize vector divide with -freciprocal-math (or -ffast-math))
gcc:
2012-04-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR rtl-optimization/44214
* fold-const.c (exact_inverse): New function.
(fold_binary_loc): Fold vector and complex division by constant into
multiply by recripocal with flag_reciprocal_math; fold vector division
by constant into multiply by reciprocal with exact inverse.
gcc/testsuite:
2012-04-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR rtl-optimization/44214
* gcc.dg/pr44214-1.c: New test.
* gcc.dg/pr44214-2.c: Likewise.
* gcc.dg/pr44214-3.c: Likewise.
From-SVN: r186625
Jan Hubicka [Fri, 20 Apr 2012 14:09:11 +0000 (16:09 +0200)]
lto-symtab.c (lto_cgraph_replace_node): Merge needed instead of force flags.
* lto-symtab.c (lto_cgraph_replace_node): Merge needed instead of force flags.
* cgraph.c (cgraph_add_thunk): Use mark_reachable_node.
(cgraph_remove_node): Update.
(cgraph_mark_needed_node): Remove.
(cgraph_mark_force_output_node): New.
(dump_cgraph_node): Do not dump needed flag.
(cgraph_node_cannot_be_local_p_1): Update.
(cgraph_can_remove_if_no_direct_calls_and_refs): Update.
* cgraph.h (symtab_node_base): Add force_output flag.
(cgraph_node): Remove needed flag.
(varpool_node): Remove force_output flag.
(cgraph_mark_needed_node): Remove.
(cgraph_mark_force_output_node): New.
(cgraph_only_called_directly_or_aliased_p,
varpool_can_remove_if_no_refs, varpool_all_refs_explicit_p): Update.
* ipa-cp.c (ipcp_generate_summary): Remove out of date assert.
* cgraphunit.c (cgraph_decide_is_function_needed): rewrite.
(cgraph_add_new_function); Update.
(cgraph_mark_if_needed); Update.
(verify_cgraph_node): Update.
(cgraph_analyze_function): Alias target is reachable.
(process_function_and_variable_attributes): Update: externally_visible
flag makes function reachable.
(cgraph_analyze_functions): Update dumping.
* lto-cgraph.c (lto_output_node, lto_output_varpool_node,
input_overwrite_node, input_varpool_node): Update streaming.
* lto-streamer-out.c (produce_symtab): Use force_output.
* ipa.c (process_references): Weakrefs must be processed.
(cgraph_remove_unreachable_nodes): Likewise; update for new
force_output flag.
(varpool_externally_visible_p); Weakrefs are externally visible
even if they are not.
(function_and_variable_visibility): Update; when processing alias
pair force the targets to be output.
(whole_program_function_and_variable_visility): Use mark_reachable_node.
* trans-mem.c (ipa_tm_mark_needed_node): Remove
(ipa_tm_mark_force_output_node): New function.
(ipa_tm_create_version_alias, ipa_tm_create_version): Update.
* gimple-fold.c (can_refer_decl_in_current_unit_p): Be lax about aliases.
* varasm.c (mark_decl_referenced): Update.
(find_decl_and_mark_needed): Remove.
(find_decl): New function.
(weak_finish, finish_aliases_1, assemble_alias): Update; do not mark
alias targets as needed.
(dump_tm_clone_pairs): Update.
* tree-inline.c (copy_bb): Update check.
* symtab.c (dump_symtab_base): Dump force_output.
* tree-ssa-structalias.c (ipa_pta_execute): Use force_output.
* passes.c (execute_todo): Fix dumping.
* varpool.c (decide_is_variable_needed, varpool_finalize_decl): Update.
(varpool_analyze_pending_decls): Alias target is reachable.
(varpool_create_variable_alias): Finalize weakrefs.
* class.c (make_local_function_alias): Do not mark symbol referenced.
* objc-acct.c (mark_referenced_methods); Use
cgraph_mark_force_output_node.
* gcc-interface/utils.c (gnat_write_global_declarations): Update for new
force_output placement.
* lto/lto-partition.c (partition_cgraph_node_p): Use force_output.
From-SVN: r186624
Jakub Jelinek [Fri, 20 Apr 2012 12:19:51 +0000 (14:19 +0200)]
re PR bootstrap/53021 (bootstrap failure on Linux/ia32)
PR bootstrap/53021
* alias.h (UNIQUE_BASE_VALUE_SP, UNIQUE_BASE_VALUE_ARGP,
UNIQUE_BASE_VALUE_FP, UNIQUE_BASE_VALUE_HFP): Define.
* alias.c (init_alias_targets): Use UNIQUE_BASE_VALUE_*
macros instead of constants.
* dse.c (record_store): Check for SP ADDRESS by comparing
XWINT to UNIQUE_BASE_VALUE_SP instead of expecting
XEXP to be stack_pointer_rtx.
From-SVN: r186623
Richard Guenther [Fri, 20 Apr 2012 11:56:33 +0000 (11:56 +0000)]
tree-ssa-copy.c (propagate_tree_value_into_stmt): Use update_call_from_tree when propagating into a call.
2012-04-20 Richard Guenther <rguenther@suse.de>
* tree-ssa-copy.c (propagate_tree_value_into_stmt): Use
update_call_from_tree when propagating into a call.
* g++.dg/torture/
20120420-1.C: New testcase.
From-SVN: r186622
Alan Modra [Fri, 20 Apr 2012 11:46:58 +0000 (21:16 +0930)]
rs6000.c (rs6000_emit_savres_rtx): Formatting.
* config/rs6000/rs6000.c (rs6000_emit_savres_rtx): Formatting.
(rs6000_emit_prologue, rs6000_emit_epilogue): Likewise. Rename
sp_offset to frame_off. Move world save code earlier.
From-SVN: r186621
Richard Guenther [Fri, 20 Apr 2012 10:17:46 +0000 (10:17 +0000)]
re PR c++/53050 (ssa_forward_propagate_and_combine: segmentation fault)
2012-04-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53050
* tree-ssa-forwprop.c (ssa_forward_propagate_and_combine):
Do only one transform on COND_EXPRs at the same time.
From-SVN: r186620
Jan Hubicka [Fri, 20 Apr 2012 09:46:25 +0000 (11:46 +0200)]
* symtab.c (dump_symtab_base): Revert accidental checkin.
From-SVN: r186619
Paolo Carlini [Fri, 20 Apr 2012 09:39:29 +0000 (09:39 +0000)]
re PR libstdc++/53052 ([C++11] is_explicitly_convertible still part of <type_traits> header)
2012-04-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/53052
* include/std/type_traits (is_explicitly_convertible): Remove.
* testsuite/20_util/is_explicitly_convertible: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r186618
Paolo Carlini [Fri, 20 Apr 2012 09:39:17 +0000 (09:39 +0000)]
re PR libstdc++/53052 ([C++11] is_explicitly_convertible still part of <type_traits> header)
2012-04-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/53052
* include/std/type_traits (is_explicitly_convertible): Remove.
* testsuite/20_util/is_explicitly_convertible: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r186617
Alan Modra [Fri, 20 Apr 2012 09:33:19 +0000 (19:03 +0930)]
re PR target/53040 (nested functions may trash floating point registers)
PR target/53040
* config/rs6000/rs6000.c (rs6000_savres_strategy): When using
static chain, set REST_INLINE_FPRS too.
From-SVN: r186616
Thomas Schwinge [Fri, 20 Apr 2012 08:56:29 +0000 (10:56 +0200)]
tree-dump.c (dequeue_and_dump): Dump the three child nodes.
gcc/
* tree-dump.c (dequeue_and_dump) <BIT_FIELD_REF>: Dump the three child
nodes.
From-SVN: r186615
Richard Guenther [Fri, 20 Apr 2012 08:19:49 +0000 (08:19 +0000)]
tree-vect-loop.c (vect_analyze_loop_operations): Do not vectorize loops that can never run more often than the vectorization factor.
2012-04-20 Richard Guenther <rguenther@suse.de>
* tree-vect-loop.c (vect_analyze_loop_operations): Do not
vectorize loops that can never run more often than the
vectorization factor.
From-SVN: r186614
Thomas Schwinge [Fri, 20 Apr 2012 07:44:50 +0000 (09:44 +0200)]
struct siginfo vs. siginfo_t
libgcc/
* config/alpha/linux-unwind.h (alpha_fallback_frame_state): Use
siginfo_t instead of struct siginfo.
* config/bfin/linux-unwind.h (bfin_fallback_frame_state): Likewise.
* config/i386/linux-unwind.h (x86_fallback_frame_state): Likewise.
* config/ia64/linux-unwind.h (ia64_fallback_frame_state)
(ia64_handle_unwabi): Likewise.
* config/mips/linux-unwind.h (mips_fallback_frame_state): Likewise.
* config/pa/linux-unwind.h (pa32_fallback_frame_state): Likewise.
* config/sh/linux-unwind.h (shmedia_fallback_frame_state)
(sh_fallback_frame_state): Likewise.
* config/tilepro/linux-unwind.h (tile_fallback_frame_state): Likewise.
* config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Likewise.
From-SVN: r186610
Jan Hubicka [Fri, 20 Apr 2012 07:10:20 +0000 (09:10 +0200)]
* symtab.c (dump_symtab_base): Fix dumping of asm lists.
From-SVN: r186609
Ian Lance Taylor [Fri, 20 Apr 2012 04:58:26 +0000 (04:58 +0000)]
runtime: Ignore stack sizes when deciding when to GC.
Also allocate heap bitmaps bit in page size units and clear
context when putting G structures on free list.
From-SVN: r186607
Ian Lance Taylor [Fri, 20 Apr 2012 04:49:19 +0000 (04:49 +0000)]
gotest: Don't get confused by data tables named Test on PPC.
From-SVN: r186605
GCC Administrator [Fri, 20 Apr 2012 00:19:38 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r186604
Jim Meyering [Thu, 19 Apr 2012 17:15:46 +0000 (17:15 +0000)]
ChangeLog: remove summary from my entry, on request from David Edelsohn
From-SVN: r186600
David Edelsohn [Thu, 19 Apr 2012 16:59:17 +0000 (16:59 +0000)]
* config/rs6000/sync.md (fetchop_name): Change ior attribute to "or".
From-SVN: r186599
Steven Bosscher [Thu, 19 Apr 2012 15:13:26 +0000 (15:13 +0000)]
* gcc.target/i386/pr45830.c: Update scan-tree-dump.
From-SVN: r186597
Jim Meyering [Thu, 19 Apr 2012 13:51:17 +0000 (13:51 +0000)]
genmodes: remove misleading use of strncpy
* genmodes.c (make_complex_modes): Avoid unnecessary use of strncpy.
We verified above that the string(including trailing NUL) fits in buf,
so just use memcpy.
From-SVN: r186596
Richard Guenther [Thu, 19 Apr 2012 13:35:10 +0000 (13:35 +0000)]
symtab.c (dump_symtab_base): Use TREE_STRING_POINTER for dumping DECL_SECTION_NAME.
2012-04-19 Richard Guenther <rguenther@suse.de>
* symtab.c (dump_symtab_base): Use TREE_STRING_POINTER
for dumping DECL_SECTION_NAME.
From-SVN: r186594
Michael Matz [Thu, 19 Apr 2012 13:29:29 +0000 (13:29 +0000)]
re PR c/52977 (internal compiler error: Segmentation fault with `-x c-header' or `-x cxx-header' option)
PR middle-end/52977
* tree.h (VECTOR_CST_NELTS): Use part number of types again.
(struct tree_vector): Adjust GTY length.
* tree.c (make_vector_stat): Don't set VECTOR_CST_NELTS.
* gengtype.c (struct walk_type_data): Add in_record_p and loopcounter
members.
(walk_type, <TYPE_POINTER, TYPE_ARRAY>): Handle case where our
caller emitted the length calulation already.
(walk_type, <TYPE_UNION, TYPE_STRUCT>): Emit length calculations
From-SVN: r186593
Richard Guenther [Thu, 19 Apr 2012 13:21:44 +0000 (13:21 +0000)]
re PR middle-end/53031 (gcc.dg/tree-ssa/vrp54.c scan-tree-dump-not vrp1 "link_error")
2012-04-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53031
* tree-vrp.c (adjust_range_with_scev): Revert back to
using max_loop_iterations.
From-SVN: r186592
Michael Matz [Thu, 19 Apr 2012 12:51:25 +0000 (12:51 +0000)]
diagnostic.c (emit_diagnostic): Move va_end call after user of the va_list.
* diagnostic.c (emit_diagnostic): Move va_end call after user
of the va_list.
(warning, warning_at, pedwarn, permerror): Ditto.
From-SVN: r186591
Richard Guenther [Thu, 19 Apr 2012 12:44:07 +0000 (12:44 +0000)]
ira-int.h (ira_allocno_object_iter_cond): Avoid out-of-bound array access.
2012-04-19 Richard Guenther <rguenther@suse.de>
* ira-int.h (ira_allocno_object_iter_cond): Avoid out-of-bound
array access.
From-SVN: r186590
Georg-Johann Lay [Thu, 19 Apr 2012 11:29:13 +0000 (11:29 +0000)]
re PR target/53033 ([avr]: Wrong register number for 3-byte loads via X)
PR target/53033
* config/avr/avr.c (avr_out_load_psi): Fix assembler template for
the case *(X+const).
From-SVN: r186588
Ramana Radhakrishnan [Thu, 19 Apr 2012 11:21:34 +0000 (11:21 +0000)]
sync.md (sync_optab): Change ior attribute to "or".
2012-04-19 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
* config/arm/sync.md (sync_optab): Change ior attribute to "or".
From-SVN: r186587
Christian Bruel [Thu, 19 Apr 2012 09:06:53 +0000 (11:06 +0200)]
Fix #52283 error: case label does not reduce to an integer constant
From-SVN: r186586
Richard Guenther [Thu, 19 Apr 2012 08:51:50 +0000 (08:51 +0000)]
re PR tree-optimization/44688 (Excessive code-size growth at -O3)
2012-04-19 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/44688
* loop-iv.c (determine_max_iter): Only return max_iter.
(iv_number_of_iterations): Also use the recorded loop bound
on the maximum number of iterations.
* loop-unroll.c (decide_unroll_runtime_iterations): Use
max_iter to avoid unrolling loops that do not roll.
(decide_unroll_stupid): Likewise.
* gcc.dg/var-expand1.c: Increase array size to make unrolling
possibly profitable.
From-SVN: r186585
GCC Administrator [Thu, 19 Apr 2012 00:18:47 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186584
Steven Bosscher [Wed, 18 Apr 2012 18:36:32 +0000 (18:36 +0000)]
fix accidentally checked-in assert.
From-SVN: r186580
Steven Bosscher [Wed, 18 Apr 2012 18:27:51 +0000 (18:27 +0000)]
targhooks.c (default_case_values_threshold): Fix code style nit.
gcc/
* targhooks.c (default_case_values_threshold): Fix code style nit.
* stmt.c (add_case_node, expand_case): Move logic to remove/reduce
case range and type folding from here...
* gimplify.c (gimplify_switch_expr): ... to here. Expect NULL_TREE
type, as documented in tree.def
fortran/
* trans-decl.c (gfc_trans_entry_master_switch): Build SWITCH_EXPR
with NULL_TREE type instead of void_type_node.
* trans-io.c (io_result): Likewise.
* trans-stmt.c (gfc_trans_integer_select,
gfc_trans_character_select): Likewise.
go/
* go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
with NULL_TREE type instead of void_type_node.
From-SVN: r186579
Jan Hubicka [Wed, 18 Apr 2012 18:19:43 +0000 (20:19 +0200)]
cgraph.h (verify_symtab, [...]): Declare.
* cgraph.h (verify_symtab, verify_symtab_node, verify_symtab_base):
Declare.
* cgraphunit.c (verify_cgraph_node): Verify symtab base; do not verify
cgraph hash and same comdat groups.
(cgraph_optimize); Verify symbol table.
* ipa.c (cgraph_remove_unreachable_nodes): Verify symbol table.
(dissolve_same_comdat_group_list): Work on symtab nodes.
(function_and_variable_visibility): Dissolve variable same comdat group
lists, too.
* symtab.c: Include timevar.h
(verify_symtab_base, verify_symtab_node, verify_symtab): New functions.
From-SVN: r186578
Steven Bosscher [Wed, 18 Apr 2012 18:12:57 +0000 (18:12 +0000)]
tree-switch-conversion.c (info): Remove global pass info.
* tree-switch-conversion.c (info): Remove global pass info.
(check_range, check_process_case, check_final_bb, create_temp_arrays,
free_temp_arrays, gather_default_values, build_constructors,
array_value_type, build_one_array, build_arrays, gen_def_assigns,
fix_phi_nodes, gen_inbound_check): Pass info around from ...
(process_switch): ... here. Unify message format. Return a const
char pointer to the failure reason message.
(do_switchconv): Unify message format. Update process_switch usage.
From-SVN: r186576
Steven Bosscher [Wed, 18 Apr 2012 18:10:17 +0000 (18:10 +0000)]
tree.def (CASE_LABEL_EXPR): Fix documentation, mention all operands.
* tree.def (CASE_LABEL_EXPR): Fix documentation, mention all operands.
* tree-cfg.c (edge_to_cases): Fix documentation.
From-SVN: r186575
Uros Bizjak [Wed, 18 Apr 2012 15:06:35 +0000 (17:06 +0200)]
sync.md (fetchop_name): Change ior attribute to "or".
* config/alpha/sync.md (fetchop_name): Change ior attribute to "or".
From-SVN: r186572
Bill Schmidt [Wed, 18 Apr 2012 12:29:23 +0000 (12:29 +0000)]
re PR tree-optimization/52976 (Revision 186384 breaks the polyhedron tests aermod.f90 and doduc.f90 at -O3 -ffast-math)
gcc:
2012-04-18 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/52976
* tree-ssa-reassoc.c (add_to_ops_vec_max_rank): Delete.
(possibly_move_powi): New function.
(rewrite_expr_tree): Call possibly_move_powi.
(rewrite_expr_tree_parallel): Likewise.
(attempt_builtin_powi): Change call of add_to_ops_vec_max_rank to
call add_to_ops_vec instead.
gcc/testsuite:
2012-04-18 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/52976
gfortran.dg/reassoc_11.f: New test.
From-SVN: r186568
Bill Schmidt [Wed, 18 Apr 2012 12:25:17 +0000 (12:25 +0000)]
re PR tree-optimization/52976 (Revision 186384 breaks the polyhedron tests aermod.f90 and doduc.f90 at -O3 -ffast-math)
gcc:
2012-04-18 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/52976
* tree-ssa-reassoc.c (stmt_is_power_of_op): New function.
(decrement_power): Likewise.
(propagate_op_to_single_use): Likewise.
(zero_one_operation): Handle __builtin_pow* calls in linearized
expression trees; factor logic into propagate_op_to_single_use.
(undistribute_ops_list): Allow operands with repeat counts > 1.
gcc/testsuite:
2012-04-18 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/52976
gfortran.dg/reassoc_7.f: New test.
gfortran.dg/reassoc_8.f: Likewise.
gfortran.dg/reassoc_9.f: Likewise.
gfortran.dg/reassoc_10.f: Likewise.
From-SVN: r186567
Richard Guenther [Wed, 18 Apr 2012 11:33:51 +0000 (11:33 +0000)]
re PR tree-optimization/44688 (Excessive code-size growth at -O3)
2012-04-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44688
* cfgloop.h (record_niter_bound): Declare.
* tree-ssa-loop-niter.c (record_niter_bound): Export.
Update the estimation with the upper bound here...
(estimate_numbers_of_iterations_loop): ... instead of here.
Do not forcefully reset a recorded upper bound.
* tree-vect-loop-manip.c (vect_do_peeling_for_alignment):
Record the maximum number of loop iterations of the
prologue loop.
From-SVN: r186566
Paolo Carlini [Wed, 18 Apr 2012 10:21:43 +0000 (10:21 +0000)]
re PR c++/52422 ([C++11][SFINAE] Hard errors with void or arithmetic expressions)
/cp
2012-04-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52422
* cp-tree.h (build_addr_func, decay_conversion,
get_member_function_from_ptrfunc,
build_m_component_ref, convert_member_func_to_ptr):
Add tsubst_flags_t parameter.
* typeck.c (cp_default_conversion): Add.
(decay_conversion, default_conversion,
get_member_function_from_ptrfunc, convert_member_func_to_ptr):
Add tsubst_flags_t parameter and use it throughout.
(cp_build_indirect_ref, cp_build_array_ref,
cp_build_function_call_vec, convert_arguments, build_x_binary_op,
cp_build_binary_op, cp_build_unary_op, build_reinterpret_cast_1,
build_const_cast_1, expand_ptrmemfunc_cst,
convert_for_initialization): Adjust.
* init.c (build_vec_init): Adjust.
* decl.c (grok_reference_init, get_atexit_node): Likewise.
* rtti.c (build_dynamic_cast_1, tinfo_base_init): Likewise.
* except.c (build_throw): Likewise.
* typeck2.c (build_x_arrow): Likewise.
(build_m_component_ref): Add tsubst_flags_t parameter and
use it throughout.
* pt.c (convert_nontype_argument): Adjust.
* semantics.c (finish_asm_stmt, maybe_add_lambda_conv_op): Likewise.
* decl2.c (build_offset_ref_call_from_tree): Likewise.
* call.c (build_addr_func): Add tsubst_flags_t parameter and
use it throughout.
(build_call_a, build_conditional_expr_1, build_new_op_1,
convert_like_real, convert_arg_to_ellipsis, build_over_call,
build_special_member_call): Adjust.
* cvt.c (cp_convert_to_pointer, force_rvalue,
build_expr_type_conversion): Likewise.
/testsuite
2012-04-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52422
* g++.dg/cpp0x/sfinae33.C: New.
* g++.dg/cpp0x/sfinae34.C: Likewise.
From-SVN: r186565
Jan Hubicka [Wed, 18 Apr 2012 09:57:53 +0000 (11:57 +0200)]
lto-symtab.c (lto_cgraph_replace_node): Update.
* lto-symtab.c (lto_cgraph_replace_node): Update.
* cgraphbuild.c (record_reference, record_type_list,
record_eh_tables, mark_address, mark_load, mark_store): Update.
* cgraph.c (cgraph_same_body_alias, dump_cgraph_node,
cgraph_create_virtual_clone, cgraph_for_node_thunks_and_aliases):
Update.
* cgraph.h (symtab_node_def, symtab_node, const_symtab_node): Remove.
(cgraph_alias_aliased_node, varpool_alias_aliased_node): Update.
* reload.c: Fix typo in comment.
* rtlanal.c: Likewise.
* tree-emultls.c (gen_emutls_addr): Update.
* ipa-reference.c (analyze_function): Update.
* cgraphunit.c (cgraph_analyze_function,
cgraph_process_same_body_aliases, assemble_thunks_and_aliases):
Update.
* ipa-ref.c (ipa_record_reference): Reorg to avoid reference types.
(ipa_remove_reference): Likewise.
(ipa_remove_all_refering): Rename to ...
(ipa_remove_all_referring): ... this one; update.
(ipa_dump_references): Update.
(ipa_dump_referring): Update.
(ipa_clone_references): Update.
(ipa_clone_refering): Rename to ...
(ipa_clone_referring): ... this one; update.
(ipa_ref_cannot_lead_to_return): Update.
(ipa_ref_has_aliases_p): Update.
* ipa-ref.h (symtab_node_def, symtab_node, const_symtab_node): New
forward typedefs.
(ipa_ref_type): Remove.
(ipa_ref_ptr_u): Remove.
(ipa_ref): Remove referencing, refered, refered_index, refering_type
and refered_type; add referring, referred and referred_index.
(ipa_ref_list): Rename refering to referring.
(ipa_record_reference, ipa_remove_all_referring, ipa_dump_referring,
ipa_clone_references, ipa_clone_referring): Update prototypes.
* lto-cgraph.c (referenced_from_other_partition_p): Update.
(lto_output_ref): Update.
(add_references): Update.
(input_varpool_node): Update.
(input_refs): Update.
* ipa-ref-inline.h (ipa_ref_node): Update.
(ipa_ref_varpool_node): Update.
(ipa_ref_referring_node); Update.
(ipa_ref_referring_varpool_node): Update.
(ipa_ref_referring_ref_list); Update.
(ipa_ref_referred_ref_list): Update.
(ipa_ref_list_first_referring): Update.
(ipa_empty_ref_list): Update.
(ipa_ref_list_refering_iterate): Rename to ...
(ipa_ref_list_referring_iterate): ... this one.
* cse.c: Update comment.
* ipa-utils.c (ipa_reverse_postorder): Update.
* tree-ssa-alias.c: Update.
* ipa-inline.c (reset_edge_caches): Update.
(update_caller_keys): Update.
* ipa-inline.h: Update comments.
* jump.c: Update comment.
* alias.c: Likewise.
* ipa.c (process_references): Update.
(cgraph_remove_unreachable_nodes): Likewise.
(ipa_discover_readonly_nonaddressable_var): Likewise.
(cgraph_address_taken_from_non_vtable_p): Likewise.
* trans-mem.c (ipa_tm_execute): Update.
* simplify-rtx.c: Fix comment.
* rtl.c: Fix comment.
* symtab.c (symtab_unregister_node): Update.
* varpool.c (dump_varpool_node): Update.
(varpool_analyze_pending_decls): Update.
(assemble_aliases): Update.
(varpool_for_node_and_aliases): Update.
From-SVN: r186564
Joey Ye [Wed, 18 Apr 2012 09:04:09 +0000 (09:04 +0000)]
thumb1-imm.c: Skip it in non-thumb1 target.
2012-04-18 Joey Ye <joey.ye@arm.com>
* gcc.target/arm/thumb1-imm.c: Skip it in non-thumb1 target.
From-SVN: r186563
Richard Guenther [Wed, 18 Apr 2012 08:55:41 +0000 (08:55 +0000)]
cfgloop.h (estimate_numbers_of_iterations_loop): Remove use_undefined_p parameter.
2012-04-18 Richard Guenther <rguenther@suse.de>
* cfgloop.h (estimate_numbers_of_iterations_loop): Remove
use_undefined_p parameter.
* tree-flow.h (estimate_numbers_of_iterations): Likewise.
* tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop):
Likewise.
(estimate_numbers_of_iterations): Likewise.
(estimated_loop_iterations): Adjust.
(max_loop_iterations): Likewise.
(scev_probably_wraps_p): Likewise.
* tree-ssa-loop.c (tree_ssa_loop_bounds): Likewise.
* tree-vrp.c (adjust_range_with_scev): Use max_stmt_executions,
not max_loop_iterations.
(execute_vrp): Remove explicit number of iterations estimation.
From-SVN: r186562
Richard Guenther [Wed, 18 Apr 2012 08:32:32 +0000 (08:32 +0000)]
test_passing_unions.c: Avoid undefined array access.
2012-04-18 Richard Guenther <rguenther@suse.de>
* gcc.target/x86_64/abi/test_passing_unions.c: Avoid undefined
array access.
* gcc.target/x86_64/abi/test_passing_structs.c: Likewise.
* gcc.target/i386/avx256-unaligned-load-4.c: Fix array sizes.
From-SVN: r186561
Enkovich Ilya [Wed, 18 Apr 2012 08:29:55 +0000 (08:29 +0000)]
linux-common.h: New.
2012-04-18 Enkovich Ilya <ilya.enkovich@intel.com>
* config/i386/linux-common.h: New.
* config.gcc: Add i386/linux-common.h before
all i386/linux.h and i386/linux64.h usages.
* config/i386/gnu-user.h (GNU_USER_TARGET_LINK_SPEC): New.
(LINK_SPEC): Use GNU_USER_TARGET_LINK_SPEC.
* config/i386/gnu-user64.h: Likewise.
* config/i386/gnu-user.common.h (GNU_USER_TARGET_CC1_SPEC): New.
(CC1_SPEC): Use GNU_USER_TARGET_CC1_SPEC.
(GNU_USER_TARGET_MATHFILE_SPEC): New.
(ENDFILE_SPEC): Use GNU_USER_TARGET_MATHFILE_SPEC.
From-SVN: r186560
Jan Hubicka [Wed, 18 Apr 2012 06:54:33 +0000 (08:54 +0200)]
cgraph.c (cgraph_node_name): Remove.
* cgraph.c (cgraph_node_name): Remove.
(dump_cgraph_node): Use dump_symtab_base; reformat.
* cgraph.h (symtab_node_asm_name, symtab_node_name, dump_symtab,
debug_symtab, dump_symtab_node, debug_symtab_node, dump_symtab_base):
Declare.
(cgraph_node_name, varpool_node_name): Remove.
(cgraph_node_asm_name, varpool_node_asm_name,
cgraph_node_name, varpool_node_name): New.
* tree-pass.h (TODO_dump_cgraph): Rename to ...
(TODO_dump_symtab): ... this one.
* ipa-cp (pass_ipa_cp): Update.
* ia-reference.c (generate_summary, read_write_all_from_decl,
propagate, ipa_reference_read_optimization_summary): Update.
* cgraphunit.c (cgraph_analyze_functions): Update.
(cgraph_optimize): Update.
* ipa-ref.c (ipa_dump_references): Update.
(ipa_dump_refering): Update.
* ipa-inline.c (pass_ipa_inline): Update.
* matrix-reorg.c (pass_ipa_matrix_reorg): Update.
* ipa.c (pass_ipa_function_visibility,
pass_ipa_whole_program_visibility): Update.
* tree-sra.c (pass_early_ipa_sra): Update.
* symtab.c: Include langhooks.h
(symtab_node_asm_name): New.
(symtab_node_name): New.
(symtab_type_names): New static var.
(dump_symtab_base): New.
(dump_symtab_node, dump_symtab): New.
(debug_symtab_node, debug_symtab): New.
* tree-ssa-structalias.c: Dump symbol table.
* pases.c (execute_todo): Handle TODO_dump_symtab instead
of TODO_dump_cgraph.
* varpoo.c (varpool_node_name): Remove.
(dump_varpool_node): Use dump_symtab_base; reformat.
From-SVN: r186559
GCC Administrator [Wed, 18 Apr 2012 00:19:09 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r186557
Manuel López-Ibáñez [Tue, 17 Apr 2012 22:47:15 +0000 (22:47 +0000)]
invoke.texi (Language Independent Options): @item should be before @opindex.
2012-04-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
* doc/invoke.texi (Language Independent Options): @item should be
before @opindex.
From-SVN: r186553
Richard Sandiford [Tue, 17 Apr 2012 20:09:01 +0000 (20:09 +0000)]
re PR bootstrap/53021 (bootstrap failure on Linux/ia32)
gcc/
PR bootstrap/53021
* rtl.c (rtx_code_size): Handle ADDRESS.
From-SVN: r186549
Tobias Burnus [Tue, 17 Apr 2012 19:30:29 +0000 (21:30 +0200)]
re PR libfortran/38199 (missed optimization: I/O performance)
2012-04-17 Tobias Burnus <burnus@net-b.de>
PR libfortran/38199
PR libfortran/50673
* io/unit.c (get_internal_unit): Properly check for the presence
of the format string.
From-SVN: r186548
Tom de Vries [Tue, 17 Apr 2012 18:28:50 +0000 (18:28 +0000)]
pr51264-4.C: New test.
2012-04-17 Tom de Vries <tom@codesourcery.com>
* g++.dg/pr51264-4.C: New test.
From-SVN: r186547
Tom de Vries [Tue, 17 Apr 2012 18:28:42 +0000 (18:28 +0000)]
cp-gimplify.c (begin_bc_block): Add location parameter and use as location argument to create_artificial_label.
2012-04-17 Tom de Vries <tom@codesourcery.com>
* cp-gimplify.c (begin_bc_block): Add location parameter and use as
location argument to create_artificial_label.
(finish_bc_block): Change return type to void. Remove body_seq
parameter, and add block parameter. Append label to STMT_LIST and
return in block.
(gimplify_cp_loop, gimplify_for_stmt, gimplify_while_stmt)
(gimplify_do_stmt, gimplify_switch_stmt): Remove function.
(genericize_cp_loop, genericize_for_stmt, genericize_while_stmt)
(genericize_do_stmt, genericize_switch_stmt, genericize_continue_stmt)
(genericize_break_stmt, genericize_omp_for_stmt): New function.
(cp_gimplify_omp_for): Remove bc_continue processing.
(cp_gimplify_expr): Genericize VEC_INIT_EXPR.
(cp_gimplify_expr): Mark FOR_STMT, WHILE_STMT, DO_STMT, SWITCH_STMT,
CONTINUE_STMT, and BREAK_STMT as unreachable.
(cp_genericize_r): Genericize FOR_STMT, WHILE_STMT, DO_STMT,
SWITCH_STMT, CONTINUE_STMT, BREAK_STMT and OMP_FOR.
(cp_genericize_tree): New function, factored out of ...
(cp_genericize): ... this function.
From-SVN: r186546
Tom de Vries [Tue, 17 Apr 2012 18:28:34 +0000 (18:28 +0000)]
tree-iterator.c (append_to_statement_list_1): Handle case that *list_p is not a STMT_LIST.
2012-04-17 Tom de Vries <tom@codesourcery.com>
* tree-iterator.c (append_to_statement_list_1): Handle case that *list_p
is not a STMT_LIST.
From-SVN: r186545
Uros Bizjak [Tue, 17 Apr 2012 17:35:23 +0000 (19:35 +0200)]
re PR target/53020 (__atomic_fetch_or doesn't generate `1 insn` variant)
PR target/53020
* config/i386/sync.md (atomic_<code><mode>): Rename to
atomic_<logic><mode>.
From-SVN: r186542
Paolo Carlini [Tue, 17 Apr 2012 17:20:02 +0000 (17:20 +0000)]
re PR c++/52599 (ICE on illegal constexpr constructor declaration)
/cp
2012-04-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52599
* semantics.c (build_constexpr_constructor_member_initializers):
Check for function-try-block as function-body.
/testsuite
2012-04-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52599
* g++.dg/cpp0x/constexpr-ctor10.C: New.
/cp
2012-04-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53003
* parser.c (cp_parser_member_declaration): Check that
initializer_token_start is non null before dereferencing it.
/testsuite
2012-04-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53003
* g++.dg/parse/crash59.C: New.
From-SVN: r186541
Richard Sandiford [Tue, 17 Apr 2012 17:01:02 +0000 (17:01 +0000)]
rtl.def (ADDRESS): Turn operand into a HOST_WIDE_INT.
gcc/
* rtl.def (ADDRESS): Turn operand into a HOST_WIDE_INT.
* alias.c (reg_base_value): Expand and update comment.
(arg_base_value): New variable.
(unique_id): Move up file.
(unique_base_value, unique_base_value_p, known_base_value_p): New.
(find_base_value): Use arg_base_value and known_base_value_p.
(record_set): Document REG_NOALIAS handling. Use unique_base_value.
(find_base_term): Use known_base_value_p.
(base_alias_check): Use unique_base_value_p.
(init_alias_target): Initialize arg_base_value. Use unique_base_value.
(init_alias_analysis): Use 1 as the first id for REG_NOALIAS bases.
From-SVN: r186540
Benjamin Kosnik [Tue, 17 Apr 2012 16:41:40 +0000 (16:41 +0000)]
808590.cc: New.
2012-04-17 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
808590.cc: New.
From-SVN: r186539
Pat Haugen [Tue, 17 Apr 2012 15:38:10 +0000 (15:38 +0000)]
rs6000.h (SLOW_UNALIGNED_ACCESS): Remove DImode.
* config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Remove DImode.
From-SVN: r186534