Commit Graph

133887 Commits

Author SHA1 Message Date
Jonathan Wakely
ac6f071ad9 Use ctype_base::blank in regex_traits.
* include/bits/regex.h (regex_traits::_RegexMask): Remove _S_blank and
	adjust _S_valid_mask.
	* include/bits/regex.tcc (regex_traits::lookup_classname): Use
	ctype_base::blank.

From-SVN: r217066
2014-11-04 02:49:30 +00:00
Jonathan Wakely
9bcb72e0b0 * include/std/functional (_Bind_simple): Simplify construction.
From-SVN: r217065
2014-11-04 02:49:27 +00:00
Jonathan Wakely
8a57bed1d6 Use aliases for type traits in C++14 mode.
* include/bits/unique_ptr.h (make_unique): Use alias for trait.
	* include/experimental/optional (__constexpr_addressof): Likewise.
	(_Optional_base, optional, make_optional): Likewise.

From-SVN: r217064
2014-11-04 02:49:20 +00:00
Zhenqiang Chen
fc628a8153 revert: ifcvt.c (noce_emit_cmove, [...]): Allow CC mode if HAVE_cbranchcc4.
2014-11-04  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	Revert:
	2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>
	* ifcvt.c (noce_emit_cmove, noce_get_alt_condition, noce_get_condition):
	Allow CC mode if HAVE_cbranchcc4.

From-SVN: r217062
2014-11-04 02:21:51 +00:00
GCC Administrator
b86fa3ee6d Daily bump.
From-SVN: r217061
2014-11-04 00:16:27 +00:00
Dominik Vogt
57ab091577 godump.c (go_format_type): Rewrite RECORD_TYPE nad UNION_TYPE support with -fdump-go-spec.
gcc/:
	* godump.c (go_format_type): Rewrite RECORD_TYPE nad UNION_TYPE support
	with -fdump-go-spec.  Anonymous substructures are now flattened and
	replaced by their fields (record) or the first named, non-bitfield
	field (union).
gcc/testsuite/:
	* build-go/gcc/testsuite/gcc/godump-1.out: Update godump tests.

From-SVN: r217058
2014-11-04 00:00:14 +00:00
Manuel López-Ibáñez
e1f0c17813 input.c (expand_location_to_spelling_point): Fix typo.
2014-11-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* input.c (expand_location_to_spelling_point): Fix typo.
	(expansion_point_location_if_in_system_header): Fix comment.

From-SVN: r217057
2014-11-03 22:57:33 +00:00
Tobias Burnus
7ba43edaea coarray_collectives_14.f90: Fix testcase.
2014-11-03  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_collectives_14.f90: Fix testcase.

From-SVN: r217053
2014-11-03 21:14:48 +01:00
Pitchumani Sivanupandi
8bc991d41a * config/avr/gen-avr-mmcu-specs.c: Remove unnecessary format specifier.
From-SVN: r217051
2014-11-03 22:03:34 +03:00
Paolo Carlini
3384321048 algo.h: Do not use default arguments in function template redeclarations (definitions).
2014-11-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/algo.h: Do not use default arguments in function
	template redeclarations (definitions).

From-SVN: r217050
2014-11-03 17:54:59 +00:00
Ian Lance Taylor
24606f7137 runtime: use "$GOC -dumpversion" instead of BASE-VER to discover compiler version
From-SVN: r217049
2014-11-03 16:30:51 +00:00
Richard Biener
741233cf4d tree-eh.c (operation_could_trap_helper_p): Handle conversions like ordinary operations.
2014-11-03  Richard Biener  <rguenther@suse.de>

	* tree-eh.c (operation_could_trap_helper_p): Handle conversions
	like ordinary operations.
	* gimplify.c (gimplify_conversion): Gimplify CONVERT_EXPR
	as NOP_EXPR.

From-SVN: r217048
2014-11-03 15:49:43 +00:00
Joseph Myers
2f73a6c7b4 Implement TARGET_ATOMIC_ASSIGN_EXPAND_FENV for powerpc*-*-linux* soft-float and e500.
This patch implements support for TARGET_ATOMIC_ASSIGN_EXPAND_FENV for
powerpc*-*-linux* soft-float and e500, provided GCC is configured for
glibc 2.19 or later on the target.

