1. 28 Jun, 2016 2 commits
    • Daily bump. · f0388d83
      From-SVN: r237810
      GCC Administrator committed
    • vsx.md (UNSPEC_P9_MEMORY): New unspec to support loading and storing… · ac11b8c0
      vsx.md (UNSPEC_P9_MEMORY): New unspec to support loading and storing byte/half-word values in the vector...
      
      [gcc]
      2016-06-27  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* config/rs6000/vsx.md (UNSPEC_P9_MEMORY): New unspec to support
      	loading and storing byte/half-word values in the vector registers.
      	(vsx_sign_extend_hi_<mode>): Enable the generator function.
      	(p9_lxsi<wd>zx): New insns to load zero-extended bytes and
      	half-words on ISA 3.0 to the vector registers.
      	(p9_stxsi<wd>zx): New insns to store zero-extended bytes and
      	half-words on ISA 3.0 from the vector registers.
      	* config/rs6000/rs6000.md (FP_ISA3): New iterator to optimize
      	converting char/half-word items to floating point on ISA 3.0.
      	(float<QHI:mode><FP_ISA3:mode>2): On ISA 3.0 generate the lxsihzx
      	and lxsibzx instructions if we are converting an 8-bit or 16-bit
      	item from memory to floating point.
      	(float<QHI:mode><FP_ISA3:mode>2_internal): Likewise.
      	(floatuns<QHI:mode><FP_ISA3:mode>2): Likewise.
      	(floatuns<QHI:mode><FP_ISA3:mode>2_internal): Likewise.
      	(fix_trunc<SFDF:mode><QHI:mode>2): On ISA 3.0 generate the stxsihx
      	and stxsibx instructions to store floating point values converted
      	to 8 or 16-bit integers.
      	(fixuns_trunc<mode>si2): Likewise.
      
      [gcc/testsuite]
      2016-06-27  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/p9-fpcvt-1.c: New test to test ISA 3.0 load
      	byte/half-word to vector registers and store byte/half-word from
      	vector register instructions.
      	* gcc.target/powerpc/p9-fpcvt-2.c: Likewise.
      
      From-SVN: r237806
      Michael Meissner committed
  2. 27 Jun, 2016 3 commits
    • re PR libstdc++/71640 (include/c++/7.0.0/bits/hashtable.h:293:7: error: too many… · dc448fa0
      re PR libstdc++/71640 (include/c++/7.0.0/bits/hashtable.h:293:7: error: too many template parameters in template redeclaration)
      
      2016-06-27  François Dumont  <fdumont@gcc.gnu.org>
      
      	PR libstdc++/71640
      	* include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert
      	friend declaration.
      
      From-SVN: r237803
      François Dumont committed
    • [ARM][testsuite] Add missing guards to fp16 AdvSIMD tests · b65ffc79
      2016-06-27  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	* gcc.target/aarch64/advsimd-intrinsics/vget_lane.c: Add ifdef
      	around fp16 code.
      	* gcc.target/aarch64/advsimd-intrinsics/vreinterpret.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p128.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p64.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vstX_lane.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vld2_lane_f16_indices_1.c:
      	Add arm_neon_fp16_ok effective target.
      	* gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vld3_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vld4_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vst2_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vst3_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vst4_lane_f16_indices_1.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_f16_indices_1.c: Likewise.
      
      From-SVN: r237798
      Christophe Lyon committed
    • Daily bump. · 74a1b6ff
      From-SVN: r237797
      GCC Administrator committed
  3. 26 Jun, 2016 6 commits
  4. 25 Jun, 2016 6 commits
  5. 24 Jun, 2016 18 commits
    • P0145R2: Refining Expression Order for C++ (complex LHS of =). · a25bd9e6
      gcc/c-common/
      	* c-common.c (verify_tree) [COMPOUND_EXPR]: Fix handling on LHS of
      	MODIFY_EXPR.
      gcc/cp/
      	* typeck.c (cp_build_modify_expr): Leave COMPOUND_EXPR on LHS.
      
      From-SVN: r237775
      Jason Merrill committed
    • rs6000-builtin.def (BU_FLOAT128_2): New #define. · 53605f35
      [gcc]
      
      2016-06-24  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/rs6000-builtin.def (BU_FLOAT128_2): New #define.
      	(BU_FLOAT128_1): Likewise.
      	(FABSQ): Likewise.
      	(COPYSIGNQ): Likewise.
      	(RS6000_BUILTIN_NANQ): Likewise.
      	(RS6000_BUILTIN_NANSQ): Likewise.
      	(RS6000_BUILTIN_INFQ): Likewise.
      	(RS6000_BUILTIN_HUGE_VALQ): Likewise.
      	* config/rs6000/rs6000.c (rs6000_fold_builtin): New prototype.
      	(TARGET_FOLD_BUILTIN): New #define.
      	(rs6000_builtin_mask_calculate): Add TARGET_FLOAT128 entry.
      	(rs6000_invalid_builtin): Add handling for RS6000_BTM_FLOAT128.
      	(rs6000_fold_builtin): New target hook implementation, handling
      	folding of 128-bit NaNs and infinities.
      	(rs6000_init_builtins): Initialize const_str_type_node; ensure all
      	entries are filled in to avoid problems during bootstrap
      	self-test; define builtins for 128-bit NaNs and infinities.
      	(rs6000_opt_mask): Add entry for float128.
      	* config/rs6000/rs6000.h (RS6000_BTM_FLOAT128): New #define.
      	(RS6000_BTM_COMMON): Include RS6000_BTM_FLOAT128.
      	(rs6000_builtin_type_index): Add RS6000_BTI_const_str.
      	(const_str_type_node): New #define.
      	* config/rs6000/rs6000.md (copysign<mode>3 for IEEE128): Convert
      	to a define_expand that dispatches to either copysign<mode>3_soft
      	or copysign<mode>3_hard.
      	(copysign<mode>3_hard): Rename from copysign<mode>3.
      	(copysign<mode>3_soft): New define_insn.
      	* doc/extend.texi: Document new builtins.
      
      [gcc/testsuite]
      
      2016-06-24  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/abs128-1.c: New.
      	* gcc.target/powerpc/copysign128-1.c: New.
      	* gcc.target/powerpc/inf128-1.c: New.
      	* gcc.target/powerpc/nan128-1.c: New.
      
      From-SVN: r237774
      Bill Schmidt committed
    • Fix get_target_expr for bit-field expressions. · 6e085858
      	* tree.c (get_target_expr_sfinae): Handle bit-fields.
      	(build_target_expr): Call mark_rvalue_use.
      
      From-SVN: r237773
      Jason Merrill committed
    • cfgloop.c (flow_loop_dump): Cast nit to uint64_t and print it using PRIu64 instead of lu. · 65e009bb
      	* cfgloop.c (flow_loop_dump): Cast nit to uint64_t and print it using
      	PRIu64 instead of lu.
      
      From-SVN: r237772
      Jakub Jelinek committed
    • re PR debug/71642 (ICE: in gen_type_die_with_usage, at dwarf2out.c:22729) · 7b22b4c6
      	PR debug/71642
      	* tree-inline.c (remap_decl): When fixing up DECL_ORIGINAL_TYPE, just
      	copy the type name.
      
      From-SVN: r237771
      Eric Botcazou committed
    • re PR tree-optimization/71647 (aligned(x:32) in #pragma omp simd does not work) · 37e373c2
      	PR tree-optimization/71647
      	* omp-low.c (lower_rec_input_clauses): Convert
      	omp_clause_aligned_alignment (c) to size_type_node for the
      	last argument of __builtin_assume_aligned.
      
      	* gcc.target/i386/pr71647.c: New test.
      
      From-SVN: r237769
      Jakub Jelinek committed
    • Call tls_get_addr via GOT for GNU TLS if possible · de86ff8f
      There are extensions to x86-64 psABI:
      
      https://groups.google.com/forum/#!topic/x86-64-abi/de5_KnLHxtI
      
      and i386 psABI:
      
      https://groups.google.com/forum/#!topic/ia32-abi/awsRSvJOJfs
      
      to call tls_get_addr via GOT.  X86 assembler and linker in binutils 2.27
      implemented
      
      call *__tls_get_addr@GOTPCREL(%rip)
      
      in 64-bit and
      
      call *___tls_get_addr@GOT(%reg)
      
      in 32-bit to access global and local thread loal variables in shared
      library.  We check if 32-bit x86 assembler and linker work with
      
      call *___tls_get_addr@GOT(%reg)
      
      as 32-bit and 64-bit assembler and linker are enabled togther.
      
      In 32-bit, since any integer register except EAX, which is used to pass
      parameter to ___tls_get_addr, and ESP, can be used as GOT base, a new
      register class, TLS_GOTBASE_REGS, along with a new constraint, Yb, are
      added.  They are used to improve register allocation for 32-bit dynamic
      TLS patterns.
      
      gcc/
      
      	* configure.ac (calling ___tls_get_addr via GOT): New
      	assembler/linker check.
      	(HAVE_AS_IX86_TLS_GET_ADDR_GOT): New.  Defined to 1 if 32-bit
      	assembler and linker supports calling ___tls_get_addr via GOT.
      	Otherise, defined to 0.
      	* config.in: Regenerated.
      	* configure: Likewise.
      	* config/i386/constraints.md (Yb): New constraint.
      	* config/i386/i386.h (reg_class): Add TLS_GOTBASE_REGS.
      	(REG_CLASS_NAMES): Likewise.
      	(REG_CLASS_CONTENTS): Likewise.
      	* config/i386/i386.md (*tls_global_dynamic_32_gnu): Replace
      	the b constraint with the Yb constraint.  Call ___tls_get_addr
      	via GOT for GNU TLS with -fno-plt if HAVE_AS_IX86_TLS_GET_ADDR_GOT
      	is 1.
      	(*tls_local_dynamic_base_32_gnu): Likewise.
      	(*tls_global_dynamic_64_<mode>): Call _tls_get_addr via GOT for
      	GNU TLS with -fno-plt if HAVE_AS_IX86_TLS_GET_ADDR_GOT is 1.
      	(*tls_local_dynamic_base_64_<mode>): Likewise.
      
      gcc/testsuite/
      
      	* gcc.target/i386/noplt-gd-1.c: New test.
      	* gcc.target/i386/noplt-gd-2.c: Likewise.
      	* gcc.target/i386/noplt-gd-3.c: Likewise.
      	* gcc.target/i386/noplt-ld-1.c: Likewise.
      	* gcc.target/i386/noplt-ld-2.c: Likewise.
      	* gcc.target/i386/noplt-ld-3.c: Likewise.
      	* lib/target-supports.exp
      	(check_effective_target_tls_get_addr_via_got): New.
      
      From-SVN: r237765
      H.J. Lu committed
    • * gcc.dg/vect/vect-bool-cmp.c: Revert unwanted change. · a7898180
      From-SVN: r237764
      Uros Bizjak committed
    • Dump profile-based number of iterations · 199b1891
      	* analyze_brprob.py: Parse and display average number
      	of loop iterations.
      	* cfgloop.c (flow_loop_dump): Dump average number of loop iterations.
      	* cfgloop.h: Change 'struct loop' to 'const struct loop' for a
      	few functions.
      	* cfgloopanal.c (expected_loop_iterations_unbounded): Set a new
      	argument to true if the expected number of iterations is
      	loop-based.
      
      From-SVN: r237762
      Martin Liska committed
    • vect-nb-iter-ub-1.c: Remove default vector testsuite compile flags. · 04619cb8
      2016-06-24  Uros Bizjak  <ubizjak@gmail.com>
      
      	* gcc.dg/vect/vect-nb-iter-ub-1.c: Remove default vector
      	testsuite compile flags.
      	* gcc.dg/vect/vect-nb-iter-ub-2.c: Ditto.
      	* gcc.dg/vect/vect-nb-iter-ub-3.c: Ditto.
      
      2016-06-24  Uros Bizjak  <ubizjak@gmail.com>
      
      	* g++dg/vect/pr36684.cc: Add dg-do compile.
      	* gcc.dg/vect/O3-pr70130.c: Remove dg-do run.
      	* gcc.dg/vect/pr70021.c: Ditto.
      	* gcc.dg/vect/pr70138-1.c: Ditto.
      	* gcc.dg/vect/pr70138-2.c: Ditto.
      	* gcc.dg/vect/pr70354-1.c: Ditto.
      	* gcc.dg/vect/pr70354-2.c: Ditto.
      	* gcc.dg/vect/pr71259.c: Ditto.
      	* gcc.dg/vect/pr71416-1.c: Ditto.
      	* gcc.dg/vect/slp-43.c: Ditto.
      	* gcc.dg/vect/slp-45.c: Ditto.
      	* gcc.dg/vect/vect-nb-iter-ub-1.c: Ditto.
      	* gcc.dg/vect/vect-nb-iter-ub-2.c: Ditto.
      	* gcc.dg/vect/vect-nb-iter-ub-3.c: Ditto.
      	* gfortran.dg/vect/pr69980.f90: Ditto.
      
      2016-06-24  Uros Bizjak  <ubizjak@gmail.com>
      
      	* gcc.dg/vect/O3-pr70130.c: Include tree-vect.h and call check_vect.
      	* gcc.dg/vect/bb-slp-30.c: Ditto.
      	* gcc.dg/vect/costmodel/i386/costmodel-vect-33.c: Ditto.
      	* gcc.dg/vect/fast-math-bb-slp-call-3.c: Ditto.
      	* gcc.dg/vect/pr45902.c: Ditto.
      	* gcc.dg/vect/pr48172.c: Ditto.
      	* gcc.dg/vect/pr48377.c: Ditto.
      	* gcc.dg/vect/pr49038.c: Ditto.
      	* gcc.dg/vect/pr49771.c: Ditto.
      	* gcc.dg/vect/pr52091.c: Ditto.
      	* gcc.dg/vect/pr53185-2.c: Ditto.
      	* gcc.dg/vect/pr56826.c: Ditto.
      	* gcc.dg/vect/pr60276.c: Ditto.
      	* gcc.dg/vect/pr62021.c: Ditto.
      	* gcc.dg/vect/pr63530.c: Ditto.
      	* gcc.dg/vect/pr65518.c: Ditto.
      	* gcc.dg/vect/pr65947-1.c: Ditto.
      	* gcc.dg/vect/pr65947-10.c: Ditto.
      	* gcc.dg/vect/pr65947-11.c: Ditto.
      	* gcc.dg/vect/pr65947-12.c: Ditto.
      	* gcc.dg/vect/pr65947-13.c: Ditto.
      	* gcc.dg/vect/pr65947-2.c: Ditto.
      	* gcc.dg/vect/pr65947-3.c: Ditto.
      	* gcc.dg/vect/pr65947-4.c: Ditto.
      	* gcc.dg/vect/pr65947-5.c: Ditto.
      	* gcc.dg/vect/pr65947-6.c: Ditto.
      	* gcc.dg/vect/pr65947-7.c: Ditto.
      	* gcc.dg/vect/pr65947-8.c: Ditto.
      	* gcc.dg/vect/pr65947-9.c: Ditto.
      	* gcc.dg/vect/pr71416-1.c: Ditto.
      	* gcc.dg/vect/pr71439.c: Ditto.
      	* gcc.dg/vect/slp-widen-mult-half.c: Ditto.
      	* gcc.dg/vect/vect-bswap16.c: Ditto.
      	* gcc.dg/vect/vect-bswap32.c: Ditto.
      	* gcc.dg/vect/vect-bswap64.c: Ditto.
      	* gcc.dg/vect/vect-live-1.c: Ditto.
      	* gcc.dg/vect/vect-live-2.c: Ditto.
      	* gcc.dg/vect/vect-live-3.c: Ditto.
      	* gcc.dg/vect/vect-live-4.c: Ditto.
      	* gcc.dg/vect/vect-live-5.c: Ditto.
      	* gcc.dg/vect/vect-live-slp-1.c: Ditto.
      	* gcc.dg/vect/vect-live-slp-2.c: Ditto.
      	* gcc.dg/vect/vect-live-slp-3.c: Ditto.
      	* gcc.dg/vect/vect-nb-iter-ub-1.c: Ditto.
      	* gcc.dg/vect/vect-nb-iter-ub-2.c: Ditto.
      	* gcc.dg/vect/vect-nb-iter-ub-3.c: Ditto.
      	* gcc.dg/vect/vect-neg-store-1.c: Ditto.
      	* gcc.dg/vect/vect-neg-store-2.c: Ditto.
      	* gcc.dg/vect/vect-outer-pr69720.c: Ditto.
      	* gcc.dg/vect/vect-reduc-mul_1.c: Ditto.
      	* gcc.dg/vect/vect-reduc-mul_2.c: Ditto.
      	* gcc.dg/vect/vect-reduc-or_1.c: Ditto.
      	* gcc.dg/vect/vect-reduc-or_2.c: Ditto.
      	* gcc.dg/vect/vect-widen-mult-const-s16.c: Ditto.
      	* gcc.dg/vect/vect-widen-mult-const-u16.c: Ditto.
      	* gcc.dg/vect/vect-widen-mult-half-u8.c: Ditto.
      	* gcc.dg/vect/vect-widen-mult-half.c: Ditto.
      
      From-SVN: r237761
      Uros Bizjak committed
    • float128-cmp-invalid.c (main): Use __builtin_nanq. · da224bcb
      	* gcc.dg/torture/float128-cmp-invalid.c (main): Use __builtin_nanq.
      
      From-SVN: r237760
      Uros Bizjak committed
    • tree-vect.h (check_vect): Handle __SSE4_2__. · 936ff030
      	* gcc.dg/vect/tree-vect.h (check_vect): Handle __SSE4_2__.
      
      From-SVN: r237759
      Uros Bizjak committed
    • configure.ac (HAVE_AS_GOTOF_IN_DATA): Use $as_ix86_gas_32_opt to assemble for 32bit target. · e1ebd31d
      	* configure.ac (HAVE_AS_GOTOF_IN_DATA): Use $as_ix86_gas_32_opt to
      	assemble for 32bit target.
      	(HAVE_AS_IX86_TLSGDPLT): Use $as_ix86_gas_32_opt to assemble
      	and $ld_ix86_gld_32_opt to link for 32bit target.
      	(HAVE_AS_IX86_TLSLDMPLT): Ditto.
      	* configure: Regenerate.
      
      From-SVN: r237758
      Uros Bizjak committed
    • [ARM][1/4] Replace uses of int_log2 by exact_log2 · 68a86323
      	* config/arm/arm.c (int_log2): Delete definition and prototype.
      	(shift_op): Use exact_log2 instead of int_log2.
      	(vfp3_const_double_for_fract_bits): Likewise.
      
      From-SVN: r237757
      Kyrylo Tkachov committed
    • Enable non-PIC noplt tests on 32-bit x86 target · dfee2870
      Since non-PIC noplt works on 32-bit x86 target now with assembler/linker
      support, enable non-PIC noplt tests on 32-bit x86 target.  main in
      noplt-2.c and noplt-4.c are renamed to bar to avoid stack re-alignment
      in main for 32-bit target, which disables tailcall optimization.
      
      	* gcc.target/i386/noplt-1.c: Don't disable for ia32.  Scan for
      	ia32 if R_386_GOT32X relocation is supported.
      	* gcc.target/i386/noplt-3.c: Likewise.
      	* gcc.target/i386/noplt-2.c: Likewise.
      	(main): Renamed to ...
      	(bar): This.
      	* gcc.target/i386/noplt-4.c: Likewise.
      	(main): Renamed to ...
      	(bar): This.
      	* gcc.target/i386/pr67400-3.c: Don't disable for ia32.
      	* gcc.target/i386/pr67400-5.c: Likewise.
      
      From-SVN: r237756
      H.J. Lu committed
    • call.c (magic_varargs_p): Return 3 for __builtin_*_overflow_p. · 00085092
      	* call.c (magic_varargs_p): Return 3 for __builtin_*_overflow_p.
      	(build_over_call): For magic == 3, do no conversion only on 3rd
      	argument.
      
      	* c-c++-common/torture/builtin-arith-overflow-p-19.c: Run for C++ too.
      	* g++.dg/ext/builtin-arith-overflow-2.C: New test.
      
      From-SVN: r237755
      Jakub Jelinek committed
    • internal-fn.c (expand_arith_set_overflow): New function. · a86451b9
      	* internal-fn.c (expand_arith_set_overflow): New function.
      	(expand_addsub_overflow, expand_neg_overflow, expand_mul_overflow):
      	Use it.
      	(expand_arith_overflow_result_store): Likewise.  Handle precision
      	smaller than mode precision.
      	* tree-vrp.c (extract_range_basic): For imag part, handle
      	properly signed 1-bit precision result.
      	* doc/extend.texi (__builtin_add_overflow): Document that last
      	argument can't be pointer to enumerated or boolean type.
      	(__builtin_add_overflow_p): Document that last argument can't
      	have enumerated or boolean type.
      
      	* c-common.c (check_builtin_function_arguments): Require last
      	argument of BUILT_IN_*_OVERFLOW_P to have INTEGER_TYPE type.
      	Adjust wording of diagnostics for BUILT_IN_*_OVERLFLOW
      	if the last argument is pointer to enumerated or boolean type.
      
      	* c-c++-common/builtin-arith-overflow-1.c (generic_wrong_type, f3,
      	f4): Adjust expected diagnostics.
      	* c-c++-common/torture/builtin-arith-overflow.h (TP): New macro.
      	(T): If OVFP is defined, redefine to TP.
      	* c-c++-common/torture/builtin-arith-overflow-12.c: Adjust comment.
      	* c-c++-common/torture/builtin-arith-overflow-p-1.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-2.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-3.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-4.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-5.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-6.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-7.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-8.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-9.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-10.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-11.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-12.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-13.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-14.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-15.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-16.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-17.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-18.c: New test.
      	* c-c++-common/torture/builtin-arith-overflow-p-19.c: New test.
      	* g++.dg/ext/builtin-arith-overflow-1.C: Pass 0 instead of C
      	as last argument to __builtin_add_overflow_p.
      
      From-SVN: r237754
      Jakub Jelinek committed
    • Daily bump. · 43535362
      From-SVN: r237753
      GCC Administrator committed
  6. 23 Jun, 2016 5 commits
    • array (array<>::swap): Fix noexcept qualificaton for zero-size array. · e615c24c
      2016-06-23  François Dumont  <fdumont@gcc.gnu.org>
      
      	* include/debug/array (array<>::swap): Fix noexcept qualificaton for
      	zero-size array.
      
      From-SVN: r237747
      François Dumont committed
    • pr33834_2.cc: Use dg-additional-options instead of dg-options and remove default vector... · 7bb5d5f4
      	* g++.dg/vect/pr33834_2.cc: Use dg-additional-options instead of
      	dg-options and remove default vector testsuite compile flags.
      	* g++.dg/vect/pr33860a.cc: Ditto.
      	* g++.dg/vect/pr45470-a.cc: Ditto.
      	* g++.dg/vect/pr45470-b.cc: Ditto.
      	* g++.dg/vect/pr60896.cc: Ditto.
      	* gcc.dg/vect/no-tree-pre-pr45241.c: Ditto.
      	* gcc.dg/vect/pr18308.c: Ditto.
      	* gcc.dg/vect/pr24049.c: Ditto.
      	* gcc.dg/vect/pr33373.c: Ditto.
      	* gcc.dg/vect/pr36228.c: Ditto.
      	* gcc.dg/vect/pr42395.c: Ditto.
      	* gcc.dg/vect/pr42604.c: Ditto.
      	* gcc.dg/vect/pr46663.c: Ditto.
      	* gcc.dg/vect/pr48765.c: Ditto.
      	* gcc.dg/vect/pr49093.c: Ditto.
      	* gcc.dg/vect/pr49352.c: Ditto.
      	* gcc.dg/vect/pr52298.c: Ditto.
      	* gcc.dg/vect/pr52870.c: Ditto.
      	* gcc.dg/vect/pr53185.c: Ditto.
      	* gcc.dg/vect/pr53773.c: Ditto.
      	* gcc.dg/vect/pr56695.c: Ditto.
      	* gcc.dg/vect/pr62171.c: Ditto.
      	* gcc.dg/vect/pr63530.c: Ditto.
      	* gcc.dg/vect/pr68339.c: Ditto.
      	* gcc.dg/vect/pr71259.c: Ditto.
      	* gcc.dg/vect/vect-82_64.c: Ditto.
      	* gcc.dg/vect/vect-83_64.c: Ditto.
      	* gcc.dg/vect/vect-debug-pr41926.c: Ditto.
      	* gcc.dg/vect/vect-shift-2-big-array.c: Ditto.
      	* gcc.dg/vect/vect-shift-2.c: Ditto.
      	* gfortran.dg/vect/fast-math-mgrid-resid.f: Ditto.
      	* gfortran.dg/vect/pr39318.f90: Ditto.
      	* gfortran.dg/vect/pr45714-a.f: Ditto.
      	* gfortran.dg/vect/pr45714-b.f: Ditto.
      	* gfortran.dg/vect/pr46213.f90: Ditto.
      
      From-SVN: r237745
      Uros Bizjak committed
    • predicates.md (splat_input_operand): Rework. · 2d4bb02f
      [gcc]
      2016-06-23  Michael Meissner  <meissner@linux.vnet.ibm.com>
      	    Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/predicates.md (splat_input_operand): Rework.
      	Don't allow constants, since the insns that use this predicate
      	don't support constants.  Constants are handled by other insns
      	that are created via combine.  During and after register
      	allocation, only allow indexed or indirect addresses, and not
      	general addresses.  Only allow modes supported by the hardware.
      	* config/rs6000/rs6000.c (xxsplitb_constant_p): Update usage
      	comment.  Move check for using VSPLTIS<x> to a common location,
      	instead of doing it in two different places.
      
      [gcc/testsuite]
      2016-06-23  Michael Meissner  <meissner@linux.vnet.ibm.com>
      	    Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/p9-splat-5.c: New test.
      
      
      Co-Authored-By: Bill Schmidt <wschmidt@linux.vnet.ibm.com>
      
      From-SVN: r237743
      Michael Meissner committed
    • driver-i386.c (host_detect_local_cpu): Set PROCESSOR_PENTIUMPRO for… · a239d460
      driver-i386.c (host_detect_local_cpu): Set PROCESSOR_PENTIUMPRO for signature_CENTAUR_ebx family >= 9.
      
      	* config/i386/driver-i386.c (host_detect_local_cpu): Set
      	PROCESSOR_PENTIUMPRO for signature_CENTAUR_ebx family >= 9.
      	<case PROCESSOR_PENTIMUMPRO>: Pass c7 or nehemiah for
      	signature_CENTAUR_ebx.
      
      From-SVN: r237741
      Jocelyn Mayer committed
    • re PR tree-optimization/71488 (Wrong code for vector comparisons with ivybridge… · f6d1b868
      re PR tree-optimization/71488 (Wrong code for vector comparisons with ivybridge and westmere targets)
      
      	PR tree-optimization/71488
      	* gcc.target/i386/i386.exp (check_effective_target_sse4): Move to ...
      	* lib/target-supports.exp: ... here.
      	(check_sse4_hw_available): New procedure.
      	(check_effective_target_sse4_runtime): Ditto.
      	* g++.dg/pr71488.C (dg-additional-options): Use -msse4 instead of
      	-march=westmere for sse4_runtime targets.
      	* gcc.dg/vect/vect-bool-cmp.c: Include "tree-vect.h".
      	(dg-additional-options): Use for sse4_runtime targets.
      	(main): Call check_vect ().
      	(dg-final): Perform scan only for sse4_runtime targets.
      
      From-SVN: r237738
      Uros Bizjak committed