152349 Commits

Author SHA1 Message Date
Will Schmidt
8e2c69b489 re PR target/79941 (Altivec vec_vmuleub regression)
gcc:
2017-03-10  Will Schmidt <will_schmidt@vnet.ibm.com>

     PR target/79941
     * config/rs6000/rs6000.c (builtin_function_type): Add VMUL*U[HB]
     entries to the case statement that marks unsigned arguments to
     overloaded functions.

testsuite:
2017-03-10  Will Schmidt <will_schmidt@vnet.ibm.com>

     PR target/79941
     * gcc.target/powerpc/fold-vec-mult-even_odd_misc.c: New test.
     * gcc.target/powerpc/fold-vec-mult-even_odd_char.c: New test.
     * gcc.target/powerpc/fold-vec-mult-even_odd_short.c: New test.

From-SVN: r246040
2017-03-10 16:18:44 +00:00
Marek Polacek
455d833cd8 re PR c++/79967 (ICE on non-type template argument declared noreturn)
PR c++/79967
	* decl.c (grokdeclarator): Check ATTRLIST before dereferencing it.

	* g++.dg/cpp0x/gen-attrs-63.C: New test.

From-SVN: r246039
2017-03-10 15:36:00 +00:00
Jakub Jelinek
e260b0a7dd re PR c++/79899 (ICE in ctor_omit_inherited_parms at gcc/cp/method.c:576 on ARM target)
PR c++/79899
	* optimize.c (maybe_thunk_body): Don't ICE if fns[0] is NULL.
	Use XALLOCAVEC macro.

	* g++.dg/other/friend7.C: New test.

From-SVN: r246038
2017-03-10 16:33:04 +01:00
Jonathan Wakely
da0ced6eb8 Fix libstdc++ reserved names test to pass on AIX
* testsuite/17_intro/names.cc: Undefine macros that clash with
	identifiers in AIX system headers.