New functions __atomic_feholdexcept, __atomic_feclearexcept and
__atomic_feupdateenv were added (to libc) in that glibc version (for
powerpc soft-float / e500 only) in order to support this part of C11.
For soft-float, libc functions are needed because the floating-point
exception state is in TLS variables in libc that aren't directly
accessible outside of glibc.  For e500, they are also needed because
of the prctl syscalls involved in controlling trapping for exceptions
and informing the kernel when certain exception flags have been
cleared.  The actual implementation in GCC is a straightforward matter
of calling those functions.

Tested with no regressions for cross to powerpc-linux-gnu
(soft-float); the c11-atomic-exec-5.c results go from FAIL to PASS.

	* configure.ac (TARGET_GLIBC_MAJOR, TARGET_GLIBC_MINOR): Define
	macros.
	* configure, config.h.in: Regenerate.
	* config/rs6000/linux.h [TARGET_GLIBC_MAJOR > 2 ||
	(TARGET_GLIBC_MAJOR == 2 && TARGET_GLIBC_MINOR >= 19)]
	(RS6000_GLIBC_ATOMIC_FENV): New macro.
	* config/rs6000/linux64.h [TARGET_GLIBC_MAJOR > 2 ||
	(TARGET_GLIBC_MAJOR == 2 && TARGET_GLIBC_MINOR >= 19)]
	(RS6000_GLIBC_ATOMIC_FENV): New macro.
	* config/rs6000/rs6000.c (atomic_hold_decl, atomic_clear_decl)
	(atomic_update_decl): New static variables.
	(rs6000_atomic_assign_expand_fenv) [RS6000_GLIBC_ATOMIC_FENV]:
	Generate calls to __atomic_feholdexcept, __atomic_feclearexcept
	and __atomic_feupdateenv for soft-float and no-FPRs.

From-SVN: r217040
2014-11-03 13:40:50 +00:00
Richard Biener
f3582e541c match.pd: Add two abs patterns.
2014-11-03  Richard Biener  <rguenther@suse.de>

	* match.pd: Add two abs patterns.  Announce tree_expr_nonnegative_p.
	Also drop bogus FLOAT_EXPR and FIX_TRUNC_EXPR.
	* fold-const.c (fold_unary_loc): Remove them here.
	(tree_unary_nonnegative_warnv_p): Use CASE_CONVERT.
	* gimple-fold.c (fold_gimple_assign): Remove now obsolete
	GIMPLE_UNARY_RHS case.
	(gimple_fold_stmt_to_constant_1): Likewise.
	(replace_stmt_with_simplification): Fix inverted comparison.

From-SVN: r217039
2014-11-03 12:59:47 +00:00
Marek Polacek
9929321af7 re PR c/52769 (Unspecified designated initializer might not set to zero in some cases)
PR c/52769
	* gcc.dg/pr52769.c: New test.

From-SVN: r217036
2014-11-03 12:35:35 +00:00
Paolo Carlini
3e449f8061 re PR c++/57820 ([DR 253] NSDMI and const objects)
2014-11-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57820
	* g++.dg/cpp0x/constexpr-ctor16.C: New.
	* g++.dg/cpp0x/constexpr-ctor17.C: Likewise.

From-SVN: r217035
2014-11-03 10:49:05 +00:00
Marc Glisse
956623c137 re PR tree-optimization/60770 (disappearing clobbers)
2014-11-03  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/60770
gcc/
	* tree-into-ssa.c (rewrite_update_stmt): Return whether the
	statement should be removed.
	(maybe_register_def): Likewise. Replace clobbers with default
	definitions.
	(rewrite_dom_walker::before_dom_children): Remove statement if
	rewrite_update_stmt says so.
	* tree-ssa-live.c: Include tree-ssa.h.
	(set_var_live_on_entry): Do not mark undefined variables as live.
	(verify_live_on_entry): Do not check undefined variables.
	* tree-ssa.h (ssa_undefined_value_p): New parameter for the case
	of partially undefined variables.
	* tree-ssa.c (ssa_undefined_value_p): Likewise.
	(execute_update_addresses_taken): Do not drop clobbers.

gcc/testsuite/
	* gcc.dg/tree-ssa/pr60770-1.c: New file.

From-SVN: r217034
2014-11-03 10:47:04 +00:00
Marc Glisse
b25b35c4ca re PR tree-optimization/63666 (FAIL: gcc.dg/vect/pr45752.c (internal compiler error))
2014-11-03  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/63666
	* fold-const.c: Include "optabs.h".
	(fold_ternary_loc) <VEC_PERM_EXPR>: Avoid canonicalizing a
	can_vec_perm_p permutation to one that is not.

