1. 15 Apr, 2019 1 commit
  2. 14 Apr, 2019 9 commits
    • re PR lto/89358 (Combining -std=c++14 and -std=c++17 objects gives ODR warnings) · d2a0371d
      
      	PR lto/89358
      	* g++.dg/lto/pr89358_0.C: New testcase.
      	* g++.dg/lto/pr89358_1.C: New testcase.
      	* ipa-devirt.c (skip_in_fields_list_p): New.
      	(odr_types_equivalent_p): Use it.
      
      From-SVN: r270355
      Jan Hubicka committed
    • re PR fortran/85448 (Report binding label clash with a global identifyer) · ceae614e
      2019-04-14  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
          PR fortran/85448
          * gfortran.dg/bind_c_usage_33.f90: New test and...
          * gfortran.dg/bind_c_usage_33_c.c: Additional source.
      
      From-SVN: r270354
      Thomas Koenig committed
    • re PR fortran/89843 (CFI_section delivers incorrect result descriptor) · 0d78e4aa
      2019-04-14  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/89843
      	* trans-decl.c (gfc_get_symbol_decl): Assumed shape and assumed
      	rank dummies of bind C procs require deferred initialization.
      	(convert_CFI_desc): New procedure to convert incoming CFI
      	descriptors to gfc types and back again.
      	(gfc_trans_deferred_vars): Call it.
      	* trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Null the CFI
      	descriptor pointer. Free the descriptor in all cases.
      
      	PR fortran/89846
      	* expr.c (is_CFI_desc): New function.
      	(is_subref_array): Tidy up by referencing the symbol directly.
      	* gfortran.h : Prototype for is_CFI_desc.
      	* trans_array.c (get_CFI_desc): New function.
      	(gfc_get_array_span, gfc_conv_scalarized_array_ref,
      	gfc_conv_array_ref): Use it.
      	* trans.c (get_array_span): Extract the span from descriptors
      	that are indirect references.
      
      	PR fortran/90022
      	* trans-decl.c (gfc_get_symbol_decl): Make sure that the se
      	expression is a pointer type before converting it to the symbol
      	backend_decl type.
      	* trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Eliminate
      	temporary creation for intent(in).
      
      2019-04-14  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/89843
      	* gfortran.dg/ISO_Fortran_binding_4.f90: Modify the value of x
      	in ctg. Test the conversion of the descriptor types in the main
      	program.
      	* gfortran.dg/ISO_Fortran_binding_10.f90: New test.
      	* gfortran.dg/ISO_Fortran_binding_10.c: Called by it.
      
      	PR fortran/89846
      	* gfortran.dg/ISO_Fortran_binding_11.f90: New test.
      	* gfortran.dg/ISO_Fortran_binding_11.c: Called by it.
      
      	PR fortran/90022
      	* gfortran.dg/ISO_Fortran_binding_1.c: Correct the indexing for
      	the computation of 'ans'. Also, change the expected results for
      	CFI_is_contiguous to comply with standard.
      	* gfortran.dg/ISO_Fortran_binding_1.f90: Correct the expected
      	results for CFI_is_contiguous to comply with standard.
      	* gfortran.dg/ISO_Fortran_binding_9.f90: New test.
      	* gfortran.dg/ISO_Fortran_binding_9.c: Called by it.
      
      2019-04-14  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/89843
      	* runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Only
      	return immediately if the source pointer is null. Bring
      	forward the extraction of the gfc type. Extract the kind so
      	that the element size can be correctly computed for sections
      	and components of derived type arrays. Remove the free of the
      	CFI descriptor since this is now done in trans-expr.c.
      	(gfc_desc_to_cfi_desc): Only allocate the CFI descriptor if it
      	is not null.
      	(CFI_section): Normalise the difference between the upper and
      	lower bounds by the stride to correctly calculate the extents
      	of the section.
      
      	PR fortran/89846
      	* runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Use
      	the stride measure for the gfc span if it is not a multiple
      	of the element length. Otherwise use the element length.
      
      	PR fortran/90022
      	* runtime/ISO_Fortran_binding.c (CFI_is_contiguous) : Return
      	1 for true and 0 otherwise to comply with the standard. Correct
      	the contiguity check for rank 3 and greater by using the stride
      	measure of the lower dimension rather than the element length.
      
      From-SVN: r270353
      Paul Thomas committed
    • PR d/87799 Fix D build on windows hosts · 4d024c32
      PR d/87799
      * d-system.h (_mkdir): Forward _mkdir on MinGW to mkdir in system.h.
      * configure.ac: Remove d from unsupported languages on mingw and cygwin.
      * configure: Regenerate.
      
      From-SVN: r270349
      Johannes Pfau committed
    • Enable libphobos on Solaris 11/x86 · 7d31d331
      	toplevel:
      	* configure.ac (enable_libphobos): Check LIBPHOBOS_SUPPORTED.
      	* configure: Regenerate.
      
      	libphobos:
      	* configure.tgt (LIBPHOBOS_SUPPORTED): Default to no.
      	Set to yes explicitly.
      	* configure.ac: Handle --enable-libphobos.
      	(x86_64-*-solaris2.* | i?86-*-solaris2.*): Only mark supported
      	with gas.
      	(ENABLE_LIBPHOBOS): New conditional.
      	* configure: Regenerate.
      	* Makefile.am (SUBDIRS): Only set if ENABLE_LIBPHOBOS.
      	* Makefile.in: Regenerate.
      
      From-SVN: r270348
      Rainer Orth committed
    • Work around lack of dlpi_tls_modid before Solaris 11.5 · 235d1c46
      2019-04-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
      	    Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	PR d/88150
      	* m4/druntime/os.m4 (DRUNTIME_OS_DLPI_TLS_MODID): New macro.
      	* configure.ac: Use it.
      	Call AC_USE_SYSTEM_EXTENSIONS.
      	* configure: Regenerate.
      	* Makefile.in, libdruntime/Makefile.in, src/Makefile.in,
      	testsuite/Makefile.in: Regenerate.
      	* libdruntime/gcc/config.d.in (OS_Have_Dlpi_Tls_Modid): Define.
      	* libdruntime/gcc/sections/elf_shared.d: Import gcc.config.
      	(scanSegments) <PT_TLS> [OS_Have_Dlpi_Tls_Modid]: Use
      	dlpi_tls_modid.
      	[Solaris]: Use dlinfo(RTLD_DI_LINKMAP) to get rt_tlsmodid.
      	Otherwise clear pdso._tlsMod, pdso._tlsSize.
      	(getTLSRange) [Solaris && !OS_Have_Dlpi_Tls_Modid]: Readjust mod.
      
      Co-Authored-By: Iain Buclaw <ibuclaw@gdcproject.org>
      
      From-SVN: r270347
      Rainer Orth committed
    • Work around Solaris ld bug linking __tls_get_addr on 64-bit x86 · ba838aa6
      	* m4/druntime/os.m4 (DRUNTIME_OS_LINK_SPEC): New macro.
      	* configure.ac: Call it.
      	* configure: Regenerate.
      	* Makefile.in, libdruntime/Makefile.in, src/Makefile.in,
      	testsuite/Makefile.in: Regenerate.
      	* src/libgphobos.spec.in (*link): Append OS_LINK_SPEC.
      
      From-SVN: r270346
      Rainer Orth committed
    • Use gcc/sections/elf_shared.d on Solaris 11.5 (PR d/88150) · 4d513120
      	PR d/88150
      	* libdruntime/gcc/sections/elf_shared.d [Solaris] (SharedELF): Set
      	to true.
      	Import core.sys.solaris.dlfcn, core.sys.solaris.link,
      	core.sys.solaris.sys.elf, core.sys.solaris.sys.link.
      	(dummy_ref): Declare.
      	(initSections): Initialize dummy_ref.
      	(getDependencies): Set strtab.
      	(handleForName): Don't dlclose handle.
      	(findDSOInfoForAddr): Set IterateManually.
      	(getprogname): Declare.
      	(progname): Use it.
      	* libdruntime/gcc/sections/package.d [Solaris]: Import
      	gcc.sections.elf_shared instead of gcc.sections.solaris.
      	* libdruntime/gcc/sections/solaris.d: Remove.
      	* libdruntime/Makefile.am (DRUNTIME_DSOURCES): Remove
      	gcc/sections/solaris.d.
      
      From-SVN: r270345
      Rainer Orth committed
    • Daily bump. · 77086e01
      From-SVN: r270344
      GCC Administrator committed
  3. 13 Apr, 2019 8 commits
    • libphobos: Move rt.sections modules to gcc.sections · 8b651828
      These modules depend on a mixture between how the compiler emits
      run-time module information, and what functions are exposed by the
      platform to inquire about loaded global and thread-local data sections.
      
      As the upstream implementation is written to work only with how the
      reference D compiler writes out data, much of what is present does not
      apply to the GCC D front-end.  So it has been moved to a non-upstream
      location in the source tree, where most of it will be rewritten once
      each port has been completed.
      
      The only tested module sections/elf_shared.d has been cleaned up so that
      all deprecated declarations have been removed, as well as the brittle
      module collision checking, which required bss_sections.c.  All other
      ports have been left unchanged apart from a commonizing of attributes.
      
      libphobos/ChangeLog:
      
      2019-04-13  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* libdruntime/Makefile.am (DRUNTIME_CSOURCES): Remove bss_sections.c.
      	(DRUNTIME_DSOURCES): Rename rt/sections_* modules to gcc/sections/*.
      	* libdruntime/Makefile.in: Regenerate.
      	* libdruntime/gcc/sections/android.d: New file.
      	* libdruntime/gcc/sections/elf_shared.d: New file.
      	* libdruntime/gcc/sections/osx.d: New file.
      	* libdruntime/gcc/sections/package.d: New file.
      	* libdruntime/gcc/sections/solaris.d: New file.
      	* libdruntime/gcc/sections/win32.d: New file.
      	* libdruntime/gcc/sections/win64.d: New file.
      	* libdruntime/rt/bss_section.c: Remove.
      	* libdruntime/rt/sections.d: Publicly import gcc.sections.
      	* libdruntime/rt/sections_android.d: Remove.
      	* libdruntime/rt/sections_elf_shared.d: Remove.
      	* libdruntime/rt/sections_osx.d: Remove.
      	* libdruntime/rt/sections_solaris.d: Remove.
      	* libdruntime/rt/sections_win32.d: Remove.
      	* libdruntime/rt/sections_win64.d: Remove.
      
      From-SVN: r270341
      Iain Buclaw committed
    • * gcc.pot: Regenerate. · 151c5c0b
      From-SVN: r270340
      Jakub Jelinek committed
    • re PR target/89093 (C++ exception handling clobbers d8 VFP register) · 6cf58810
      	PR target/89093
      	* config/arm/arm.c (arm_valid_target_attribute_rec): Use strcmp
      	instead of strncmp when checking for thumb and arm.  Formatting fixes.
      
      	* gcc.target/arm/pr89093.c: New test.
      
      From-SVN: r270339
      Jakub Jelinek committed
    • re PR fortran/79842 (i18n: subword translation in "Can't use the same %smodule") · 91797170
      2019-04-13  Dominique d'Humieres  <dominiq@gcc.gnu.org>
      
      	PR fortran/79842
      	* module.c (gfc_use_module): use complete sentences.
      
      From-SVN: r270338
      Dominique d'Humieres committed
    • * gcc.pot: Regenerate. · 4b4f5ccd
      From-SVN: r270337
      Jakub Jelinek committed
    • compiler: improve type handling for string concat ops on constants · fdc59f56
          
          Resolve a small problem with concatenation of string constants: in a
          string concat X + Y where X has named type and Y has abstract string
          type, insure that the result has X's type, and disable folding if the
          both sides have a concrete type that does not match.
          
          Fixes golang/go#31412.
          
          Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/171797
      
      From-SVN: r270336
      Ian Lance Taylor committed
    • Daily bump. · b1593748
      From-SVN: r270335
      GCC Administrator committed
    • Uglify identifiers missed in previous commit(s) · 71905b8a
             * include/pstl/algorithm_impl.h: Uglify identfiers.
             * include/pstl/numeric_impl.h:  Uglify identfiers.
             * include/pstl/parallel_backend_tbb.h: Uglify identfiers.
      
      From-SVN: r270332
      Thomas Rodgers committed
  4. 12 Apr, 2019 22 commits
    • Commit a change missed in r270326: · 377c9e46
      gcc/c-family/ChangeLog:
      
      	PR c/88383
      	PR c/89288
      	PR c/89798
      	PR c/89797
      	* c-attribs.c (type_valid_for_vector_size): Detect excessively
      	large sizes.
      	(validate_attribute): Handle DECLs and expressions.
      	(has_attribute): Handle types referenced by expressions.
      	Avoid considering array attributes in ARRAY_REF expressions .
      
      From-SVN: r270331
      Martin Sebor committed
    • libphobos: Add subdir-objects to configure script. · d7e418a1
      Running autoreconf regenerates all files cleanly with autoconf2.69.
      
      libphobos/ChangeLog:
      
      2019-04-12  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.
      	* configure: Regenerate.
      	* libdruntime/Makefile.in: Regenerate.
      
      From-SVN: r270330
      Iain Buclaw committed
    • re PR c/89933 (ICE in merge_decls, at c/c-decl.c:2517) · 60a2c645
      	PR c/89933
      c/
      	* c-decl.c (merge_decls): When newdecl's type is its main variant,
      	don't try to remove it from the variant list, but instead assert
      	it has no variants.
      cp/
      	* decl.c (duplicate_decls): When newdecl's type is its main variant,
      	don't try to remove it from the variant list, but instead assert
      	it has no variants.
      testsuite/
      	* c-c++-common/pr89933.c: New test.
      
      From-SVN: r270329
      Jakub Jelinek committed
    • libphobos: Add target-zlib to top-level configure · bb50312e
      Removes the building of zlib from within libphobos, using instead the
      libz_convenience.a library.
      
      ChangeLog:
      
      2019-04-12  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* configure.ac: Add target-zlib to target_libraries.
      	* configure: Regenerate.
      
      gcc/ChangeLog:
      
      2019-04-12  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* doc/install.texi: Document --with-target-system-zlib.
      
      libphobos/ChangeLog:
      
      2019-04-12  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* m4/druntime/libraries.m4 (DRUNTIME_LIBRARIES_ZLIB): Use
      	libz_convenience.a if not using system zlib.
      	* Makefile.in: Regenerate.
      	* configure: Regenerate.
      	* libdruntime/Makefile.in: Regenerate.
      	* src/Makefile.am: Remove ZLIB_CSOURCES and AM_CFLAGS.
      	* src/Makefile.in: Regenerate.
      	* testsuite/Makefile.in: Regenerate.
      
      From-SVN: r270328
      Iain Buclaw committed
    • extend.texi (__builtin_has_attribute): Add a clarifying note. · 41fe51dd
      gcc/ChangeLog:
      	* doc/extend.texi (__builtin_has_attribute): Add a clarifying note.
      
      From-SVN: r270327
      Martin Sebor committed
    • PR c/88383 - ICE calling __builtin_has_attribute on a reference · 3fb82380
      PR c/88383 - ICE calling __builtin_has_attribute on a reference
      PR c/89288 - ICE in tree_code_size, at tree.c:865
      PR c/89798 - excessive vector_size silently accepted and truncated
      PR c/89797 - ICE on a vector_size (1LU << 33) int variable
      
      gcc/ChangeLog:
      
      	PR c/89797
      	* targhooks.c (default_vector_alignment): Avoid assuming
      	argument fits in SHWI.
      	* tree.h (TYPE_VECTOR_SUBPARTS): Avoid sign overflow in
      	a shift expression.
      	* doc/extend.texi (__builtin_has_attribute): Add a clarifying note.
      
      gcc/c-family/ChangeLog:
      
      	PR c/88383
      	PR c/89288
      	PR c/89798
      	PR c/89797
      	* c-attribs.c (type_valid_for_vector_size): Detect excessively
      	large sizes.
      	(validate_attribute): Handle DECLs and expressions.
      	(has_attribute): Handle types referenced by expressions.
      	Avoid considering array attributes in ARRAY_REF expressions .
      
      gcc/cp/ChangeLog:
      
      	PR c/88383
      	PR c/89288
      	* parser.c (cp_parser_has_attribute_expression): Handle assignment
      	expressions.
      
      gcc/testsuite/ChangeLog:
      
      	PR c/88383
      	PR c/89288
      	PR c/89798
      	PR c/89797
      	* c-c++-common/attributes-1.c: Adjust.
      	* c-c++-common/builtin-has-attribute-6.c: New test.
      	* c-c++-common/builtin-has-attribute-7.c: New test.
      	* c-c++-common/builtin-has-attribute-4.c: Adjust expectations.
      	* c-c++-common/builtin-has-attribute-6.c: New test.
      	* c-c++-common/pr71574.c: Adjust.
      	* gcc.dg/pr25559.c: Adjust.
      	* gcc.dg/attr-vector_size.c: New test.
      
      From-SVN: r270326
      Martin Sebor committed
    • Avoid ICE on pmf{} in template. · 3d8695f5
      Now that we return the original CONSTRUCTOR from finish_compound_literal,
      the call to null_member_pointer_value_p in tsubst_copy_and_build was getting
      confused because the CONSTRUCTOR was still empty rather than a valid PMF
      value.
      
      	* call.c (null_member_pointer_value_p): Handle an empty CONSTRUCTOR
      	of PMF type.
      
      From-SVN: r270324
      Jason Merrill committed
    • re PR rtl-optimization/89965 (wrong code with -O -mtune=nano-x2 -fcaller-saves… · 76416d89
      re PR rtl-optimization/89965 (wrong code with -O -mtune=nano-x2 -fcaller-saves -fexpensive-optimizations -fno-tree-dce -fno-tree-ter)
      
      	PR rtl-optimization/89965
      	* dce.c: Include rtl-iter.h.
      	(struct check_argument_load_data): New type.
      	(check_argument_load): New function.
      	(find_call_stack_args): Check for loads from stack slots still tracked
      	in sp_bytes and punt if any is found.
      
      	* gcc.target/i386/pr89965.c: New test.
      
      From-SVN: r270323
      Jakub Jelinek committed
    • * config/mips/loongson-mmiintrin.h: Fix up #error message. · b2e77a37
      From-SVN: r270322
      Jakub Jelinek committed
    • re PR translation/90041 (Command line option without proper quoting in translation message) · 63b8a166
      	PR translation/90041
      	* exgettext: Print MissingArgError, UnknownError or Warn
      	*.opt argument using error or warning instead of _ to mark it
      	as gcc-internal-format.
      
      	* c.opt (-fhandle-exceptions): Use %< and %> around option names
      	in the Warn diagnostics.
      
      From-SVN: r270321
      Jakub Jelinek committed
    • PR c++/87603 - constexpr functions are no longer noexcept. · c46f1a17
      	* constexpr.c (is_sub_constant_expr): Remove unused function.
      	* cp-tree.h (is_sub_constant_expr): Remove declaration.
      	* except.c (check_noexcept_r): Don't consider a call to a constexpr
      	function noexcept.
      
      	* g++.dg/cpp0x/constexpr-noexcept.C: Adjust the expected result.
      	* g++.dg/cpp0x/constexpr-noexcept3.C: Likewise.
      	* g++.dg/cpp0x/constexpr-noexcept4.C: Likewise.
      	* g++.dg/cpp0x/constexpr-noexcept8.C: New test.
      	* g++.dg/cpp0x/inh-ctor32.C: Remove dg-message.
      	* g++.dg/cpp1y/constexpr-noexcept1.C: New test.
      
      From-SVN: r270320
      Marek Polacek committed
    • except.c (build_noexcept_spec): Use build_converted_constant_bool_expr instead… · cc3bae3d
      except.c (build_noexcept_spec): Use build_converted_constant_bool_expr instead of perform_implicit_conversion_flags.
      
      	* except.c (build_noexcept_spec): Use build_converted_constant_bool_expr
      	instead of perform_implicit_conversion_flags.
      
      	* g++.dg/cpp0x/noexcept30.C: Tweak dg-error.
      	* g++.dg/cpp0x/pr86397-1.C: Likewise.
      	* g++.dg/cpp0x/pr86397-2.C: Likewise.
      
      From-SVN: r270319
      Marek Polacek committed
    • invoke.texi (max-lto-streaming-paralellism): New --param. · 01c9d999
      
      	* doc/invoke.texi (max-lto-streaming-paralellism): New --param.
      
      From-SVN: r270318
      Jan Hubicka committed
    • params.def (PARAM_MAX_LTO_STREAMING_PARALLELISM): New parameter. · 0c7f51e4
      
      	* params.def (PARAM_MAX_LTO_STREAMING_PARALLELISM): New parameter.
      	* lto.c (do_stream_out): rename to ...
      	(stream_out): ... this one; move original code to ...
      	(stream_out_partitions_1, stream_out_partitions): ... these new
      	functions.
      	(lto_wpa_write_files): Honnor lto_parallelism
      
      From-SVN: r270317
      Jan Hubicka committed
    • [testsuite][arm] Update warning prune regex · 22de32a1
      r269586 changed the format of some warning messages.
      
      Each switch in the warning message is now surrounded by single quotes.
      
      This commit updates the regex's in arm.exp dejagnu files to match the
      new format and remove the extra 20+ FAILs on excess errors that are
      introduced on certain variations (e.g.
      arm-eabi-aem/-marm/-march=armv7-a/-mfpu=vfpv3-d16/-mfloat-abi=softfp).
      
      Regtested arm.exp with cross-compiler arm-none-eabi
      
      gcc/testsuite/ChangeLog:
      
      2019-04-12  Matthew Malcomson  <matthew.malcomson@arm.com>
      
      	* g++.target/arm/arm.exp: Change format of default prune regex.
      	* gcc.target/arm/arm.exp: Change format of default prune regex.
      
      From-SVN: r270316
      Matthew Malcomson committed
    • Handle multiple 'default' in target attribute (PR middle-end/89970). · a164374e
      2019-04-12  Martin Liska  <mliska@suse.cz>
      
      	PR middle-end/89970
      	* multiple_target.c (create_dispatcher_calls): Wrap ifunc
      	in error message.
      	(separate_attrs): Handle multiple 'default's.
      	(expand_target_clones): Rework error handling code.
      2019-04-12  Martin Liska  <mliska@suse.cz>
      
      	PR middle-end/89970
      	* gcc.target/i386/mvc15.c: New test.
      	* gcc.target/i386/mvc3.c: Quote target in error pattern.
      	* gcc.target/i386/mvc4.c: Remove duplicit 'default'.
      
      From-SVN: r270314
      Martin Liska committed
    • re PR target/87532 (bad results from vec_extract(unsigned char, foo) dependent… · 34f02c07
      re PR target/87532 (bad results from vec_extract(unsigned char, foo) dependent upon function inline)
      
      gcc/ChangeLog:
      
      2019-04-12  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	PR target/87532
      	* config/rs6000/rs6000.c (rs6000_split_vec_extract_var): Use inner
      	mode of vector rather than mode of destination for move instruction.
      	* config/rs6000/vsx.md (*vsx_extract_<mode>_<VS_scalar>mode_var):
      	Use QI inner mode with V16QI vector mode.
      
      gcc/testsuite/ChangeLog:
      
      2019-04-12  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	PR target/87532
      	* gcc.target/powerpc/fold-vec-extract-char.p8.c: Adjust expected
      	instruction counts.
      	* gcc.target/powerpc/fold-vec-extract-int.p8.c: Likewise.
      	* gcc.target/powerpc/fold-vec-extract-short.p8.c: Likewise.
      
      From-SVN: r270313
      Kelvin Nilsen committed
    • * de.po, sv.po: Update. · a8478751
      From-SVN: r270309
      Jakub Jelinek committed
    • re PR target/52726 (Composed error message will not get translated) · 0ef88b20
      	PR target/52726
      	* config/tilepro/tilepro.c (tilepro_print_operand): Use just
      	"invalid %%t operand" in output_operand_lossage message.
      
      From-SVN: r270308
      Jakub Jelinek committed
    • Remove spurious empty line from ChangeLog · ab541024
      From-SVN: r270307
      Jonathan Wakely committed
    • S/390: Fix a problem with the bswap vector pattern · 2541c40f
      arch13 introduced instructions to perform vector element-wise byte
      swaps on the way from or to memory.  For a byte swap between vector
      registers the vector permute instruction is required which needs a
      permute pattern to be loaded into a vector register first.
      
      With the current implementation there is a potential problem when the
      decision for the reg-reg variant is made very late.  This patch is
      supposed to fix that.
      
      With the patch the required permute pattern is generated already in
      the expander and attached to the bswap pattern as USE operand.  The
      predicate in the insn_and_split pattern accepts it although the
      permute constant as such is not a valid constant.  For the reg-reg
      variant only the vector register constraint is used for the permute
      constant forcing LRA to a) push the constant into literal pool and b)
      load the literal pool constant into a vector register.
      
      gcc/ChangeLog:
      
      2019-04-12  Andreas Krebbel  <krebbel@linux.ibm.com>
      
      	* config/s390/predicates.md (permute_pattern_operand): New
      	predicate.
      	* config/s390/vector.md ("*vec_splats_bswap_vec<mode>"): Add USE
      	operand for the permute pattern.
      	("*vec_perm<mode>"): New insn definition.
      	("bswap<mode>"): Generate the permute pattern operand in the
      	expander and perform the operand reloads for pre arch13 level
      	already.
      	("*bswap<mode>_emu"): Rename to ...
      	("*bswap<mode>"): ... this. And make the splitter vxe2 only.
      	* config/s390/vx-builtins.md ("*vec_insert_and_zero_bswap<mode>"):
      	Add the USE operand for the permute pattern.
      	("*vec_set_bswap_vec<mode>"): Likewise.
      
      From-SVN: r270306
      Andreas Krebbel committed
    • re PR c/89946 (ICE in assemble_start_function, at varasm.c:1871) · 8e8225e6
      	PR c/89946
      	* varasm.c (assemble_start_function): Don't use tree_fits_uhwi_p
      	and gcc_unreachable if it fails, just call tree_to_uhwi which
      	verifies that too.  Test TREE_CHAIN instead of list_length > 1.
      	Start warning message with a lower-case letter.  Formatting fixes.
      c-family/
      	* c-attribs.c (handle_patchable_function_entry_attribute): Add
      	function comment.  Warn if arguments of the attribute are not positive
      	integer constants.
      testsuite/
      	* c-c++-common/pr89946.c: New test.
      
      From-SVN: r270305
      Jakub Jelinek committed