Commit Graph

125575 Commits

Author SHA1 Message Date
John Woolverton d358f34868 re PR libstdc++/58604 (Text truncation in comments of /usr/include/c++/4.7/vector)
2013-10-03  John Woolverton  <jdwoolverton@gmail.com>

	PR libstdc++/58604
	* include/std/vector: Fix garbled line in HP Copyright.

From-SVN: r203187
2013-10-03 20:33:05 +00:00
Easwaran Raman d1f11e2bae re PR c++/33911 (attribute deprecated vs. templates)
2013-10-03  Easwaran Raman  <eraman@google.com>

        PR c++/33911
        * parser.c (cp_parser_init_declarator): Do not drop attributes
        of template member functions.

2013-10-03  Easwaran Raman  <eraman@google.com>

        PR c++/33911
        * g++.dg/ext/attribute47.C: New.

From-SVN: r203174
2013-10-03 17:39:35 +00:00
Jan Hubicka 6867e128b9 i386.c (ix86_issue_rate): Pentium4, Nocona has issue rate of 2.
* i386.c (ix86_issue_rate): Pentium4, Nocona has issue rate of 2.
	Core2, Corei7 and Haswell has issue rate of 4.
	(ix86_adjust_cost): Remove ATOM case; fix core2/corei7/Haswell case.

From-SVN: r203172
2013-10-03 17:27:32 +00:00
Jan Hubicka c7f36d55a6 i386.c (ix86_option_override_internal): Do not enable accumulate-outgoing-args when producing unwind info.
* i386.c (ix86_option_override_internal): Do not enable
	accumulate-outgoing-args when producing unwind info.

From-SVN: r203171
2013-10-03 17:25:42 +00:00
Wei Mi 4f0bee4c9a lra-constraints.c (insert_move_for_subreg): New function extracted from simplify_operand_subreg.
2013-10-03  Wei Mi  <wmi@google.com>

        * lra-constraints.c (insert_move_for_subreg): New function
        extracted from simplify_operand_subreg.
        (simplify_operand_subreg): Add reload for paradoxical subreg.

From-SVN: r203169
2013-10-03 17:18:26 +00:00
Rong Xu 111c3f39f5 ipa-inline-analysis.c (find_foldable_builtin_expect): Find the candidate of builtin_expect such that we should fix the size/time...
* ipa-inline-analysis.c (find_foldable_builtin_expect): Find
        the candidate of builtin_expect such that we should fix the 
        size/time estimation.
        (estimate_function_body_sizes): Do the acutally size/time fix-up
        for builtin_expect.

From-SVN: r203168
2013-10-03 17:15:56 +00:00
Rong Xu 942df7390f predict.c (tree_predict_by_opcode): Get the probability for builtin_expect from param builtin_expect_probability.
* predict.c (tree_predict_by_opcode): Get the probability
        for builtin_expect from param builtin_expect_probability.
        * params.def (BUILTIN_EXPECT_PROBABILITY): New parameter.
        * predict.def (PRED_BUILTIN_EXPECT_RELAXED): Fix comments.
        * doc/invoke.texi: Add documentation for builtin-expect-probability.
        * gcc.target/i386/cold-attribute-2.c: Fix the test by using original
        probability.
        * gcc.dg/tree-ssa/ipa-split-5.c: Ditto.
        * gcc.dg/tree-ssa/ipa-split-6.c: Ditto.

--This li (t)ene, and those below, will be ignored--

M    gcc/params.def
M    gcc/predict.def
M    gcc/ChangeLog
M    gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c
M    gcc/testsuite/gcc.dg/tree-ssa/ipa-split-6.c
M    gcc/testsuite/gcc.target/i386/cold-attribute-2.c
M    gcc/predict.c
M    gcc/doc/invoke.texi

From-SVN: r203167
2013-10-03 17:13:50 +00:00
Marek Polacek 2ef7251f6c re PR c++/58510 ([c++11] ICE with multiple non-static data initializations in union)
PR c++/58510
cp/
	* init.c (sort_mem_initializers): Splice when giving an error.
testsuite/
	* g++.dg/cpp0x/pr58510.C: New test.

From-SVN: r203165
2013-10-03 16:33:23 +00:00
Marc Glisse fc7657bb38 del_op.cc (operator delete): Don't test for 0 before free.
2013-10-03  Marc Glisse  <marc.glisse@inria.fr>

	* libsupc++/del_op.cc (operator delete): Don't test for 0 before free.
	* libsupc++/del_opnt.cc (free): Only declare if freestanding.
	(operator delete): Qualify free with std::.

From-SVN: r203164
2013-10-03 16:16:40 +00:00
Marc Glisse 2284b03444 re PR c++/19476 (Missed null checking elimination with new)
2013-10-03  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/19476
gcc/c-family/
	* c.opt (fcheck-new): Move to common.opt.

