Commit Graph

131947 Commits

Author SHA1 Message Date
Manuel López-Ibáñez
86d2cad906 input.h (in_system_header_at): Add comment.
2014-08-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* input.h (in_system_header_at): Add comment.

From-SVN: r214028
2014-08-15 16:27:38 +00:00
Paolo Carlini
8add4868b5 re PR c++/62072 (No SFINAE performed for function type)
/cp
2014-08-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/62072
	Revert:
	2014-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

	DR 1584
	PR c++/57466
	* pt.c (check_cv_quals_for_unify): Implement resolution, disregard
	cv-qualifiers of function types.

/testsuite
2014-08-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/62072
	Revert:
	2014-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

	DR 1584
	PR c++/57466
	* g++.dg/template/pr57466.C: New.
	* g++.dg/cpp0x/pr57466.C: Likewise.
	* g++.dg/template/unify6.C: Update.

	* g++.dg/cpp0x/sfinae52.C: New.

From-SVN: r214027
2014-08-15 16:23:47 +00:00
Manuel López-Ibáñez
598fc08518 call.c (build_conditional_expr_1): Use OPT_Wextra in warning.
2014-08-15  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

gcc/cp/:
	* call.c (build_conditional_expr_1): Use OPT_Wextra in warning.

From-SVN: r214026
2014-08-15 16:14:50 +00:00
Jonathan Wakely
2ce8cb99a6 re PR libstdc++/62154 (std::throw_with_nested should not require a polymorphic type)
PR libstdc++/62154
	* libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
	Rewrite to conform to C++11 requirements.
	* testsuite/18_support/nested_exception/62154.cc: New.

From-SVN: r214025
2014-08-15 16:22:44 +01:00
Manuel López-Ibáñez
8e54f6d3ba re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagnostic (pragmas) and color)
2014-08-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR fortran/44054
gcc/
	* diagnostic.c (build_message_string): Make it extern.
	* diagnostic.h (build_message_string): Make it extern.
c-family/
	* c-format.c: Handle Fortran flags.
fortran/
	* gfortran.h: Define GCC_DIAG_STYLE.
	(gfc_diagnostics_init,gfc_warning_cmdline): Declare.
	* trans-array.c: Include gfortran.h before diagnostic-core.h.
	* trans-expr.c: Likewise.
	* trans-openmp.c: Likewise.
	* trans-const.c: Likewise.
	* trans.c: Likewise.
	* trans-types.c: Likewise.
	* f95-lang.c: Likewise.
	* trans-decl.c: Likewise.
	* trans-io.c: Likewise.
	* trans-intrinsic.c: Likewise.
	* error.c: Include diagnostic.h and diagnostic-color.h.
	(gfc_diagnostic_build_prefix): New.
	(gfc_diagnostic_starter): New.
	(gfc_diagnostic_finalizer): New.
	(gfc_warning_cmdline): New.
	(gfc_diagnostics_init): New.
	* gfc-diagnostic.def: New.
	* options.c (gfc_init_options): Call gfc_diagnostics_init.
	(gfc_post_options): Use gfc_warning_cmdline.

From-SVN: r214024
2014-08-15 15:10:15 +00:00
Vladimir Makarov
363785f63e rs6000.c (rs6000_emit_move): Use SDmode for load/store from/to non-floating class pseudo.
2014-08-15  Vladimir Makarov  <vmakarov@redhat.com>

	* config/rs6000/rs6000.c (rs6000_emit_move): Use SDmode for
	load/store from/to non-floating class pseudo.

From-SVN: r214023
2014-08-15 14:16:56 +00:00
Manuel López-Ibáñez
592f32fa9b input.c (diagnostic_file_cache_fini): Fix typo in comment.
2014-08-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* input.c (diagnostic_file_cache_fini): Fix typo in comment.

From-SVN: r214022
2014-08-15 14:07:19 +00:00
Richard Biener
ebd7d91067 tree-ssa-structalias.c (readonly_id): Rename to string_id.
2014-08-15  Richard Biener  <rguenther@suse.de>

	* tree-ssa-structalias.c (readonly_id): Rename to string_id.
	(get_constraint_for_ssa_var): Remove dead code.
	(get_constraint_for_1): Adjust.
	(find_what_var_points_to): Likewise.
	(init_base_vars): Likewise.  STRING_CSTs do not contain pointers.

