platform/upstream/gcc.git
11 years agolto-cgraph.c (compute_ltrans_boundary): Add abstract origins into boundaries.
Jan Hubicka [Sat, 3 Aug 2013 19:54:18 +0000 (21:54 +0200)]
lto-cgraph.c (compute_ltrans_boundary): Add abstract origins into boundaries.

* lto-cgraph.c (compute_ltrans_boundary): Add abstract origins into
boundaries.
* lto-streamer-out.c (tree_is_indexable): Results decls and
parm decls are not indexable.
(DFS_write_tree_body): Do not follow args and results.
(hash_tree): Likewise.
(output_functions): Rearrange so struct function is needed
only when real body is output; be able to also ouptut abstract
functions; output DECL_ARGUMENTS and DECL_RESULT.
(lto_output): When not in WPA, ale store abstract functions.
(write_symbol): Do not care about RESULT_DECL.
(output_symbol_p): Handle correctly sbtract decls.
* lto-streamer-in.c (input_function): Rearrange so struct
function can be NULL at entry; allow streaming of
functions w/o body; store DECL_ARGUMENTS and DECL_RESULT.
* ipa.c (symtab_remove_unreachable_nodes): Silence confused
sanity check during LTO.
* tree-streamer-out.c (write_ts_decl_non_common_tree_pointers): Skip
RESULT_DECl and DECL_ARGUMENTS.
* tree-streamer-in.c (lto_input_ts_decl_non_common_tree_pointers):
Likewise.

* lto.c (lto_materialize_function): Do not push struct function.
* lto-partition.c (get_symbol_class): Handle abstracts correctly.
(may_need_named_section_p): Even abstract origins may need
named section.

From-SVN: r201468

11 years agopretty-print.h (pp_underscore): New.
Gabriel Dos Reis [Sat, 3 Aug 2013 18:57:25 +0000 (18:57 +0000)]
pretty-print.h (pp_underscore): New.

* pretty-print.h (pp_underscore): New.
(pp_comma): Tidy.
* gimple-pretty-print.c (dump_unary_rhs): Use specialized pretty
printer functions instead of pp_character.
(dump_binary_rhs): Likewise.
(dump_ternary_rhs): Likewise.
(dump_gimple_call_args): Likewise.
(pp_points_to_solution): Likewise.
(dump_gimple_call): Likewise.
(dump_gimple_switch): Likewise.
(dump_gimple_cond): Likewise.
(dump_gimple_bind): Likewise.
(dump_gimple_try): Likewise.
(dump_gimple_omp_for): Likewise.
(dump_gimple_omp_continue): Likewise.
(dump_gimple_omp_single): Likewise.
(dump_gimple_omp_sections): Likewise.
(dump_gimple_omp_block): Likewise.
(dump_gimple_omp_critical): Likewise.
(dump_gimple_transaction): Likewise.
(dump_gimple_asm): Likewise.
(dump_gimple_phi): Likewise.
(dump_gimple_omp_parallel): Likewise.
(dump_gimple_omp_task): Likewise.
(dump_gimple_omp_atomic_load): Likewise.
(dump_gimple_omp_atomic_store): Likewise.
(dump_gimple_mem_ops): Likewise.
(pp_gimple_stmt_1): Likewise.
(pp_cfg_jump): Likewise.
(dump_implicit_edges): Likewise.
(gimple_dump_bb_for_graph): Likewise.
* graph.c (draw_cfg_node): Likewise.
* langhooks.c (lhd_print_error_function): Likewise.
* sched-vis.c (print_exp): Likewise.
(print_value): Likewise.
(print_pattern): Likewise.
(print_insn): Likewise.
(rtl_dump_bb_for_graph): Likewise.
* tree-pretty-print.c (dump_function_declaration): Likewise.
(dump_array_domain): Likewise.
(dump_omp_clause): Likewise.
(dump_location): Likewise.
(dump_generic_node): Likewise.
(print_struct_decl): Likewise.
* diagnostic.c (diagnostic_show_locus): Use pp_space.

c-family/
* c-ada-spec.c (print_ada_macros): Use specialized pretty printer
functions instead of pp_character.
(pp_ada_tree_identifier): Likewise.
(dump_ada_double_name): Likewise.
(dump_ada_function_declaration): Likewise.
(dump_ada_array_domains): Likewise.
(dump_template_types): Likewise.
(dump_generic_ada_node): Likewise.
(print_ada_declaration): Likewise.
(print_ada_struct_decl): Likewise.
* c-pretty-print.c (pp_c_integer_constant): Likewise.

cp/
* error.c (dump_aggr_type): Use specialized pretty printer
functions instead of pp_character.
(dump_type_prefix): Likewise.
(dump_simple_decl): Likewise.
(type_to_string): Likewise.

From-SVN: r201467

11 years agogimple-ssa-strength-reduction.c (replace_mult_candidate): Update candidate table...
Bill Schmidt [Sat, 3 Aug 2013 14:37:26 +0000 (14:37 +0000)]
gimple-ssa-strength-reduction.c (replace_mult_candidate): Update candidate table when replacing a candidate statement.

gcc:

2013-08-03  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

* gimple-ssa-strength-reduction.c (replace_mult_candidate): Update
candidate table when replacing a candidate statement.
(replace_rhs_if_not_dup): Likewise.
(replace_one_candidate): Likewise.

gcc/testsuite:

2013-08-03  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

* gcc.dg/torture/pr57993-2.cpp: New.

From-SVN: r201466

11 years agoImplement bracket expression.
Tim Shen [Sat, 3 Aug 2013 14:32:54 +0000 (14:32 +0000)]
Implement bracket expression.

2013-08-03  Tim Shen  <timshen91@gmail.com>

Implement bracket expression.
* include/bits/regex.h: Remove constexpr from "|=", etc.
* include/bits/regex_compiler.h: Parse bracket expression.
* include/bits/regex_nfa.h: _Comparator and _BracketMatcher(old
_RangeMatcher).
* include/bits/regex_nfa.tcc: Implement them.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
from regex_search to regex_match.
* testsuite/28_regex/algorithms/regex_match/extended/
cstring_bracket_01.cc: New.

From-SVN: r201465

11 years agoAdd Martin.
Jan Hubicka [Sat, 3 Aug 2013 11:03:19 +0000 (11:03 +0000)]
Add Martin.

From-SVN: r201464

11 years agocgraphunit.c (add_new_function): Fix logic when adding from late IPA pass.
Jan Hubicka [Sat, 3 Aug 2013 11:02:37 +0000 (13:02 +0200)]
cgraphunit.c (add_new_function): Fix logic when adding from late IPA pass.

* cgraphunit.c (add_new_function): Fix logic when adding from
late IPA pass.
(assemble_thunk): Rename to ...
(expand_thunk); .. this one; export; get it working with general functions;
make produced gimple valid.
* cgraph.h (expand_thunk): Declare.

From-SVN: r201463

11 years agoipa-cp.c (gather_context_independent_values): Use ipa_get_param_move_cost.
Jan Hubicka [Sat, 3 Aug 2013 08:23:55 +0000 (10:23 +0200)]
ipa-cp.c (gather_context_independent_values): Use ipa_get_param_move_cost.