gcc/
	* common.opt (fcheck-new): Moved from c.opt. Make it 'Common'.
	* calls.c (alloca_call_p): Use get_callee_fndecl.
	* fold-const.c (tree_expr_nonzero_warnv_p): Handle operator new.
	* tree-vrp.c (gimple_stmt_nonzero_warnv_p, stmt_interesting_for_vrp):
	Likewise.
	(vrp_visit_stmt): Remove duplicated code.

gcc/testsuite/
	* g++.dg/tree-ssa/pr19476-1.C: New file.
	* g++.dg/tree-ssa/pr19476-2.C: Likewise.
	* g++.dg/tree-ssa/pr19476-3.C: Likewise.
	* g++.dg/tree-ssa/pr19476-4.C: Likewise.

From-SVN: r203163
2013-10-03 16:13:54 +00:00
Michael Meissner 0609bdf211 rs6000-builtin.def (XSRDPIM): Use floatdf2, ceildf2, btruncdf2, instead of vsx_* name.
[gcc]
2013-10-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000-builtin.def (XSRDPIM): Use floatdf2,
	ceildf2, btruncdf2, instead of vsx_* name.

	* config/rs6000/vsx.md (vsx_add<mode>3): Change arithmetic
	iterators to only do V2DF and V4SF here.  Move the DF code to
	rs6000.md where it is combined with SF mode.  Replace <VSv> with
	just 'v' since only vector operations are handled with these insns
	after moving the DF support to rs6000.md.
	(vsx_sub<mode>3): Likewise.
	(vsx_mul<mode>3): Likewise.
	(vsx_div<mode>3): Likewise.
	(vsx_fre<mode>2): Likewise.
	(vsx_neg<mode>2): Likewise.
	(vsx_abs<mode>2): Likewise.
	(vsx_nabs<mode>2): Likewise.
	(vsx_smax<mode>3): Likewise.
	(vsx_smin<mode>3): Likewise.
	(vsx_sqrt<mode>2): Likewise.
	(vsx_rsqrte<mode>2): Likewise.
	(vsx_fms<mode>4): Likewise.
	(vsx_nfma<mode>4): Likewise.
	(vsx_copysign<mode>3): Likewise.
	(vsx_btrunc<mode>2): Likewise.
	(vsx_floor<mode>2): Likewise.
	(vsx_ceil<mode>2): Likewise.
	(vsx_smaxsf3): Delete scalar ops that were moved to rs6000.md.
	(vsx_sminsf3): Likewise.
	(vsx_fmadf4): Likewise.
	(vsx_fmsdf4): Likewise.
	(vsx_nfmadf4): Likewise.
	(vsx_nfmsdf4): Likewise.
	(vsx_cmpdf_internal1): Likewise.

	* config/rs6000/rs6000.h (TARGET_SF_SPE): Define macros to make it
	simpler to select whether a target has SPE or traditional floating
	point support in iterators.
	(TARGET_DF_SPE): Likewise.
	(TARGET_SF_FPR): Likewise.
	(TARGET_DF_FPR): Likewise.
	(TARGET_SF_INSN): Macros to say whether floating point support
	exists for a given operation for expanders.
	(TARGET_DF_INSN): Likewise.

	* config/rs6000/rs6000.c (Ftrad): New mode attributes to allow
	combining of SF/DF mode operations, using both traditional and VSX
	registers.
	(Fvsx): Likewise.
	(Ff): Likewise.
	(Fv): Likewise.
	(Fs): Likewise.
	(Ffre): Likewise.
	(FFRE): Likewise.
	(abs<mode>2): Combine SF/DF modes using traditional floating point
	instructions.  Add support for using the upper DF registers with
	VSX support, and SF registers with power8-vector support.  Update
	expanders for operations supported by both the SPE and traditional
	floating point units.
	(abs<mode>2_fpr): Likewise.
	(nabs<mode>2): Likewise.
	(nabs<mode>2_fpr): Likewise.
	(neg<mode>2): Likewise.
	(neg<mode>2_fpr): Likewise.
	(add<mode>3): Likewise.
	(add<mode>3_fpr): Likewise.
	(sub<mode>3): Likewise.
	(sub<mode>3_fpr): Likewise.
	(mul<mode>3): Likewise.
	(mul<mode>3_fpr): Likewise.
	(div<mode>3): Likewise.
	(div<mode>3_fpr): Likewise.
	(sqrt<mode>3): Likewise.
	(sqrt<mode>3_fpr): Likewise.
	(fre<Fs>): Likewise.
	(rsqrt<mode>2): Likewise.
	(cmp<mode>_fpr): Likewise.
	(smax<mode>3): Likewise.
	(smin<mode>3): Likewise.
	(smax<mode>3_vsx): Likewise.
	(smin<mode>3_vsx): Likewise.
	(negsf2): Delete SF operations that are merged with DF.
	(abssf2): Likewise.
	(addsf3): Likewise.
	(subsf3): Likewise.
	(mulsf3): Likewise.
	(divsf3): Likewise.
	(fres): Likewise.
	(fmasf4_fpr): Likewise.
	(fmssf4_fpr): Likewise.
	(nfmasf4_fpr): Likewise.
	(nfmssf4_fpr): Likewise.
	(sqrtsf2): Likewise.
	(rsqrtsf_internal1): Likewise.
	(smaxsf3): Likewise.
	(sminsf3): Likewise.
	(cmpsf_internal1): Likewise.
	(copysign<mode>3_fcpsgn): Add VSX/power8-vector support.
	(negdf2): Delete DF operations that are merged with SF.
	(absdf2): Likewise.
	(nabsdf2): Likewise.
	(adddf3): Likewise.
	(subdf3): Likewise.
	(muldf3): Likewise.
	(divdf3): Likewise.
	(fred): Likewise.
	(rsqrtdf_internal1): Likewise.
	(fmadf4_fpr): Likewise.
	(fmsdf4_fpr): Likewise.
	(nfmadf4_fpr): Likewise.
	(nfmsdf4_fpr): Likewise.
	(sqrtdf2): Likewise.
	(smaxdf3): Likewise.
	(smindf3): Likewise.
	(cmpdf_internal1): Likewise.
	(lrint<mode>di2): Use TARGET_<MODE>_FPR macro.
	(btrunc<mode>2): Delete separate expander, and combine with the
	insn and add VSX instruction support.  Use TARGET_<MODE>_FPR.
	(btrunc<mode>2_fpr): Likewise.
	(ceil<mode>2): Likewise.
	(ceil<mode>2_fpr): Likewise.
	(floor<mode>2): Likewise.
	(floor<mode>2_fpr): Likewise.
	(fma<mode>4_fpr): Combine SF and DF fused multiply/add support.
	Add support for using the upper registers with VSX and
	power8-vector.  Move insns to be closer to the define_expands. On
	VSX systems, prefer the traditional form of FMA over the VSX
	version, since the traditional form allows the target not to
	overlap with the inputs.
	(fms<mode>4_fpr): Likewise.
	(nfma<mode>4_fpr): Likewise.
	(nfms<mode>4_fpr): Likewise.

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

	* gcc.target/powerpc/p8vector-fp.c: New test for floating point
	scalar operations when using -mupper-regs-sf and -mupper-regs-df.
	* gcc.target/powerpc/ppc-target-1.c: Update tests to allow either
	VSX scalar operations or the traditional floating point form of
	the instruction.
	* gcc.target/powerpc/ppc-target-2.c: Likewise.
	* gcc.target/powerpc/recip-3.c: Likewise.
	* gcc.target/powerpc/recip-5.c: Likewise.
	* gcc.target/powerpc/pr72747.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-3.c: Likewise.