From-SVN: r214020
2014-08-15 12:54:28 +00:00
Ilya Tocar
275be1dac2 gcc/
PR target/61878
	* config/i386/avx512fintrin.h (_mm512_mask_cmpge_epi32_mask): New.
	(_mm512_mask_cmpge_epu32_mask): Ditto.
	(_mm512_cmpge_epu32_mask): Ditto.
	(_mm512_mask_cmpge_epi64_mask): Ditto.
	(_mm512_cmpge_epi64_mask): Ditto.
	(_mm512_mask_cmpge_epu64_mask): Ditto.
	(_mm512_cmpge_epu64_mask): Ditto.
	(_mm512_mask_cmple_epi32_mask): Ditto.
	(_mm512_cmple_epi32_mask): Ditto.
	(_mm512_mask_cmple_epu32_mask): Ditto.
	(_mm512_cmple_epu32_mask): Ditto.
	(_mm512_mask_cmple_epi64_mask): Ditto.
	(_mm512_cmple_epi64_mask): Ditto.
	(_mm512_mask_cmple_epu64_mask): Ditto.
	(_mm512_cmple_epu64_mask): Ditto.
	(_mm512_mask_cmplt_epi32_mask): Ditto.
	(_mm512_cmplt_epi32_mask): Ditto.
	(_mm512_mask_cmplt_epu32_mask): Ditto.
	(_mm512_cmplt_epu32_mask): Ditto.
	(_mm512_mask_cmplt_epi64_mask): Ditto.
	(_mm512_cmplt_epi64_mask): Ditto.
	(_mm512_mask_cmplt_epu64_mask): Ditto.
	(_mm512_cmplt_epu64_mask): Ditto.
	(_mm512_mask_cmpneq_epi32_mask): Ditto.
	(_mm512_mask_cmpneq_epu32_mask): Ditto.
	(_mm512_cmpneq_epu32_mask): Ditto.
	(_mm512_mask_cmpneq_epi64_mask): Ditto.
	(_mm512_cmpneq_epi64_mask): Ditto.
	(_mm512_mask_cmpneq_epu64_mask): Ditto.
	(_mm512_cmpneq_epu64_mask): Ditto.
	(_mm512_castpd_ps): Ditto.
	(_mm512_castpd_si512): Ditto.
	(_mm512_castps_pd): Ditto.
	(_mm512_castps_si512): Ditto.
	(_mm512_castsi512_ps): Ditto.
	(_mm512_castsi512_pd): Ditto.
	(_mm512_castpd512_pd128): Ditto.
	(_mm512_castps512_ps128): Ditto.
	(_mm512_castsi512_si128): Ditto.
	(_mm512_castpd512_pd256): Ditto.
	(_mm512_castps512_ps256): Ditto.
	(_mm512_castsi512_si256): Ditto.
	(_mm512_castpd128_pd512): Ditto.
	(_mm512_castps128_ps512): Ditto.
	(_mm512_castsi128_si512): Ditto.
	(_mm512_castpd256_pd512): Ditto.
	(_mm512_castps256_ps512): Ditto.
	(_mm512_castsi256_si512): Ditto.
	(_mm512_cmpeq_epu32_mask): Ditto.
	(_mm512_mask_cmpeq_epu32_mask): Ditto.
	(_mm512_mask_cmpeq_epu64_mask): Ditto.
	(_mm512_cmpeq_epu64_mask): Ditto.
	(_mm512_cmpgt_epu32_mask): Ditto.
	(_mm512_mask_cmpgt_epu32_mask): Ditto.
	(_mm512_mask_cmpgt_epu64_mask): Ditto.
	(_mm512_cmpgt_epu64_mask): Ditto.
	* config/i386/i386-builtin-types.def: Add V16SF_FTYPE_V8SF,
	V16SI_FTYPE_V8SI, V16SI_FTYPE_V4SI, V8DF_FTYPE_V2DF.
	* config/i386/i386.c (enum ix86_builtins): Add
	IX86_BUILTIN_SI512_SI256, IX86_BUILTIN_PD512_PD256,
	IX86_BUILTIN_PS512_PS256, IX86_BUILTIN_SI512_SI,
	IX86_BUILTIN_PD512_PD, IX86_BUILTIN_PS512_PS.
	(bdesc_args): Add __builtin_ia32_si512_256si,
	__builtin_ia32_ps512_256ps, __builtin_ia32_pd512_256pd,
	__builtin_ia32_si512_si, __builtin_ia32_ps512_ps,
	__builtin_ia32_pd512_pd.
	(ix86_expand_args_builtin): Handle new FTYPEs.
	* config/i386/sse.md (castmode): Add 512-bit modes.
	(AVX512MODE2P): New.
	(avx512f_<castmode><avxsizesuffix>_<castmode): New.
	(avx512f_<castmode><avxsizesuffix>_256<castmode): Ditto.


	gcc/testsuite/

	PR target/61878
	* gcc.target/i386/avx512f-typecast-1.c: New test.
	* gcc.target/i386/avx512f-vpcmpequd-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpequd-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpequq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpequq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpged-1.c: Add new intrinsic.
	* gcc.target/i386/avx512f-vpcmpged-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgeq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgeq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgeud-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgeud-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgeuq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgeuq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgtud-1.c: New test.
	* gcc.target/i386/avx512f-vpcmpgtud-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgtuq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpgtuq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpled-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpled-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpleq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpleq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpleud-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpleud-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpleuq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpleuq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltd-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltd-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltud-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltud-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltuq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpltuq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpneqd-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpneqd-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpneqq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpneqq-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpnequd-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpnequd-2.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpnequq-1.c: Ditto.
	* gcc.target/i386/avx512f-vpcmpnequq-2.c: Ditto.

