- 21 Mar, 2018 31 commits
-
-
PR tree-optimization/84960 * tree-cfg.c (remove_bb): Don't move forced labels into bb->prev_bb if it is ENTRY block, move them into single succ of ENTRY in that case. * gcc.c-torture/compile/pr84960.c: New test. From-SVN: r258744
Jakub Jelinek committed -
This patch fixes incorrect results for HOST_WIDE_INT positions at opposite extremes when used with HOST_WIDE_INT sizes. It also fixes UB when comparing such positions with unsigned HOST_WIDE_INT sizes (although the results in that case were wrapv-correct). 2018-03-20 Richard Sandiford <richard.sandiford@linaro.org> gcc/ PR tree-optimization/84811 * poly-int.h (poly_span_traits): Remove the T3 parameter and promote HOST_WIDE_INT T2 - T1 results to unsigned HOST_WIDE_INT. (maybe_in_range_p, known_in_range_p, ranges_known_overlap_p): (known_subrange_p): Update accordingly. Cast each value involved in the size comparison, rather than casting the result of the subtraction. gcc/testsuite/ PR tree-optimization/84811 * gcc.dg/torture/pr84811.c: New test. From-SVN: r258743
Richard Sandiford committed -
re PR tree-optimization/84982 (logically inverting bools into local array results in bitwise negation) PR tree-optimization/84982 * gimple-ssa-store-merging.c (invert_op): Handle boolean inversion by flipping the least significant bit rather than all bits from bitpos to bitpos + bitsize - 1. * c-c++-common/pr84982.c: New test. From-SVN: r258742
Jakub Jelinek committed -
PR c++/84961 * cp-tree.h (genericize_compound_lvalue): Declare. * typeck.c (genericize_compound_lvalue): New function. (unary_complex_lvalue, cp_build_modify_expr): Use it. * semantics.c (finish_asm_stmt): Replace MODIFY_EXPR, PREINCREMENT_EXPR and PREDECREMENT_EXPR in output and "m" constrained input operands with COMPOUND_EXPR. Call cxx_mark_addressable on the rightmost COMPOUND_EXPR operand. * c-c++-common/pr43690.c: Don't expect errors on "m" (--x) and "m" (++x) in C++. * g++.dg/torture/pr84961-1.C: New test. * g++.dg/torture/pr84961-2.C: New test. From-SVN: r258741
Jakub Jelinek committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg01129.html PR c++/85008 * tree.c (decl_linkage): Use DECL_CLONED_FUNCTION_P. * decl2.c (vague_linkage_p): Likewise. PR c++/85008 * g++.dg/pr85008.C: New. From-SVN: r258738
Nathan Sidwell committed -
Since the kind of the hidden character length variable is not part of the character variable definition, we must ensure that character lengths are always of the same kind in interfaces, regardless of how they were declared in the source. This patch ensures this when calling a procedure. Regtested on x86_64-pc-linux-gnu and i686-pc-linux-gnu. gcc/fortran/ChangeLog: 2018-03-21 Janne Blomqvist <jb@gcc.gnu.org> PR fortran/84615 * trans-expr.c (gfc_conv_procedure_call): Convert charlen to gfc_charlen_type_node when calling procedure. gcc/testsuite/ChangeLog: 2018-03-21 Janne Blomqvist <jb@gcc.gnu.org> PR fortran/84615 * gfortran.dg/char_result_17.f90: New test. From-SVN: r258736
Janne Blomqvist committed -
gcc/cp/ChangeLog: PR c++/84994 * constexpr.c (constexpr_fn_retval): Make non-"static". * cp-tree.h (constexpr_fn_retval): New decl. * search.c (direct_accessor_p): Update leading comment. (reference_accessor_p): Likewise. (field_accessor_p): Replace check that function body is a RETURN_EXPR with a call to constexpr_fn_retval. Fix indentation of "field_type" decl. gcc/testsuite/ChangeLog: PR c++/84994 * g++.dg/other/accessor-fixits-1.C: Move to... * g++.dg/torture/accessor-fixits-1.C: ...here. * g++.dg/other/accessor-fixits-2.C: Move to... * g++.dg/torture/accessor-fixits-2.C: ...here. * g++.dg/other/accessor-fixits-3.C: Move to... * g++.dg/torture/accessor-fixits-3.C: ...here. * g++.dg/other/accessor-fixits-4.C: Move to... * g++.dg/torture/accessor-fixits-4.C: ...here. * g++.dg/other/accessor-fixits-5.C: Move to... * g++.dg/torture/accessor-fixits-5.C: ...here. * g++.dg/torture/accessor-fixits-6.C: New testcase. * g++.dg/torture/accessor-fixits-7.C: New testcase. * g++.dg/torture/accessor-fixits-8.C: New testcase. From-SVN: r258731
David Malcolm committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg01083.html * doc/extend.texi (Deprecated Features): Remove mention of long-deleted deprecations. From-SVN: r258730
Nathan Sidwell committed -
* gcc.dg/tree-ssa/pr84512.c: xfail on 64-bit SPARC. From-SVN: r258729
Rainer Orth committed -
gcc/jit: PR jit/84288 * Make-lang.in ($(LIBGCCJIT_FILENAME)): Add $(EXTRA_GCC_LIBS). gcc: PR jit/84288 * configure.ac (gcc_cv_ld_soname) <*-*-solaris2*>: Set. * configure: Regenerate. From-SVN: r258727
Rainer Orth committed -
The test pr82989.c which was added in one of previous commits is failing for mthumb and big-endian configurations. The aim of this test was to check that NEON instructions are not being used for simple shift operations. The scanning of lsl and lsr instructions and checking its counts were just too restrictive for different configurations. So I have now simplified the test to only check for the absence of NEON instructions. *** gcc/testsuite/ChangeLog *** 2018-03-21 Sudakshina Das <sudi.das@arm.com> PR target/82989 * gcc.target/arm/pr82989.c: Change dg scan-assembly directives. From-SVN: r258723
Sudakshina Das committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg01108.html PR c++/84804 * name-lookup.c (do_pushtag): Permit lambdas to be pushed into complete classes. PR c++/84804 * g++.dg/lookup/pr84804.C: New. From-SVN: r258722
Nathan Sidwell committed -
* Makefile.am (check-runtime): Pass -test.timeout with GOTOOLS_TEST_TIMEOUT. * Makefile.in: Rebuild. From-SVN: r258721
Uros Bizjak committed -
PR c++/84850 - -Wclass-memaccess on a memcpy in a copy assignment operator with no nontrivial bases or members gcc/cp/ChangeLog: PR c++/84850 * call.c (first_non_public_field): New template and function. (first_non_trivial_field): New function. (maybe_warn_class_memaccess): Call them. gcc/testsuite/ChangeLog: PR c++/84850 * g++.dg/Wclass-memaccess-3.C: New test. * g++.dg/Wclass-memaccess-4.C: New test. From-SVN: r258719
Martin Sebor committed -
gcc/cp/ChangeLog: PR c++/84892 * search.c (field_accessor_p): Use class_of_this_parm rather than type_of_this_parm, to check that "this" is a "const T *", rather than a "T *const". gcc/testsuite/ChangeLog: PR c++/84892 * g++.dg/other/accessor-fixits-1.C (test_access_const_t1_color): New. (test_deref_const_t1_color): New. * g++.dg/other/accessor-fixits-5.C: New testcase. From-SVN: r258716
David Malcolm committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg01093.html * MAINTAINERS: Move maintainers of now-removed picochip and score ports to write after approval. From-SVN: r258715
Nathan Sidwell committed -
* testsuite/20_util/function_objects/comparisons_pointer.cc: Use VERIFY instead of assert. * testsuite/20_util/hash/84998.cc: New test. * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: New copy of test adjusted for Debug Mode. * testsuite/23_containers/vector/cons/destructible_neg.cc: Do not run test in Debug Mode. From-SVN: r258714
Jonathan Wakely committed -
2018-03-21 Tom de Vries <tom@codesourcery.com> PR tree-optimization/83126 * tree-parloops.c (num_phis): New function. (gen_parallel_loop): Detect and handle canonicalize_loop_ivs failure. * gcc.dg/graphite/pr83126.c: New test. From-SVN: r258713
Tom de Vries committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg00995.html * doc/extend.texi (Deprecated Features): Update deprecared flags, mention anon-struct/union members and trailing attributes. cp/ * class.c (finish_struct_anon_r): Refactor, deprecate anything other than public non-static data members. * parser.c (cp_parser_init_declarator): Deprecate attributes after parenthesized initializer. testsuite/ * g++.dg/ext/anon-struct6.C: Adjust. * g++.dg/ext/deprecate-1.C: New. * g++.dg/ext/deprecate-2.C: New. * g++.dg/lookup/pr84602.C: Adjust. * g++.dg/lookup/pr84962.C: Adjust. * g++.old-deja/g++.other/anon4.C From-SVN: r258712
Nathan Sidwell committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg01082.html PR c++/84836 * name-lookup.c (update_binding): Correct logic for local binding update. PR c++/84836 * g++.dg/lookup/pr84836.C: New. From-SVN: r258711
Nathan Sidwell committed -
PR tree-optimization/84969 * tree-loop-distribution.c (fuse_memset_builtins): Don't reorder builtin memset partitions if they set different rhs values. gcc/testsuite * gcc.dg/tree-ssa/pr84969.c: New test. From-SVN: r258710
Bin Cheng committed -
re PR rtl-optimization/84989 (_mm512_broadcast_f32x4 triggers ICE in simplify_const_unary_operation, at simplify-rtx.c:1731) PR rtl-optimization/84989 * simplify-rtx.c (simplify_unary_operation_1): Don't try to simplify VEC_DUPLICATE with scalar result mode. * gcc.target/i386/pr84989.c: New test. From-SVN: r258709
Jakub Jelinek committed -
From-SVN: r258708
Kyrylo Tkachov committed -
2018-03-21 Christophe Lyon <christophe.lyon@linaro.org> * gcc.target/arm/pr82518.c: Require arm_neon_hw. From-SVN: r258707
Christophe Lyon committed -
2018-03-21 Christophe Lyon <christophe.lyon@linaro.org> * test_summary: Match possible single quotes in configure path. From-SVN: r258706
Christophe Lyon committed -
2018-03-21 Martin Liska <mliska@suse.cz> PR ipa/84963 * ipa-icf.c (sem_item_optimizer::fixup_points_to_sets): Remove not intended return statement. 2018-03-21 Martin Liska <mliska@suse.cz> PR ipa/84963 * gfortran.dg/goacc/pr84963.f90: New test. From-SVN: r258705
Martin Liska committed -
2018-03-21 Martin Liska <mliska@suse.cz> PR target/84988 * tree-chkp.c (CHKP_ARRAY_MAX_CHECK_STEPS): Define a new macro. (chkp_find_bound_slots_1): Limit number of iterations. From-SVN: r258704
Martin Liska committed -
* constexpr.c (cxx_eval_bare_aggregate): Update constructor's flags even when we replace an element. * g++.dg/cpp0x/nsdmi14.C: New test. * g++.dg/cpp1y/nsdmi-aggr10.C: New test. From-SVN: r258703
Marek Polacek committed -
2018-03-21 Chenghua Xu <paul.hua.gm@gmail.com> * gcc.dg/vect/vect-strided-shift-1.c: Add dg-skip-if for MIPS with -mpaired-single directives. From-SVN: r258702
Chenghua Xu committed -
2018-03-20 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/85001 * interface.c (symbol_rank): Remove bogus null pointer check that crept in when translating a ternary operator into an if-else constructor. 2018-03-20 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/85001 * gfortran.dg/interface_41.f90: New test. From-SVN: r258698
Steven G. Kargl committed -
From-SVN: r258697
GCC Administrator committed
-
- 20 Mar, 2018 9 commits
-
-
PR target/84838 * Minor grammar fixes for x86 options. From-SVN: r258694
David H. Gutteridge committed -
2018-03-20 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/84998 * include/bits/stl_bvector.h: Fix std::hash friend declaration. * include/std/bitset: Likewise. * include/bits/stl_map.h (std::map<>): Fix _Rb_tree_merge_helper friend declaration. * include/bits/stl_multimap.h (std::multimap<>): Likewise. * include/bits/stl_multiset.h (std::multiset<>): Likewise. * include/bits/stl_set.h (std::set<>): Likewise. * include/bits/unordered_map.h (std::unordered_map<>): Fix _Hash_merge_helper friend declaration. (std::unordered_multimap<>): Likewise. * include/bits/unordered_set.h (std::unordered_set<>): Likewise. (std::unordered_multiset<>): Likewise. From-SVN: r258693
François Dumont committed -
PR debug/84875 * dce.c (delete_unmarked_insns): Don't remove frame related noop moves holding REG_CFA_RESTORE notes, instead turn them into a USE. * gcc.dg/pr84875.c: New test. From-SVN: r258692
Jakub Jelinek committed -
PR c++/84927 * constexpr.c (cxx_eval_bare_aggregate): Update constructor's flags as we evaluate the elements. (cxx_eval_constant_expression): Verify constructor's flags unconditionally. * g++.dg/cpp1y/nsdmi-aggr9.C: New test. From-SVN: r258691
Marek Polacek committed -
* cvt.c (cp_get_fndecl_from_callee): Add fold parameter. (cp_get_callee_fndecl_nofold): New. * cp-gimplify.c (cp_genericize_r): Use it instead. * call.c (check_self_delegation): Likewise. From-SVN: r258689
Jason Merrill committed -
PR target/83789 * config/rs6000/altivec.md (altivec_lvx_<mode>_2op): Delete define_insn. (altivec_lvx_<mode>_1op): Likewise. (altivec_stvx_<mode>_2op): Likewise. (altivec_stvx_<mode>_1op): Likewise. (altivec_lvx_<VM2:mode>): New define_expand. (altivec_stvx_<VM2:mode>): Likewise. (altivec_lvx_<VM2:mode>_2op_<P:mptrsize>): New define_insn. (altivec_lvx_<VM2:mode>_1op_<P:mptrsize>): Likewise. (altivec_stvx_<VM2:mode>_2op_<P:mptrsize>): Likewise. (altivec_stvx_<VM2:mode>_1op_<P:mptrsize>): Likewise. * config/rs6000/rs6000-p8swap.c (rs6000_gen_stvx): Use new expanders. (rs6000_gen_lvx): Likewise. * config/rs6000/rs6000.c (altivec_expand_lv_builtin): Likewise. (altivec_expand_stv_builtin): Likewise. (altivec_expand_builtin): Likewise. * config/rs6000/vector.md: Likewise. From-SVN: r258688
Peter Bergner committed -
It is tricky to get right. Aarch64 does it by adding the appropriate lane-swapping operations during expansion. I'd like to do the same on arm eventually, but we'd need to port and validate the VTBL-generating code and add it to all the right places and I'm not comfortable enough doing it for GCC 8, but I am keen in getting the wrong-code fixed. As I say in the PR, vectorisation on armeb is already severely restricted (we disable many patterns on BYTES_BIG_ENDIAN) and the load/store_lanes patterns really were not working properly at all, so disabling them is not a radical approach. The way to do that is to return false in ARRAY_MODE_SUPPORTED_P for BYTES_BIG_ENDIAN. Bootstrapped and tested on arm-none-linux-gnueabihf. Also tested on armeb-none-eabi. PR target/82518 * config/arm/arm.c (arm_array_mode_supported_p): Return false for BYTES_BIG_ENDIAN. * lib/target-supports.exp (check_effective_target_vect_load_lanes): Disable for armeb targets. * gcc.target/arm/pr82518.c: New test. From-SVN: r258687
Kyrylo Tkachov committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg00961.html PR c++/84962 * name-lookup.c (pushdecl_class_level): Push anon-struct's member_vec, if there is one. PR c++/84962 * g++.dg/lookup/pr84962.C: New. From-SVN: r258686
Nathan Sidwell committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg00973.html PR c++/84970 * cp-tree.h (lookup_list_keep): Declare. * tree.c (lookup_list_keep): New, broken out of ... (build_min): ... here. Call it. * decl.c (cp_finish_decl): Call lookup_list_keep. PR c++/84970 * g++.dg/lookup/pr84970.C: New. From-SVN: r258685
Nathan Sidwell committed
-