From-SVN: r203162
2013-10-03 16:08:53 +00:00
Kyrylo Tkachov 5bea0c6c8c aarch-common-protos.h (struct alu_cost_table): New.
[gcc/]
2013-10-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
            Richard Earnshaw  <richard.earnshaw@arm.com>

	* config/arm/aarch-common-protos.h (struct alu_cost_table): New.
	(struct mult_cost_table): Likewise.
	(struct mem_cost_table): Likewise.
	(struct fp_cost_table): Likewise.
	(struct vector_cost_table): Likewise.
	(cpu_cost_table): Likewise.
	* config/arm/arm.opt (mold-rts-costs): New option.
	(mnew-generic-costs): Likewise.
	* config/arm/arm.c (generic_extra_costs): New table.
	(cortexa15_extra_costs): Likewise.
	(arm_slowmul_tune): Use NULL as new costs.
	(arm_fastmul_tune): Likewise.
	(arm_strongarm_tune): Likewise.
	(arm_xscale_tune): Likewise.
	(arm_9e_tune): Likewise.
	(arm_v6t2_tune): Likewise.
	(arm_cortex_a5_tune): Likewise.
	(arm_cortex_a9_tune): Likewise.
	(arm_v6m_tune): Likewise.
	(arm_fa726te_tune): Likewise.
	(arm_cortex_a15_tune): Use cortex15_extra_costs.
	(arm_cortex_tune): Use generict_extra_costs.
	(shifter_op_p): New function.
	(arm_unspec_cost): Likewise.
	(LIBCALL_COST): Define.
	(arm_new_rtx_costs): New function.
	(arm_rtx_costs): Use arm_new_rtx_costs when core-specific
	table is available. Use old costs otherwise unless mnew-generic-costs
	is specified.
	* config/arm/arm-protos.h (tune_params): Add insn_extra_cost field.
	(cpu_cost_table): Declare.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>