From-SVN: r214019
2014-08-15 16:47:41 +04:00
Ilya Verbin
f613bc0fbe MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r214017
2014-08-15 12:33:03 +00:00
Richard Biener
09ad9c71aa fold-const.c (tree_swap_operands_p): Put all constants last...
2014-08-15  Richard Biener  <rguenther@suse.de>

	* fold-const.c (tree_swap_operands_p): Put all constants
	last, also strip sign-changing NOPs when considering further
	canonicalization.  Canonicalize also when optimizing for size.

From-SVN: r214013
2014-08-15 11:42:01 +00:00
Ilya Tocar
5f75acf4a4 MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r214012
2014-08-15 14:35:03 +04:00
Jakub Jelinek
7258a25765 re PR fortran/62131 (OpenMP: Subobject of an allocatable array not allowed in OMP ATOMIC)
PR fortran/62131
	* openmp.c (resolve_omp_atomic): Only complain if code->expr1's attr
	is allocatable, rather than whenever var->attr.allocatable.

	* gfortran.dg/gomp/pr62131.f90: New test.

Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r214010
2014-08-15 12:23:13 +02:00
Kyrylo Tkachov
2c274197e9 [AArch64] Move one_match > zero_match case to just before simple_sequence.
* config/aarch64/aarch64.c (aarch64_expand_mov_immediate): Move
	one_match > zero_match case to just before simple_sequence.

From-SVN: r214008
2014-08-15 09:02:27 +00:00
Richard Biener
4b5337e60e data-streamer.h (streamer_string_index, [...]): Remove.
2014-08-15  Richard Biener  <rguenther@suse.de>

	* data-streamer.h (streamer_string_index, string_for_index):
	Remove.
	* data-streamer-out.c (streamer_string_index): Make static.
	* data-streamer-in.c (string_for_index): Likewise.
	* lto-streamer-out.c (lto_output_location): Use bp_pack_string.
	* lto-streamer-in.c (lto_input_location): Use bp_unpack_string.

From-SVN: r214007
2014-08-15 07:51:35 +00:00
Richard Biener
6e2028ff0f re PR tree-optimization/62031 (Different results between O2 and O2 -fpredictive-commoning)
2014-08-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/62031
	* tree-data-ref.c (dr_analyze_indices): Do not set
	DR_UNCONSTRAINED_BASE.
	(dr_may_alias_p): All indirect accesses have to go the
	formerly DR_UNCONSTRAINED_BASE path.
	* tree-data-ref.h (struct indices): Remove
	unconstrained_base member.
	(DR_UNCONSTRAINED_BASE): Remove.

	* gcc.dg/torture/pr62031.c: New testcase.