From-SVN: r217033
2014-11-03 10:36:35 +00:00
Jan Beulich
7629320a53 x86: extend vect-args testcase to AVX flavors
gcc/testsuite:
2014-11-03  Jan Beulich  <jbeulich@suse.com>

	* gcc.target/i386/i386.exp: Extend option set to test
	vect-args.c with to include -mavx, -mavx2, and -mavx512f.
	* gcc.target/i386/vect-args.c: Add AVX* modes and tests.

From-SVN: r217032
2014-11-03 09:18:51 +00:00
Uros Bizjak
b1c94de07f 20010129-1.c: Compile with -mtune=i686 for ia32 targets only.
* gcc.c-torture/execute/20010129-1.c: Compile with -mtune=i686
	for ia32 targets only.
	* g++.dg/ext/attrib42.C: Compile for ia32 targets only.
	* g++.dg/tree-ssa/pr29902.C: Ditto.
	* g++.dg/cpp0x/gen-attrs-42.C: Ditto.

From-SVN: r217030
2014-11-03 09:30:21 +01:00
Zhenqiang Chen
b5a4533b36 ifcvt.c (noce_try_store_flag_mask): Check rtx cost.
ChangeLog:
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	* ifcvt.c (noce_try_store_flag_mask): Check rtx cost.

testsuite/ChangeLog:
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	* gcc.target/arm/ifcvt-size-check.c: New test.

From-SVN: r217029
2014-11-03 06:36:11 +00:00
Naveen H.S
ed60a04bbb [multiple changes]
2014-10-31  Andrew Pinski  <apinski@cavium.com>

	* config/mips/mips-cpus.def (octeon3): New cpu.
	* config/mips/mips.c (mips_rtx_cost_data): Add octeon3.
	(mips_print_operand <case 'T', case 't'>): Fix a bug as the mode
	of the comparison no longer matches mode of the operands.
	(mips_issue_rate): Handle PROCESSOR_OCTEON3.
	* config/mips/mips.h (TARGET_OCTEON):  Add Octeon3.
	(TARGET_OCTEON2): Likewise.
	(TUNE_OCTEON): Add Octeon3.
	* config/mips/mips.md (processor): Add octeon3.
	* config/mips/octeon.md (octeon_fpu): New automaton and cpu_unit.
	(octeon_arith): Add octeon3.
	(octeon_condmove): Remove.
	(octeon_condmove_o1): New reservation.
	(octeon_condmove_o2): New reservation.
	(octeon_condmove_o3_int_on_cc): New reservation.
	(octeon_load_o2): Add octeon3.
	(octeon_cop_o2): Likewise.
	(octeon_store): Likewise.
	(octeon_brj_o2): Likewise.
	(octeon_imul3_o2): Likewise.
	(octeon_imul_o2): Likewise.
	(octeon_mfhilo_o2): Likewise.
	(octeon_imadd_o2): Likewise.
	(octeon_idiv_o2_si): Likewise.
	(octeon_idiv_o2_di): Likewise.
	(octeon_fpu): Add to the automaton.
	(octeon_fpu): New cpu unit.
	(octeon_condmove_o2): Check for non floating point modes.
	(octeon_load_o2): Add prefetchx.
	(octeon_cop_o2): Don't check for octeon3.
	(octeon3_faddsubcvt): New reservation.
	(octeon3_fmul): Likewise.
	(octeon3_fmadd): Likewise.
	(octeon3_div_sf): Likewise.
	(octeon3_div_df): Likewise.
	(octeon3_sqrt_sf): Likewise.
	(octeon3_sqrt_df): Likewise.
	(octeon3_rsqrt_sf): Likewise.
	(octeon3_rsqrt_df): Likewise.
	(octeon3_fabsnegmov): Likewise.
	(octeon_fcond): Likewise.
	(octeon_fcondmov): Likewise.
	(octeon_fpmtc1): Likewise.
	(octeon_fpmfc1): Likewise.
	(octeon_fpload): Likewise.
	(octeon_fpstore): Likewise.
	* config/mips/mips-tables.opt: Regenerate.
	* doc/invoke.texi (-march=@var{arch}): Add octeon3.

2014-10-31  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* gcc.target/mips/octeon3-pipe-1.c: New test.

From-SVN: r217028
2014-11-03 05:13:43 +00:00
Zhenqiang Chen
81a55f55da ifcvt.c (noce_emit_cmove, [...]): Allow CC mode if HAVE_cbranchcc4.
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	* ifcvt.c (noce_emit_cmove, noce_get_alt_condition, noce_get_condition):
	Allow CC mode if HAVE_cbranchcc4.