From-SVN: r203160
2013-10-03 13:58:42 +00:00
Marcus Shawcroft 24c569251d [AArch64] Fix PR58460
PR58460, the add and sub shifted register instruction forms in AArch64
do not permit the stack register.  This patch removes k constraint
from the relevant patterns and adds reduced form of the test case.

From-SVN: r203157
2013-10-03 10:54:36 +00:00
Ian Bolton 2ab8f063e9 [AArch64] Remove un-necessary secondary reload for addition to SP.
From-SVN: r203156
2013-10-03 09:50:21 +00:00
Teresa Johnson 79221839a3 predict.c (probably_never_executed): New function.
2013-10-02  Teresa Johnson  <tejohnson@google.com>

	* predict.c (probably_never_executed): New function.
	(probably_never_executed_bb_p): Invoke probably_never_executed.
	(probably_never_executed_edge_p): Ditto.
	* bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges):
	Treat profile insanities conservatively.

From-SVN: r203152
2013-10-03 05:06:05 +00:00
John David Anglin 6977865936 config.host (hppa*64*-*-linux*): Define extra_parts.
* config.host (hppa*64*-*-linux*): Define extra_parts.
	(hppa*-*-linux*): Likewise.

From-SVN: r203151
2013-10-03 01:11:41 +00:00
John David Anglin d441afe007 config.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file.
* config.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file.

From-SVN: r203148
2013-10-03 00:42:58 +00:00
Vladimir Makarov 80f466c4a6 lra-constraints.c (process_alt_operand): Calculate scratch_p and use it.
2013-10-02  Vladimir Makarov  <vmakarov@redhat.com>

	* lra-constraints.c (process_alt_operand): Calculate scratch_p and
	use it.  Use smaller increase for scratch.  Don't increase reject
	for early clobber scratch.
	* lra-eliminations.c (eliminate_regs_in_insn): Remove all insns
	setting eliminated regs except setting fp from hfp.
	(lra_eliminate): Check lra_insn_recog_data on NULL.

From-SVN: r203147
2013-10-03 00:35:43 +00:00
GCC Administrator 7cfbb5a278 Daily bump.
From-SVN: r203146
2013-10-03 00:17:10 +00:00
Michael Meissner 6e228b4ba3 re PR target/58587 (Bootstrap error with ada with -mcpu=power7)
2013-10-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/58587
	* config/rs6000/rs6000-cpus.def (ISA_2_6_MASKS_SERVER): Turn off
	setting -mvsx-timode by default until the underlying problem is
	fixed.
	(RS6000_CPU, power7 defaults): Likewise.

From-SVN: r203142
2013-10-03 00:01:45 +00:00
Ian Lance Taylor 84c67c3bae runtime: Fix append of slice with elements of zero size.
From-SVN: r203140
2013-10-02 23:49:39 +00:00
Uros Bizjak 11b54a5a07 x-linux (host-linux.o): Remove header dependencies.
* config/x-linux (host-linux.o): Remove header dependencies.
	Use $(COMPILE) and $(POSTCOMPILE).
	* config/t-linux-android (linux-android.o): Ditto.

From-SVN: r203136
2013-10-02 23:24:50 +02:00
Tobias Burnus 9c84da22d5 re PR fortran/58593 (internal compiler error: in gfc_conv_string_tmp, at fortran/trans-expr.c:2360)
2013-10-02  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58593
        * trans-expr.c (gfc_conv_string_tmp): Fix obtaining
        the byte size of a single character.

2013-10-02  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58593
        * gfortran.dg/char_length_19.f90: New.

From-SVN: r203135
2013-10-02 23:02:14 +02:00
Jonathan Wakely 44d209d7e2 re PR libstdc++/58569 (Compilation error when a class contains multiple std::function)
2013-10-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
	    Daniel Krugler  <daniel.kruegler@gmail.com>

	PR libstdc++/58569
	* include/std/functional (function::_CheckResult): Move to namespace
	scope and rename to __check_func_return_type.
	* testsuite/20_util/function/58569.cc: New.

Co-Authored-By: Daniel Kruegler <daniel.kruegler@gmail.com>

From-SVN: r203132
2013-10-02 21:21:52 +01:00
Jonathan Wakely 3fd113d7f1 re PR libstdc++/58594 (std::make_shared does not accept const types as parameters)
PR libstdc++/58594
	* include/bits/shared_ptr_base.h
	(_Sp_counted_ptr_inplace::_M_get_deleter()): Cast away cv-quals.
	* testsuite/20_util/shared_ptr/creation/58594.cc: New.

From-SVN: r203131
2013-10-02 20:55:14 +01:00
Uros Bizjak bbc02b69b5 Makefile.in (expmed.o-warn): Remove.
* Makefile.in (expmed.o-warn): Remove.

