platform/upstream/gcc.git
11 years agoImprove cstore code generation on 64-bit sparc.
David S. Miller [Wed, 10 Apr 2013 19:41:57 +0000 (19:41 +0000)]
Improve cstore code generation on 64-bit sparc.

One major suboptimal area of the sparc back end is cstore generation
on 64-bit.

Due to the way arguments and return values of functions must be
promoted, the ideal mode for cstore's result would be DImode.

But this hasn't been done because of a fundamental limitation
of the cstore patterns.  They require a fixed mode be used for
the boolean result value.

I've decided to work around this by building a target hook which
specifies the type to use for conditional store results, and then I
use a special predicate for operans 0 in the cstore expanders so
that they still match even when we use DImode.

The default version of the target hook just does what it does now,
so no other target should be impacted by this at all.

Regstrapped on 32-bit sparc-linux-gnu and I've run the testsuite
with "-m64" to validate the 64-bit side.

gcc/

* target.def (cstore_mode): New hook.
* target.h: Include insn-codes.h
* targhooks.c: Likewise.
(default_cstore_mode): New function.
* targhooks.h: Declare it.
* doc/tm.texi.in: New hook slot for TARGET_CSTORE_MODE.
* doc/tm.texi: Rebuild.
* expmed.c (emit_cstore): Obtain cstore boolean result mode using
target hook, rather than inspecting the insn_data.
* config/sparc/sparc.c (sparc_cstore_mode): New function.
(TARGET_CSTORE_MODE): Redefine.
(emit_scc_insn): When TARGET_ARCH64, emit new 64-bit boolean
result patterns.
* config/sparc/predicates.md (cstore_result_operand): New special
predicate.
* config/sparc/sparc.md (cstoresi4, cstoredi4, cstore<F:mode>4):
Use it for operand 0.
(*seqsi_special): Rewrite using 'P' mode iterator on operand 0.
(*snesi_special): Likewise.
(*snesi_zero): Likewise.
(*seqsi_zero): Likewise.
(*sltu_insn): Likewise.
(*sgeu_insn): Likewise.
(*seqdi_special): Make operand 0 and comparison operation be of
DImode.
(*snedi_special): Likewise.
(*snedi_special_vis3): Likewise.
(*neg_snesi_zero): Rename to *neg_snesisi_zero.
(*neg_snesi_sign_extend): Rename to *neg_snesidi_zero.
(*snesi_zero_extend): Delete, covered by 'P' mode iterator.
(*neg_seqsi_zero): Rename to *neg_seqsisi_zero.
(*neg_seqsi_sign_extend): Rename to *neg_seqsidi_zero.
(*seqsi_zero_extend): Delete, covered by 'P' mode iterator.
(*sltu_extend_sp64): Likewise.
(*neg_sltu_insn): Rename to *neg_sltusi_insn.
(*neg_sltu_extend_sp64): Rename to *neg_sltudi_insn.
(*sgeu_extend_sp64): Delete, covered by 'P' mode iterator.
(*neg_sgeu_insn): Rename to *neg_sgeusi_insn.
(*neg_sgeu_extend_sp64): Rename to *neg_sgeudi_insn.

gcc/testsuite/

* gcc.target/sparc/setcc-4.c: New test.
* gcc.target/sparc/setcc-5.c: New test.

From-SVN: r197679

11 years agoaarch64.c (aarch64_print_extension): New function.
Yufeng Zhang [Wed, 10 Apr 2013 17:22:02 +0000 (17:22 +0000)]
aarch64.c (aarch64_print_extension): New function.

* config/aarch64/aarch64.c (aarch64_print_extension): New function.
(aarch64_start_file): Use the new function.

From-SVN: r197677

11 years agocommon.opt: Add -gdwarf.
Senthil Kumar Selvaraj [Wed, 10 Apr 2013 14:47:55 +0000 (14:47 +0000)]
common.opt: Add -gdwarf.

* common.opt: Add -gdwarf.
* opts.c (common_handle_option): Handle it.
* gcc.c (ASM_DEBUG_SPEC): Don't expect "-2" for DWARF.

Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r197675

11 years agopasses.c (execute_todo): Do not call ggc_collect conditional here.
Richard Biener [Wed, 10 Apr 2013 11:33:31 +0000 (11:33 +0000)]
passes.c (execute_todo): Do not call ggc_collect conditional here.

2013-04-10  Richard Biener  <rguenther@suse.de>

* passes.c (execute_todo): Do not call ggc_collect conditional here.
(execute_one_ipa_transform_pass): But unconditionally here.
(execute_one_pass): And here.
(init_optimization_passes): Remove reload pass.
* tree-pass.h (TODO_ggc_collect): Remove.
(pass_reload): Likewise.
* ira.c (do_reload): Merge into ...
(ira): ... this.
(rest_of_handle_reload): Remove.
(pass_reload): Likewise.
* config/i386/i386.c (ix86_option_override): Refer to ira instead
of reload for vzeroupper pass placement.
* <everywhere>: Remove TODO_ggc_collect from todo_flags_start
and todo_flags_finish of all passes.

* g++.dg/pr55604.C: Use -fdump-rtl-ira.

From-SVN: r197671

11 years agotree-vectorizer.h (struct _slp_oprnd_info): Remove first_const_oprnd field, rename...
Richard Biener [Wed, 10 Apr 2013 10:40:33 +0000 (10:40 +0000)]
tree-vectorizer.h (struct _slp_oprnd_info): Remove first_const_oprnd field, rename first_def_type to first_op_type.

2013-04-10  Richard Biener  <rguenther@suse.de>

* tree-vectorizer.h (struct _slp_oprnd_info): Remove
first_const_oprnd field, rename first_def_type to first_op_type.
* tree-vect-slp.c (vect_create_oprnd_info): Adjust.
(vect_get_and_check_slp_defs): Always use the type of the
operand.  Allow mixed vect_external_def, vect_constant_def types.
(vect_get_constant_vectors): Handle mixed vect_external_def,
vect_constant_def types.

* gcc.dg/vect/slp-39.c: New testcase.

From-SVN: r197669

11 years agore PR tree-optimization/55524 (If fnma exists but not fms, convert_mult_to_fma should...
Joern Rennecke [Wed, 10 Apr 2013 09:54:25 +0000 (09:54 +0000)]
re PR tree-optimization/55524 (If fnma exists but not fms, convert_mult_to_fma should prefer to former over the latter.)

gcc:
2013-04-10  Joern Rennecke <joern.rennecke@embecosm.com>

        PR tree-optimization/55524
        * tree-ssa-math-opts.c
        (convert_mult_to_fma): Don't use an fms construct
        when we don't have an fms operation, but fnma, and it looks
        likely that we'll be able to use the latter.

gcc/testsuite:
2013-04-10  Joern Rennecke <joern.rennecke@embecosm.com>

        PR tree-optimization/55524
        * gcc.target/epiphany/fnma-1.c: New test.

From-SVN: r197668

11 years agocif-code.def (OVERWRITABLE): Correct the comment for overwritable function.
Zhouyi Zhou [Wed, 10 Apr 2013 09:22:04 +0000 (09:22 +0000)]
cif-code.def (OVERWRITABLE): Correct the comment for overwritable function.

2013-04-10  Zhouyi Zhou <yizhouzhou@ict.ac.cn>

* cif-code.def (OVERWRITABLE): Correct the comment for overwritable
function.
* ipa-inline.c (can_inline_edge_p): Let dump mechanism report the
inline fail caused by overwritable functions.

* gcc.dg/tree-ssa/inline-11.c: New test

From-SVN: r197667

11 years agocombine.c (simplify_compare_const): Use GET_MODE_MASK to filter out unnecessary bits...
Chung-Ju Wu [Wed, 10 Apr 2013 09:12:30 +0000 (09:12 +0000)]
combine.c (simplify_compare_const): Use GET_MODE_MASK to filter out unnecessary bits in the constant power of two case.

2013-04-10  Chung-Ju Wu  <jasonwucj@gmail.com>

* combine.c (simplify_compare_const): Use GET_MODE_MASK to filter out
unnecessary bits in the constant power of two case.

From-SVN: r197666

11 years agotree-vect-slp.c (vect_get_and_check_slp_defs): Remove broken code swapping operands.
Richard Biener [Wed, 10 Apr 2013 08:20:07 +0000 (08:20 +0000)]
tree-vect-slp.c (vect_get_and_check_slp_defs): Remove broken code swapping operands.

2013-04-10  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_get_and_check_slp_defs): Remove
broken code swapping operands.
(vect_build_slp_tree): Do not compute load permutations here.
(vect_analyze_slp_instance): Compute load permutations here,
after building the SLP tree.