From-SVN: r246037
2017-03-10 15:29:49 +00:00
Jonathan Wakely
7dcc645ccd P0604R0 add invoke_result, is_invocable etc. for C++17
* include/bits/invoke.h (__invoke): Use __invoke_result instead of
	result_of, and __is_nothrow_invocable instead of
	__is_nothrow_callable.
	* include/bits/shared_ptr_base.h (__shared_ptr): Use __is_invocable
	instead of __is_callable.
	* include/std/functional (invoke): use invoke_result_t instead of
	result_of_t and is_nothrow_invocable instead of is_nothrow_callable.
	(_Not_fn): Use __invoke_result instead of result_of.
	* include/std/type_traits (__result_of_memobj, __result_of_memfun):
	Remove partial specializations for reference_wrapper types.
	(__result_of_impl): Use __inv_unwrap to strip reference_wrapper.
	(__invoke_result): Define replacement for result_of and then use it to
	define result_of.
	(__is_callable_impl, __is_callable, __is_nothrow_callable): Replace
	with __is_invocable_impl, __is_invocable, and __is_nothrow_invocable
	respectively.
	(invoke_result, invoke_result_t): Define for C++17.
	(is_callable, is_nothrow_callable): Replace with is_invocable,
	is_invocable_r, is_nothrow_invocable, and is_nothrow_invocable_r.
	(is_callable_v, is_nothrow_callable_v): Replace with is_invocable_v,
	is_invocable_r_v, is_nothrow_invocable_v, and is_nothrow_invocable_r_v.
	* include/std/variant (hash<variant<T...>>): Use is_nothrow_invocable_v
	instead of is_nothrow_callable_v.
	* testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
	main function.
	* testsuite/20_util/function_objects/not_fn/1.cc: Use is_invocable
	instead of is_callable.
	* testsuite/20_util/is_callable/*: Rename directory and adjust tests
	to use new traits.
	* testsuite/20_util/is_notjrow_callable/*: Likewise.
	* testsuite/20_util/optional/hash.cc: Use is_invocable_v instead of
	is_callable.
	* testsuite/20_util/variant/hash.cc: Likewise.

From-SVN: r246036
2017-03-10 15:29:38 +00:00
Kelvin Nilsen
a147ef113d rs6000.c (rs6000_option_override_internal): Fix two typographic errors in the handling of TARGET_UPPER_REGS_DI.
gcc/ChangeLog:

2017-03-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* config/rs6000/rs6000.c (rs6000_option_override_internal): Fix
	two typographic errors in the handling of TARGET_UPPER_REGS_DI.

From-SVN: r246035
2017-03-10 15:29:35 +00:00
Jakub Jelinek
cdd669f9fc re PR c++/79896 (ICE in gimplify_expr, at gimplify.c:11950 on non-int128 target)
PR c++/79896
	* decl.c (finish_enum_value_list): If value is error_mark_node,
	don't copy it and change its type.
	* init.c (constant_value_1): Return error_mark_node if DECL_INITIAL
	of CONST_DECL is error_mark_node.

	* g++.dg/ext/int128-5.C: New test.

From-SVN: r246034
2017-03-10 16:28:26 +01:00
Segher Boessenkool
730e6e4634 testsuite: attr-alloc_size-11.c (PR79356)
As stated in the PR (and elsewhere), this test now passes on aarch64,
ia64, mips, powerpc, sparc, and s390x.  This patch disables the xfails
for those targets.


	PR testsuite/79356
	* gcc.dg/attr-alloc_size-11.c: Don't xfail on aarch64, ia64, mips,
	powerpc, sparc, or s390x.

From-SVN: r246032
2017-03-10 16:23:06 +01:00
Pat Haugen
fc8f6304a9 re PR target/79907 (ICE in extract_constrain_insn, at recog.c:2213 on ppc64le)
PR target/79907
	* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Test
	TARGET_UPPER_REGS_DI when setting 'wi' constraint regclass.
	* gcc.target/powerpc/pr79907.c: New.

From-SVN: r246029
2017-03-10 14:32:42 +00:00
Martin Liska
8823ce3f54 MPX: Fix option handling.
2017-03-10  Martin Liska  <mliska@suse.cz>

        PR target/65705
        PR target/69804
	* toplev.c (process_options): Enable MPX with LSAN and UBSAN.
	* tree-chkp.c (chkp_walk_pointer_assignments): Verify that
	FIELD != NULL.

From-SVN: r246027
2017-03-10 13:24:45 +00:00
George Lander
74106ead26 [libstdc++-v3] Fix detection of obsolete isnan
libstdc++-v3 configure checks whether old glibc inline definitions
of isnan would conflict with the libstdc++-v3 definitions and
works around them if so.  But if g++ 6.x build A is used to build
another g++ 6.x B, the configure step for B will pick up the math.h
installed alongside A instead of the glibc version.  configure will
then assume that the workaround isn't necessary, leaving B with a
broken cmath.

isinf already worked around this.  This patch extends the same fix
to isnan.  (Thanks to George for the fix.)

libstdc++-v3/
2017-03-10  George Lander  <george.lander@arm.com>

	* acinclude.m4 (glibcxx_cv_obsolete_isnan): Define
	_GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h.
	* configure: Regenerate.

From-SVN: r246025
2017-03-10 12:22:45 +00:00
Olivier Hainque
f1b0632aab tree-switch-conversion (array_value_type): Start by resetting candidate type to it's main variant.
2017-03-10  Olivier Hainque  <hainque@adacore.com>

	* tree-switch-conversion (array_value_type): Start by resetting
	candidate type to it's main variant.

	testsuite/
	* gnat.dg/opt64.adb: New test.
	* gnat.dg/opt64_pkg.ads: New helper.
	* gnat.dg/opt64_pkg.adb: New helper.

From-SVN: r246024
2017-03-10 11:16:21 +00:00
Jakub Jelinek
2d9dd4fb86 re PR middle-end/79909 (ICE error: invalid rtl sharing found in the insn on ppc64le)
PR rtl-optimization/79909
	* combine.c (try_combine): Use simplify_replace_rtx on individual
	CALL_INSN_FUNCTION_USAGE elements instead of replace_rtx on copy_rtx
	of the whole CALL_INSN_FUNCTION_USAGE.

	* gcc.target/powerpc/pr79909.c: New test.

From-SVN: r246023
2017-03-10 08:57:45 +01:00
Jakub Jelinek
72772e6761 re PR tree-optimization/79972 (ICE in tree check: expected ssa_name, have var_decl in get_range_info, at tree-ssanames.c:377 w/ -Walloca -Wvla-larger-than=364854541)
PR tree-optimization/79972
	* gimple-ssa-warn-alloca.c (alloca_call_type): Only call
	get_range_info on SSA_NAMEs.  Formatting fixes.

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

From-SVN: r246022
2017-03-10 08:55:00 +01:00
Jakub Jelinek
5558f089e3 re PR tree-optimization/77975 (Missed optimization for some small constants)
PR tree-optimization/77975
	* tree-ssa-loop-niter.c (get_base_for): Allow phi argument from latch
	edge to be constant.
	(get_val_for): For constant x return it.  Formatting fix.
	(loop_niter_by_eval): Avoid pointless looping if the next iteration
	would use the same bases as the current one.

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

From-SVN: r246021
2017-03-10 08:53:57 +01:00
Michael Eager
e837554452 Eliminate unneeded test.
From-SVN: r246020
2017-03-10 00:48:51 +00:00
GCC Administrator
b908f12576 Daily bump.
From-SVN: r246019
2017-03-10 00:16:21 +00:00
Marek Polacek
822a132cfb re PR c++/79962 (ICE nonnull_check_p on a function template with a type-dependent attribute nonnull)
PR c++/79962
	PR c++/79984
	* c-attribs.c (handle_nonnull_attribute): Save the result of default
	conversion to the attribute list.

	* c-c++-common/nonnull-3.c: New test.
	* g++.dg/warn/Wnonnull3.C: New test.

From-SVN: r246016
2017-03-09 22:45:39 +00:00
Bill Schmidt
6579b1563b rs6000.c (rs6000_gen_le_vsx_permute): Use rotate instead of vec_select for V1TImode.
2017-03-09  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (rs6000_gen_le_vsx_permute): Use rotate
	instead of vec_select for V1TImode.
	* conifg/rs6000/vsx.md (VSX_LE): Remove mode iterator that is no
	longer needed.
	(VSX_LE_128): Add V1TI to this mode iterator.
	(*vsx_le_perm_load_<mode>): Change to use VSX_D mode iterator.
	(*vsx_le_perm_store_<mode>): Likewise.
	(pre-reload splitter for VSX stores): Likewise.
	(post-reload splitter for VSX stores): Likewise.
	(*vsx_xxpermdi2_le_<mode>): Likewise.
	(*vsx_lxvd2x2_le_<mode>): Likewise.
	(*vsx_stxvd2x2_le_<mode>): Likewise.

From-SVN: r246015
2017-03-09 22:41:34 +00:00
Jason Merrill
4a23a464f8 * g++.dg/warn/Wpadded-1.C: Fix for 32-bit target.
From-SVN: r246014
2017-03-09 17:20:33 -05:00
Jonathan Wakely
d57409cb5f Define macro to simplify std::_Not_fn definition
* include/std/functional (_Not_fn): Define macro to simplify
	repetitive function definitions.

From-SVN: r246013
2017-03-09 20:36:42 +00:00
Michael Eager
4e0c6654ef Correct failures with --enable-checking=yes,rtl.
* config/microblaze/microblaze.c (microblaze_expand_shift):
        Replace GET_CODE test with CONST_INT_P and INTVAL test with
        test for const0_rtx.
        * config/microblaze/microblaze.md (ashlsi3_byone, ashrsi3_byone,
        lshrsi3_byone): Replace INTVAL with test for const1_rtx.

From-SVN: r246012
2017-03-09 18:09:39 +00:00
Matthew Fortune
c9819d2270 Use -mhard-float for MIPS -mlxc1-sxc1 tests
gcc/testsuite/

	* gcc.target/mips/lxc1-sxc1-1.c: Use -mhard-float.
	* gcc.target/mips/lxc1-sxc1-2.c: Likewise.

From-SVN: r246011
2017-03-09 17:18:41 +00:00
Marek Polacek
3661842863 re PR sanitizer/79757 (ICE in declare_vars, at gimplify.c:634)
PR sanitizer/79757
	* c-parser.c (c_parser_declaration_or_fndef): Don't sanitize old-style
	parameter declarations with initializers.

	* gcc.dg/ubsan/pr79757-1.c: New test.
	* gcc.dg/ubsan/pr79757-2.c: New test.
	* gcc.dg/ubsan/pr79757-3.c: New test.
	* gcc.dg/ubsan/pr79757-4.c: New test.
	* gcc.dg/ubsan/pr79757-5.c: New test.

From-SVN: r246010
2017-03-09 16:58:17 +00:00
Jakub Jelinek
01e5af5a2f re PR c/79969 (C FE emits locus of forward enum declaration rather than definition into debug info)
PR c/79969
	* c-decl.c (start_enum): Adjust DECL_SOURCE_LOCATION of
	TYPE_STUB_DECL.

	* gcc.dg/debug/dwarf2/enum-loc1.c: New test.

From-SVN: r246009
2017-03-09 17:42:45 +01:00
Marek Polacek
6443c7c0e5 re PR c++/79687 (Wrong code with pointer-to-member)
PR c++/79687
	* init.c (constant_value_1): Break if the variable has a dynamic
	initializer.

	* g++.dg/expr/ptrmem8.C: New test.
	* g++.dg/expr/ptrmem9.C: New test.

From-SVN: r246008
2017-03-09 16:36:37 +00:00
Richard Biener
d721dc3c4b re PR tree-optimization/79977 ([graphite] ICE in outermost_loop_in_sese, at sese.c:300 w/ -O2 -floop-nest-optimize)
2017-03-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/79977
	* graphite-scop-detection.c (scop_detection::merge_sese):
	Handle the case of extra exits to blocks dominating the entry.

	* gcc.dg/graphite/pr79977.c: New testcase.

From-SVN: r246006
2017-03-09 16:19:37 +00:00
Jonathan Wakely
e0472d7e8c Define std::byte for C++17 (P0298R3)
* doc/xml/manual/status_cxx2017.xml: Document std::byte support.
	* include/c_global/cstddef (std::byte): Define for C++17.
	* testsuite/18_support/byte/global_neg.cc: New test.
	* testsuite/18_support/byte/ops.cc: New test.
	* testsuite/18_support/byte/requirements.cc: New test.

From-SVN: r246005
2017-03-09 15:42:02 +00:00
Toma Tabacu
1f1fd3e272 Add check_effective_target_rdynamic and use it in g++.dg/lto/pr69589_0.C.
gcc/
	* doc/sourcebuild.texi (Effective-Target Keywords, Other attributes):
	Document rdynamic.

gcc/testsuite/

	* g++.dg/lto/pr69589_0.C: Add dg-require-effective-target for
	rdynamic.  Remove dg-skip-if for targets which don't support -rdynamic.
	* lib/target-supports.exp (check_effective_target_rdynamic):
	New proc.

From-SVN: r246004
2017-03-09 15:04:31 +00:00
Vladimir Makarov
9125b9fc80 re PR rtl-optimization/79949 (ICE in Max. number of generated reload insns per insn is achieved (90))
2017-03-09  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/79949
	* lra-constraints.c (process_alt_operands): Check memory when
	trying to predict a cycle.  Print about the overall increase.

From-SVN: r246003
2017-03-09 14:43:17 +00:00
Richard Biener
16967aff7a re PR target/79971 (ICE in const_binop, at fold-const.c:1554 on ARM target with saturated integers)
2017-03-09  Richard Biener  <rguenther@suse.de>

	PR middle-end/79971
	* gimple-expr.c (useless_type_conversion_p): Preserve
	TYPE_SATURATING for fixed-point types.

	* gcc.dg/fixed-point/pr79971.c: New testcase.

From-SVN: r246002
2017-03-09 13:20:50 +00:00
Richard Biener
26d7dc48b6 re PR ipa/79970 (ICE in add_stack_var, at cfgexpand.c:450 with always_inline attribute)
2017-03-09  Richard Biener  <rguenther@suse.de>

	PR ipa/79970
	* ipa-prop.c (ipa_modify_formal_parameters): Avoid changing
	alignment of BLKmode params.

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

From-SVN: r246001
2017-03-09 13:20:03 +00:00
Paolo Carlini
35f77c2855 re PR c++/71966 (ICE on invalid C++11 code (undefined constructor used in a constant expression): in cp_build_addr_expr_1, at cp/typeck.c:5671)
2017-03-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71966
	* g++.dg/cpp0x/pr71966-1.C: New.
	* g++.dg/cpp0x/pr71966-2.C: Likewise.

From-SVN: r246000
2017-03-09 11:51:29 +00:00
Kyrylo Tkachov
88119b464e [AArch64] PR target/79913: VEC_SELECT bugs in aarch64 patterns
PR target/79913
	* config/aarch64/iterators.md (VALL_F16_NO_V2Q): New mode iterator.
	(VALL_NO_V2Q): Likewise.
	(VDQF_DF): Delete.
	* config/aarch64/aarch64-simd.md
	(aarch64_dup_lane_<vswap_width_name><mode>): Use VALL_F16_NO_V2Q
	iterator.
	(*aarch64_simd_vec_copy_lane_<vswap_width_name><mode>): Use
	VALL_NO_V2Q mode iterator.
	(*aarch64_vgetfmulx<mode>): Use VDQF iterator.

From-SVN: r245999
2017-03-09 10:34:36 +00:00
Martin Liska
8a7df0316d Fix ICE in tree-chkp-opt.c (PR tree-optimization/79631).
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/79631
	* tree-chkp-opt.c (chkp_is_constant_addr): Call
	tree_int_cst_sign_bit just for INTEGER constants.
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/79631
	* gcc.target/i386/mpx/pr79631.c: New test.

From-SVN: r245998
2017-03-09 10:10:02 +00:00
Martin Liska
3828bb0d7e Disable -fcheck-pointer-bounds with sanitizers.
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR target/65705
	PR target/69804
	* toplev.c (process_options): Disable -fcheck-pointer-bounds with
	sanitizers.
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR target/65705
	PR target/69804
	* gcc.target/i386/pr71458.c: Update scanned pattern.

From-SVN: r245997
2017-03-09 10:04:50 +00:00
Marek Polacek
410a590c2a re PR c++/79672 (ICE with -Wduplicated-branches -fopenmp)
PR c++/79672
	* tree.c (inchash::add_expr): Handle TREE_VEC.

	* g++.dg/warn/Wduplicated-branches2.C: Fix PR.
	* g++.dg/warn/Wduplicated-branches3.C: New test.

From-SVN: r245996
2017-03-09 09:53:03 +00:00
Prachi Godbole
f084a22e98 msa-bclri.c: Skip the test for -O0.
gcc/testsuite/
	* gcc.target/mips/msa-bclri.c: Skip the test for -O0.

From-SVN: r245995
2017-03-09 09:38:00 +00:00
Martin Liska
a278b1c38f Support BIT_FIELD_REF in MPX (PR ipa/79764).
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR ipa/79764
	(chkp_narrow_size_and_offset): New function.
	(chkp_parse_array_and_component_ref): Support BIT_FIELD_REF.
	(void chkp_parse_bit_field_ref): New function.
	(chkp_make_addressed_object_bounds): Add case for BIT_FIELD_REF.
	(chkp_process_stmt): Use chkp_parse_bit_field_ref.
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR ipa/79764
	* g++.dg/pr79764.C: New test.

From-SVN: r245994
2017-03-09 09:26:45 +00:00
Martin Liska
8dc19053e1 Get bounds for a PARM_DECL (PR ipa/79761).
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR ipa/79761
	* tree-chkp.c (chkp_get_bound_for_parm): Get bounds for a param.
	(chkp_find_bounds_1): Remove gcc_unreachable.
2017-03-09  Martin Liska  <mliska@suse.cz>

	PR ipa/79761
	* g++.dg/pr79761.C: New test.

From-SVN: r245993
2017-03-09 09:22:29 +00:00
Martin Liska
bba81f1c84 Increment value instead of a pointer in ADA macro processing.
2017-03-09  Martin Liska  <mliska@suse.cz>

	* c-ada-spec.c (macro_length): Increment value instead of a pointer.

From-SVN: r245992
2017-03-09 09:20:59 +00:00
Jakub Jelinek
9e463823a8 re PR sanitizer/79944 (asan: incorrect instrumentation of atomic operations)
PR sanitizer/79944
	* asan.c (get_mem_refs_of_builtin_call): For BUILT_IN_ATOMIC* and
	BUILT_IN_SYNC*, determine the access type from the size suffix and
	always build a MEM_REF with that type.  Handle forgotten
	BUILT_IN_SYNC_FETCH_AND_NAND_16 and BUILT_IN_SYNC_NAND_AND_FETCH_16.

	* c-c++-common/asan/pr79944.c: New test.

From-SVN: r245991
2017-03-09 10:20:23 +01:00
Jakub Jelinek
6b62f32302 re PR target/79932 (_mm512_packus_epi32 does not compile under -O0)
PR target/79932
	* config/i386/avx512vlintrin.h (_mm256_cmpge_epi32_mask,
	_mm256_cmpge_epi64_mask, _mm256_cmpge_epu32_mask,
	_mm256_cmpge_epu64_mask, _mm256_cmple_epi32_mask,
	_mm256_cmple_epi64_mask, _mm256_cmple_epu32_mask,
	_mm256_cmple_epu64_mask, _mm256_cmplt_epi32_mask,
	_mm256_cmplt_epi64_mask, _mm256_cmplt_epu32_mask,
	_mm256_cmplt_epu64_mask, _mm256_cmpneq_epi32_mask,
	_mm256_cmpneq_epi64_mask, _mm256_cmpneq_epu32_mask,
	_mm256_cmpneq_epu64_mask, _mm256_mask_cmpge_epi32_mask,
	_mm256_mask_cmpge_epi64_mask, _mm256_mask_cmpge_epu32_mask,
	_mm256_mask_cmpge_epu64_mask, _mm256_mask_cmple_epi32_mask,
	_mm256_mask_cmple_epi64_mask, _mm256_mask_cmple_epu32_mask,
	_mm256_mask_cmple_epu64_mask, _mm256_mask_cmplt_epi32_mask,
	_mm256_mask_cmplt_epi64_mask, _mm256_mask_cmplt_epu32_mask,
	_mm256_mask_cmplt_epu64_mask, _mm256_mask_cmpneq_epi32_mask,
	_mm256_mask_cmpneq_epi64_mask, _mm256_mask_cmpneq_epu32_mask,
	_mm256_mask_cmpneq_epu64_mask, _mm_cmpge_epi32_mask,
	_mm_cmpge_epi64_mask, _mm_cmpge_epu32_mask, _mm_cmpge_epu64_mask,
	_mm_cmple_epi32_mask, _mm_cmple_epi64_mask, _mm_cmple_epu32_mask,
	_mm_cmple_epu64_mask, _mm_cmplt_epi32_mask, _mm_cmplt_epi64_mask,
	_mm_cmplt_epu32_mask, _mm_cmplt_epu64_mask, _mm_cmpneq_epi32_mask,
	_mm_cmpneq_epi64_mask, _mm_cmpneq_epu32_mask, _mm_cmpneq_epu64_mask,
	_mm_mask_cmpge_epi32_mask, _mm_mask_cmpge_epi64_mask,
	_mm_mask_cmpge_epu32_mask, _mm_mask_cmpge_epu64_mask,
	_mm_mask_cmple_epi32_mask, _mm_mask_cmple_epi64_mask,
	_mm_mask_cmple_epu32_mask, _mm_mask_cmple_epu64_mask,
	_mm_mask_cmplt_epi32_mask, _mm_mask_cmplt_epi64_mask,
	_mm_mask_cmplt_epu32_mask, _mm_mask_cmplt_epu64_mask,
	_mm_mask_cmpneq_epi32_mask, _mm_mask_cmpneq_epi64_mask,
	_mm_mask_cmpneq_epu32_mask, _mm_mask_cmpneq_epu64_mask): Move
	definitions outside of __OPTIMIZE__ guarded section.

	* gcc.target/i386/pr79932-2.c: New test.

From-SVN: r245990
2017-03-09 10:11:06 +01:00
Jakub Jelinek
030fc94af2 re PR target/79932 (_mm512_packus_epi32 does not compile under -O0)
PR target/79932
	* config/i386/avx512bwintrin.h (_mm512_packs_epi32,
	_mm512_maskz_packs_epi32, _mm512_mask_packs_epi32,
	_mm512_packus_epi32, _mm512_maskz_packus_epi32,
	_mm512_mask_packus_epi32): Move definitions outside of __OPTIMIZE__
	guarded section.

	* gcc.target/i386/pr79932-1.c: New test.

From-SVN: r245989
2017-03-09 10:09:27 +01:00
Marek Polacek
423aec8b57 PR c++/79900 - ICE in strip_typedefs
PR c++/79900 - ICE in strip_typedefs
	* tree.c (strip_typedefs): Skip the attribute handling if T is
	a variant type which hasn't been updated yet.

	* g++.dg/warn/Wpadded-1.C: New test.

From-SVN: r245988
2017-03-09 08:35:37 +00:00
Andreas Krebbel
dd01cd0ca2 S/390: Add missing constraints in builtin patterns
gcc/ChangeLog:

2017-03-09  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* config/s390/vx-builtins.md ("vfee<mode>", "vfeez<mode>")
	("vfenez<mode>"): Add missing constraints.

From-SVN: r245987
2017-03-09 07:53:29 +00:00
Jason Merrill
89262ec6bd PR c++/79797 - ICE with self-reference in array DMI.
* constexpr.c (lookup_placeholder): Split out...
	(cxx_eval_constant_expression): ...from here.

From-SVN: r245986
2017-03-08 20:01:18 -05:00
GCC Administrator
ad807dcbd9 Daily bump.
From-SVN: r245985
2017-03-09 00:16:18 +00:00
Martin Sebor
afd78f0213 PR target/79928 - nds32: misspelled diagnostic: not support -fpic
Verified by building an nds32be-elf cross-compiler.

gcc/ChangeLog
	* config/nds32/nds32.c (nds32_option_override):

From-SVN: r245982
2017-03-08 16:29:42 -07:00
Jakub Jelinek
eebc5e2dde re PR c/79940 (OpenMP pragma - internal compiler error with taskloop)
PR c/79940
	* gimplify.c (gimplify_omp_for): Replace index var in outer
	taskloop statement with an artificial variable and add
	OMP_CLAUSE_PRIVATE clause for it.

	* testsuite/libgomp.c/pr79940.c: New test.

From-SVN: r245980
2017-03-08 18:21:06 +01:00