From-SVN: r203130
2013-10-02 21:52:27 +02:00
Andrew MacLeod 440917de66 graphite-scop-detection.c: Include tree-ssa-propagate,h.
* graphite-scop-detection.c: Include tree-ssa-propagate,h.
	* graphite-sese-to-poly.c: Include tree-ssa-propagate.h.

From-SVN: r203129
2013-10-02 19:41:14 +00:00
Chris Manghane 002ee4d12f compiler: Use backend interface for numeric expressions.
* go-gcc.cc: Include "real.h" and "realmpfr.h".
	(Backend::integer_constant_expression): New function.
	(Backend::float_constant_expression): New function.
	(Backend::complex_constant_expression): New function.

From-SVN: r203127
2013-10-02 19:22:07 +00:00
Teresa Johnson 99206ca90b This patch fixes an issue where expansion of an ORIF expression arbitrarily...
This patch fixes an issue where expansion of an ORIF expression arbitrarily
applied the probability that the entire condition was true to just the 
first condition. When the ORIF true probability was 100%, this resulted
in the second condition's jump being given a count of zero (since the
first condition's jump got 100% of the count), leading to incorrect function
splitting when it had a non-zero probability in reality. Since there
currently isn't better information about which condition resulted
in the ORIF being true, apply a 50-50 probability that it is the first
vs. second condition that caused the entire expression to be true,
so that neither condition's true label ends up as a 0-count bb.

An equivalent fix is made for ANDIF expansion.

2013-10-02  Teresa Johnson  <tejohnson@google.com>

	* dojump.c (do_jump_1): Divide probability between
	both conditions of a TRUTH_ORIF_EXPR.

From-SVN: r203126
2013-10-02 19:18:17 +00:00
Tom Tromey 56e82b1474 * Makefile.in (DRIVER_DEFINES): Use $(if), not $(and).
From-SVN: r203125
2013-10-02 18:46:18 +00:00
Paolo Carlini 6bd32cb275 re PR c++/58535 (ICE with virtual template function)
/cp
2013-10-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58535
	* parser.c (cp_parser_function_specifier_opt): Upon error about
	virtual templates don't set ds_virtual.
	(finish_fully_implicit_template): Reject virtual implicit templates.

/testsuite
2013-10-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58535
	* g++.dg/parse/crash65.C: New.
	* g++.dg/cpp1y/pr58535.C: Likewise.

From-SVN: r203123
2013-10-02 18:25:55 +00:00
Andrew MacLeod 3d9c733eb1 tree-flow.h: Remove some prototypes.
* tree-flow.h: Remove some prototypes.
	* tree-ssa-dce.c (mark_virtual_operand_for_renaming,
	mark_virtual_phi_result_for_renaming): Move to tree-into-ssa.c.
	* tree-into-ssa.c (mark_virtual_operand_for_renaming,
	mark_virtual_phi_result_for_renaming): Relocate here.
	* tree-into-ssa.h: Add prototypes.
	* tree-ssa-phiopt.c: (tree_ssa_phiopt_worker) Use 
	single_pred_before_succ_order.
	(blocks_in_phiopt_order): Rename and move to cfganal.c.
	(nonfreeing_call_p) Move to gimple.c.
	* cfganal.c (single_pred_before_succ_order): Move and renamed from
	tree-ssa-phiopt.c.
	* basic-block.h (single_pred_before_succ_order): Add prototype.
	* gimple.c (nonfreeing_call_p): Relocate here.
	* gimple.h: Add prototype.
	* tree-ssa-ifcombine.c: Include tree-ssa-phiopt.h.
	* tree-ssa-dom.h: New file.  Relocate prototypes here.
	* tree-ssa.h: Include tree-ssa-dom.h.

From-SVN: r203122
2013-10-02 17:57:54 +00:00
Ian Lance Taylor cc1a9ac808 reflect: Use hand-coded .eh_frame section rather than CFI directives.
From Rainer Orth.

From-SVN: r203120
2013-10-02 17:30:07 +00:00
Uros Bizjak 78cedfb1a3 x-i386 (driver-i386.o): Remove header dependencies.
* config/i386/x-i386 (driver-i386.o): Remove header dependencies.
	Use $(COMPILE) and $(POSTCOMPILE).

	* config/alpha/x-alpha (driver-alpha.o): Ditto.