From-SVN: r214006
2014-08-15 07:50:40 +00:00
Jakub Jelinek
9435147374 re PR fortran/62107 (libgomp.fortran/target2.f90 error while compiling for OpenMP 4.0 offload target)
PR fortran/62107
	* trans-openmp.c (gfc_omp_finish_clause): Handle scalar pointer
	or allocatable passed by reference.
	(gfc_trans_omp_clauses) <case OMP_LIST_MAP>: Likewise.

From-SVN: r214003
2014-08-15 09:41:06 +02:00
Jakub Jelinek
7de20fbd6e re PR middle-end/62092 (libgomp.c++/target-2.C FAIL while compiling for OpenMP 4.0 offload target)
PR middle-end/62092
	* gimplify.c (gimplify_adjust_omp_clauses_1): Don't remove
	OMP_CLAUSE_SHARED for global vars if the global var is mentioned
	in OMP_CLAUSE_MAP in some outer target region.

From-SVN: r214001
2014-08-15 09:40:03 +02:00
DJ Delorie
d50b463e75 rl78-real.md (addqi3_real): Allow adding global variables to the accumulator.
* config/rl78/rl78-real.md (addqi3_real): Allow adding global
variables to the accumulator.

From-SVN: r213999
2014-08-14 22:52:55 -04:00
DJ Delorie
7d73b2cb23 predicates.md (rl78_near_mem_operand): New.
* config/rl78/predicates.md (rl78_near_mem_operand): New.
* config/rl78/rl78-virt.md (movqi_virt_mm, movqi_virt)
(movhi_virt_mm): Split out near mem-mem moves to avoid problems
with far-far moves.

From-SVN: r213998
2014-08-14 22:48:03 -04:00
Bin Cheng
3230c614e7 tree-ssa-loop-ivopts.c (ivopts_data): New field name_expansion_cache.
* tree-ssa-loop-ivopts.c (ivopts_data): New field
	name_expansion_cache.
	(tree_ssa_iv_optimize_init): Initialize name_expansion_cache.
	(tree_ssa_iv_optimize_finalize): Free name_expansion_cache.
	(strip_wrap_conserving_type_conversions, expr_equal_p): Delete.
	(difference_cannot_overflow_p): New parameter.  Use affine
	expansion for equality check.
	(iv_elimination_compare_lt): Pass new argument.

	testsuite/ChangeLog
	* gcc.dg/tree-ssa/ivopts-lt-2.c: New test.

From-SVN: r213997
2014-08-15 02:42:33 +00:00
DJ Delorie
e33a3cf354 rl78-expand.md (umulqihi3): Disable for G10.
* config/rl78/rl78-expand.md (umulqihi3): Disable for G10.
* config/rl78/rl78-virt.md (umulhi3_shift_virt): Likewise.
(umulqihi3_virt): Likewise.
* config/rl78/rl78-real.md (umulhi3_shift_real): Likewise.
(umulqihi3_real): Likewise.

From-SVN: r213996
2014-08-14 22:30:22 -04:00
DJ Delorie
54bfc99b90 * config/rl78/rl78-virt.md (movhi_virt): Allow const->far moves.
From-SVN: r213995
2014-08-14 20:23:38 -04:00
GCC Administrator
c1598a858b Daily bump.
From-SVN: r213994
2014-08-15 00:16:44 +00:00
Jan Hubicka
80b6ba2878 re PR tree-optimization/62091 (ice in before_dom_children)
PR tree-optimization/62091
	* g++.dg/ipa/devirt-38.C: New testcase.
	* tree-ssa-alias.c (walk_aliased_vdefs_1): Do not clear
	function_entry_reached.
	(walk_aliased_vdefs): Clear it here.
	* ipa-devirt.c (check_stmt_for_type_change): Handle static storage.

From-SVN: r213991
2014-08-14 23:36:22 +00:00
Jan Hubicka
56b1f114de ipa-utils.h (compare_virtual_tables): Declare.
* ipa-utils.h (compare_virtual_tables): Declare.
	* ipa-devirt.c (odr_subtypes_equivalent_p): New function

	* lto-symtab.c (lto_varpool_replace_node): Call compare_virtual_tables.