From-SVN: r217026
2014-11-03 03:20:30 +00:00
Jonathan Wakely
afc449e82c Check number of arguments in bind expressions.
* include/std/functional (_Mem_fn_traits_base::__arity): New typedef.
	(_Mem_fn_base::_Arity): New typedef.
	(_Bind_check_arity): New class template.
	(_Bind_helper, _Bindres_helper, _Bind_simple_helper): Check arity.
	* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error.

From-SVN: r217025
2014-11-03 02:55:36 +00:00
Jonathan Wakely
8d9076969b Add support for ref-qualified functions to std::mem_fn
PR libstdc++/57898
	* include/std/functional (_Mem_fn_traits_base): New class template.
	(_Mem_fn_traits): New class template with specializations for every
	combination of cv-qualified and ref-qualified member function.
	(_Mem_fn_base): New class template for all pointer to member function
	types and partial specialization for pointer to member object types.
	(_Mem_fn): Inherit from _Mem_fn_base.
	* testsuite/20_util/function_objects/mem_fn/refqual.cc: New.

From-SVN: r217024
2014-11-03 02:55:32 +00:00
GCC Administrator
2ba89c141d Daily bump.
From-SVN: r217023
2014-11-03 00:16:29 +00:00
Uros Bizjak
ff0562b799 gen-attrs-42.C: Add x86_64-*-* target.
* g++.dg/cpp0x/gen-attrs-42.C: Add x86_64-*-* target.
	* g++.dg/ext/attrib42.C: Ditto.
	* g++.dg/torture/pr51344.C: Ditto.
	* g++.dg/tree-ssa/pr29902.C: Ditto.
	* gcc.c-torture/execute/20010129-1.c: Ditto.
	* gcc.dg/combine_ashiftrt_2.c: Ditto.
	* gcc.dg/march-generic.c: Ditto.
	* gcc.dg/torture/pr17526.c: Ditto.
	* gcc.dg/union-4.c: Ditto.

From-SVN: r217020
2014-11-02 22:32:54 +01:00
Richard Sandiford
24dbe738d3 arc.c (write_ext_corereg_1): Delete.
gcc/
	* config/arc/arc.c (write_ext_corereg_1): Delete.
	(arc_write_ext_corereg): Use FOR_EACH_SUBRTX.

From-SVN: r217019
2014-11-02 20:00:25 +00:00
Richard Sandiford
36cc625486 arc.c (arc600_corereg_hazard_1): Delete.
gcc/
	* config/arc/arc.c (arc600_corereg_hazard_1): Delete.
	(arc600_corereg_hazard): Use FOR_EACH_SUBRTX.

From-SVN: r217018
2014-11-02 20:00:19 +00:00
Richard Sandiford
752ae22f50 arc.c (arc_rewrite_small_data_p): Constify argument.
gcc/
	* config/arc/arc.c (arc_rewrite_small_data_p): Constify argument.
	(small_data_pattern_1): Delete.
	(small_data_pattern): Use FOR_EACH_SUBRTX.

From-SVN: r217017
2014-11-02 20:00:12 +00:00
Richard Sandiford
6733978e46 arc.c: Include rtl-iter.h.
gcc/
	* config/arc/arc.c: Include rtl-iter.h.
	(arc_rewrite_small_data_1): Delete.
	(arc_rewrite_small_data): Use FOR_EACH_SUBRTX_PTR.