From-SVN: r203119
2013-10-02 18:43:16 +02:00
Andrew MacLeod 744730a48e tree-flow.h: Remove some prototypes.
2013-10-02  Andrew MacLeod  <amacleod@redhat.com>

	* tree-flow.h: Remove some prototypes.
	* gimple-fold.h: Add prototypes from gimple.h and tree-flow.h.
	* tree-ssa-propagate.h: Relocate prototypes from tree-flow.h.
	* tree-ssa-copy.c (may_propagate*, propagate_value, replace_exp,
	propagate_tree_value*): Move from here to...
	* tree-ssa-propagate.c (may_propagate*, propagate_value, replace_exp,
	propagate_tree_value*): Relocate here.
	* tree-ssa-propagate.h: Relocate prototypes from tree-flow.h.
	* gimple.h: Include gimple-fold.h, move prototypes into gimple-fold.h.
	* gimple-fold.c: Remove gimple-fold.h from include list.
	* tree-vrp.c: Remove gimple-fold.h from include list.
	* tree-ssa-sccvn.c: Remove gimple-fold.h from include list.
	* tree-ssa-ccp.c: Remove gimple-fold.h from include list.
	* tree-scalar-evolution.c: Add tree-ssa-propagate.h to include list.
	* tree-ssa-pre.c: Add tree-ssa-propagate.h to include list.
	* sese.c: Add tree-ssa-propagate.h to include list.

From-SVN: r203118
2013-10-02 15:29:35 +00:00
Tim Shen 756aa0c302 2013-10-02 Tim Shen <timshen91@gmail.com>
* include/bits/regex_compiler.h
	(_BracketMatcher<>::_M_add_equivalence_class): Implement it correctly.
	* include/bits/regex_compiler.tcc (_BracketMatcher<>::operator()):
	Add _M_equiv_set support.
	* testsuite/28_regex/algorithms/regex_match/extended/
	cstring_bracket_01.cc: Add new "[[=a=]]" testcase.

From-SVN: r203117
2013-10-02 15:13:18 +00:00
Kugan Vivekanandarajah 90926a2da5 Add forgotten test case for r203059.
2013-10-01  Kugan Vivekanandarajah  <kuganv@linaro.org>

        gcc/testsuite
        PR target/58578
        * gcc.target/arm/pr58578.c: New test.

From-SVN: r203116
2013-10-02 16:07:45 +02:00
Richard Biener 826a536d2a tree-loop-distribution.c: Include tree-vectorizer.h for find_loop_location.
2013-10-02  Richard Biener  <rguenther@suse.de>

	* tree-loop-distribution.c: Include tree-vectorizer.h for
	find_loop_location.
	(enum partition_kind): Remove PKIND_REDUCTION.
	(struct partition_s): Remove has_writes member, add reduction_p
	member.
	(partition_alloc): Adjust.
	(partition_builtin_p): Likewise.
	(partition_has_writes): Remove.
	(partition_reduction_p): New function.
	(partition_merge_into): Likewise.
	(generate_code_for_partition): Commonize builtin partition
	handling tail.
	(rdg_cannot_recompute_vertex_p): Remove.
	(already_processed_vertex_p): Likewise.
	(rdg_flag_vertex): Do not set has_writes.
	(classify_partition): Adjust.
	(rdg_build_partitions): Do not set has_writes, treat all
	partitions as useful.
	(distribute_loop): Record number of library calls generated.
	Adjust.
	(tree_loop_distribution): Report number of loops and library
	calls generated as opt-info.

	* gcc.dg/tree-ssa/ldist-11.c: Adjust.
	* gcc.dg/tree-ssa/ldist-17.c: Likewise.
	* gcc.dg/tree-ssa/ldist-23.c: Likewise.
	* gcc.dg/tree-ssa/ldist-pr45948.c: Likewise.
	* gfortran.dg/ldist-pr45199.f: Likewise.

From-SVN: r203115
2013-10-02 13:46:32 +00:00
Andrew Macleod 4b403ece7c tree-flow.h: Include new .h files.
* tree-flow.h: Include new .h files.  Move prototypes.
	* tree-cfgcleanup.h: New file.  Add prototypes from tree-flow.h.
	* tree-dfa.h: New File.  Add prototypes from tree-flow.h.
	(get_addr_base_and_unit_offset_1) Move from tree-flow-inline.h.
	* tree-pretty-print.h: Add prototypes from tree-flow.h.
	* tree-into-ssa.h: New File.  Add prototypes from tree-flow.h.
	({debug|dump}*): Move debugging prototypes out of tree-into-ssa.c.
	* tree-into-ssa.c ({debug|dump}*): Move prototypes to header file.
	* tree.h (get_ref_base_and_extent): Move prototype out.
	* tree-flow-inline.h (get_addr_base_and_unit_offset_1): Move to 
	tree-dfa.h.
	* gimple-low.h: New File.  Add prototypes from tree-flow.h.
	* gimple-low.c (try_catch_may_fallthru, block_may_fallthru): Move to...
	* tree.c (try_catch_may_fallthru, block_may_fallthru): Here.
	* tree-scalar-evolution.c: Include tree.h.
	* sese.c: Include tree.h.
	* dumpfile.c: Move gimple-pretty-print.h include after tree.h.
	* dwarf2out.c: Include tree-dfa.h.
	* tree-chrec.c: Include tree.h.
	* tree-data-ref.c: Include tree.h.