From-SVN: r213990
2014-08-14 23:30:46 +00:00
Paolo Carlini
aa0a659ca6 typeck.c (composite_pointer_type, [...]): When a pedwarn is suppressed under SFINAE, return error_mark_node.
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* typeck.c (composite_pointer_type, cxx_sizeof_or_alignof_type,
	cp_build_array_ref, cp_build_function_call_vec): When a
	pedwarn is suppressed under SFINAE, return error_mark_node.

	* typeck.c (cxx_sizeof_or_alignof_type): Fix complain &
	tf_warning_or_error, where complain is a bool, glitch.

From-SVN: r213983
2014-08-14 20:12:32 +00:00
Marek Polacek
0ee9c843d8 DR 458
DR 458
	* ginclude/stdatomic.h (__atomic_type_lock_free): Remove.
	(ATOMIC_*_LOCK_FREE): Map to __GCC_ATOMIC_*_LOCK_FREE.

	* gcc.dg/c11-stdatomic-2.c: New test.

From-SVN: r213981
2014-08-14 18:56:10 +00:00
Thomas Koenig
ba8aa6fca6 re PR fortran/62106 (Adding a scalar variable to an array constructor gives wrong result)
2014-08-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/62106
	* gfortran.h (symbol_attribute):  Add fe_temp flag.
	* frontend-passes.c (is_fe_temp):  New function.
	(create_var):  Don't add a temporary for an already
	created variable or for a constant.
	(combine_ARRAY_constructor):  Remove special handling
	for constants.

2014-08-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/62106
	* gfortran.dg/array_constructor_49.f90:  New test.