From-SVN: r217016
2014-11-02 20:00:05 +00:00
Uros Bizjak
100a518033 re PR target/24188 (WRITE(6,*) causes an ICE with -mcmodel=medium)
* c-c++-common/ubsan/float-cast-overflow-6.c: Add i?86-*-* target.
	* g++.dg/abi/no-weak1.C: Ditto.
	* g++.dg/opt/pr44919.C: Ditto.
	* g++.dg/opt/pr46640.C: Ditto.
	* g++.dg/opt/pr46649.C: Ditto.
	* g++.dg/opt/pr47036.C: Ditto.
	* g++.dg/opt/pr48273.C: Ditto.
	* g++.dg/opt/pr48302.C: Ditto.
	* g++.dg/opt/pr45788.C: Ditto.
	* g++.dg/opt/pr57662.C: Ditto.
	* gcc.dg/20031102-1.c: Ditto.
	* gcc.dg/builtin-bswap-7.c: Ditto.
	* gcc.dg/builtin-bswap-7a.c: Ditto.
	* gcc.dg/builtin-bswap-9.c: Ditto.
	* gcc.dg/combine_ashiftrt_1.c: Ditto.
	* gcc.dg/guality/bswaptest.c: Ditto.
	* gcc.dg/guality/clztest.c: Ditto.
	* gcc.dg/guality/ctztest.c: Ditto.
	* gcc.dg/guality/pr45003-1.c: Ditto.
	* gcc.dg/guality/pr45003-2.c: Ditto.
	* gcc.dg/guality/pr45003-3.c: Ditto.
	* gcc.dg/guality/pr58791-4.c: Ditto.
	* gcc.dg/guality/rotatetest.c:Ditto.
	* gcc.dg/ifcvt-fabs-1.c: Ditto.
	* gcc.dg/ira-loop-pressure.c: Ditto.
	* gcc.dg/ira-shrinkwrap-prep-1.c: Ditto.
	* gcc.dg/ira-shrinkwrap-prep-2.c: Ditto.
	* gcc.dg/lto/pr47259_0.c: Ditto.
	* gcc.dg/memcpy-5.c: Ditto.
	* gcc.dg/pr10474.c: Ditto.
	* gcc.dg/pr37438.c: Ditto.
	* gcc.dg/pr39453.c: Ditto.
	* gcc.dg/pr40501.c: Ditto.
	* gcc.dg/pr42245-2.c: Ditto.
	* gcc.dg/pr42245.c: Ditto.
	* gcc.dg/pr42246.c: Ditto.
	* gcc.dg/pr42249.c: Ditto.
	* gcc.dg/pr42388.c: Ditto.
	* gcc.dg/pr42389.c: Ditto.
	* gcc.dg/pr45352-1.c: Ditto.
	* gcc.dg/pr45352-2.c: Ditto.
	* gcc.dg/pr45352-3.c: Ditto.
	* gcc.dg/pr45352.c: Ditto.
	* gcc.dg/pr45472.c: Ditto.
	* gcc.dg/pr45652.c: Ditto.
	* gcc.dg/pr46212.c: Ditto.
	* gcc.dg/pr46521.c: Ditto.
	* gcc.dg/pr46522.c: Ditto.
	* gcc.dg/pr46875.c: Ditto.
	* gcc.dg/pr48374.c: Ditto.
	* gcc.dg/pr50251.c: Ditto.
	* gcc.dg/pr54472.c: Ditto.
	* gcc.dg/pr55702.c: Ditto.
	* gcc.dg/pr56990.c: Ditto.
	* gcc.dg/pr57104.c: Ditto.
	* gcc.dg/pr57662.c: Ditto.
	* gcc.dg/pr60866.c: Ditto.
	* gcc.dg/shrink-wrap-loop.c: Ditto.
	* gcc.dg/tm/memopt-15.c: Ditto.
	* gcc.dg/torture/pr52720.c: Ditto.
	* gcc.dg/torture/pr56778.c: Ditto.
	* gcc.dg/tree-prof/pr45354.c: Ditto.
	* gcc.dg/tree-prof/pr50907.c: Ditto.
	* gcc.dg/tree-ssa/loop-16.c: Ditto.
	* gcc.dg/tree-ssa/loop-18.c: Ditto.
	* gcc.dg/tree-ssa/pr44423.c: Ditto.
	* gcc.dg/misc-tests/godump-1.c: Ditto.
	* gfortran.dg/PR24188.f: Ditto.
	* gfortran.dg/errnocheck_1.f90: Ditto.
	* gfortran.dg/g77/20010216-1.f: Ditto.
	* gfortran.dg/pr42246-2.f: Ditto.
	* gfortran.dg/pr42294.f: Ditto.
	* gfortran.dg/pr44691.f: Ditto.
	* gfortran.dg/vect/pr45714-a.f: Ditto.
	* gcc.c-torture/execute/ieee/ieee.exp: Ditto.
	* gcc.misc-tests/linkage.exp: Ditto.
	* lib/target-supports.exp: Reformat x86 tagets.
	(check_effective_target_whole_vector_shift): Add i?86-*-* target.

From-SVN: r217015
2014-11-02 20:27:06 +01:00
Michael Collison
9b227e35bd [ARM] Fix CLZ_DEFINED_VALUE_AT_ZERO for vector modes
2014-11-02  Michael Collison  <michael.collison@linaro.org>

	* config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO) : Update
	to support vector modes.
	(CTZ_DEFINED_VALUE_AT_ZERO): Ditto.