* ipa-cp.c (gather_context_independent_values): Use ipa_get_param_move_cost.
(get_replacement_map): Remove PARAM; move parameter folding into tree-inline.c
(create_specialized_node): Update.
* ipa-prop.c (ipa_populate_param_decls): Do not look for origins;
assert that we have gimple body; update move_cost.
(count_formal_params): Assert that we have gimple body.
(ipa_dump_param): New function.
(ipa_alloc_node_params): Break out from ...
(ipa_initialize_node_params): ... here.
(ipa_get_vector_of_formal_parms): ICE when used in WPA.
(ipa_write_node_info): Stream move costs.
(ipa_read_node_info): Read move costs.
(ipa_update_after_lto_read): Do not recompute node params.
* ipa-prop.h (ipa_param_descriptor): Add move_cost.
(ipa_get_param): Check we are not in WPA.
(ipa_get_param_move_cost): New.
* tree-inline.c (tree_function_versioning): Fold replacement as needed.
* ipa-inline-analysis.c (inline_node_duplication_hook): Expect only
parm numbers to be present.

* gcc.dg/ipa/ipa-1.c: Update.
* gcc.dg/ipa/ipa-2.c: Update.
* gcc.dg/ipa/ipa-3.c: Update.
* gcc.dg/ipa/ipa-4.c: Update.
* gcc.dg/ipa/ipa-5.c: Update.
* gcc.dg/ipa/ipa-7.c: Update.
* gcc.dg/ipa/ipa-8.c: Update.
* gcc.dg/ipa/ipcp-1.c: Update.
* gcc.dg/ipa/ipcp-2.c: Update.

From-SVN: r201462