From-SVN: r203114
2013-10-02 13:19:52 +00:00
Andrew Macleod cf2d1b38ca tree-flow.h: Include new .h files.
* tree-flow.h: Include new .h files.  Move prototypes.
	* tree-cfgcleanup.h: New file.  Add prototypes from tree-flow.h.
	* tree-dfa.h: New File.  Add prototypes from tree-flow.h.
	(get_addr_base_and_unit_offset_1) Move from tree-flow-inline.h.
	* tree-pretty-print.h: Add prototypes from tree-flow.h.
	* tree-into-ssa.h: New File.  Add prototypes from tree-flow.h.
	({debug|dump}*): Move debugging prototypes out of tree-into-ssa.c.
	* tree-into-ssa.c ({debug|dump}*): Move prototypes to header file.
	* tree.h (get_ref_base_and_extent): Move prototype out.
	* tree-flow-inline.h (get_addr_base_and_unit_offset_1): Move to 
	tree-dfa.h.
	* gimple-low.h: New File.  Add prototypes from tree-flow.h.
	* gimple-low.c (try_catch_may_fallthru, block_may_fallthru): Move to...
	* tree.c (try_catch_may_fallthru, block_may_fallthru): Here.
	* tree-scalar-evolution.c: Include tree.h.
	* sese.c: Include tree.h.
	* dumpfile.c: Move gimple-pretty-print.h include after tree.h.
	* dwarf2out.c: Include tree-dfa.h.
	* tree-chrec.c: Include tree.h.
	* tree-data-ref.c: Include tree.h.

From-SVN: r203113
2013-10-02 13:19:29 +00:00
Yufeng Zhang 1d2151c67a gimple-ssa-strength-reduction.c (backtrace_base_for_ref): Fix whitespace.
gcc/

	* gimple-ssa-strength-reduction.c (backtrace_base_for_ref):
	Fix whitespace.

From-SVN: r203112
2013-10-02 11:58:27 +00:00
Rainer Orth 441ad14732 Update t-sparc, t-sol2 etc. for automatic dependencies
* config/t-sol2 (sol2-c.o): Remove header dependencies.
	Use $(COMPILE) and $(POSTCOMPILE).
	(sol2-cxx.o): Likewise.
	(sol2-stubs.o): Likewise.
	(sol2.o): Likewise.
	* config/x-solaris (host-solaris.o): Likewise.

	* config/sparc/t-sparc (sparc.o): Remove.
	(sparc-c.o): Remove header dependencies.
	Use $(COMPILE) and $(POSTCOMPILE).
	* config/sparc/x-sparc: Likewise.

From-SVN: r203111
2013-10-02 11:29:32 +00:00
Joern Rennecke 2deaf8b0d6 In accordance with http://gcc.gnu.org/ml/gcc-patches/2013-10/msg00131.html :
gcc:
        * config/arc/arc-opts.h: Add 2013 to Copyright years.
        * config/arc/arc700.md: Likewise.
        * config/arc/arc-modes.def: Likewise.
        * config/arc/arc-simd.h: Likewise.
        * config/arc/t-arc-uClibc: Likewise.
        * config/arc/t-arc-newlib: Likewise.