From-SVN: r217014
2014-11-02 19:00:59 +01:00
Paolo Carlini
e82d71d91e re PR c++/57694 ([c++11] constexpr constructor does not work with const address of own member)
2014-11-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57694
	* g++.dg/cpp0x/constexpr-ctor15.C: New.

From-SVN: r217013
2014-11-02 09:31:12 +00:00
Edward Smith-Rowland
26f0e1d68a feat-cxx11.C: Commentary and rearrangement of tests.
testsuite/

2014-11-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
	* g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
	Commentary and rearrangement of tests.
	* g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
	Commentary and rearrangement of tests.
	* g++.dg/cpp1y/feat-cxx98-neg.C: Ditto
	* g++.dg/cpp1y/feat-cxx98.C: Commentary.

c-family/

2014-11-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* c-cppbuiltin.c: Define __cpp_aggregate_nsdmi.

From-SVN: r217012
2014-11-02 02:51:41 +00:00
GCC Administrator
38083ac28f Daily bump.
From-SVN: r217010
2014-11-02 00:16:26 +00:00
Andrew MacLeod
b0710fe1b1 2014-11-01 Andrew MacLeod <amacleod@redhat,com>
* optabs.h: Flatten insn-codes.h to source files.  Move some prototypes
	and structs to genopinit.c.  Adjust protyoptypes to match optabs.c.
	* genopinit.c (main): Emit prototypes and structs into insn-opinit.h.
	* optabs.c: (gen_move_insn): Move to expr.c.
	* expr.h: Move protypes and enums to optabs.h.
	* expr.c: (gen_move_insn): Relocate from optabs.c.
	* genemit.c (main): Include insn-codes.h.
	* gengtype.c (open_base_files): Include insn-codes.h.
	* asan.c: Include insn-codes.h.
	* bb-reorder.c: Ditto.
	* builtins.c: Ditto.
	* calls.c: Ditto.
	* cfgexpand.c: Ditto.
	* cilk-common.c: Ditto.
	* combine.c: Ditto.
	* dojump.c: Ditto.
	* dse.c: Ditto.
	* except.c: Ditto.
	* explow.c: Ditto.
	* expmed.c: Ditto.
	* function.c: Ditto.
	* ifcvt.c: Ditto.
	* internal-fn.c: Ditto.
	* loop-unroll.c: Ditto.
	* lra.c: Ditto.
	* modulo-sched.c: Ditto.
	* omp-low.c: Ditto.
	* postreload.c: Ditto.
	* ree.c: Ditto.
	* reload.c: Ditto.
	* reload1.c: Ditto.
	* shrink-wrap.c: Ditto.
	* simplify-rtx.c: Ditto.
	* stmt.c: Ditto.
	* target-globals.c: Ditto.
	* targhooks.c: Ditto.
	* toplev.c: Ditto.
	* tree-if-conv.c: Ditto.
	* tree-ssa-forwprop.c: Ditto.
	* tree-ssa-loop-prefetch.c: Ditto.
	* tree-ssa-math-opts.c: Ditto.
	* tree-ssa-phiopt.c: Ditto.
	* tree-ssa-reassoc.c: Ditto.
	* tree-switch-conversion.c: Ditto.
	* tree-vect-data-refs.c: Ditto.
	* tree-vect-generic.c: Ditto.
	* tree-vect-loop.c: Ditto.
	* tree-vect-patterns.c: Ditto.
	* tree-vect-slp.c: Ditto.
	* tree-vect-stmts.c: Ditto.
	* tree-vrp.c: Ditto.
	* value-prof.c: Ditto.
	* config/aarch64/aarch64-builtins.c: Ditto.
	* config/alpha/alpha.c: Ditto.
	* config/arm/arm.c: Ditto.
	* config/cris/cris.c: Ditto.
	* config/epiphany/epiphany.c: Ditto.
	* config/frv/frv.c: Ditto.
	* config/h8300/h8300.c: Ditto.
	* config/ia64/ia64.c: Ditto.
	* config/iq2000/iq2000.c: Ditto.
	* config/m32c/m32c.c: Ditto.
	* config/mep/mep.c: Ditto.
	* config/microblaze/microblaze.c: Ditto.
	* config/mips/mips.c: Ditto.
	* config/mn10300/mn10300.c: Ditto.
	* config/moxie/moxie.c: Ditto.
	* config/msp430/msp430.c: Ditto.
	* config/nios2/nios2.c: Ditto.
	* config/pa/pa.c: Ditto.
	* config/rl78/rl78.c: Ditto.
	* config/rs6000/rs6000.c: Ditto.
	* config/rx/rx.c: Ditto.
	* config/s390/s390.c: Ditto.
	* config/sh/sh.c: Ditto.
	* config/sh/sh_treg_combine.cc: Ditto.
	* config/spu/spu.c: Ditto.
	* config/stormy16/stormy16.c: Ditto.
	* config/tilegx/mul-tables.c: Ditto.
	* config/tilegx/tilegx.c: Ditto.
	* config/tilepro/mul-tables.c: Ditto.
	* config/tilepro/tilepro.c: Ditto.
	* config/vax/vax.c: Ditto.