11 years agoDaily bump.
GCC Administrator [Sat, 3 Aug 2013 00:16:39 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201461

11 years agosyscall: Change AWK split call to use []+ rather than []*.
Ian Lance Taylor [Fri, 2 Aug 2013 22:30:30 +0000 (22:30 +0000)]
syscall: Change AWK split call to use []+ rather than []*.

Using []* fails with the awk that is part of busybox:
https://groups.google.com/d/msg/gofrontend-dev/NbQsG_AMDpY/sXCc03kkwn4J

From-SVN: r201455

11 years agore PR rtl-optimization/58048 (internal compiler error: Max. number of generated reloa...
Vladimir Makarov [Fri, 2 Aug 2013 22:06:11 +0000 (22:06 +0000)]
re PR rtl-optimization/58048 (internal compiler error: Max. number of generated reload insns per insn is achieved (90))

2013-08-02  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/58048
* lra-constraints.c (process_alt_operands): Don't check asm
operand on register.

2013-08-02  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/58048
* gcc.target/i386/pr58048.c: New.

From-SVN: r201454

11 years agosparc.c (sparc_emit_membar_for_model): Add the implied StoreLoad barrier for atomic...
Eric Botcazou [Fri, 2 Aug 2013 21:41:58 +0000 (21:41 +0000)]
sparc.c (sparc_emit_membar_for_model): Add the implied StoreLoad barrier for atomic operations if before.

* config/sparc/sparc.c (sparc_emit_membar_for_model) <SMM_TSO>: Add
the implied StoreLoad barrier for atomic operations if before.

From-SVN: r201450

11 years agogo-gcc.cc (immutable_struct_set_init): Always call resolve_unique_section.
Ian Lance Taylor [Fri, 2 Aug 2013 18:24:19 +0000 (18:24 +0000)]
go-gcc.cc (immutable_struct_set_init): Always call resolve_unique_section.

* go-gcc.cc (immutable_struct_set_init): Always call
resolve_unique_section.

From-SVN: r201446

11 years agocompiler: Always put descriptor wrappers in their own section.
Ian Lance Taylor [Fri, 2 Aug 2013 17:01:43 +0000 (17:01 +0000)]
compiler: Always put descriptor wrappers in their own section.

This lets the linker GC them.

From-SVN: r201442

11 years agoconfigure.tgt: Add -msoft-float to XCFLAGS.
Andreas Krebbel [Fri, 2 Aug 2013 16:00:36 +0000 (16:00 +0000)]
configure.tgt: Add -msoft-float to XCFLAGS.

2013-08-02  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* configure.tgt: Add -msoft-float to XCFLAGS.

From-SVN: r201441

11 years agocgraph.c (cgraph_function_body_availability): Do not check cgrpah flags.
Jan Hubicka [Fri, 2 Aug 2013 14:38:15 +0000 (16:38 +0200)]
cgraph.c (cgraph_function_body_availability): Do not check cgrpah flags.

* cgraph.c (cgraph_function_body_availability): Do not check cgrpah flags.
* cgraph.h (symtab_for_node_and_aliases, symtab_nonoverwritable_alias,
symtab_node_availability): Declare.
* ipa.c (can_replace_by_local_alias): New.
(function_and_variable_visibility): Use it.
* symtab.c (symtab_for_node_and_aliases, symtab_nonoverwritable_alias_1,
symtab_nonoverwritable_alias): New.

Co-Authored-By: Martin Liska <marxin.liska@gmail.com>
From-SVN: r201439

11 years agore PR rtl-optimization/57963 (LRA S/390: esa mode failure memcpy-chk)
Vladimir Makarov [Fri, 2 Aug 2013 14:23:38 +0000 (14:23 +0000)]
re PR rtl-optimization/57963 (LRA S/390: esa mode failure memcpy-chk)

2013-08-02  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/57963
* lra-constraints.c (reverse_equiv_p, contains_reloaded_insn_p):
New.
(lra_constraints): Use them.

From-SVN: r201438

11 years agotypes.md (define_attr "type"): Add "load_acq" and "store_rel".
Sofiane Naci [Fri, 2 Aug 2013 13:15:05 +0000 (13:15 +0000)]
types.md (define_attr "type"): Add "load_acq" and "store_rel".

* config/arm/types.md (define_attr "type"): Add "load_acq" and "store_rel".
* config/arm/cortex-a53.md (cortex_a53_load1): Update for attribute
changes.
(cortex_a53_store1): Likewise.

From-SVN: r201436

11 years agoneon-for-64bits-2.c: Delete.
Kyrylo Tkachov [Fri, 2 Aug 2013 12:53:58 +0000 (12:53 +0000)]
neon-for-64bits-2.c: Delete.

2013-08-02  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* gcc.target/arm/neon-for-64bits-2.c: Delete.

From-SVN: r201435

11 years agoipa.c (symtab_remove_unreachable_nodes): Nodes in other partitions are not needed.
Jan Hubicka [Fri, 2 Aug 2013 09:44:18 +0000 (11:44 +0200)]
ipa.c (symtab_remove_unreachable_nodes): Nodes in other partitions are not needed.

* ipa.c (symtab_remove_unreachable_nodes): Nodes in other partitions are
not needed.

From-SVN: r201431

11 years agofunctions.h (__foreign_iterator_aux4): Initialize __l and __ge.
Paolo Carlini [Fri, 2 Aug 2013 08:12:20 +0000 (08:12 +0000)]
functions.h (__foreign_iterator_aux4): Initialize __l and __ge.

2013-08-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/debug/functions.h (__foreign_iterator_aux4):
Initialize __l and __ge.

From-SVN: r201428

11 years agocp-tree.h (finish_stmt): Do not declare.
Paolo Carlini [Fri, 2 Aug 2013 07:59:14 +0000 (07:59 +0000)]
cp-tree.h (finish_stmt): Do not declare.

2013-08-02  Paolo Carlini  <paolo.carlini@oracle.com>

* cp-tree.h (finish_stmt): Do not declare.
* decl.c (finish_stmt): Do not define.
* parser.c (cp_parser_expression_statement,
cp_parser_declaration_statement,
cp_parser_transaction_cancel): Don't call finish_stmt.
* semantics.c (finish_expr_stmt, finish_if_stmt,
finish_while_stmt, finish_do_stmt, finish_return_stmt,
finish_for_stmt, finish_switch_stmt, finish_compound_stmt,
finish_transaction_stmt): Likewise.

From-SVN: r201427

11 years agofunctions.h (__foreign_iterator_aux4): Initialize __l and __ge.
Paolo Carlini [Fri, 2 Aug 2013 07:53:01 +0000 (07:53 +0000)]
functions.h (__foreign_iterator_aux4): Initialize __l and __ge.

2013-08-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/debug/functions.h (__foreign_iterator_aux4):
Initialize __l and __ge.

From-SVN: r201426

11 years agore PR libstdc++/58049 (libstdc++ bootstrap failure for fix to PR libstdc++/57779)
Paolo Carlini [Fri, 2 Aug 2013 07:34:55 +0000 (07:34 +0000)]
re PR libstdc++/58049 (libstdc++ bootstrap failure for fix to PR libstdc++/57779)

2013-08-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/58049
* include/debug/functions.h: Include <bits/move.h>; minor formatting
changes.
(__foreign_iterator_aux4): Declare __l and __ge constexpr.
* include/debug/safe_iterator.h (_Safe_iterator<>::operator->):
Use __addressof.
* include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
operator->): Likewise.

From-SVN: r201424

11 years agoDaily bump.
GCC Administrator [Fri, 2 Aug 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201423

11 years agoFix licenses on several libgcc files.
Maxim Kuvyrkov [Thu, 1 Aug 2013 21:09:10 +0000 (21:09 +0000)]
Fix licenses on several libgcc files.

* config/aarch64/sfp-machine.h, config/aarch64/sync-cache.c,
* config/i386/cpuinfo.c, config/ia64/unwind-ia64.h,
* config/mips/vr4120-div.S: Fix license from GPL-3.0+ to
GPL-3.0-with-GCC-exception.

From-SVN: r201417

11 years agore PR libstdc++/57779 (vector insert fails to diagnose iterators pointing into *this...
François Dumont [Thu, 1 Aug 2013 19:54:46 +0000 (19:54 +0000)]
re PR libstdc++/57779 (vector insert fails to diagnose iterators pointing into *this in debug mode)

2013-08-01  François Dumont  <fdumont@gcc.gnu.org>

PR libstdc++/57779
* include/debug/formatter.h (_Debug_msg_id): Add
__msg_insert_itself_range entry.
* include/debug/functions.h (_Insert_range_from_self_is_safe<>):
New, indicate container types supporting self range insertion in
GNU implementation.
(__foreign_iterator): New, check if an iterator points to a given
sequence.
* include/debug/macros.h (__glibcxx_check_insert_range): Add check
using __foreign_iterator.
(__gibcxx_check_insert_range_after): Likewise.
* include/debug/string (_Insert_range_from_self_is_safe<>):
Partially specialized to mark __gnu_debug::basic_string<> as
supporting self range insert.
* include/debug/list (_Insert_range_from_self_is_safe<>):
Partially specialized to mark std::list as supporting self range
insert if _GLIBCXX_DEBUG_PEDANTIC is not defined.
* include/debug/forward_list (_Insert_range_from_self_is_safe<>):
Likewise.
* src/c++11/debug.cc (_S_debug_messages): Add
__msg_insert_itself_range_entry message.
(_Error_formatter::_Parameter::_M_print_description): Display
iterator sequence address rather than sequence address when the
parameter type is an iterator.
(_Error_formatter::_M_print_word): Enhance behavior when
displaying a word with an appended '\n'.
* testsuite/util/debug/checks.h (check_insert4<>): New.
* testsuite/23_containers/deque/debug/insert5_neg.cc: New.
* testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
* testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise.
* testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
* testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
* testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
Likewise.

From-SVN: r201416

11 years agoi386.h (MAYBE_NON_Q_CLASS_P): New.
Uros Bizjak [Thu, 1 Aug 2013 19:48:46 +0000 (21:48 +0200)]
i386.h (MAYBE_NON_Q_CLASS_P): New.

* config/i386/i386.h (MAYBE_NON_Q_CLASS_P): New.
* config/i386/i386.c (ix86_secondary_reload): Use INTEGER_CLASS_P and
MAYBE_NON_Q_CLASS_P where appropriate.

From-SVN: r201415

11 years agore PR c++/54537 (undiagnosed using-declaration conflicting with used function)
Fabien Chêne [Thu, 1 Aug 2013 19:24:37 +0000 (21:24 +0200)]
re PR c++/54537 (undiagnosed using-declaration conflicting with used function)

gcc/cp/
        PR c++/54537
        * cp-tree.h: Check OVL_USED with OVERLOAD_CHECK.
        * name-lookup.c (do_nonmember_using_decl): Make sure we have an
OVERLOAD before calling OVL_USED. Call diagnose_name_conflict
instead of issuing an error without mentioning the conflicting
declaration.

libstdc++-v3/
        PR c++/54537
* include/tr1/cmath: Remove pow(double,double) overload, remove a
duplicated comment about DR 550. Add a comment to explain the
issue.
* testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New.

gcc/testsuite/
        PR c++/54537
        * g++.dg/overload/using3.C: New.
* g++.dg/overload/using2.C: Adjust.
* g++.dg/lookup/using9.C: Likewise.

Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
From-SVN: r201414

11 years agocgraph.h (release_function_body): Declare.
Jan Hubicka [Thu, 1 Aug 2013 15:41:10 +0000 (17:41 +0200)]
cgraph.h (release_function_body): Declare.

* cgraph.h (release_function_body): Declare.
* tree.c (free_lang_data_in_decl): Free, parameters and return values
of unused delcarations.

From-SVN: r201413

11 years agoarm.md (minmax_arithsi_non_canon): Emit canonical RTL form when subtracting a constant.
Kyrylo Tkachov [Thu, 1 Aug 2013 15:02:19 +0000 (15:02 +0000)]
arm.md (minmax_arithsi_non_canon): Emit canonical RTL form when subtracting a constant.

2013-08-01  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.md (minmax_arithsi_non_canon): Emit canonical RTL form
when subtracting a constant.

From-SVN: r201412

11 years agoarm.md (peepholes for eq (reg1) (reg2/imm)): Generate canonical plus rtx with negated...
Kyrylo Tkachov [Thu, 1 Aug 2013 15:00:41 +0000 (15:00 +0000)]
arm.md (peepholes for eq (reg1) (reg2/imm)): Generate canonical plus rtx with negated immediate instead of minus where...

[gcc]
2013-08-01  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.md (peepholes for eq (reg1) (reg2/imm)):
Generate canonical plus rtx with negated immediate instead of minus
where appropriate.
* config/arm/arm.c (thumb2_reorg): Handle ADCS <Rd>, <Rn> case.

[gcc/testsuite]

* gcc.target/arm/pr46972-2.c: New test.

From-SVN: r201411

11 years agocgraph.c (cgraph_release_function_body): Use used_as_abstract_origin.
Jan Hubicka [Thu, 1 Aug 2013 13:24:49 +0000 (15:24 +0200)]
cgraph.c (cgraph_release_function_body): Use used_as_abstract_origin.

* cgraph.c (cgraph_release_function_body): Use used_as_abstract_origin.
(cgraph_release_function_body): Likewise.
(cgraph_can_remove_if_no_direct_calls_p): Likewise.
* cgraph.h (cgrpah_node): Rename abstract_and_needed
to used_as_abstract_origin.
* tree-inline-transfrom.c (can_remove_node_now_p_1): Do not remove
symbols used as abstract origins.
* cgraphunit.c (analyze_functions): Update.
* ipa.c (symtab_remove_unreachable_nodes): Recompute used_as_abstract_origin.
* tree-inline.c (tree_function_versioning): Update
used_as_abstract_origin; be ready for DECL_RESULT and DECL_ARGUMENTS to be
NULL.

* lto-symtab.c (lto_symtab_merge_symbols): Merge duplicated nodes for abstract functions.
* cgraph.h (symtab_real_symbol_p): Abstract declarations are not real symbols.

From-SVN: r201408

11 years agovect-iv-5.c: Make xfail conditional with !arm_neon_ok.
Vidya Praveen [Thu, 1 Aug 2013 12:58:13 +0000 (13:58 +0100)]
vect-iv-5.c: Make xfail conditional with !arm_neon_ok.

        * gcc.dg/vect/vect-iv-5.c: Make xfail conditional with !arm_neon_ok.

From-SVN: r201406

11 years ago* profile.c (compute_value_histograms): Fix thinko.
Jan Hubicka [Thu, 1 Aug 2013 10:03:55 +0000 (12:03 +0200)]
* profile.c (compute_value_histograms): Fix thinko.

From-SVN: r201401

11 years agoconfig.gcc (aarch64*-*-*): Add aarch-common.o to extra_objs.
Sofiane Naci [Thu, 1 Aug 2013 09:50:52 +0000 (09:50 +0000)]
config.gcc (aarch64*-*-*): Add aarch-common.o to extra_objs.

* config.gcc (aarch64*-*-*): Add aarch-common.o to extra_objs.  Add
aarch-common-protos.h to extra_headers.
(aarch64*-*-*): Add arm/aarch-common-protos.h to tm_p_file.
* config/aarch64/aarch64.md: Include "../arm/cortex-a53.md"
* config/aarch64/t-aarch64 (aarch-common.o): Define.

From-SVN: r201400

11 years agoaarch64.md (define_attr "type"): Delete.
Sofiane Naci [Thu, 1 Aug 2013 09:48:48 +0000 (09:48 +0000)]
aarch64.md (define_attr "type"): Delete.

* config/aarch64/aarch64.md (define_attr "type"): Delete.
Include "../arm/types.md".  Define "type" attribute for all patterns.
* config/aarch64/aarch64-simd.md (move_lo_quad_<mode>): Update for
attribute changes.

From-SVN: r201399

11 years agoDaily bump.
GCC Administrator [Thu, 1 Aug 2013 00:16:34 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201397

11 years agoThompson matcher refactored.
Tim Shen [Wed, 31 Jul 2013 22:36:11 +0000 (22:36 +0000)]
Thompson matcher refactored.

2013-07-31  Tim Shen  <timshen91@gmail.com>

Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/
string_dispatch_01.cc: New.

From-SVN: r201391

11 years agopredicates.md (fusion_gpr_addis): New predicates to support power8 load fusion.
Michael Meissner [Wed, 31 Jul 2013 20:04:07 +0000 (20:04 +0000)]
predicates.md (fusion_gpr_addis): New predicates to support power8 load fusion.

[gcc]
2013-07-31  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/predicates.md (fusion_gpr_addis): New predicates
to support power8 load fusion.
(fusion_gpr_mem_load): Likewise.

* config/rs6000/rs6000-modes.def (PTImode): Update a comment.

* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): New
declarations for power8 load fusion.
(emit_fusion_gpr_load): Likewise.

* config/rs6000/rs6000.c (rs6000_option_override_internal): If
tuning for power8, turn on fusion mode by default.  Turn on sign
extending fusion mode if normal fusion mode is on, and we are at
-O2 or -O3.
(fusion_gpr_load_p): New function, return true if we can fuse an
addis instruction with a dependent load to a GPR.
(emit_fusion_gpr_load): Emit the instructions for power8 load
fusion to GPRs.

* config/rs6000/vsx.md (VSX_M2): New iterator for fusion
peepholes.
(VSX load fusion peepholes): New peepholes to fuse together an
addi instruction with a VSX load instruction.

* config/rs6000/rs6000.md (GPR load fusion peepholes): New
peepholes to fuse an addis instruction with a load to a GPR base
register.  If we are supporting sign extending fusions, convert
sign extending loads to zero extending loads and add an explicit
sign extension.

[gcc/testsuite]
2013-07-31  Michael Meissner  <meissner@linux.vnet.ibm.com>

* gcc.target/powerpc/fusion.c: New file, test power8 fusion
support.

From-SVN: r201385

11 years agomips.exp (mips-dg-options): Test for mabicalls rather than addressing!=absolute when...
Richard Sandiford [Wed, 31 Jul 2013 18:33:50 +0000 (18:33 +0000)]
mips.exp (mips-dg-options): Test for mabicalls rather than addressing!=absolute when...

gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Test for mabicalls
rather than addressing!=absolute when deciding how to handle MIPS16
when the test forces an ABI.

From-SVN: r201380

11 years agoparser.c (cp_parser_sizeof_pack): Check cp_parser_identifier return value for error_m...
Paolo Carlini [Wed, 31 Jul 2013 18:28:16 +0000 (18:28 +0000)]
parser.c (cp_parser_sizeof_pack): Check cp_parser_identifier return value for error_mark_node.

2013-07-31  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_sizeof_pack): Check cp_parser_identifier
return value for error_mark_node.

From-SVN: r201379

11 years agore PR libstdc++/56627 (class hash instead of struct hash)
Paolo Carlini [Wed, 31 Jul 2013 14:36:13 +0000 (14:36 +0000)]
re PR libstdc++/56627 (class hash instead of struct hash)

2013-07-31  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/56627
* include/bits/stl_bvector.h: Use friend struct hash intead of
friend class hash to work around useless warnings produced by
some compilers.
* include/std/bitset: Likewise.

From-SVN: r201377

11 years agoconfig.gcc (arm*-*-*): Add aarch-common.o to extra_objs.
Sofiane Naci [Wed, 31 Jul 2013 14:32:39 +0000 (14:32 +0000)]
config.gcc (arm*-*-*): Add aarch-common.o to extra_objs.

* config.gcc (arm*-*-*): Add aarch-common.o to extra_objs.  Add
aarch-common-protos.h to extra_headers.
(arm*-*-*): Add arm/aarch-common-protos.h to tm_p_file.
* config/arm/arm.c (arm_early_load_addr_dep): Move from here to ...
(arm_early_store_addr_dep): Likewise.
(arm_no_early_alu_shift_dep: Likewise.
(arm_no_early_alu_shift_value_dep: Likewise.
(arm_no_early_mul_dep: Likewise.
(arm_no_early_store_addr_dep: Likewise.
(arm_mac_accumulator_is_mul_result: Likewise.
(arm_mac_accumulator_is_result: Likewise.
* config/arm/aarch-common.c: ... here.  New file.
* config/arm/arm-protos.h (arm_early_load_addr_dep): Move from here to ...
(arm_early_store_addr_dep): Likewise.
(arm_no_early_alu_shift_dep: Likewise.
(arm_no_early_alu_shift_value_dep: Likewise.
(arm_no_early_mul_dep: Likewise.
(arm_no_early_store_addr_dep: Likewise.
(arm_mac_accumulator_is_mul_result: Likewise.
(arm_mac_accumulator_is_result: Likewise.
* config/arm/aarch-common-protos.h: ... here.  New file.
* config/arm/t-arm (aarch-common.o): Define.

From-SVN: r201376

11 years agoarm.md: Include new file "types.md".
Sofiane Naci [Wed, 31 Jul 2013 14:29:54 +0000 (14:29 +0000)]
arm.md: Include new file "types.md".

* config/arm/arm.md: Include new file "types.md".
(define_attr "type"): Move from here to ...
(define_attr "mul32"): Likewise.
(define_attr "mul64"): Likewise.
* config/arm/types.md: ... here.  New file.

From-SVN: r201375

11 years agoconfig.gcc (*-*-rtems*): Use __cxa_atexit by default.
Sebastian Huber [Wed, 31 Jul 2013 12:58:35 +0000 (12:58 +0000)]
config.gcc (*-*-rtems*): Use __cxa_atexit by default.

2013-07-31  Sebastian Huber  <sebastian.huber@embedded-brains.de>

* config.gcc (*-*-rtems*): Use __cxa_atexit by default.
* config/rs6000/rtems.h (TARGET_LIBGCC_SDATA_SECTION): Define.

From-SVN: r201370

11 years agofunctexcept.cc: Do not include the whole <regex>.
Paolo Carlini [Wed, 31 Jul 2013 12:36:37 +0000 (12:36 +0000)]
functexcept.cc: Do not include the whole <regex>.

2013-07-31  Paolo Carlini  <paolo.carlini@oracle.com>

* src/c++11/functexcept.cc: Do not include the whole <regex>.
* src/c++11/regex.cc: Likewise.

From-SVN: r201369

11 years ago* ChangeLog: Fix my email address.
Jan-Benedict Glaw [Wed, 31 Jul 2013 09:54:43 +0000 (09:54 +0000)]
* ChangeLog: Fix my email address.

From-SVN: r201365

11 years agogen-pass-instances.awk: Fix offset of substr().
Jan-Benedict Glaw [Wed, 31 Jul 2013 09:34:04 +0000 (09:34 +0000)]
gen-pass-instances.awk: Fix offset of substr().

2013-07-31  Jan-Benedict Glaw  <jbglaw@owl.de>

* gen-pass-instances.awk: Fix offset of substr().

From-SVN: r201364

11 years agoRevert last commit.
Tim Shen [Wed, 31 Jul 2013 03:36:37 +0000 (03:36 +0000)]
Revert last commit.

From-SVN: r201360

11 years agoIntroduce gen-pass-instances.awk and pass-instances.def
David Malcolm [Wed, 31 Jul 2013 00:48:03 +0000 (00:48 +0000)]
Introduce gen-pass-instances.awk and pass-instances.def

Introduce a new gen-pass-instances.awk script, and use it at build time
to make a pass-instances.def from passes.def.

gcc/

* Makefile.in (pass-instances.def): New.
(passes.o): Replace dependency on passes.def with one on
pass-instances.def

* gen-pass-instances.awk: New.

* passes.c (pass_manager::pass_manager): Use pass-instances.def
rather than passes.def, updating local definition of NEXT_PASS
macro to add an extra NUM parameter (currently unused).

From-SVN: r201359

11 years agoThompson matcher refactored.
Tim Shen [Wed, 31 Jul 2013 00:20:06 +0000 (00:20 +0000)]
Thompson matcher refactored.

2013-07-31  Tim Shen  <timshen91@gmail.com>

Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/
string_dispatch_01.cc: New.

From-SVN: r201358

11 years agoDaily bump.
GCC Administrator [Wed, 31 Jul 2013 00:16:43 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201357

11 years agore PR c++/57673 (pack sizeof ... groups ellipsis with preceding expression)
Paolo Carlini [Tue, 30 Jul 2013 22:38:52 +0000 (22:38 +0000)]
re PR c++/57673 (pack sizeof ... groups ellipsis with preceding expression)

/cp
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57673
* parser.c (cp_parser_cache_defarg): In an NSDMI don't stop when
token->type == CPP_ELLIPSIS.

/testsuite
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57673
* g++.dg/cpp0x/nsdmi-sizeof.C: New.

From-SVN: r201354

11 years agocode-readable-1.c: Increase switch size.
Steve Ellcey [Tue, 30 Jul 2013 20:32:43 +0000 (20:32 +0000)]
code-readable-1.c: Increase switch size.

2013-07-30  Steve Ellcey  <sellcey@mips.com>

* gcc.target/mips/code-readable-1.c: Increase switch size.
* gcc.target/mips/code-readable-2.c: Ditto.
* gcc.target/mips/code-readable-3.c: Ditto.
* gcc.target/mips/code-readable-4.c: Ditto.

From-SVN: r201353

11 years agoIntroduce beginnings of a pass_manager class.
David Malcolm [Tue, 30 Jul 2013 18:52:03 +0000 (18:52 +0000)]
Introduce beginnings of a pass_manager class.

This patch introduces a gcc::pass_manager class and moves various non-GTY
globals relating to pass management into it.  The gcc::context gains its
first field: a pointer to the gcc::pass_manager instance.

gcc/
* Makefile.in (PASS_MANAGER_H): New.
(lto-cgraph.o): Depend on CONTEXT_H and PASS_MANAGER_H.
(passes.o): Likewise.
(statistics.o): Likewise.
(cgraphunit.o): Likewise.
(context.o): Depend on PASS_MANAGER_H.

* pass_manager.h: New.

* cgraphunit.c (cgraph_add_new_function): Update for moves
of globals to fields of pass_manager.
(analyze_function): Likewise.
(expand_function): Likewise.
(ipa_passes): Likewise.
(compile): Likewise.

* context.c (context::context): New.
* context.h  (context::context): New.
(context::get_passes): New.
(context::passes_): New.

* lto-cgraph.c (input_node): Update for moves of globals to
fields of pass_manager.

* passes.c (all_passes): Remove, in favor of a field of the
same name within the new class pass_manager.
(all_small_ipa_passes): Likewise.
(all_lowering_passes): Likewise.
(all_regular_ipa_passes): Likewise.
(all_late_ipa_passes): Likewise.
(all_lto_gen_passes): Likewise.
(passes_by_id): Likewise.
(passes_by_id_size): Likewise.
(gcc_pass_lists): Remove, in favor of "pass_lists" field within
the new class pass_manager.
(set_pass_for_id): Convert to...
(pass_manager::set_pass_for_id): ...method.
(get_pass_for_id): Convert to...
(pass_manager::get_pass_for_id): ...method.
(register_one_dump_file): Move body of implementation into...
(pass_manager::register_one_dump_file): ...here.
(register_dump_files_1): Convert to...
(pass_manager::register_dump_files_1): ...method.
(register_dump_files): Convert to...
(pass_manager::register_dump_files): ...method.
(create_pass_tab): Update for moves of globals to fields of
pass_manager.
(dump_passes): Move body of implementation into...
(pass_manager::dump_passes): ...here.
(register_pass): Move body of implementation into...
(pass_manager::register_pass): ...here.
(init_optimization_passes): Convert into...
(pass_manager::pass_manager): ...constructor for new
pass_manager class, and initialize the pass_lists array.
(check_profile_consistency): Update for moves of globals to
fields of pass_manager.
(dump_profile_report): Move body of implementation into...
(pass_manager::dump_profile_report): ...here.
(ipa_write_summaries_1): Update for moves of pass lists from
being globals to fields of pass_manager.
(ipa_write_optimization_summaries): Likewise.
(ipa_read_summaries):  Likewise.
(ipa_read_optimization_summaries): Likewise.
(execute_all_ipa_stmt_fixups): Likewise.

* statistics.c (statistics_fini): Update for moves of globals to
fields of pass_manager.

* toplev.c (general_init): Replace call to
init_optimization_passes with construction of the pass_manager
instance.

* tree-pass.h (all_passes): Remove, in favor of a field of the
same name within the new class pass_manager.
(all_small_ipa_passes): Likewise.
(all_lowering_passes): Likewise.
(all_regular_ipa_passes): Likewise.
(all_lto_gen_passes): Likewise.
(all_late_ipa_passes): Likewise.
(passes_by_id): Likewise.
(passes_by_id_size): Likewise.
(gcc_pass_lists): Remove, in favor of "pass_lists" field within
the new class pass_manager.
(get_pass_for_id): Remove.

gcc/lto/

* Make-lang.in (lto/lto.o:): Depend on CONTEXT_H and
PASS_MANAGER_H.

* lto.c (do_whole_program_analysis): Update for move of
all_regular_ipa_passes from a global to a field of class
pass_manager.

From-SVN: r201351

11 years agomips16.S (DELAYf): Alias to DELAYt for the MIPS IV ISA and up.
Maciej W. Rozycki [Tue, 30 Jul 2013 18:34:43 +0000 (18:34 +0000)]
mips16.S (DELAYf): Alias to DELAYt for the MIPS IV ISA and up.

* config/mips/mips16.S (DELAYf): Alias to DELAYt for the MIPS IV
ISA and up.

From-SVN: r201350

11 years ago2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Tue, 30 Jul 2013 18:16:33 +0000 (18:16 +0000)]
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

Revert last commit.

From-SVN: r201349

11 years ago2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Tue, 30 Jul 2013 18:13:15 +0000 (18:13 +0000)]
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

Revert last commit.

From-SVN: r201348

11 years agore PR c++/57947 (internal compiler error: Segmentation fault using extended initializ...
Paolo Carlini [Tue, 30 Jul 2013 16:48:52 +0000 (16:48 +0000)]
re PR c++/57947 (internal compiler error: Segmentation fault using extended initializer lists without -std=c++11 or -std=gnu++11)

/cp
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57947
* call.c (is_std_init_list): Return false if cxx_dialect == cxx98.

/testsuite
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57947
* g++.dg/parse/crash63.C: New.

From-SVN: r201344

11 years agoconfig.gcc (arm): Require 64-bit host-wide-int for all ARM target configs.
Richard Earnshaw [Tue, 30 Jul 2013 15:58:32 +0000 (15:58 +0000)]
config.gcc (arm): Require 64-bit host-wide-int for all ARM target configs.

* config.gcc (arm): Require 64-bit host-wide-int for all ARM target
configs.

From-SVN: r201342

11 years ago* arm.md (mulhi3): New expand pattern.
Richard Earnshaw [Tue, 30 Jul 2013 15:54:30 +0000 (15:54 +0000)]
* arm.md (mulhi3): New expand pattern.

From-SVN: r201341

11 years agore PR c++/57901 (Cannot call-by-value such that class has non-trivial (constexpr...
Jason Merrill [Tue, 30 Jul 2013 13:28:31 +0000 (09:28 -0400)]
re PR c++/57901 (Cannot call-by-value such that class has non-trivial (constexpr) move constructor)

PR c++/57901
* semantics.c (build_data_member_initialization, constexpr_fn_retval):
Use break_out_target_exprs instead of unshare_expr.

From-SVN: r201338

11 years agore PR c++/58022 (Compiler rejects abstract class in template class with friend operat...
Jason Merrill [Tue, 30 Jul 2013 13:28:23 +0000 (09:28 -0400)]
re PR c++/58022 (Compiler rejects abstract class in template class with friend operator<<)

PR c++/58022
* g++.dg/template/abstract1.C: New.

From-SVN: r201337

11 years agoThompson matcher refactored.
Tim Shen [Tue, 30 Jul 2013 12:02:55 +0000 (12:02 +0000)]
Thompson matcher refactored.

2013-07-30  Tim Shen  <timshen91@gmail.com>

Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/string_dispatch_01.cc:
New.

From-SVN: r201334

11 years agoprofile.c (compute_value_histograms): Do not ICE when there is mismatch only on some...
Jan Hubicka [Tue, 30 Jul 2013 12:00:42 +0000 (14:00 +0200)]
profile.c (compute_value_histograms): Do not ICE when there is mismatch only on some counters.

* profile.c (compute_value_histograms): Do not ICE when
there is mismatch only on some counters.

Co-Authored-By: Martin Liska <marxin.liska@gmail.com>
From-SVN: r201333

11 years agore PR fortran/57530 ([OOP] Wrongly rejects type_pointer => class_target (which have...
Tobias Burnus [Tue, 30 Jul 2013 07:20:43 +0000 (09:20 +0200)]
re PR fortran/57530 ([OOP] Wrongly rejects  type_pointer => class_target (which have identical declared type))

2013-07-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57530
        * symbol.c (gfc_type_compatible): A type is type compatible with
        a class if both have the same declared type.
        * interface.c (compare_type): Reject CLASS/TYPE even if they
        are type compatible.

From-SVN: r201329

11 years agore PR fortran/57530 ([OOP] Wrongly rejects type_pointer => class_target (which have...
Tobias Burnus [Tue, 30 Jul 2013 07:18:54 +0000 (09:18 +0200)]
re PR fortran/57530 ([OOP] Wrongly rejects  type_pointer => class_target (which have identical declared type))

2013-07-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57530
        * trans-expr.c (gfc_trans_class_assign): Handle CLASS array
        functions.
        (gfc_trans_pointer_assign): Ditto and support pointer assignment
        of a polymorphic var to a nonpolymorphic var.

2013-07-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57530
        * gfortran.dg/pointer_assign_8.f90: New.
        * gfortran.dg/pointer_assign_9.f90: New.
        * gfortran.dg/pointer_assign_10.f90: New.
        * gfortran.dg/pointer_assign_11.f90: New.

From-SVN: r201328

11 years agore PR rtl-optimization/57637 (Miscompare on 178.galgel in SPEC2000 on arm)
Zhenqiang Chen [Tue, 30 Jul 2013 06:53:31 +0000 (06:53 +0000)]
re PR rtl-optimization/57637 (Miscompare on 178.galgel in SPEC2000 on arm)

gcc/
2013-07-30  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR rtl-optimization/57637
* function.c (move_insn_for_shrink_wrap): Also check the
GEN set of the LIVE problem for the liveness analysis
if it exists, otherwise give up.

gcc/testsuite/
2013-07-30  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

* gcc.target/arm/pr57637.c: New testcase.

From-SVN: r201326

11 years agore PR tree-optimization/57993 (ICE: verify_ssa failed (definition in block n does...
Bill Schmidt [Tue, 30 Jul 2013 01:01:35 +0000 (01:01 +0000)]
re PR tree-optimization/57993 (ICE: verify_ssa failed (definition in block n does not dominate use in block m))

gcc:

2013-07-29  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

PR tree-optimization/57993
* gimple-ssa-strength-reduction.c (replace_mult_candidate): Record
replaced statement in the candidate table.
(phi_add_costs): Return infinite cost when the hidden basis does
not dominate all phis on which the candidate is dependent.
(replace_one_candidate): Record replaced statement in the
candidate table.

gcc/testsuite:

2013-07-29  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

PR tree-optimization/57993
* gcc.dg/torture/pr57993.c: New test.

From-SVN: r201325

11 years agoDaily bump.
GCC Administrator [Tue, 30 Jul 2013 00:16:25 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201324

11 years agore PR rtl-optimization/58021 (MODE_EXIT switches at NOTE_INSN_DELETED)
Joern Rennecke [Mon, 29 Jul 2013 22:45:38 +0000 (22:45 +0000)]
re PR rtl-optimization/58021 (MODE_EXIT switches at NOTE_INSN_DELETED)

        PR rtl-optimization/58021
        * mode-switching.c (create_pre_exit): Always split off preceding
        insns if we are not at the basic block head.

From-SVN: r201321

11 years ago* gcc.dg/tree-ssa/pr44258.c: Disable scan test for Epiphany.
Joern Rennecke [Mon, 29 Jul 2013 20:46:29 +0000 (20:46 +0000)]
* gcc.dg/tree-ssa/pr44258.c: Disable scan test for Epiphany.

From-SVN: r201320

11 years agoepiphany.md (*isub_i+2): New peephole.
Joern Rennecke [Mon, 29 Jul 2013 20:34:29 +0000 (20:34 +0000)]
epiphany.md (*isub_i+2): New peephole.

* config/epiphany/epiphany.md (*isub_i+2): New peephole.
(ashlv2si3): New expander.
(*ashlv2si3_i): New define_insn_and_split.
* predicates.md (float_operation): Allow patterns with three
basic sub-patterns.

From-SVN: r201319

11 years agore PR c++/57948 (internal compiler error: in initialize_reference, at cp/call.c:9285)
Paolo Carlini [Mon, 29 Jul 2013 20:12:20 +0000 (20:12 +0000)]
re PR c++/57948 (internal compiler error: in initialize_reference, at cp/call.c:9285)

/cp
2013-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57948
* call.c (initialize_reference): Don't crash when reference_binding
returns a conv with conv->kind == ck_ambig.

/testsuite
2013-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57948
* g++.dg/conversion/ambig2.C: New.

From-SVN: r201318

11 years agomangle.c (write_name): Check for null context.
Jason Merrill [Mon, 29 Jul 2013 19:40:13 +0000 (15:40 -0400)]
mangle.c (write_name): Check for null context.

* mangle.c (write_name): Check for null context.
(write_unscoped_name): Allow PARM_DECL context.

From-SVN: r201317

11 years agomatch.c (gfc_match_call): Exit loop after setting i.
Po-Chun Chang [Mon, 29 Jul 2013 19:08:03 +0000 (13:08 -0600)]
match.c (gfc_match_call): Exit loop after setting i.

       * match.c (gfc_match_call): Exit loop after setting i.

        * resolve.c (resolve_variable): Exit loop after setting seen.

        * expr.c (gfc_check_pointer_assign): Exit loop after setting
        * warn.

        * trans-array.c (set_loop_bounds): Exit loop after setting
        nonoptional_arr.

        * trans-io.c (gfc_trans_transfer): Exit loop after setting
        * seen_vector.

From-SVN: r201316

11 years agoatomic (compare_exchange_weak, [...]): Add call to __cmpexch_failure_order.
Nathan Froyd [Mon, 29 Jul 2013 17:13:05 +0000 (17:13 +0000)]
atomic (compare_exchange_weak, [...]): Add call to __cmpexch_failure_order.

libstdc++-v3/
* include/std/atomic (compare_exchange_weak, compare_exchange_strong):
Add call to __cmpexch_failure_order.
* testsuite/util/testsuite_common_types.h
(compare_exchange_order_lowering): New generator.
* testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc:
New test.

From-SVN: r201315

11 years agolinux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.
Maciej W. Rozycki [Mon, 29 Jul 2013 14:37:30 +0000 (14:37 +0000)]
linux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.

gcc/
* config/mips/linux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.
(UCLIBC_DYNAMIC_LINKER): New macro.
* config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32): Handle
`-mnan=2008'.
(GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32): Likewise.
(UCLIBC_DYNAMIC_LINKER32): Undefine macro first.  Handle
`-mnan=2008'.
(UCLIBC_DYNAMIC_LINKER64): Redefine macro.
(UCLIBC_DYNAMIC_LINKERN32): Likewise.
* config/mips/mips-modes.def: Remove RESET_FLOAT_FORMAT calls
for SF and DF modes.  Use ieee_quad_format for TF mode.
* config/mips/mips-opts.h (mips_ieee_754_setting): New enum.
* config/mips/mips.c (mips_file_start): Output a `.nan' directive.
(mips_option_override): Handle `-mnan=legacy'.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Handle
`-mabs=2008' and `-mnan=2008'.
(OPTION_DEFAULT_SPECS): Add "nan" default.
(ASM_SPEC): Handle `-mnan='.
[!HAVE_AS_NAN] (HAVE_AS_NAN): New macro.
* config/mips/mips.md (abs<mode>2): Handle `-mabs=2008', update
comment accordingly.
(neg<mode>2): Likewise.
* config/mips/mips.opt (mabs, mnan): New options.
* doc/install.texi (Configuration): Document `--with-nan=' option.
* doc/invoke.texi (Option Summary): List MIPS `-mabs=' and
`-mnan=' options.
(MIPS Options): Document them.
* config.gcc <mips*-*-*>: Handle `--with-nan='.
* configure.ac <mips*-*-*>: Check for GAS `-mnan=2008' support.
* configure: Regenerate.
* config.in: Regenerate.

gcc/testsuite/
* gcc.target/mips/fabs-2008.c: New test case.
* gcc.target/mips/fabs-legacy.c: New test case.
* gcc.target/mips/fabsf-2008.c: New test case.
* gcc.target/mips/fabsf-legacy.c: New test case.
* gcc.target/mips/fneg-2008.c: New test case.
* gcc.target/mips/fneg-legacy.c: New test case.
* gcc.target/mips/fneg-2008.c: New test case.
* gcc.target/mips/fneg-legacy.c: New test case.
* gcc.target/mips/nan-2008.c: New test case.
* gcc.target/mips/nan-legacy.c: New test case.
* gcc.target/mips/nanf-2008.c: New test case.
* gcc.target/mips/nanf-legacy.c: New test case.
* gcc.target/mips/nans-2008.c: New test case.
* gcc.target/mips/nans-legacy.c: New test case.
* gcc.target/mips/nansf-2008.c: New test case.
* gcc.target/mips/nansf-legacy.c: New test case.
* gcc.target/mips/mips.exp: Handle `-mabs=' and `-mnan='.

From-SVN: r201313

11 years agore PR target/57954 (AVX missing vxorps (zeroing) before vcvtsi2s %edx, slow down...
Uros Bizjak [Mon, 29 Jul 2013 11:17:51 +0000 (13:17 +0200)]
re PR target/57954 (AVX missing vxorps (zeroing) before vcvtsi2s %edx, slow down AVX code)

2013-07-29  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (float post-reload splitters): Do not check
for subregs of SSE registers.

2013-07-29  Uros Bizjak  <ubizjak@gmail.com>
    H.J. Lu  <hongjiu.lu@intel.com>

PR target/57954
PR target/57988
* config/i386/i386.md (post-reload splitter
to avoid partial SSE reg dependency stalls): New pattern.

From-SVN: r201308

11 years agoFix incorrect changelog entry.
Ramana Radhakrishnan [Mon, 29 Jul 2013 10:36:11 +0000 (10:36 +0000)]
Fix incorrect changelog entry.

From-SVN: r201307

11 years ago2013-07-29 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas Krebbel [Mon, 29 Jul 2013 08:03:38 +0000 (08:03 +0000)]
2013-07-29  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/target.h (htm_begin, htm_commit, htm_abort)
(htm_transaction_active): Enable zEC12 instructions in the
assembler.
* configure.tgt: Remove -Wa,-march=zEC12 from XCFLAGS.

From-SVN: r201301

11 years agos390.md ("movcc"): Swap load and store instructions.
Dominik Vogt [Mon, 29 Jul 2013 08:02:21 +0000 (08:02 +0000)]
s390.md ("movcc"): Swap load and store instructions.

2013-07-29  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* config/s390/s390.md ("movcc"): Swap load and store instructions.

From-SVN: r201300

11 years agotarget-supports.exp (check_effective_target_non_bionic): New effective-target test.
Alexander Ivchenko [Mon, 29 Jul 2013 06:05:34 +0000 (06:05 +0000)]
target-supports.exp (check_effective_target_non_bionic): New effective-target test.

        * lib/target-supports.exp (check_effective_target_non_bionic): New
        effective-target test.
        * g++.dg/tls/thread_local4.C: Disable test for Bionic.
        * g++.dg/tls/thread_local4g.C: Ditto.

Co-Authored-By: Maxim Kuvyrkov <maxim@kugelworks.com>
From-SVN: r201298

11 years agoDaily bump.
GCC Administrator [Mon, 29 Jul 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201297

11 years agore PR fortran/58009 (Elements with same value in vector subscript in variable definit...
Thomas Koenig [Sun, 28 Jul 2013 21:10:23 +0000 (21:10 +0000)]
re PR fortran/58009 (Elements with same value in vector subscript in variable definition context)

2013-07-28  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/58009
* expr.c (gfc_check_vardef_context):  Check for same values in
vector expression subscripts.

2013-07-28  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/58009
* gfortran.dg/vector_subsript_7.f90:  New test.

From-SVN: r201294

11 years agoFix incorrect ChangeLog entry.
Tim Shen [Sun, 28 Jul 2013 10:23:43 +0000 (10:23 +0000)]
Fix incorrect ChangeLog entry.

From-SVN: r201292

11 years agoDaily bump.
GCC Administrator [Sun, 28 Jul 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201290

11 years agoepiphany.c (epiphany_compute_frame_size): Also reserve space for saving UNKNOWN_REGNU...
Joern Rennecke [Sat, 27 Jul 2013 18:41:49 +0000 (18:41 +0000)]
epiphany.c (epiphany_compute_frame_size): Also reserve space for saving UNKNOWN_REGNUM for leaf functions.

        * config/epiphany/epiphany.c (epiphany_compute_frame_size):
        Also reserve space for saving UNKNOWN_REGNUM for leaf functions.

From-SVN: r201287

11 years agore PR fortran/57991 (Enhance "Same actual argument associated" warning (-Waliasing))
Tobias Burnus [Sat, 27 Jul 2013 14:17:01 +0000 (16:17 +0200)]
re PR fortran/57991 (Enhance "Same actual argument associated" warning (-Waliasing))

2013-07-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57991
        * interface.c (check_some_aliasing): Also warn for intent
        * OUT/OUT.

2013-07-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57991
        * gfortran.dg/warn_alias.f90: New.

From-SVN: r201286

11 years agore PR fortran/57285 ([OOP] ICE on invalid: "gfc_array_dimen_size(): Bad dimension...
Janus Weil [Sat, 27 Jul 2013 12:55:59 +0000 (14:55 +0200)]
re PR fortran/57285 ([OOP] ICE on invalid: "gfc_array_dimen_size(): Bad dimension" due to SIZE intrinsic with invalid dim on CLASS dummy)

2013-07-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57285
* check.c (dim_rank_check): Re-enable this check for CLASS arrays.

2013-07-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57285
* gfortran.dg/class_array_19.f90: New.

From-SVN: r201284

11 years agopr57705.c: Adjust for a !vect_pack_trunc target.
Eric Botcazou [Sat, 27 Jul 2013 06:38:12 +0000 (06:38 +0000)]
pr57705.c: Adjust for a !vect_pack_trunc target.

* gcc.dg/vect/pr57705.c: Adjust for a !vect_pack_trunc target.
* gcc.dg/vect/pr57741-2.c: Require a vect_float target.
* gcc.dg/vect/pr57741-3.c: Likewise.
* gcc.dg/vect/bb-slp-32.c: XFAIL for a vect_no_align target.

From-SVN: r201282

11 years agoDaily bump.
GCC Administrator [Sat, 27 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201279

11 years agodwarf2out.c (die_checksum_ordered): Don't include template instantiations in signature.
Cary Coutant [Fri, 26 Jul 2013 20:14:43 +0000 (20:14 +0000)]
dwarf2out.c (die_checksum_ordered): Don't include template instantiations in signature.

gcc/
* dwarf2out.c (die_checksum_ordered): Don't include template
instantiations in signature.
(is_template_parameter): New function.
(is_template_instantiation): New function.
(generate_skeleton_bottom_up): Don't include template instantiations
in type unit DIE.
(generate_skeleton): Likewise.
(break_out_comdat_types): Move recursive call to break out nested
types earlier.
(prune_unused_types_mark_generic_parms_dies): Call
is_template_parameter.

From-SVN: r201275

11 years agoCorrect ChangeLog entry
William Schmidt [Fri, 26 Jul 2013 19:38:14 +0000 (19:38 +0000)]
Correct ChangeLog entry

From-SVN: r201274

11 years agopr37868.c: Disable for epiphany.
Joern Rennecke [Fri, 26 Jul 2013 18:35:29 +0000 (18:35 +0000)]
pr37868.c: Disable for epiphany.

* gcc.dg/torture/pr37868.c: Disable for epiphany.
* gcc.dg/sibcall-6.c: Enable for epiphany.

From-SVN: r201272

11 years agopr27095.c: For Epiphany, add -mshort-calls.
Joern Rennecke [Fri, 26 Jul 2013 18:28:27 +0000 (18:28 +0000)]
pr27095.c: For Epiphany, add -mshort-calls.

* gcc.dg/pr27095.c: For Epiphany, add -mshort-calls.
* gcc.dg/tree-ssa/loop-1.c: Likewise.

From-SVN: r201271

11 years ago* gcc.c-torture/execute/builtins/stpcpy-chk.x: New file.
Joern Rennecke [Fri, 26 Jul 2013 18:16:23 +0000 (18:16 +0000)]
* gcc.c-torture/execute/builtins/stpcpy-chk.x: New file.

From-SVN: r201270

11 years agoSkip tests that make assumptions about struct layout that don't hold on epiphany.
Joern Rennecke [Fri, 26 Jul 2013 15:22:43 +0000 (15:22 +0000)]
Skip tests that make assumptions about struct layout that don't hold on epiphany.

        Skip tests that make assumptions about struct layout that don't hold
        on epiphany.  These tests could be fixed by adding padded attributes,
        See:
        http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00006.html
        http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01513.html
        http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01504.html

        * g++.dg/cpp0x/cast.C: Skip for epiphany-*-*.
        * g++.dg/cpp0x/iop.C: Likewise.
        * g++.dg/cpp0x/named_refs.C: Likewise.
        * g++.dg/cpp0x/rv1p.C: Likewise.
        * g++.dg/cpp0x/rv2p.C: Likewise.
        * g++.dg/cpp0x/rv3p.C: Likewise.
        * g++.dg/cpp0x/rv4p.C: Likewise.
        * g++.dg/cpp0x/rv5p.C: Likewise.
        * g++.dg/cpp0x/rv6p.C: Likewise.
        * g++.dg/cpp0x/rv7p.C: Likewise.
        * g++.dg/cpp0x/rv8p.C: Likewise.
        * g++.dg/ext/strncpy-chk1.C: Likewise.
        * gcc.dg/builtin-object-size-10.c: Likewise.
        * gcc.dg/builtin-object-size-11.c: Likewise.
        * gcc.dg/builtin-stringop-chk-1.c: Likewise.
        * gcc.dg/pr25805.c: Likewise.
        * gcc.c-torture/execute/builtins/memcpy-chk.x: New file.
        * gcc.c-torture/execute/builtins/memmove-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/mempcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/memset-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/snprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/sprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/stpcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strcat-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strncat-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strncpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/vsnprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/vsprintf-chk.x: Likewise.
        * gcc.c-torture/execute/zerolen-2.x: Likewise.

From-SVN: r201268

11 years agominmax_minus.c: Scan
Kyrylo Tkachov [Fri, 26 Jul 2013 14:54:06 +0000 (14:54 +0000)]
minmax_minus.c: Scan

gcc/testsuite/
* gcc.target/arm/minmax_minus.c: Scan

From-SVN: r201267

11 years ago* gcc.dg/guality/guality.exp: Skip on AIX.
David Edelsohn [Fri, 26 Jul 2013 11:50:39 +0000 (11:50 +0000)]
* gcc.dg/guality/guality.exp: Skip on AIX.

From-SVN: r201266