From-SVN: r197665

11 years agosh.md (barrier_align): Use next/prev_active_insn instead of next/prev_real_insn.
Christian Bruel [Wed, 10 Apr 2013 07:52:00 +0000 (09:52 +0200)]
sh.md (barrier_align): Use next/prev_active_insn instead of next/prev_real_insn.

*  config/sh/sh.md (barrier_align): Use next/prev_active_insn instead
of next/prev_real_insn.

From-SVN: r197664

11 years agoMAINTAINERS (Write After Approval): Add myself.
Chung-Ju Wu [Wed, 10 Apr 2013 07:02:32 +0000 (07:02 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2013-04-10 Chung-Ju Wu <jasonwucj@gmail.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r197663

11 years agore PR c++/56895 (ICE: unexpected expression of kind arrow_expr)
Jakub Jelinek [Wed, 10 Apr 2013 06:33:26 +0000 (08:33 +0200)]
re PR c++/56895 (ICE: unexpected expression of kind arrow_expr)

PR c++/56895
* typeck.c (cp_build_binary_op): Call fold_non_dependent_expr_sfinae
first before calling maybe_constant_value for warn_for_div_by_zero
or invalid shift count warning purposes.

* g++.dg/template/arrow3.C: New test.

From-SVN: r197660

11 years agoDaily bump.
GCC Administrator [Wed, 10 Apr 2013 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197658

11 years agoipa.c (cgraph_externally_visible_p, [...]): Drop aliased parameter.
Jan Hubicka [Tue, 9 Apr 2013 22:45:38 +0000 (00:45 +0200)]
ipa.c (cgraph_externally_visible_p, [...]): Drop aliased parameter.

* ipa.c (cgraph_externally_visible_p, varpool_externally_visible_p): Drop
aliased parameter.
(function_and_variable_visibility): Do not handle alias pairs.
* cgraph.c (varpool_externally_visible_p): Update prototype.
* varpool.c (varpool_add_new_variable): Update.

From-SVN: r197652

11 years agoconfigure, [...]: Rebuild.
Tom Tromey [Tue, 9 Apr 2013 20:55:17 +0000 (20:55 +0000)]
configure, [...]: Rebuild.

* configure, config.h.in: Rebuild.
* configure.ac: Use GLIBCXX_CHECK_SDT_H.  Don't check for
sys/sdt.h.
* acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.

From-SVN: r197649

11 years agobaseline_symbols.txt: Update.
Uros Bizjak [Tue, 9 Apr 2013 20:38:21 +0000 (22:38 +0200)]
baseline_symbols.txt: Update.

* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.

From-SVN: r197647

11 years agore PR c++/25466 (typeid expression fails to throw bad_typeid according to 5.2.8p2)
Jason Merrill [Tue, 9 Apr 2013 18:11:38 +0000 (14:11 -0400)]
re PR c++/25466 (typeid expression fails to throw bad_typeid according to 5.2.8p2)

PR c++/25466
* rtti.c (build_typeid): Check the address of the argument
rather than looking for an INDIRECT_REF.

From-SVN: r197644

11 years agoarm.md (minmax_arithsi_non_canon): New pattern.
Kyrylo Tkachov [Tue, 9 Apr 2013 16:08:47 +0000 (16:08 +0000)]
arm.md (minmax_arithsi_non_canon): New pattern.

2013-04-09  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.md (minmax_arithsi_non_canon): New pattern.

* gcc.target/arm/minmax_minus.c: New test.

From-SVN: r197642

11 years agosched-vis.c (print_pattern): Print SEQUENCE of insns as insns.
Steven Bosscher [Tue, 9 Apr 2013 15:02:41 +0000 (15:02 +0000)]
sched-vis.c (print_pattern): Print SEQUENCE of insns as insns.

* sched-vis.c (print_pattern): Print SEQUENCE of insns as insns.

From-SVN: r197640

11 years agosparc.md: Use define_c_enum for "unspec" and "unspecv".
Steven Bosscher [Tue, 9 Apr 2013 15:01:45 +0000 (15:01 +0000)]
sparc.md: Use define_c_enum for "unspec" and "unspecv".

* config/sparc/sparc.md: Use define_c_enum for "unspec" and "unspecv".

From-SVN: r197639

11 years agore PR tree-optimization/48762 (valgrind: Invalid read/write of size 8 in cse_main...
Marek Polacek [Tue, 9 Apr 2013 14:56:59 +0000 (14:56 +0000)]
re PR tree-optimization/48762 (valgrind: Invalid read/write of size 8 in cse_main with -O --param max-cse-path-length=0 on basic code)

PR tree-optimization/48762
* params.def (PARAM_MAX_CSE_INSNS): Increase the minimum
value to 1.

From-SVN: r197637

11 years agotree-vect-slp.c (vect_get_and_check_slp_defs): Remove code dealing with cost.
Richard Biener [Tue, 9 Apr 2013 14:12:34 +0000 (14:12 +0000)]
tree-vect-slp.c (vect_get_and_check_slp_defs): Remove code dealing with cost.

2013-04-09  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_get_and_check_slp_defs): Remove code
dealing with cost.
(vect_build_slp_tree): Likewise.
(vect_analyze_slp_cost_1, vect_analyze_slp_cost): New functions
calculating the cost of a SLP instance.
(vect_analyze_slp_instance): Use it from here, after building
the SLP tree.

From-SVN: r197635

11 years agore PR middle-end/56883 (error openmp parallel for order)
Jakub Jelinek [Tue, 9 Apr 2013 13:25:58 +0000 (15:25 +0200)]
re PR middle-end/56883 (error openmp parallel for order)

PR middle-end/56883
* omp-low.c (expand_omp_for_generic, expand_omp_for_static_nochunk,
expand_omp_for_static_chunk): Use simple_p = true in
force_gimple_operand_gsi calls when assigning to addressable decls.

* c-c++-common/gomp/pr56883.c: New test.

From-SVN: r197633

11 years agotree-vrp.c (simplify_cond_using_ranges): Simplify test of boolean when the boolean...
Jeff Law [Tue, 9 Apr 2013 13:05:08 +0000 (07:05 -0600)]
tree-vrp.c (simplify_cond_using_ranges): Simplify test of boolean when the boolean was created by converting a wider...

       * tree-vrp.c (simplify_cond_using_ranges): Simplify test of boolean
       when the boolean was created by converting a wider object which
       had a boolean range.

        * gcc.dg/tree-ssa/vrp87.c: New test

From-SVN: r197631

11 years agoAdd missing ChangeLog entry
Andi Kleen [Tue, 9 Apr 2013 12:41:09 +0000 (12:41 +0000)]
Add missing ChangeLog entry

From-SVN: r197630

11 years agotree-vectorizer.h (slp_void_p): Remove.
Richard Biener [Tue, 9 Apr 2013 12:39:22 +0000 (12:39 +0000)]
tree-vectorizer.h (slp_void_p): Remove.

2013-04-09  Richard Biener  <rguenther@suse.de>

* tree-vectorizer.h (slp_void_p): Remove.
(slp_tree): Typedef before _slp_tree declaration.
(struct _slp_tree): Use a vector of slp_tree as children.
(vect_get_place_in_interleaving_chain): Remove.
* tree-vect-data-refs.c (vect_get_place_in_interleaving_chain):
Move ...
* tree-vect-slp.c (vect_get_place_in_interleaving_chain): ... here
and make static.
(vect_free_slp_tree, vect_print_slp_tree, vect_mark_slp_stmts,
vect_mark_slp_stmts_relevant, vect_slp_rearrange_stmts,
vect_detect_hybrid_slp_stmts, vect_slp_analyze_node_operations,
vect_schedule_slp_instance, vect_remove_slp_scalar_calls):
Use slp_node instead of slp_void_p and adjust.

From-SVN: r197629

11 years agoexpr.c (build_java_binop): Pass a type to build_int_cst.
Richard Biener [Tue, 9 Apr 2013 10:48:59 +0000 (10:48 +0000)]
expr.c (build_java_binop): Pass a type to build_int_cst.

2013-04-09  Richard Biener  <rguenther@suse.de>

java/
* expr.c (build_java_binop): Pass a type to build_int_cst.

* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa): Avoid
work that is not necessary.

From-SVN: r197626

11 years agore PR tree-optimization/56854 (error: non-decl/MEM_REF LHS in clobber statement)
Jakub Jelinek [Tue, 9 Apr 2013 10:04:24 +0000 (12:04 +0200)]
re PR tree-optimization/56854 (error: non-decl/MEM_REF LHS in clobber statement)

PR tree-optimization/56854
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Don't
forward into clobber stmts if it would change MEM_REF lhs into
non-MEM_REF.

* g++.dg/torture/pr56854.C: New test.

From-SVN: r197625

11 years agogfortran.texi (KIND Type Parameters, [...]): Add crossrefs.
Tobias Burnus [Tue, 9 Apr 2013 10:02:35 +0000 (12:02 +0200)]
gfortran.texi (KIND Type Parameters, [...]): Add crossrefs.

2013-04-09  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (KIND Type Parameters,
        Internal representation of LOGICAL variables): Add crossrefs.
        (Intrinsic Types): Mention issues with _Bool interop.
        (Naming and argument-passing conventions): New section.

From-SVN: r197624

11 years agotree.c (type_hash_lookup, [...]): Make static.
Maxim Kuvyrkov [Tue, 9 Apr 2013 09:47:33 +0000 (09:47 +0000)]
tree.c (type_hash_lookup, [...]): Make static.

* tree.c (type_hash_lookup, type_hash_add): Make static.
* tree.h (type_hash_lookup, type_hash_add): Remove global declarations.

From-SVN: r197623

11 years agotree.h (unsave_expr_now): Remove.
Richard Biener [Tue, 9 Apr 2013 08:26:45 +0000 (08:26 +0000)]
tree.h (unsave_expr_now): Remove.

2013-04-09  Richard Biener  <rguenther@suse.de>

* tree.h (unsave_expr_now): Remove.
* tree-inline.c (mark_local_for_remap_r): Remove.
(unsave_expr_1): Likewise.
(unsave_r): Likewise.
(unsave_expr_now): Likewise.
* tree-ssa-copy.c (replace_exp_1): Use unshare_expr.
(propagate_tree_value): Likewise.

From-SVN: r197620

11 years agoFix non-ASCII characters in names.
Jakub Jelinek [Tue, 9 Apr 2013 07:29:32 +0000 (09:29 +0200)]
Fix non-ASCII characters in names.

From-SVN: r197618

11 years agoDaily bump.
GCC Administrator [Tue, 9 Apr 2013 00:16:54 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197617

11 years agore PR c++/56838 (GCC svn doesn't compile libreoffice 4.0.1.2)
Jason Merrill [Mon, 8 Apr 2013 21:16:09 +0000 (17:16 -0400)]
re PR c++/56838 (GCC svn doesn't compile libreoffice 4.0.1.2)

PR c++/56838
PR c++/17232
* typeck2.c (abstract_virtuals_error_sfinae): Disable
complete_type again.

From-SVN: r197613

11 years agortl.texi (sequence): Rewrite documentation to match the current use of SEQUENCE rtl...
Steven Bosscher [Mon, 8 Apr 2013 19:59:57 +0000 (19:59 +0000)]
rtl.texi (sequence): Rewrite documentation to match the current use of SEQUENCE rtl objects.

* doc/rtl.texi (sequence): Rewrite documentation to match the
current use of SEQUENCE rtl objects.
* rtl.def (SEQUENCE): Likewise.

* doc/rtl.texi (NOTE_INSN_EH_REGION_BEG, NOTE_INSN_EH_REGION_END):
Update documentation.
(NOTE_INSN_LOOP_BEG, NOTE_INSN_LOOP_END, NOTE_INSN_LOOP_CONT,
NOTE_INSN_LOOP_VTOP): Remove documentation for non-existing notes.

* reg-notes.def (REG_EH_CONTEXT): Remove unused note.

From-SVN: r197611

11 years agore PR fortran/56872 (Incorrect SUM evaluation, involving implied-do loop, with -ffron...
Thomas Koenig [Mon, 8 Apr 2013 19:36:43 +0000 (19:36 +0000)]
re PR fortran/56872 (Incorrect SUM evaluation, involving implied-do loop, with -ffrontend-optimize)

2013-04-08  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/56782
* frontend-passes.c (callback_reduction):  Dont't do
any simplification if there is only a single element
which has an iterator.

2013-04-08  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/56782
* gfortran.dg/array_constructor_44.f90:  New test.

From-SVN: r197610

11 years agore PR c++/56871 ([c++11] Specialization of constexpr Templated Function)
Paolo Carlini [Mon, 8 Apr 2013 18:09:35 +0000 (18:09 +0000)]
re PR c++/56871 ([c++11] Specialization of constexpr Templated Function)

/cp
2013-04-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56871
* decl.c (validate_constexpr_redeclaration): Allow an explicit
specialization to be different wrt the constexpr specifier.

/testsuite
2013-04-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56871
* g++.dg/cpp0x/constexpr-specialization.C: New.

From-SVN: r197597

11 years agoFirst phase of unifying the computation of profile scale factors/probabilities and...
Teresa Johnson [Mon, 8 Apr 2013 17:39:10 +0000 (17:39 +0000)]
First phase of unifying the computation of profile scale factors/probabilities and the actual scaling to use rounding divides...

First phase of unifying the computation of profile scale factors/probabilities
and the actual scaling to use rounding divides:
- Add new macro GCOV_COMPUTE_SCALE to basic-block.h to compute the scale
factor/probability via a rounding divide.
- Change all locations that already perform rounding divides (inline or via RDIV)
to use the appropriate helper: GCOV_COMPUTE_SCALE, apply_probability or
combine_probabilities.
- Change ipa-cp.c truncating divides to use rounding divides.
- Add comments to all other locations (currently using truncating divides) to
switch them to one of the helpers so they use a rounding divide.

Next phase will be to replace the locations using truncating divides, marked
with a comment here, into rounding divides via the helper methods.

2013-04-08  Teresa Johnson  <tejohnson@google.com>

* basic-block.h (GCOV_COMPUTE_SCALE): Define.
* ipa-inline-analysis.c (param_change_prob): Use helper rounding divide
        methods.
(estimate_edge_size_and_time): Add comment to suggest using rounding
methods.
(estimate_node_size_and_time): Ditto.
(remap_edge_change_prob): Use helper rounding divide methods.
* value-prof.c (gimple_divmod_fixed_value_transform): Ditto.
(gimple_mod_pow2_value_transform): Ditto.
(gimple_mod_subtract_transform): Ditto.
(gimple_ic_transform): Ditto.
(gimple_stringops_transform): Ditto.
* stmt.c (conditional_probability): Ditto.
(emit_case_dispatch_table): Ditto.
* lto-cgraph.c (merge_profile_summaries): Ditto.
* tree-optimize.c (execute_fixup_cfg): Ditto.
* cfgcleanup.c (try_forward_edges): Ditto.
* cfgloopmanip.c (scale_loop_profile): Ditto.
(loopify): Ditto.
(duplicate_loop_to_header_edge): Ditto.
(lv_adjust_loop_entry_edge): Ditto.
* tree-vect-loop.c (vect_transform_loop): Ditto.
* profile.c (compute_branch_probabilities): Ditto.
* cfgbuild.c (compute_outgoing_frequencies): Ditto.
* lto-streamer-in.c (input_cfg): Ditto.
* gimple-streamer-in.c (input_bb): Ditto.
* ipa-cp.c (update_profiling_info): Ditto.
(update_specialized_profile): Ditto.
* tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Ditto.
* cfg.c (update_bb_profile_for_threading): Add comment to suggest using
        rounding methods.
* sched-rgn.c (compute_dom_prob_ps): Ditto.
(compute_trg_info): Ditto.
* cfgrtl.c (force_nonfallthru_and_redirect): Ditto.
(purge_dead_edges): Ditto.
* loop-unswitch.c (unswitch_loop): Ditto.
* cgraphclones.c (cgraph_clone_edge): Ditto.
(cgraph_clone_node): Ditto.
* tree-inline.c (copy_bb): Ditto.
(copy_edges_for_bb): Ditto.
(initialize_cfun): Ditto.
(copy_cfg_body): Ditto.
(expand_call_inline): Ditto.

From-SVN: r197595

11 years agocxx11.cc: Include <memory>.
Paolo Carlini [Mon, 8 Apr 2013 16:47:02 +0000 (16:47 +0000)]
cxx11.cc: Include <memory>.

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

* testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.

From-SVN: r197594

11 years agocygwin.h (EXTRA_OS_CPP_BUILTINS): Replaced TARGET_CYGWIN64 by TARGET_64BIT.
Kai Tietz [Mon, 8 Apr 2013 16:11:21 +0000 (18:11 +0200)]
cygwin.h (EXTRA_OS_CPP_BUILTINS): Replaced TARGET_CYGWIN64 by TARGET_64BIT.

* config/i386/cygwin.h (EXTRA_OS_CPP_BUILTINS): Replaced
TARGET_CYGWIN64 by TARGET_64BIT.

From-SVN: r197593

11 years agoepiphany.md (<insn_opname>v2si3): Use gen_addsi3_i / gen_subsi3_i.
Joern Rennecke [Mon, 8 Apr 2013 16:03:05 +0000 (16:03 +0000)]
epiphany.md (<insn_opname>v2si3): Use gen_addsi3_i / gen_subsi3_i.

        * config/epiphany/epiphany.md (<insn_opname>v2si3):
        Use gen_addsi3_i / gen_subsi3_i.

From-SVN: r197592

11 years agoChangeLog typo fix.
Joern Rennecke [Mon, 8 Apr 2013 16:00:26 +0000 (17:00 +0100)]
ChangeLog typo fix.

From-SVN: r197591

11 years agoepiphany.md (mov_f+2): New peephole2 pattern.
Joern Rennecke [Mon, 8 Apr 2013 15:59:41 +0000 (15:59 +0000)]
epiphany.md (mov_f+2): New peephole2 pattern.

        * config/epiphany/epiphany.md (mov_f+2): New peephole2 pattern.
        (cstoresi4): Also allow re-use of zero result when doing a NE
        comparison to a non-zero operand.
        Use (clobber (sratch)) for first insn if the gpr output is not needed.

From-SVN: r197590

11 years agoepiphany.md (logical_op): New code iterator.
Joern Rennecke [Mon, 8 Apr 2013 15:57:20 +0000 (15:57 +0000)]
epiphany.md (logical_op): New code iterator.

        * config/epiphany/epiphany.md (logical_op): New code iterator.
        (op_mnc): New code attribute.
        (<op_mnc>_f, mov_f, cstoresi4): New patterns.
        (mov_f+1, mov_f+2): New peephole2 patterns.

From-SVN: r197589

11 years agoconstraints.md (CnL): New constraint.
Joern Rennecke [Mon, 8 Apr 2013 15:52:44 +0000 (15:52 +0000)]
constraints.md (CnL): New constraint.

        * config/epiphany/constraints.md (CnL): New constraint.
        * config/epiphany/epiphany.md (addsi3_i): Add r/r/CnL alternative.
        * config/epiphany/predicates.md (add_operand): Allow 1024.

From-SVN: r197588

11 years agoepiphany.c (epiphany_select_cc_mode): Don't use CC_FPmode for ORDERED / UNORDERED.
Joern Rennecke [Mon, 8 Apr 2013 15:46:24 +0000 (15:46 +0000)]
epiphany.c (epiphany_select_cc_mode): Don't use CC_FPmode for ORDERED / UNORDERED.

        * config/epiphany/epiphany.c (epiphany_select_cc_mode):
        Don't use CC_FPmode for ORDERED / UNORDERED.
        * config/epiphany/epiphany.md (cmpsf_ord): Make pattern
        unconditional.

From-SVN: r197587

11 years agoepiphany.md (GPR_1): New constant.
Joern Rennecke [Mon, 8 Apr 2013 15:42:10 +0000 (15:42 +0000)]
epiphany.md (GPR_1): New constant.

        * config/epiphany/epiphany.md (GPR_1): New constant.
        (define_expand "mov<mode>cc): FAIL if gen_compare_reg returned 0.
        * config/epiphany/epiphany.c (gen_compare_reg):
        For flag_finite_math_only, avoid swapping operands when r0 and/or r1
        is already in place.
        Use GPR_0 / GPR_1 instead of 0/1 for r0/r1 register numbers.
        Don't require being called during rtl expansion; If y operlaps r0,
        return 0.
        (epiphany_compute_frame_size, epiphany_expand_prologue): Use GPR_1.
        (epiphany_expand_epilogue): Likewise.

From-SVN: r197586

11 years ago* gcc.c-torture/execute/pr56837.c: New test.
Jakub Jelinek [Mon, 8 Apr 2013 13:46:48 +0000 (15:46 +0200)]
* gcc.c-torture/execute/pr56837.c: New test.

From-SVN: r197582

11 years agore PR c++/34949 (Dead code in empty destructors.)
Jakub Jelinek [Mon, 8 Apr 2013 13:46:00 +0000 (15:46 +0200)]
re PR c++/34949 (Dead code in empty destructors.)

PR c++/34949
PR c++/50243
* tree-eh.c (optimize_clobbers): Only remove clobbers if bb doesn't
contain anything but clobbers, at most one __builtin_stack_restore,
optionally debug stmts and final resx, and if it has at least one
incoming EH edge.  Don't check for SSA_NAME on LHS of a clobber.
(sink_clobbers): Don't check for SSA_NAME on LHS of a clobber.
Instead of moving clobbers with MEM_REF LHS with SSA_NAME address
which isn't defaut definition, remove them.
(unsplit_eh, cleanup_empty_eh): Use single_{pred,succ}_{p,edge}
instead of EDGE_COUNT comparisons or EDGE_{PRED,SUCC}.
* tree-ssa-ccp.c (execute_fold_all_builtins): Remove clobbers
with MEM_REF LHS with SSA_NAME address.

* g++.dg/opt/vt3.C: New test.
* g++.dg/opt/vt4.C: New test.

From-SVN: r197580

11 years agogimple.c (canonicalize_cond_expr_cond): Rewrite x ^ y into x != y.
Jeff Law [Mon, 8 Apr 2013 13:11:56 +0000 (07:11 -0600)]
gimple.c (canonicalize_cond_expr_cond): Rewrite x ^ y into x != y.

        * gimple.c (canonicalize_cond_expr_cond): Rewrite x ^ y into
        x != y.

        * gcc.dg/tree-ssa/forwprop-25.c: New test

From-SVN: r197579

11 years agogimple-pretty-print.c (debug_gimple_stmt): Do not print extra newline.
Richard Biener [Mon, 8 Apr 2013 12:35:26 +0000 (12:35 +0000)]
gimple-pretty-print.c (debug_gimple_stmt): Do not print extra newline.

2013-04-08  Richard Biener  <rguenther@suse.de>

* gimple-pretty-print.c (debug_gimple_stmt): Do not print
extra newline.
* tree-vect-loop.c (vect_determine_vectorization_factor): Dump
determined vector type.
(vect_analyze_data_refs): Likewise.
(vect_get_new_vect_var): Adjust.
(vect_create_destination_var): Preserve SSA name versions.
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): Do
not dump anything here.

* gfortran.dg/vect/fast-math-mgrid-resid.f: Adjust.

From-SVN: r197578

11 years agoepiphany.h (struct GTY (()) machine_function): Add member lr_slot_known.
Joern Rennecke [Mon, 8 Apr 2013 12:22:41 +0000 (12:22 +0000)]
epiphany.h (struct GTY (()) machine_function): Add member lr_slot_known.

        * config/epiphany/epiphany.h (struct GTY (()) machine_function):
        Add member lr_slot_known.
        * config/epiphany/epiphany.md (reload_insi_ra): Compute lr_slot_offs
        if necessary.
        * config/epiphany/epiphany.c (epiphany_compute_frame_size):
        Remove code that sets lr_slot_offset according to what a previous
        version of epiphany_emit_save_restore used to do.
        (epiphany_emit_save_restore): When doing an lr save or restore,
        set/verify lr_slot_known and lr_slot_offset.

From-SVN: r197577

11 years agoFix PR target/54338 - Include IWMMXT_GR_REGS in ALL_REGS.
Xinyu Qi [Mon, 8 Apr 2013 12:19:02 +0000 (12:19 +0000)]
Fix PR target/54338 - Include IWMMXT_GR_REGS in ALL_REGS.

For Xinyu Qi.

2013-04-08  Xinyu Qi  <xyqi@marvell.com>

  PR target/54338
  * config/arm/arm.h (REG_CLASS_CONTENTS): Include IWMMXT_GR_REGS
in ALL_REGS.

From-SVN: r197576

11 years agoalias.c (find_base_term): Fix thinko in previous change.
Richard Biener [Mon, 8 Apr 2013 09:50:48 +0000 (09:50 +0000)]
alias.c (find_base_term): Fix thinko in previous change.

2013-04-08  Richard Biener  <rguenther@suse.de>

* alias.c (find_base_term): Fix thinko in previous change.

From-SVN: r197572

11 years agofast-math-pr37021.f90: Adjust.
Richard Biener [Mon, 8 Apr 2013 08:42:12 +0000 (08:42 +0000)]
fast-math-pr37021.f90: Adjust.

2013-04-08  Richard Biener  <rguenther@suse.de>

* gfortran.dg/vect/fast-math-pr37021.f90: Adjust.

From-SVN: r197571

11 years agoslp-pr56812.cc: Adjust.
Richard Biener [Mon, 8 Apr 2013 08:34:43 +0000 (08:34 +0000)]
slp-pr56812.cc: Adjust.

2013-04-08  Richard Biener  <rguenther@suse.de>

* g++.dg/vect/slp-pr56812.cc: Adjust.

From-SVN: r197569

11 years agotree-loop-distribution.c (const_with_all_bytes_same): New function.
Jakub Jelinek [Mon, 8 Apr 2013 08:20:39 +0000 (10:20 +0200)]
tree-loop-distribution.c (const_with_all_bytes_same): New function.

* tree-loop-distribution.c (const_with_all_bytes_same): New function.
(generate_memset_builtin): Only handle integer_all_onesp as -1 val if
TYPE_PRECISION is equal to mode bitsize.  Use const_with_all_bytes_same
if possible to compute val.
(classify_partition): Verify CONSTRUCTOR doesn't have any elts.
For QImode integers don't require anything about precision.  Use
const_with_all_bytes_same to find out if the constant doesn't have
repeated bytes in it.

* gcc.dg/pr56837.c: New test.
* gcc.dg/tree-ssa/ldist-19.c: Don't check for
"generated memset minus one".

From-SVN: r197568

11 years agos390.c (s390_expand_insv): Only accept insertions within mode size.
Andreas Krebbel [Mon, 8 Apr 2013 07:49:33 +0000 (07:49 +0000)]
s390.c (s390_expand_insv): Only accept insertions within mode size.

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

* config/s390/s390.c (s390_expand_insv): Only accept insertions
within mode size.

From-SVN: r197566

11 years agore PR rtl-optimization/48182 (ICE: SIGSEGV in try_crossjump_to_edge (cfgcleanup.c...
Marek Polacek [Mon, 8 Apr 2013 07:44:33 +0000 (07:44 +0000)]
re PR rtl-optimization/48182 (ICE: SIGSEGV in try_crossjump_to_edge (cfgcleanup.c:1703) with --param min-crossjump-insns=0 on basic code)

PR rtl-optimization/48182
* params.def (PARAM_MIN_CROSSJUMP_INSNS): Increase the minimum
value to 1.

From-SVN: r197564

11 years agoDaily bump.
GCC Administrator [Mon, 8 Apr 2013 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197562

11 years agoupdate_web_docs_libstdcxx_svn: No longer ignore all output from the actual copy process.
Gerald Pfeifer [Sun, 7 Apr 2013 19:58:18 +0000 (19:58 +0000)]
update_web_docs_libstdcxx_svn: No longer ignore all output from the actual copy process.

* update_web_docs_libstdcxx_svn: No longer ignore all output from
the actual copy process.
Check the exit code of the actual copy process; diagnose problems.

From-SVN: r197558

11 years agoparser.c (cp_parser_std_attribute): Treat [[noreturn]] like GNU noreturn attribute.
Jason Merrill [Sun, 7 Apr 2013 17:15:22 +0000 (13:15 -0400)]
parser.c (cp_parser_std_attribute): Treat [[noreturn]] like GNU noreturn attribute.

* parser.c (cp_parser_std_attribute): Treat [[noreturn]] like GNU
noreturn attribute.

From-SVN: r197555

11 years agoMakefile.am: Add ext/aligned_buffer.h
Jonathan Wakely [Sun, 7 Apr 2013 16:44:40 +0000 (16:44 +0000)]
Makefile.am: Add ext/aligned_buffer.h

* include/Makefile.am: Add ext/aligned_buffer.h
* include/Makefile.in: Regenerate.
* include/ext/aligned_buffer.h: New.
* include/std/future (_Result): Use __aligned_buffer.
* include/bits/forward_list.h (_Fwd_list_node): Likewise.
* include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
number.

From-SVN: r197554

11 years ago* c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
Steven Bosscher [Sun, 7 Apr 2013 16:09:39 +0000 (16:09 +0000)]
* c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.

From-SVN: r197553

11 years agoforward_list.h: Only include required headers.
Jonathan Wakely [Sun, 7 Apr 2013 15:42:27 +0000 (15:42 +0000)]
forward_list.h: Only include required headers.

* include/bits/forward_list.h: Only include required headers.
(forward_list::reference): Define directly, not using __alloc_traits.
(forward_list::const_reference): Likewise.

From-SVN: r197552

11 years agofunctional (_Derives_from_unary_function): Remove.
François Dumont [Sun, 7 Apr 2013 10:42:51 +0000 (10:42 +0000)]
functional (_Derives_from_unary_function): Remove.

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

* include/std/functional (_Derives_from_unary_function): Remove.
(_Derives_from_binary_function): Remove.
* include/std/type_traits (__sfinae_types): Remove.
(__is_assignable_helper): Adapt.
(__is_convertible_helper): Adapt.
(_GLIBCXX_HAS_NESTED_TYPE): Adapt.
Remove several explicit instantiations of integral_constant.
* testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adapt dg-error line number.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/bind/ref_neg.cc: Likewise.

From-SVN: r197551

11 years agore PR fortran/56849 (Missing compile-time shape check for RESHAPE assignments with...
Tobias Burnus [Sun, 7 Apr 2013 08:41:17 +0000 (10:41 +0200)]
re PR fortran/56849 (Missing compile-time shape check for RESHAPE assignments with an ORDER= attribute)

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

        PR fortran/56849
        * iresolve.c (gfc_resolve_reshape): Set shape also
        with order=.

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

        PR fortran/56849
        * gfortran.dg/reshape_5.f90: New.

From-SVN: r197550

11 years agoDaily bump.
GCC Administrator [Sun, 7 Apr 2013 00:16:29 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197549

11 years agore PR other/55274 (gcc build hangs on HP-UX 11.11)
John David Anglin [Sat, 6 Apr 2013 18:22:09 +0000 (18:22 +0000)]
re PR other/55274 (gcc build hangs on HP-UX 11.11)

PR other/55274
* config/t-slibgcc-hpux (SHLIB_MAPFILES): Define.

From-SVN: r197544

11 years agore PR target/55487 (ICE in mark_jump_label_1, at jump.c:1134 compiling gcc.c-torture...
John David Anglin [Sat, 6 Apr 2013 17:42:27 +0000 (17:42 +0000)]
re PR target/55487 (ICE in mark_jump_label_1, at jump.c:1134 compiling gcc.c-torture/execute/pr51447.c at -O2 and above)

PR target/55487
* config/pa/pa.c (legitimize_pic_address): Before incrementing label
nuses, make sure we have a label.

From-SVN: r197541

11 years agoDaily bump.
GCC Administrator [Sat, 6 Apr 2013 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197540

11 years agore PR target/56843 (PowerPC Newton-Raphson reciprocal estimates can be improved)
Bill Schmidt [Fri, 5 Apr 2013 19:27:58 +0000 (19:27 +0000)]
re PR target/56843 (PowerPC Newton-Raphson reciprocal estimates can be improved)

gcc:

2013-04-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/56843
* config/rs6000/rs6000.c (rs6000_emit_swdiv_high_precision): Remove.
(rs6000_emit_swdiv_low_precision): Remove.
(rs6000_emit_swdiv): Rewrite to handle between one and four
iterations of Newton-Raphson generally; modify required number of
iterations for some cases.
* config/rs6000/rs6000.h (RS6000_RECIP_HIGH_PRECISION_P): Remove.

gcc/testsuite:

2013-04-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/56843
* gcc.target/powerpc/recip-1.c: Modify expected output.
* gcc.target/powerpc/recip-3.c: Likewise.
* gcc.target/powerpc/recip-4.c: Likewise.
* gcc.target/powerpc/recip-5.c: Add expected output for iterations.

From-SVN: r197534

11 years agobb-reorder.c (fix_crossing_unconditional_branches): Remove a set-but-unused variable.
Steven Bosscher [Fri, 5 Apr 2013 19:23:17 +0000 (19:23 +0000)]
bb-reorder.c (fix_crossing_unconditional_branches): Remove a set-but-unused variable.

* bb-reorder.c (fix_crossing_unconditional_branches): Remove a
set-but-unused variable.

* cgraph.c (cgraph_release_function_body): Clear cfun->cfg to make
basic blocks of released function bodies garbage-collectable.

* ree.c (find_and_remove_re): Do not call df_finish_pass here.
(struct rtl_opt_pass): Add TODO_df_finish.

* rtl.def (DEFINE_SUBST, DEFINE_SUBST_ATTR): Add documentation.

From-SVN: r197533

11 years agopeep-ldrd-1.c: New test.
Greta Yorsh [Fri, 5 Apr 2013 17:26:12 +0000 (18:26 +0100)]
peep-ldrd-1.c: New test.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

gcc/testsuite

* gcc.target/arm/peep-ldrd-1.c: New test.
* gcc.target/arm/peep-strd-1.c: Likewise.

gcc/
* config/arm/constraints.md (q): New constraint.
* config/arm/ldrdstrd.md: New file.
* config/arm/arm.md (ldrdstrd.md) New include.
(arm_movdi): Use "q" instead of "r" constraint
for double-word memory access.
(movdf_soft_insn): Likewise.
* config/arm/vfp.md (movdi_vfp): Likewise.
* config/arm/t-arm (MD_INCLUDES): Add ldrdstrd.md.
        * config/arm/arm-protos.h (gen_operands_ldrd_strd): New declaration.
* config/arm/arm.c (gen_operands_ldrd_strd): New function.
(mem_ok_for_ldrd_strd): Likewise.
(output_move_double): Update assertion.

From-SVN: r197530

11 years agoarm.md: Comment on splitting Thumb1 patterns.
Greta Yorsh [Fri, 5 Apr 2013 17:13:54 +0000 (18:13 +0100)]
arm.md: Comment on splitting Thumb1 patterns.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md: Comment on splitting Thumb1 patterns.

From-SVN: r197529

11 years agoarm.md (arm_smax_insn): Convert define_insn into define_insn_and_split.
Greta Yorsh [Fri, 5 Apr 2013 17:12:37 +0000 (18:12 +0100)]
arm.md (arm_smax_insn): Convert define_insn into define_insn_and_split.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md (arm_smax_insn): Convert define_insn into
define_insn_and_split.
(arm_smin_insn,arm_umaxsi3,arm_uminsi3): Likewise.

From-SVN: r197528

11 years agoarm.md (arm_ashldi3_1bit): Convert define_insn into define_insn_and_split.
Greta Yorsh [Fri, 5 Apr 2013 17:08:53 +0000 (18:08 +0100)]
arm.md (arm_ashldi3_1bit): Convert define_insn into define_insn_and_split.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md (arm_ashldi3_1bit): Convert define_insn into
define_insn_and_split.
        (arm_ashrdi3_1bit,arm_lshrdi3_1bit): Likewise.
(shiftsi3_compare): New pattern.
(rrx): New pattern.
* config/arm/unspecs.md (UNSPEC_RRX): New.

From-SVN: r197527

11 years agoarm.md (negdi_extendsidi): New pattern.
Greta Yorsh [Fri, 5 Apr 2013 17:05:03 +0000 (18:05 +0100)]
arm.md (negdi_extendsidi): New pattern.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

gcc/
* config/arm/arm.md (negdi_extendsidi): New pattern.
(negdi_zero_extendsidi): Likewise.

gcc/testsuite

* gcc.target/arm/negdi-1.c: New test.
* gcc.target/arm/negdi-2.c: Likewise.
* gcc.target/arm/negdi-3.c: Likewise.
* gcc.target/arm/negdi-4.c: Likewise.

From-SVN: r197526

11 years agotarget-supports.exp (add_options_for_arm_v8_neon): Add -march=armv8-a when we use...
Kyrylo Tkachov [Fri, 5 Apr 2013 16:06:17 +0000 (16:06 +0000)]
target-supports.exp (add_options_for_arm_v8_neon): Add -march=armv8-a when we use v8 NEON.

2013-04-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* lib/target-supports.exp (add_options_for_arm_v8_neon):
Add -march=armv8-a when we use v8 NEON.
(check_effective_target_vect_call_btruncf): Remove arm-*-*-*.
(check_effective_target_vect_call_ceilf): Likewise.
(check_effective_target_vect_call_floorf): Likewise.
(check_effective_target_vect_call_roundf): Likewise.
(check_vect_support_and_set_flags): Remove check for arm_v8_neon.
* gcc.target/arm/vect-rounding-btruncf.c: New testcase.
* gcc.target/arm/vect-rounding-ceilf.c: Likewise.
* gcc.target/arm/vect-rounding-floorf.c: Likewise.
* gcc.target/arm/vect-rounding-roundf.c: Likewise.

From-SVN: r197523

11 years agoarm.md (andsi_iorsi3_notsi): Convert define_insn into define_insn_and_split.
Greta Yorsh [Fri, 5 Apr 2013 15:52:25 +0000 (16:52 +0100)]
arm.md (andsi_iorsi3_notsi): Convert define_insn into define_insn_and_split.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md (andsi_iorsi3_notsi): Convert define_insn into
define_insn_and_split.
(arm_negdi2,arm_abssi2,arm_neg_abssi2): Likewise.
(arm_cmpdi_insn,arm_cmpdi_unsigned): Likewise.

From-SVN: r197522

11 years agoarm.md (arm_subdi3): Convert define_insn into define_insn_and_split.
Greta Yorsh [Fri, 5 Apr 2013 15:48:19 +0000 (16:48 +0100)]
arm.md (arm_subdi3): Convert define_insn into define_insn_and_split.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md (arm_subdi3): Convert define_insn into
define_insn_and_split.
(subdi_di_zesidi,subdi_di_sesidi): Likewise.
(subdi_zesidi_di,subdi_sesidi_di,subdi_zesidi_zesidi): Likewise.

From-SVN: r197521

11 years agoarm.md (subsi3_carryin): New pattern.
Greta Yorsh [Fri, 5 Apr 2013 15:43:04 +0000 (16:43 +0100)]
arm.md (subsi3_carryin): New pattern.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md (subsi3_carryin): New pattern.
(subsi3_carryin_const): Likewise.
(subsi3_carryin_compare,subsi3_carryin_compare_const): Likewise.
(subsi3_carryin_shift,rsbsi3_carryin_shift): Likewise.

From-SVN: r197520

11 years agoarm.md (incscc,arm_incscc,decscc,arm_decscc): Delete.
Greta Yorsh [Fri, 5 Apr 2013 15:17:59 +0000 (16:17 +0100)]
arm.md (incscc,arm_incscc,decscc,arm_decscc): Delete.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md (incscc,arm_incscc,decscc,arm_decscc): Delete.

From-SVN: r197519

11 years agoarm.md (addsi3_carryin_<optab>): Set attribute predicable.
Greta Yorsh [Fri, 5 Apr 2013 15:13:45 +0000 (16:13 +0100)]
arm.md (addsi3_carryin_<optab>): Set attribute predicable.

2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.md (addsi3_carryin_<optab>): Set attribute predicable.
  (addsi3_carryin_alt2_<optab>,addsi3_carryin_shift_<optab>): Likewise.

From-SVN: r197518

11 years agoarm.c (arm_expand_builtin): Change fcode type to unsigned int.
Kyrylo Tkachov [Fri, 5 Apr 2013 15:03:11 +0000 (15:03 +0000)]
arm.c (arm_expand_builtin): Change fcode type to unsigned int.

2013-04-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.c (arm_expand_builtin): Change fcode
type to unsigned int.

From-SVN: r197517

11 years agosd-vsx.c: Skip on AIX.
David Edelsohn [Fri, 5 Apr 2013 13:33:09 +0000 (13:33 +0000)]
sd-vsx.c: Skip on AIX.

        * gcc.target/powerpc/sd-vsx.c: Skip on AIX.
        * gcc.target/powerpc/sd-pwr6.c: Same.
        * gcc.dg/stack-usage-1.c: Define SIZE on AIX.
        * g++.dg/debug/pr56294.C: XFAIL on AIX.

From-SVN: r197516

11 years agoThere can be only one ref qualifier at most.
Ed Smith-Rowland [Fri, 5 Apr 2013 11:38:09 +0000 (11:38 +0000)]
There can be only one ref qualifier at most.

gcc/cp:
2013-04-05  Ed Smith-Rowland  <3dw4rd@verizon.net>

* g++.dg/cpp0x/ref-qual-multi-neg.C: New test.

gcc/testsuite:
2013-04-05  Ed Smith-Rowland  <3dw4rd@verizon.net>

* parser.c (cp_parser_ref_qualifier_seq_opt): Move to
cp_parser_ref_qualifier_opt.  Error if more than one ref-qual found.

From-SVN: r197514

11 years agoDocument cortex-a53 in ARM options.
Ramana Radhakrishnan [Fri, 5 Apr 2013 10:24:00 +0000 (10:24 +0000)]
Document cortex-a53 in ARM options.

2013-04-05  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

       * doc/invoke.texi (ARM Options): Document cortex-a53 support.

From-SVN: r197513

11 years agore PR libstdc++/56841 (ld: Unsatisfied symbol "__atomic_exchange_8" in file /test...
Jonathan Wakely [Fri, 5 Apr 2013 10:03:04 +0000 (10:03 +0000)]
re PR libstdc++/56841 (ld: Unsatisfied symbol "__atomic_exchange_8" in file /test/gnu/gcc/objdir/prev-hppa64-hp-hpux11.11/libstdc++-v3/src/.libs/libstdc++.a[eh_terminate.o])

PR libstdc++/56841
* libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
get_terminate() accessors.
* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
* libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
available.
* libsupc++/new_handler.cc: Likewise.

From-SVN: r197512

11 years agostandards.texi (Standards): The Go frontend supports the Go 1 language standard.
Ian Lance Taylor [Fri, 5 Apr 2013 04:12:41 +0000 (04:12 +0000)]
standards.texi (Standards): The Go frontend supports the Go 1 language standard.

* doc/standards.texi (Standards): The Go frontend supports the Go
1 language standard.

From-SVN: r197507

11 years agoDaily bump.
GCC Administrator [Fri, 5 Apr 2013 00:16:35 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197501

11 years agore PR fortran/40881 ([F03] warn for obsolescent features)
Janus Weil [Thu, 4 Apr 2013 19:21:01 +0000 (21:21 +0200)]
re PR fortran/40881 ([F03] warn for obsolescent features)

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

PR fortran/40881
* match.c (gfc_match_return): Remove standard notification.
* primary.c (gfc_match_actual_arglist): Add standard notification.

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

PR fortran/40881
* gfortran.dg/altreturn_1.f90: Add -std=gnu.
* gfortran.dg/altreturn_4.f90: Ditto.
* gfortran.dg/altreturn_3.f90: Replace -std=legacy by -std=gnu.
* gfortran.dg/altreturn_5.f90: Ditto.
* gfortran.dg/altreturn_6.f90: Ditto.
* gfortran.dg/altreturn_7.f90: Ditto.

From-SVN: r197495

11 years agobpabi.S (aeabi_ldivmod): Add DWARF information for computing the location of the...
Meador Inge [Thu, 4 Apr 2013 18:42:19 +0000 (18:42 +0000)]
bpabi.S (aeabi_ldivmod): Add DWARF information for computing the location of the link register.

libgcc/

2013-04-04  Meador Inge  <meadori@codesourcery.com>

* config/arm/bpabi.S (aeabi_ldivmod): Add DWARF information for
computing the location of the link register.
(aeabi_uldivmod): Ditto.

From-SVN: r197493

11 years agore PR middle-end/56729 (ICE in df_insn_delete)
Steven Bosscher [Thu, 4 Apr 2013 16:40:16 +0000 (16:40 +0000)]
re PR middle-end/56729 (ICE in df_insn_delete)

PR middle-end/56729
* df-scan.c (df_insn_delete): Disable failing assert.

From-SVN: r197492

11 years agotarget-supports.exp (check_effective_target_arm_v8_neon_hw): New procedure.
Kyrylo Tkachov [Thu, 4 Apr 2013 16:17:32 +0000 (16:17 +0000)]
target-supports.exp (check_effective_target_arm_v8_neon_hw): New procedure.

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

* lib/target-supports.exp (check_effective_target_arm_v8_neon_hw):
New procedure.
(check_effective_target_arm_v8_neon_ok_nocache):
Likewise.
(check_effective_target_arm_v8_neon_ok): Change to use
check_effective_target_arm_v8_neon_ok_nocache.
(add_options_for_arm_v8_neon): Use et_arm_v8_neon_flags to set ARMv8
NEON flags.
(check_effective_target_vect_call_btruncf):
Enable for arm and ARMv8 NEON.
(check_effective_target_vect_call_ceilf): Likewise.
(check_effective_target_vect_call_floorf): Likewise.
(check_effective_target_vect_call_roundf): Likewise.
(check_vect_support_and_set_flags): Handle ARMv8 NEON effective
target.

From-SVN: r197491

11 years agoarm-protos.h (arm_builtin_vectorized_function): New function prototype.
Kyrylo Tkachov [Thu, 4 Apr 2013 16:14:50 +0000 (16:14 +0000)]
arm-protos.h (arm_builtin_vectorized_function): New function prototype.

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

* config/arm/arm-protos.h (arm_builtin_vectorized_function):
New function prototype.
* config/arm/arm.c (TARGET_VECTORIZE_BUILTINS): Define.
(TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION): Likewise.
(arm_builtin_vectorized_function): New function.

From-SVN: r197490

11 years agoarm_neon_builtins.def: New file.
Kyrylo Tkachov [Thu, 4 Apr 2013 15:54:50 +0000 (15:54 +0000)]
arm_neon_builtins.def: New file.

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

* config/arm/arm_neon_builtins.def: New file.
* config/arm/arm.c (neon_builtin_data): Move contents to
arm_neon_builtins.def.
(enum arm_builtins): Include neon builtin definitions.
(ARM_BUILTIN_NEON_BASE): Move from enum to macro.
* config/arm/t-arm (arm.o): Add dependency on
arm_neon_builtins.def.

From-SVN: r197489

11 years agore PR tree-optimization/48186 (ICE: SIGFPE (division by zero) in maybe_hot_frequency_...
Marek Polacek [Thu, 4 Apr 2013 15:48:25 +0000 (15:48 +0000)]
re PR tree-optimization/48186 (ICE: SIGFPE (division by zero) in maybe_hot_frequency_p at predict.c:129 with --param hot-bb-frequency-fraction=0 on basic code)

        PR tree-optimization/48186
        * predict.c (maybe_hot_frequency_p): Return false if
        HOT_BB_FREQUENCY_FRACTION is 0.
        (cgraph_maybe_hot_edge_p): Likewise.

        * gcc.dg/pr48186.c: New test.

From-SVN: r197487

11 years agore PR tree-optimization/56826 (Run-fail after r197189.)
Richard Biener [Thu, 4 Apr 2013 15:06:44 +0000 (15:06 +0000)]
re PR tree-optimization/56826 (Run-fail after r197189.)

2013-04-04  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56826
* tree-vect-slp.c (vect_build_slp_tree): Compute ncopies
more accurately.

* gcc.dg/vect/pr56826.c: New testcase.
* gcc.dg/vect/O3-pr36098.c: Adjust.

From-SVN: r197486

11 years agoasm-adder-clobber-lr.c: Remove duplication.
Tejas Belagod [Thu, 4 Apr 2013 12:28:21 +0000 (13:28 +0100)]
asm-adder-clobber-lr.c: Remove duplication.

2013-04-04  Tejas Belagod  <tejas.belagod@arm.com>

testsuite/
* gcc.target/aarch64/inc/asm-adder-clobber-lr.c: Remove duplication.
* gcc.target/aarch64/inc/asm-adder-no-clobber-lr.c: Likewise.
* gcc.target/aarch64/test-framepointer-1.c: Likewise.
* gcc.target/aarch64/test-framepointer-2.c: Likewise.
* gcc.target/aarch64/test-framepointer-3.c: Likewise.
* gcc.target/aarch64/test-framepointer-4.c: Likewise.
* gcc.target/aarch64/test-framepointer-5.c: Likewise.
* gcc.target/aarch64/test-framepointer-6.c: Likewise.
* gcc.target/aarch64/test-framepointer-7.c: Likewise.
* gcc.target/aarch64/test-framepointer-8.c: Likewise.

From-SVN: r197481