libgcc:
        * config/arc/crtgend.S: Add 2013 to Copyright years.
        * config/arc/gmon/atomic.h: Likewise. 
        * config/arc/gmon/auxreg.h: Likewise. 
        * config/arc/gmon/sys/gmon_out.h: Likewise. 
        * config/arc/gmon/sys/gmon.h: Likewise. 
        * config/arc/gmon/prof-freq.c: Likewise. 
        * config/arc/gmon/mcount.c: Likewise. 
        * config/arc/gmon/prof-freq-stub.S: Likewise. 
        * config/arc/gmon/gmon.c: Likewise. 
        * config/arc/gmon/machine-gmon.h: Likewise. 
        * config/arc/gmon/profil.S: Likewise. 
        * config/arc/gmon/dcache_linesz.S: Likewise. 
        * config/arc/crtg.S: Likewise. 
        * config/arc/ieee-754/arc600-mul64/divsf3.S: Likewise. 
        * config/arc/ieee-754/arc600-mul64/divdf3.S: Likewise. 
        * config/arc/ieee-754/adddf3.S: Likewise. 
        * config/arc/ieee-754/truncdfsf2.S: Likewise. 
        * config/arc/ieee-754/fixsfsi.S: Likewise. 
        * config/arc/ieee-754/gtsf2.S: Likewise. 
        * config/arc/ieee-754/floatsisf.S: Likewise. 
        * config/arc/ieee-754/arc600-dsp/divsf3.S: Likewise. 
        * config/arc/ieee-754/arc600-dsp/divdf3.S: Likewise. 
        * config/arc/ieee-754/arc600-dsp/mulsf3.S: Likewise. 
        * config/arc/ieee-754/fixdfsi.S: Likewise. 
        * config/arc/ieee-754/addsf3.S: Likewise. 
        * config/arc/ieee-754/gesf2.S: Likewise. 
        * config/arc/ieee-754/floatsidf.S: Likewise. 
        * config/arc/ieee-754/extendsfdf2.S: Likewise. 
        * config/arc/ieee-754/divtab-arc-df.c: Likewise. 
        * config/arc/ieee-754/gtdf2.S: Likewise. 
        * config/arc/ieee-754/fixunsdfsi.S: Likewise. 
        * config/arc/ieee-754/uneqdf2.S: Likewise. 
        * config/arc/ieee-754/divsf3-stdmul.S: Likewise. 
        * config/arc/ieee-754/uneqsf2.S: Likewise. 
        * config/arc/ieee-754/arc-ieee-754.h: Likewise. 
        * config/arc/ieee-754/divtab-arc-sf.c: Likewise. 
        * config/arc/ieee-754/eqdf2.S: Likewise. 
        * config/arc/ieee-754/ordsf2.S: Likewise. 
        * config/arc/ieee-754/divsf3.S: Likewise. 
        * config/arc/ieee-754/divdf3.S: Likewise. 
        * config/arc/ieee-754/floatunsidf.S: Likewise. 
        * config/arc/ieee-754/orddf2.S: Likewise. 
        * config/arc/ieee-754/eqsf2.S: Likewise. 
        * config/arc/ieee-754/gedf2.S: Likewise. 
        * config/arc/crtn.S: Likewise. 
        * config/arc/crti.S: Likewise. 
        * config/arc/t-arc700-uClibc: Likewise. 
        * config/arc/asm.h: Likewise. 
        * config/arc/libgcc-excl.ver: Likewise. 
        * config/arc/t-arc-newlib: Likewise. 
        * config/arc/divtab-arc700.c: Likewise. 
        * config/arc/initfini.c: Likewise. 
        * config/arc/fp-hack.h: Likewise.

From-SVN: r203110
2013-10-02 12:18:24 +01:00
Paolo Carlini 0eb3d6c6b6 re PR c++/58565 ([c++11] ICE with label in statement expression)
/cp
2013-10-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58565
	* semantics.c (potential_constant_expression_1): Handle LABEL_EXPR.

/testsuite
2013-10-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58565
	* g++.dg/parse/crash64.C: New.

From-SVN: r203109
2013-10-02 10:44:23 +00:00
Renlin Li f6fe771af1 aarch64.c (aarch64_expand_prologue): Use plus_constant.
2013-10-02  Renlin Li  <renlin.li@arm.com>

	* config/aarch64/aarch64.c (aarch64_expand_prologue): Use plus_constant.
	(aarch64_expand_epilogue): Likewise.

From-SVN: r203108
2013-10-02 10:28:54 +00:00
Yufeng Zhang 0916f87607 gimple-ssa-strength-reduction.c (legal_cast_p_1): Forward declaration.
gcc/

	* gimple-ssa-strength-reduction.c (legal_cast_p_1): Forward
	declaration.
	(backtrace_base_for_ref): Call get_unwidened with 'base_in' if
	'base_in' represent a conversion and legal_cast_p_1 holds; set
	'base_in' with the returned value from get_unwidened.

gcc/testsuite/

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

From-SVN: r203107
2013-10-02 10:21:33 +00:00
Kyrylo Tkachov ebfcd719cf arm.c (arm_legitimize_reload_address): Explain why plus_constant is not used.
2013-10-02  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (arm_legitimize_reload_address): Explain why
	plus_constant is not used.

From-SVN: r203106
2013-10-02 10:05:43 +00:00
GCC Administrator 2303ffb969 Daily bump.
From-SVN: r203101
2013-10-02 00:16:54 +00:00
Tim Shen c877c34248 status_cxx2011.xml: Change "is not implemented" to "is not correctly implemented".
2013-10-01  Tim Shen  <timshen91@gmail.com>

	* doc/xml/manual/status_cxx2011.xml: Change "is not implemented" to
	"is not correctly implemented".

From-SVN: r203097
2013-10-01 23:56:45 +00:00
Tim Shen 7d48a109d3 status_cxx2011.xml: Update regex status.
2013-10-01  Tim Shen  <timshen91@gmail.com>

	* doc/xml/manual/status_cxx2011.xml: Update regex status.
	* include/bits/regex.h (match_results<>::begin,
	match_results<>::cbegin, match_results<>::end, match_results<>::cend):
	[28.10.3.13], [28.10.3.14] Always iterate the range [0, size()-2).

From-SVN: r203096
2013-10-01 23:44:04 +00:00