From-SVN: r217005
2014-11-01 13:34:15 +00:00
James Greenhalgh
a5474c4cb0 [Patch 7/7] Remove *_BY_PIECES_P
gcc/

	* doc/tm.texi.in (MOVE_BY_PIECES_P): Remove.
	(CLEAR_BY_PIECES_P): Likewise.
	(SET_BY_PIECES_P): Likewise.
	(STORE_BY_PIECES_P): Likewise.
	* doc/tm.texi: Regenerate.
	* system.h: Poison MOVE_BY_PIECES_P, CLEAR_BY_PIECES_P,
	SET_BY_PIECES_P, STORE_BY_PIECES_P.
	* expr.c (MOVE_BY_PIECES_P): Remove.
	(CLEAR_BY_PIECES_P): Likewise.
	(SET_BY_PIECES_P): Likewise.
	(STORE_BY_PIECES_P): Likewise.
	(can_move_by_pieces): Rewrite in terms of
	targetm.use_by_pieces_infrastructure_p.
	(emit_block_move_hints): Likewise.
	(can_store_by_pieces): Likewise.
	(store_by_pieces): Likewise.
	(clear_storage_hints): Likewise.
	(emit_push_insn): Likewise.
	(expand_constructor): Likewise.

From-SVN: r217004
2014-11-01 10:38:42 +00:00
James Greenhalgh
d3006da6f1 [Patch 6/7 AArch64] Deprecate *_BY_PIECES_P, move to hookized version
gcc/

	* config/aarch64/aarch64.c
	(aarch64_use_by_pieces_infrastructre_p): New.
	(TARGET_USE_BY_PIECES_INFRASTRUCTURE): Likewise.
	* config/aarch64/aarch64.h (STORE_BY_PIECES_P): Delete.

From-SVN: r217003
2014-11-01 10:15:51 +00:00
James Greenhalgh
a10ce56103 [Patch 5/7 mips] Deprecate *_BY_PIECES_P, move to hookized version
gcc/

	* config/mips/mips.h (MOVE_BY_PIECES_P): Remove.
	(STORE_BY_PIECES_P): Likewise.
	* config/mips/mips.c (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): New.
	(mips_move_by_pieces_p): Rename to...
	(mips_use_by_pieces_infrastructure_p): ...this, use new hook
	parameters, use the default hook implementation as a
	fall-back.

From-SVN: r217002
2014-11-01 10:14:08 +00:00
James Greenhalgh
ae59bd31fe [Patch 4/7 sh] Deprecate *_BY_PIECES_P, move to hookized version
gcc/

	* config/sh/sh.c (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): New.
	(sh_use_by_pieces_infrastructure_p): Likewise.
	* config/sh/sh.h (MOVE_BY_PIECES_P): Remove.
	(STORE_BY_PIECES_P): Likewise.
	(SET_BY_PIECES_P): Likewise.

From-SVN: r217001
2014-11-01 10:12:24 +00:00
James Greenhalgh
ad23f5d411 [Patch 3/7 arc] Deprecate *_BY_PIECES_P, move to hookized version
gcc/

	* config/arc/arc.c (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): New.
	(arc_use_by_pieces_infrastructure_p): Likewise.
	* confir/arc/arc.h (MOVE_BY_PIECES_P): Delete.
	(CAN_MOVE_BY_PIECES): Likewise.

From-SVN: r216999
2014-11-01 08:44:39 +00:00
James Greenhalgh
b5e3200c52 [Patch 2/7 s390] Deprecate *_BY_PIECES_P, move to hookized version
gcc/

	* config/s390/s390.c (s390_use_by_pieces_infrastructure_p): New.
	(TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): Likewise.
	* config/s390/s390.h (MOVE_BY_PIECES_P): Remove.
	(CLEAR_BY_PIECES): Likewise.
	(SET_BY_PIECES): Likewise.
	(STORE_BY_PIECES): Likewise.