From-SVN: r213980
2014-08-14 18:52:12 +00:00
Tobias Burnus
bc0229f9f6 gfortran.texi (caf_register_t): Add CAF_REGTYPE_CRITICAL.
gcc/fortran/
2014-08-14  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (caf_register_t): Add CAF_REGTYPE_CRITICAL.
        (_gfortran_caf_register): Update for locking/critical.
        (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
        * resolve.c (resolve_critical): New.
        (gfc_resolve_code): Call it.
        * trans-decl.c (gfor_fndecl_caf_critical,
        gfor_fndecl_caf_end_critical): Remove.
        (gfor_fndecl_caf_lock, gfor_fndecl_caf_unlock): Add.
        (gfc_build_builtin_function_decls): Remove critical,
        assign locking declarations.
        (generate_coarray_sym_init): Handle locking and
        critical variables.
        * trans-stmt.c (gfc_trans_critical): Add calls to
        lock/unlock libcaf functions.
        * trans.h (gfc_coarray_type): Update locking, add
        critical enum values.
        (gfor_fndecl_caf_critical, gfor_fndecl_caf_end_critical): Remove.
        (gfor_fndecl_caf_lock, gfor_fndecl_caf_unlock): Add.

libgfortran/
2014-08-14  Tobias Burnus  <burnus@net-b.de>

        * caf/libcaf.h (caf_register_t): Update for critical.
        (_gfortran_caf_critical, _gfortran_caf_end_critical): Remove.
        (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
        * caf/single.c (_gfortran_caf_register): Handle locking
        variables.
        (_gfortran_caf_sendget): Re-name args for consistency.
        (_gfortran_caf_lock, _gfortran_caf_unlock): Add.

From-SVN: r213979
2014-08-14 20:39:15 +02:00
Tobias Burnus
c194537c63 gfortran.texi (Coarray Programming): Add first ABI documentation.
2014-08-14  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (Coarray Programming): Add first ABI
        documentation.

From-SVN: r213978
2014-08-14 20:35:01 +02:00
Tom de Vries
9c8d7ac2a3 Fix ChangeLog entry
From-SVN: r213976
2014-08-14 17:56:18 +00:00
Tom de Vries
451d542ef4 Remove duplicate declaration of mem_attrs_eq_p
2014-08-14  Tom de Vries  <tom@codesourcery.com>

	* emit-rtl.h (mem_attrs_eq_p): Remove duplicate declaration.

From-SVN: r213975
2014-08-14 17:41:44 +00:00
Ville Voutilainen
5d9607f0ee re PR c++/62101 (deleted definitions of friend functions are rejected)
PR c++/62101
	* decl.c (grokdeclarator): Move the check for friend initializers..
	* decl2.c (grokfield) ..here. Postpone early return for friends
	until after the initializer check.

From-SVN: r213974
2014-08-14 13:11:26 -04:00
Paolo Carlini
a62dbaa42f re PR c++/54377 (Consider default arguments in "wrong number of template arguments" diagnostic)
/cp
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/54377
	* pt.c (coerce_template_parms): Improve error message vs default
	arguments.

/testsuite
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/54377
	* g++.dg/template/pr54377.C: New.
	* g++.dg/cpp0x/pr54377.C: Likewise.
	* g++.dg/cpp0x/alias-decl-2.C: Adjust.
	* g++.dg/cpp0x/pr51226.C: Likewise.
	* g++.dg/cpp0x/variadic2.C: Likewise.
	* g++.dg/parse/too-many-tmpl-args1.C: Likewise.
	* g++.dg/template/dtor3.C: Likewise.
	* g++.dg/template/qualttp4.C: Likewise.
	* g++.dg/template/spec28.C: Likewise.
	* g++.old-deja/g++.brendan/crash8.C: Likewise.
	* g++.old-deja/g++.pt/ttp7.C: Likewise.

From-SVN: r213973
2014-08-14 17:00:45 +00:00
Jakub Jelinek
4875c29c86 re PR fortran/62076 (testsuite failure in udr2.90)
PR fortran/62076
	* openmp.c (gfc_match_omp_clauses): When failed to match
	operator name, defined op name or name, set buffer to
	empty string.  Don't call gfc_find_omp_udr if buffer is empty
	string.
	(gfc_match_omp_declare_reduction): Call gfc_undo_symbols ()
	before calling gfc_free_omp_udr.

From-SVN: r213971
2014-08-14 18:39:07 +02:00
Tom de Vries
df5d402aba Fix if-conversion pass for dead type-unsafe code
2014-08-14  Tom de Vries  <tom@codesourcery.com>

	PR rtl-optimization/62004
	PR rtl-optimization/62030
	* ifcvt.c (rtx_interchangeable_p): New function.
	(noce_try_move, noce_process_if_block): Use rtx_interchangeable_p.
	* emit-rtl.h (mem_attrs_eq_p): Declare.

	* gcc.dg/pr62004.c: New test.
	* gcc.dg/pr62030.c: Same.
	* gcc.target/mips/pr62030-octeon.c: Same.

From-SVN: r213970
2014-08-14 16:13:59 +00:00
Roman Gareev
821fce246e graphite-scop-detection.c: Add inclusion of cp-tree.h.
[gcc/]

	* graphite-scop-detection.c:
	Add inclusion of cp-tree.h.
	(graphite_can_represent_scev): Disables the handling of SSA_NAME nodes
	in case they are pointers to object types

From-SVN: r213969
2014-08-14 14:53:59 +00:00
Richard Biener
2813008eeb BASE-VER: Change to 5.0.0
2014-08-14  Richard Biener  <rguenther@suse.de>

	* BASE-VER: Change to 5.0.0

From-SVN: r213968
2014-08-14 13:58:50 +00:00
Richard Biener
b50eee73a7 crontab: Change trunk snapshots from 4.10 to 5.
2014-08-14  Richard Biener  <rguenther@suse.de>

	* crontab: Change trunk snapshots from 4.10 to 5.

From-SVN: r213967
2014-08-14 13:58:16 +00:00
Alexander Ivchenko
8b99429794 sse.md (define_mode_attr avx512): New.
gcc/
        * config/i386/sse.md (define_mode_attr avx512): New.
	(define_mode_attr sse2_avx_avx512f): Allow V8HI, V16HI, V32HI, V2DI,
	V4DI modes.
	(define_mode_attr sse2_avx2): Allow V64QI, V32HI, V4TI modes.
	(define_mode_attr ssse3_avx2): Ditto.
	(define_mode_attr sse4_1_avx2): Allow V64QI, V32HI, V8DI modes.
	(define_mode_attr avx2_avx512bw): New.
	(define_mode_attr ssedoublemodelower): New.
	(define_mode_attr ssedoublemode): Allow V8SF, V8SI, V4DI, V4DF, V4SI,
	V32HI, V64QI modes.
	(define_mode_attr ssebytemode): Allow V8DI modes.
	(define_mode_attr sseinsnmode): Allow V4TI, V32HI, V64QI modes.
	(define_mode_attr sseintvecmodelower): Allow V8DF, V4TI modes.
	(define_mode_attr ssePSmode2): New.
	(define_mode_attr ssescalarsize): Allow V64QI, V32QI, V16QI, V8HI,
	V16HI, V32HI modes.
	(define_mode_attr dbpsadbwmode): New.
	(define_mode_attr bcstscalarsuff): Allow V64QI, V32QI, V16QI, V32HI,
	V16HI, V8HI, V8SI, V4SI, V4DI, V2DI, V8SF, V4SF, V4DF, V2DF modes.
	(vi8_sse4_1_avx2_avx512): New.
	(define_insn <sse4_1_avx2>_movntdqa): Use <vi8_sse4_1_avx2_avx512>
	mode attribute.
	(define_mode_attr blendbits): Move before its immediate use.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>

From-SVN: r213966
2014-08-14 13:39:50 +00:00
Alexander Ivchenko
2534573e53 sse.md: Allow V64QI, V32QI, V32HI, V4HI modes.
gcc/
	* config/i386/sse.md: Allow V64QI, V32QI, V32HI, V4HI modes.
	* config/i386/subst.md
	(define_mode_iterator SUBST_V): Update.
	(define_mode_iterator SUBST_A): Ditto.
	(define_subst_attr "mask_operand7"): New.
	(define_subst_attr "mask_operand10"): New.
	(define_subst_attr "mask_operand_arg34") : New.
	(define_subst_attr "mask_expand_op3"): New.
	(define_subst_attr "mask_mode512bit_condition"): Handle TARGET_AVX512VL.
	(define_subst_attr "sd_mask_mode512bit_condition"): Ditto.
	(define_subst_attr "mask_avx512vl_condition"): New.
	(define_subst_attr "round_mask_operand4"): Ditto.
	(define_subst_attr "round_mask_scalar_op3"): Delete.
	(define_subst_attr "round_mask_op4"): New.
	(define_subst_attr "round_mode512bit_condition"): Allow V8DImode,
	V16SImode.
	(define_subst_attr "round_modev8sf_condition"): New.
	(define_subst_attr "round_modev4sf_condition"): GET_MODE instead of
	<MODE>mode.
	(define_subst_attr "round_saeonly_mask_operand4"): New.
	(define_subst_attr "round_saeonly_mask_op4"): New.
	(define_subst_attr "round_saeonly_mode512bit_condition"): Allow
	V8DImode, V16SImode.
	(define_subst_attr "round_saeonly_modev8sf_condition"): New.
	(define_subst_attr "mask_expand4_name" "mask_expand4"): New.
	(define_subst_attr "mask_expand4_args"): New.
	(define_subst "mask_expand4"): New.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>

From-SVN: r213965
2014-08-14 13:30:51 +00:00
Alexander Ivchenko
e2131cc732 i386.md (define_attr "isa"): Add avx512bw,noavx512bw.
gcc/
        * config/i386/i386.md
	(define_attr "isa"): Add avx512bw,noavx512bw.
	(define_attr "enabled"): Ditto.
	(define_split): Add 32/64-bit mask logic.
	(define_insn "*k<logic>qi"): New.
	(define_insn "*k<logic>hi"): New.
	(define_insn "*anddi_1"): Add mask version.
	(define_insn "*andsi_1"): Ditto.
	(define_insn "*<code><mode>_1"): Ditto.
	(define_insn "*<code>hi_1"): Ditto.
	(define_insn "kxnor<mode>"): New.
	(define_insn "kunpcksi"): New.
	(define_insn "kunpckdi"): New.
	(define_insn "*one_cmpl<mode>2_1"): Add mask version.
	(define_insn "*one_cmplhi2_1"): Ditto.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>

From-SVN: r213964
2014-08-14 13:25:36 +00:00
Alexander Ivchenko
1d944b8a0a i386.c (ix86_preferred_simd_mode): Allow V64QImode and V32HImode.
gcc/
	* config/i386/i386.c (ix86_preferred_simd_mode): Allow V64QImode and
	V32HImode.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>

From-SVN: r213963
2014-08-14 13:20:25 +00:00
Alexander Ivchenko
9e4a4dd651 i386.c (print_reg): Сorrectly print 64-bit mask registers.
gcc/
	* config/i386/i386.c (print_reg): Сorrectly print 64-bit mask
	registers.
	(inline_secondary_memory_needed): Allow 64 bit wide mask registers.
	(ix86_hard_regno_mode_ok): Allow 32/64-bit mask registers and
	xmm/ymm16+ when availble.
	* config/i386/i386.h
	(HARD_REGNO_NREGS): Add mask regs.
	(VALID_AVX512F_REG_MODE): Ditto.
	(VALID_AVX512F_REG_MODE) : Define.
	(VALID_MASK_AVX512BW_MODE): Ditto.
	(reg_class) (MASK_REG_P(X)): Define.
	* config/i386/i386.md: Do not split long moves with mask register,
	use kmovb if avx512bw is availible.
	(movdi_internal): Handle mask registers.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>

From-SVN: r213962
2014-08-14 13:18:42 +00:00
Richard Biener
7d39012c24 re PR tree-optimization/62081 (ICE: in fix_loop_structure, at loop-init.c:208 with -fno-tree-ch -fno-tree-cselim -fno-tree-dominator-opts -fno-tree-reassoc -fno-tree-sink)
2014-08-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/62081
	* tree-ssa-loop.c (pass_fix_loops): New pass.
	(pass_tree_loop::gate):  Do not fixup loops here.
	* tree-pass.h (make_pass_fix_loops): Declare.
	* passes.def: Schedule pass_fix_loops before GIMPLE loop passes.

From-SVN: r213961
2014-08-14 13:14:24 +00:00
Richard Biener
833f94c011 re PR lto/62067 (lto-lang.c:549: too many calls to va_end on some code paths ?)
2014-08-14  Richard Biener  <rguenther@suse.de>

	PR lto/62067
	* lto-lang.c (def_fn_type): Fix error handling wrt va_end.

From-SVN: r213960
2014-08-14 13:13:41 +00:00
Matthias Klose
e8af7616a9 requirements: Remove empty directory.
2014-08-14  Matthias Klose  <doko@ubuntu.com>

        * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
        Remove empty directory.

From-SVN: r213958
2014-08-14 11:37:20 +00:00
Richard Biener
0cff9154ec tree.c (type_hash_lookup, [...]): Merge into ...
2014-08-14  Richard Biener  <rguenther@suse.de>

	* tree.c (type_hash_lookup, type_hash_add): Merge into ...
	(type_hash_canon): ... this and avoid 2nd lookup for the add.

From-SVN: r213956
2014-08-14 11:15:41 +00:00
Paolo Carlini
215acd2bae parser.c (cp_parser_init_declarator): Remove redundant check of decl_specifiers->type.
/gcc/cp
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* parser.c (cp_parser_init_declarator): Remove redundant check of
	decl_specifiers->type.

/gcc/testsuite
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/alias-decl-4.C: Adjust for parser change.
	* g++.dg/cpp0x/decltype2.C: Likewise.
	* g++.dg/cpp0x/decltype3.C: Likewise.
	* g++.dg/cpp0x/pr60249.C: Likewise.
	* g++.dg/cpp0x/variadic-ex10.C: Likewise.
	* g++.dg/cpp0x/variadic-ex14.C: Likewise.
	* g++.dg/cpp0x/variadic2.C: Likewise.
	* g++.dg/cpp0x/variadic74.C: Likewise.
	* g++.dg/parse/error10.C: Likewise.
	* g++.dg/parse/error15.C: Likewise.
	* g++.dg/parse/error2.C: Likewise.
	* g++.dg/template/crash106.C: Likewise.
	* g++.dg/template/crash89.C: Likewise.
	* g++.dg/template/nontype7.C: Likewise.
	* g++.dg/template/void3.C: Likewise.
	* g++.dg/template/void7.C: Likewise.

/libstdc++-v3
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/26_numerics/random/linear_congruential_engine/
	requirements/non_uint_neg.cc: Adjust for parser change.
	* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
	requirements/non_uint_neg.cc: Likewise.

From-SVN: r213952
2014-08-14 09:15:11 +00:00