1. 24 Mar, 2017 14 commits
    • S/390: vec_init improvements · a602f985
      This enables the vec_init pattern also for V4SF, V1TI, and V1TF.
      
      gcc/testsuite/ChangeLog:
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* gcc.target/s390/vector/vec-init-2.c: New test.
      
      gcc/ChangeLog:
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* config/s390/s390.c (s390_expand_vec_init): Enable vector load
      	pair for all vector types with 64 bit elements.
      	* config/s390/vx-builtins.md (V_HW_64): Move mode iterator to ...
      	* config/s390/vector.md (V_HW_64): ... here.
      	(V_128_NOSINGLE): New mode iterator.
      	("vec_init<V_HW:mode>"): Use V_128 as mode iterator.
      	("*vec_splat<mode>"): Use V_128_NOSINGLE mode iterator.
      	("*vec_tf_to_v1tf", "*vec_ti_to_v1ti"): New pattern definitions.
      	("*vec_load_pairv2di"): Change to ...
      	("*vec_load_pair<mode>"): ... this one.
      
      From-SVN: r246446
      Andreas Krebbel committed
    • S/390: Improve support of 128 bit vectors in GPRs · 9d605427
      This patch improves the handling of 128 bit vectors residing in GPRs
      by adding more alternatives to the move pattern.
      
      Regression tested on s390x.
      
      gcc/ChangeLog:
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* config/s390/constraints.md: Add comments.
      	(jKK): Reject element sizes > 8 bytes.
      	* config/s390/s390.c (s390_split_ok_p): Enable splitting also for
      	s_operands.
      	* config/s390/s390.md: Add the s_operand checks formerly in
      	s390_split_ok_p to various splitters where they are still
      	required.
      	* config/s390/vector.md ("mov<mode>" V_128): Add GPR alternatives
      	for 128 bit vectors.  Plus two splitters.
      
      From-SVN: r246445
      Andreas Krebbel committed
    • S/390: Rename cpu facility vec to vx. · 285363a1
      gcc/ChangeLog:
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* config/s390/s390.md: Rename the cpu facilty vec to vx throughout
      	the file.
      
      From-SVN: r246444
      Andreas Krebbel committed
    • S/390: PR79904: Disallow reg + sym_ref literal pool addresses. · 085db63d
      We accept reg + sym_ref as valid address if sym_ref is a literal pool
      reference knowing that it will be rewritten as r13 + reg + offset.
      However, annotate_constant_pool_refs was never able to handle that.
      
      With the patch only single sym_refs are accepted.
      
      Regression tested on s390x.
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/79904
      	* config/s390/s390.c (s390_decompose_address): Reject reg +
      	sym_ref literal pool references.
      
      gcc/testsuite/ChangeLog:
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* gcc.dg/ubsan/pr79904-2.c: New test.
      
      From-SVN: r246443
      Andreas Krebbel committed
    • S/390: PR79893: Add diagnostics vec_load_bndry builtin. · dc4f29bc
      The boundary argument of the vec_load_bndry builtin needs to be
      rewritten.  At that point it must be constant already.  The current
      diagnostics in s390_expand_builtins is too late for this.  The patch
      adds an additional check for that builtin which will be triggered
      already during preprocessing.
      
      Regression tested on s390x.
      
      gcc/testsuite/ChangeLog:
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/79893
      	* gcc.target/s390/zvector/pr79893.c: New test.
      
      gcc/ChangeLog:
      
      2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/79893
      	* config/s390/s390-c.c (s390_adjust_builtin_arglist): Issue an
      	error if the boundary argument is not constant.
      
      From-SVN: r246442
      Andreas Krebbel committed
    • re PR rtl-optimization/80112 (ICE in doloop_condition_get at loop-doloop.c:158) · 56010684
      	PR rtl-optimization/80112
      	* loop-doloop.c (doloop_condition_get): Don't check condition
      	if cmp isn't SET with IF_THEN_ELSE src.
      
      	* gcc.dg/pr80112.c: New test.
      
      From-SVN: r246441
      Jakub Jelinek committed
    • Adjust c-c++-common/Wimplicit-fallthrough-7.c etc. line numbers · f0d7b52d
      	* c-c++-common/Wimplicit-fallthrough-7.c: Adjust dg-warning
      	etc. line numbers.
      	* gcc.dg/Walloca-1.c: Likewise.
      	* gcc.dg/Walloca-2.c: Likewise.
      	* gcc.dg/Wvla-larger-than-2.c: Likewise.
      
      From-SVN: r246440
      Rainer Orth committed
    • re PR tree-optimization/80158 (ICE in all_phi_incrs_profitable) · 635684c4
      2017-03-24  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/80158
      	* gimple-ssa-strength-reduction.c (replace_mult_candidate): When
      	replacing a candidate statement, also replace it for the
      	candidate's alternate interpretation.
      	(replace_rhs_if_not_dup): Likewise.
      	(replace_one_candidate): Likewise.
      
      	* gfortran.fortran-torture/compile/pr80158.f: New file.
      
      From-SVN: r246439
      Bill Schmidt committed
    • re PR tree-optimization/80167 (ICE in… · 76afddf3
      re PR tree-optimization/80167 (ICE in translate_isl_ast_to_gimple::is_valid_rename at gcc/graphite-isl-ast-to-gimple.c:1139)
      
      2017-03-24  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/80167
      	* graphite-isl-ast-to-gimple.c
      	(translate_isl_ast_to_gimple::is_valid_rename): Handle default-defs
      	properly.
      	(translate_isl_ast_to_gimple::get_rename): Likewise.
      
      	* gcc.dg/graphite/pr80167.c: New testcase.
      
      From-SVN: r246438
      Richard Biener committed
    • Require effective target global_constructor for two testcases · c2e389bf
      2017-03-24  Tom de Vries  <tom@codesourcery.com>
      
      	PR testsuite/80092
      	* gcc.dg/no_profile_instrument_function-attr-1.c: Add
      	dg-require-effective-target global_constructor.
      	* gcc.dg/tls/emutls-2.c: Same.
      
      From-SVN: r246436
      Tom de Vries committed
    • Require effective target indirect_jump in Wimplicit-fallthrough-34.c · a72821b4
      2017-03-24  Tom de Vries  <tom@codesourcery.com>
      
      	PR testsuite/80092
      	* c-c++-common/Wimplicit-fallthrough-34.c: Add
      	dg-require-effective-target indirect_jumps.
      
      From-SVN: r246435
      Tom de Vries committed
    • Require effective target nonlocal_goto in pr79244.c · 1658def9
      2017-03-24  Tom de Vries  <tom@codesourcery.com>
      
      	PR testsuite/80092
      	* gcc.dg/torture/pr79244.c: Add dg-require-effective-target
      	nonlocal_goto.
      
      From-SVN: r246434
      Tom de Vries committed
    • Add missing dg-require-effective-target alloca in gcc testsuite · 90e02692
      2017-03-24  Tom de Vries  <tom@codesourcery.com>
      
      	PR testsuite/80092
      	* gcc.dg/Walloca-7.c: Add dg-require-effective-target alloca.
      	* gcc.dg/Walloca-12.c: Same.
      	* gcc.dg/attr-alloc_size-8.c: Same.
      	* gcc.dg/Walloca-4.c: Same.
      	* gcc.dg/Walloca-8.c: Same.
      	* gcc.dg/Walloca-13.c: Same.
      	* gcc.dg/Walloca-14.c: Same.
      	* gcc.dg/attr-alloc_size-9.c: Same.
      	* gcc.dg/Walloca-1.c: Same.
      	* gcc.dg/tree-ssa/builtin-sprintf-warn-3.c: Same.
      	* gcc.dg/Walloca-5.c: Same.
      	* gcc.dg/Walloca-10.c: Same.
      	* gcc.dg/Walloca-9.c: Same.
      	* gcc.dg/attr-alloc_size-6.c: Same.
      	* gcc.dg/Wvla-larger-than-1.c: Same.
      	* gcc.dg/torture/pr71881.c: Same.
      	* gcc.dg/torture/pr71901.c: Same.
      	* gcc.dg/torture/pr78742.c: Same.
      	* gcc.dg/builtin-alloc-size.c: Same.
      	* gcc.dg/Walloca-2.c: Same.
      	* gcc.dg/Walloca-6.c: Same.
      	* gcc.dg/Walloca-11.c: Same.
      	* gcc.dg/attr-alloc_size-7.c: Same.
      	* gcc.dg/Wvla-larger-than-2.c: Same.
      	* gcc.dg/Walloca-3.c: Same.
      	* c-c++-common/Wimplicit-fallthrough-7.c: Same.
      	* gcc.c-torture/compile/pr79413.c: Same.
      	* gcc.c-torture/compile/pr78439.c: Same.
      
      From-SVN: r246433
      Tom de Vries committed
    • Daily bump. · 603a9c6e
      From-SVN: r246431
      GCC Administrator committed
  2. 23 Mar, 2017 13 commits
    • p9-options-1.c: New test. · 842392c8
      gcc/testsuite/ChangeLog:
      
      2017-03-23  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	* gcc.target/powerpc/p9-options-1.c: New test.
      
      gcc/ChangeLog:
      
      2017-03-23  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	* config/rs6000/rs6000.c (rs6000_option_override_internal): Change
      	handling of certain combinations of target options, including the
      	combinations -mpower8-vector vs. -mno-vsx, -mpower9-vector vs.
      	-mno-power8-vector, and -mpower9_dform vs. -mno-power9-vector.
      
      From-SVN: r246428
      Kelvin Nilsen committed
    • Fix Debug Mode test failures · 01e3c229
      	* testsuite/23_containers/array/tuple_interface/
      	tuple_element_debug_neg.cc: Adjust dg-error.
      	* testsuite/23_containers/list/operations/78389.cc: Fix less-than to
      	define a valid strict weak ordering.
      	* testsuite/23_containers/priority_queue/67085.cc: Disable test for
      	Debug Mode, due to debug checks making extra copies of predicate.
      	* testsuite/ext/pb_ds/regression/priority_queue_binary_heap-62045.cc:
      	Likewise.
      
      From-SVN: r246426
      Jonathan Wakely committed
    • Fix broken links in manual and remove outdated info · 393ed575
      	* doc/xml/faq.xml: Add link.
      	* doc/xml/manual/backwards_compatibility.xml: Remove outdated
      	information on pre-ISO headers. Replace broken link to C++ FAQ Lite.
      	* doc/xml/manual/io.xml: Update broken link.
      	* doc/html/*: Regenerate.
      
      From-SVN: r246425
      Jonathan Wakely committed
    • Implement LWG 2686, std::hash<error_condition>, for C++17 · 7f359d19
      2017-03-23  Daniel Kruegler  <daniel.kruegler@gmail.com>
      
      	Implement LWG 2686, Why is std::hash specialized for error_code,
      	but not error_condition?
      	* include/std/system_error (hash<error_condition>): Define for C++17.
      	* testsuite/20_util/hash/operators/size_t.cc (hash<error_condition>):
      	Instantiate test for error_condition.
      	* testsuite/20_util/hash/requirements/explicit_instantiation.cc
      	(hash<error_condition>): Instantiate hash<error_condition>.
      
      From-SVN: r246424
      Daniel Kruegler committed
    • Implement P0607R0 "Inline Variables for Standard Library" for C++17 · 288695f7
      2017-03-23  Daniel Kruegler  <daniel.kruegler@gmail.com>
      
      	* include/bits/c++config (_GLIBCXX17_INLINE): Define.
      	* include/bits/regex_constants.h (All std::regex_constants constants):
      	Add _GLIBCXX17_INLINE as per P0607R0.
      	* include/bits/std_mutex.h (defer_lock, try_to_lock, adopt_lock):
      	Likewise.
      	* include/bits/stl_pair.h (piecewise_construct): Likewise.
      	* include/bits/uses_allocator.h (allocator_arg, uses_allocator_v)
      	(__is_uses_allocator_constructible_v)
      	(__is_nothrow_uses_allocator_constructible_v): Likewise.
      	* include/std/chrono (treat_as_floating_point_v): Likewise.
      	* include/std/functional (is_bind_expression_v, is_placeholder_v):
      	Likewise.
      	* include/std/optional (nullopt): Likewise.
      	* include/std/ratio (ratio_equal_v, ratio_not_equal_v, ratio_less_v)
      	ratio_less_equal_v, ratio_greater_v, ratio_greater_equal_v): Likewise.
      	* include/std/system_error (is_error_code_enum_v)
      	(is_error_condition_enum_v): Likewise.
      	* include/std/tuple (tuple_size_v, ignore): Likewise.
      	(ignore): Declare ignore constexpr as per LWG 2773, declare assignment
      	constexpr as per LWG 2933.
      	* include/std/type_traits (All variable templates): Add
      	_GLIBCXX17_INLINE as per P0607R0.
      	* include/std/variant (variant_size_v, variant_npos, __index_of_v)
      	(__tuple_count_v, __exactly_once): Likewise.
      	* testsuite/18_support/headers/new/synopsis.cc
      	(hardware_destructive_interference_size)
      	(hardware_constructive_interference_size): Likewise for commented-out
      	variables.
      	* testsuite/20_util/tuple/creation_functions/constexpr.cc: Add new
      	test function for constexpr std::ignore (LWG 2773).
      	* testsuite/20_util/tuple/creation_functions/constexpr_cpp14.cc: New
      	test for LWG 2933.
      
      From-SVN: r246423
      Daniel Kruegler committed
    • PR c++/80150 - ICE with overloaded variadic deduction. · 842562b4
      	* pt.c (try_one_overload): Remove asserts.
      
      From-SVN: r246422
      Jason Merrill committed
    • [ARM] PR target/71436: Restrict *load_multiple pattern till after LRA · de2b3f5c
      	PR target/71436
      	* config/arm/arm.md (*load_multiple): Add reload_completed to
      	matching condition.
      
      	* gcc.c-torture/compile/pr71436.c: New test.
      
      From-SVN: r246419
      Kyrylo Tkachov committed
    • re PR tree-optimization/79908 (ICE in gimplify_expr (gimplify.c:12155) gimplification failed) · 2e6315ef
      [gcc]
      
      2017-03-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
                  Richard Biener  <rguenth@suse.com>
      
      	PR tree-optimization/79908
      	PR tree-optimization/80136
      	* tree-stdarg.c (expand_ifn_va_arg_1): For a VA_ARG whose LHS has
      	been cast away, gimplify_and_add suffices.
      
      [gcc/testsuite]
      
      2017-03-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
                  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/79908
      	PR tree-optimization/80136
      	* gcc.dg/torture/pr79908.c: New file.
      
      From-SVN: r246418
      William Schmidt committed
    • PR c++/77563 - missing ambiguous conversion error. · 16e9eaa6
      	* call.c (convert_like_real): Use LOOKUP_IMPLICIT.
      
      From-SVN: r246417
      Jason Merrill committed
    • c-tree.h: Remove a C_RID_YYCODE reference. · ee3ff394
      	* c-tree.h: Remove a C_RID_YYCODE reference.
      
      	* cp-tree.h: Remove a C_RID_YYCODE reference.
      
      From-SVN: r246416
      Marek Polacek committed
    • Fix memory leak in identify_jump_threads() · 8bca6277
      	* tree-vrp.c (identify_jump_threads): Delete avail_exprs.
      
      From-SVN: r246415
      Markus Trippelsdorf committed
    • re PR tree-optimization/80032 (C++ excessive stack usage (no stack reuse)) · cda4d053
      2017-03-23  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/80032
      	* gimplify.c (gimple_push_cleanup): Forced unconditional
      	cleanups still have to go to the conditional_cleanups
      	sequence.
      
      From-SVN: r246414
      Richard Biener committed
    • Daily bump. · d1b8f791
      From-SVN: r246413
      GCC Administrator committed
  3. 22 Mar, 2017 13 commits