1. 10 Apr, 2019 5 commits
  2. 09 Apr, 2019 15 commits
    • c-ada-spec.c (print_destructor): Deal with deleting destructors. · 53a3f614
      	* c-ada-spec.c (print_destructor): Deal with deleting destructors.
      	(dump_ada_declaration) <FUNCTION_DECL>: Likewise.
      
      From-SVN: r270239
      Eric Botcazou committed
    • Add comments and style fixes to <variant> · 9d89b73c
      	* include/std/variant: Adjust whitespace. Add comments.
      	(_Multi_array): Leave primary template undefined.
      	(_Multi_array<_Tp>): Define partial specialization for base case of
      	recursion.
      	(__gen_vtable_impl, __gen_vtable): Remove redundant && from type
      	which is always a reference.
      	(__gen_vtable::_S_apply()): Remove function, inline body into
      	default member initializer.
      	* testsuite/20_util/variant/visit.cc: Test with noncopyable types.
      
      From-SVN: r270238
      Jonathan Wakely committed
    • Fix std::visit to support arbitrary callables · 8701cb5e
      The __visitor_result_type helper didn't use std::invoke and so didn't
      compile when the visitor was a pointer-to-member rather than a function
      object. Use std::invoke_result instead.
      
      	* include/std/variant (__variant_idx_cookie): Add member type.
      	(__visitor_result_type): Remove.
      	(__do_visit): Use invoke_result instead of __visitor_result_type.
      	* testsuite/20_util/variant/visit.cc: New test.
      
      From-SVN: r270237
      Jonathan Wakely committed
    • PR libstdc++/90008 remove unused capture from variant rel ops · bc203bf0
      	PR libstdc++/90008
      	* include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Remove
      	unused capture.
      	* testsuite/20_util/variant/90008.cc: New test.
      
      From-SVN: r270236
      Jonathan Wakely committed
    • * gcc.target/i386/ifcvt-onecmpl-abs-1.c · 51d63c03
      	(dg-options): Use -O2 -fdump-rtl-ce1.
      	(dg-final): Scan ce1 RTL dump instead of asm dump.
      
      From-SVN: r270234
      Uros Bizjak committed
    • Add PSTL internal namespace qualifications · 0360f9ad
      	* include/pstl/algorithm_impl.h: Add namespace qualification.
      	* include/pstl/execution_defs.h: Add namespace qualification.
      	* include/pstl/execution_impl.h: Add namespace qualification.
      	* include/pstl/numeric_impl.h: Add namespace qualification.
      	* include/pstl/parallel_backend_tbb.h: Add namespace qualification.
      	* include/pstl/unseq_backend_simd.h: Add namespace qualification.
      	* include/pstl/parallel_backend_utils.h: Include <cassert>.
      
      From-SVN: r270231
      Thomas Rodgers committed
    • re PR translation/90011 (trailing space in diagnostic) · 8a22feb6
      	PR translation/90011
      	* typeck2.c (check_narrowing): Remove trailing space from diagnostics.
      
      From-SVN: r270229
      Jakub Jelinek committed
    • Hi there, · e009dfb3
      The "*neon_mov<mode>" patterns for 128 bit sized quantities uses the "Dn"
      constraint to match vmov.f32 and vmov.i<vec-width> patterns.
      This constraint boils down to using the `neon_immediate_valid` function.
      Once the constraint has matched, the output C statement asserts that function
      passes.
      
      The output C statement calls `neon_immediate_valid` with the mode taken from the
      iterator, while the constraint takes the mode from the operand.
      This can cause a discrepency when the operand is a CONST_INT, as the constraint
      passes VOIDmode which `neon_immediate_valid` treats as DImode, while the C
      statement passes the mode of the iterator which can be TImode.
      When this happens, the `neon_immediate_valid` can fail in the second call (if
      e.g. the CONST_INT is a valid immediate in DImode but not TImode) which would
      trigger the assertion.
      
      The testcase added with this patch triggers this when compiled with an arm cross
      compiler using the command line below.
      gcc -march=armv8-a -c neon-immediate-timode.c -O1 -mfloat-abi=hard -mfpu=neon-fp-armv8
      
      This patch splits the original "Dn" constraint into three new constraints, "DN"
      for TImode CONST_INT, "Dn" for DImode CONST_INT, and "Dm" for CONST_VECTOR.
      Splitting things up this way requires using one extra alternative in the
      "*neon_mov<mode>" patterns, but makes it clear from the constraint what mode is
      being used.
      
      We also remove the behaviour of treating VOIDmode as DImode in
      `neon_valid_immediate` since the original "Dn" constraint was the only place
      that functionality was used.  VOIDmode is now never passed to that function.
      An assertion has been added to the function to ensure this problem is caught
      earlier on.
      
      Bootstrapped on arm-none-linux-gnueabihf
      Regtested on cross-compiler arm-none-eabi
      
      gcc/ChangeLog:
      
      2019-04-09  Matthew Malcomson  <matthew.malcomson@arm.com>
      
      	PR target/90024
      	* config/arm/arm.c (neon_valid_immediate): Disallow VOIDmode parameter.
      	* config/arm/constraints.md (Dm, DN, Dn): Split previous Dn constraint
      	into three.
      	* config/arm/neon.md (*neon_mov<mode>): Account for TImode and DImode
      	differences directly.
      	(*smax<mode>3_neon, vashl<mode>3, vashr<mode>3_imm): Use Dm constraint.
      
      gcc/testsuite/ChangeLog:
      
      2019-04-09  Matthew Malcomson  <matthew.malcomson@arm.com>
      
      	PR target/90024
      	* gcc.dg/torture/neon-immediate-timode.c: New test.
      
      From-SVN: r270226
      Matthew Malcomson committed
    • re PR translation/90011 (trailing space in diagnostic) · 765f8786
      	PR translation/90011
      	* ipa-devirt.c (compare_virtual_tables): Remove two trailing spaces
      	from diagnostics.
      	* config/arm/freebsd.h (LINK_SPEC): Remove trailing space from -p
      	diagnostics.
      	* config/riscv/freebsd.h (LINK_SPEC): Likewise.
      	* config/aarch64/aarch64-freebsd.h (FBSD_TARGET_LINK_SPEC): Likewise.
      	* config/darwin.h (DRIVER_SELF_SPECS, ASM_FINAL_SPEC): Remove
      	trailing space from -gsplit-dwarf diagnostics.
      
      From-SVN: r270225
      Jakub Jelinek committed
    • re PR middle-end/89998 (ICE: verify_gimple failed in printf-return-value) · a73468e8
      	PR tree-optimization/89998
      	* gimple-ssa-sprintf.c (try_substitute_return_value): Use lhs type
      	instead of integer_type_node if possible, don't add ranges if return
      	type is not compatible with int.
      	* gimple-fold.c (gimple_fold_builtin_sprintf,
      	gimple_fold_builtin_snprintf): Use lhs type instead of hardcoded
      	integer_type_node.
      
      	* gcc.c-torture/compile/pr89998-1.c: New test.
      	* gcc.c-torture/compile/pr89998-2.c: New test.
      
      From-SVN: r270224
      Jakub Jelinek committed
    • Come up with bootstrap-lto-lean config. · 1c67e69c
      2019-04-09  Martin Liska  <mliska@suse.cz>
      
      	* Makefile.in: Regenerate.
      	* Makefile.tpl: Pass GENERATOR_CFLAGS
      	in all stages.
      2019-04-09  Martin Liska  <mliska@suse.cz>
      
      	* bootstrap-lto-lean.mk: New file.
      2019-04-09  Martin Liska  <mliska@suse.cz>
      
      	* Makefile.in: Use GENERATOR_CFLAGS for all generators.
      	* doc/install.texi: Document the new config.
      
      From-SVN: r270223
      Martin Liska committed
    • SVE fallout from PR90006 · 6c0b8df1
      2019-04-08  Richard Sandiford  <richard.sandiford@arm.com>
      
      gcc/
      	* tree-vect-data-refs.c (vect_get_smallest_scalar_type): Always
      	use gimple_expr_type for load and store calls.  Skip over the
      	condition argument in a conditional internal function.
      	Protect use of TREE_INT_CST_LOW.
      
      From-SVN: r270222
      Richard Sandiford committed
    • re PR target/90015 (riscv: typo "intterupt" in diagnostic) · 31215daa
      	PR target/90015
      	* config/riscv/riscv.c (riscv_get_interrupt_type): Fix comment typo.
      	(riscv_merge_decl_attributes): Fix typo in diagnostics.  Remove
      	trailing period from it too.
      
      	* gcc.target/riscv/interrupt-conflict-mode.c (foo): Adjust expected
      	diagnostics.
      
      From-SVN: r270221
      Jakub Jelinek committed
    • compiler: sort packages in export data more deterministically · 3fa176b7
          
          We can have multiple packages with the same name, so also sort by pkgpath.
          To avoid an inconsistent sort, sort by symbol and pointer address if
          we somehow get two different packages with the same name and pkgpath.
          
          Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/171032
      
      From-SVN: r270220
      Ian Lance Taylor committed
    • Daily bump. · ad7d66ab
      From-SVN: r270219
      GCC Administrator committed
  3. 08 Apr, 2019 17 commits
  4. 07 Apr, 2019 3 commits