From-SVN: r216998
2014-11-01 08:38:36 +00:00
James Greenhalgh
7cbed00872 [Patch 1/7] Hookize *_BY_PIECES_P
gcc/

	* target.def (use_by_pieces_infrastructure_p): New.
	* doc/tm.texi.in (MOVE_BY_PIECES_P): Describe that this macro
	is deprecated.
	(STORE_BY_PIECES_P): Likewise.
	(CLEAR_BY_PIECES_P): Likewise.
	(SET_BY_PIECES_P): Likewise.
	(TARGET_MOVE_BY_PIECES_PROFITABLE_P): Add hook.
	* doc/tm.texi: Regenerate.
	* expr.c (MOVE_BY_PIECES_P): Rewrite in terms of
	TARGET_USE_BY_PIECES_INFRASTRUCTURE_P.
	(STORE_BY_PIECES_P): Likewise.
	(CLEAR_BY_PIECES_P): Likewise.
	(SET_BY_PIECES_P): Likewise.
	(STORE_MAX_PIECES): Move to...
	* defaults.h (STORE_MAX_PIECES): ...here.
	* targhooks.c (get_move_ratio): New.
	(default_use_by_pieces_infrastructure_p): Likewise.
	* targhooks.h (default_use_by_pieces_infrastructure_p): New.
	* target.h (by_pieces_operation): New.

From-SVN: r216996
2014-11-01 08:13:09 +00:00
GCC Administrator
240decf782 Daily bump.
From-SVN: r216994
2014-11-01 00:16:18 +00:00
Uros Bizjak
4988bf65e5 re PR target/63702 (i386.c:36276: possible missing break ?)
PR target/63702
	* config/i386/i386.c (ix86_expand_args_builtin): Remove extra
	assignment to 'nargs' variable.

From-SVN: r216991
2014-10-31 22:56:05 +01:00
Uros Bizjak
8e454d55b9 re PR rtl-optimization/63620 (RELOAD lost SET_GOT dependency on Darwin)
PR target/63620
	* config/i386/i386-protos.h (ix86_use_pseudo_pic_reg): Declare.
	* config/i386/i386.c (ix86_use_pseudo_pic_reg): Export.
	* config/i386/i386.md (*pushtf): Allow only CONST_DOUBLEs that won't
	be reloaded through memory.
	(*pushxf): Ditto.
	(*pushdf): Ditto.

From-SVN: r216990
2014-10-31 22:52:22 +01:00
Jonathan Wakely
ccd615e3fd Make std::vector<bool> meet C++11 allocator requirements.
* include/bits/stl_bvector.h (_Bvector_base): Use allocator_traits.
	(_Bvector_base::_Bvector_impl): Use allocator's pointer type.
	(_Bvector_base::_M_end_addr()): Convert to raw pointer.
	(vector<bool>): Use allocator_traits and _M_end_addr. Add allocator
	extended constructors.
	* include/bits/vector.tcc (vector<bool>): Use allocator_traits and
	_M_end_addr.
	* testsuite/23_containers/vector/bool/allocator/copy.cc: New.
	* testsuite/23_containers/vector/bool/allocator/minimal.cc: New.
	* testsuite/23_containers/vector/bool/allocator/noexcept.cc: New.
	* testsuite/23_containers/vector/bool/allocator/copy_assign.cc: New.
	* testsuite/23_containers/vector/bool/allocator/move.cc: New.
	* testsuite/23_containers/vector/bool/allocator/swap.cc: New.
	* testsuite/23_containers/vector/bool/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/vector/bool/allocator/move_assign.cc: New.

From-SVN: r216988
2014-10-31 20:49:40 +00:00
Uros Bizjak
9ccb17b4c4 re PR rtl-optimization/63620 (RELOAD lost SET_GOT dependency on Darwin)
PR target/63620
	* config/i386/i386.md (*pushtf): Allow only CONST_DOUBLES that won't
	be reloaded through memory.
	(*pushxf): Ditto.
	(*pushdf): Ditto.

From-SVN: r216987
2014-10-31 20:47:36 +01:00
Jakub Jelinek
73c49bf53a re PR rtl-optimization/63659 (wrong code at -O2 and -O3 on x86_64-linux-gnu)
PR rtl-optimization/63659
	* ree.c (update_reg_equal_equiv_notes): New function.
	(combine_set_extension, transform_ifelse): Use it.

	* gcc.c-torture/execute/pr63659.c: New test.

From-SVN: r216985
2014-10-31 20:42:39 +01:00