1. 19 Feb, 2019 10 commits
    • Fix libphobos linking on Solaris 11 · 1d679134
      	* m4/druntime/libraries.m4 (DRUNTIME_LIBRARIES_NET): New macro.
      	* configure.ac: Invoke it.
      	* configure: Regenerate.
      
      From-SVN: r269012
      Rainer Orth committed
    • re PR middle-end/89303 (memory leak with shared_ptr and enable_shared_from_this) · 0db1a7c2
      	PR middle-end/89303
      	* g++.dg/torture/pr89303.C: Move everything from std namespace to my
      	namespace.
      
      From-SVN: r269010
      Jakub Jelinek committed
    • re PR c++/89387 (ICE in maybe_generic_this_capture at gcc/cp/lambda.c:945 since r268851) · d5fe39d4
      	PR c++/89387
      	* lambda.c (maybe_generic_this_capture): Don't check
      	DECL_NONSTATIC_MEMBER_FUNCTION_P on USING_DECLs.
      
      	* g++.dg/cpp0x/lambda/lambda-89387.C: New test.
      
      From-SVN: r269009
      Jakub Jelinek committed
    • re PR c++/89391 (ICE in build_target_expr_with_type, at cp/tree.c:795) · 50aaebab
      	PR c++/89391
      	* typeck.c (build_reinterpret_cast_1): Don't handle void to
      	&& conversion go through build_target_expr_with_type.
      
      	* g++.dg/cpp0x/reinterpret_cast2.C: New test.
      
      From-SVN: r269008
      Jakub Jelinek committed
    • re PR c++/89390 (ICE in get_string, at spellcheck-tree.h:46) · 883c0796
      	PR c++/89390
      	* error.c (qualified_name_lookup_error): Only call
      	suggest_alternative_in_scoped_enum if name is IDENTIFIER_NODE.
      
      	* g++.dg/diagnostic/pr89390.C: New test.
      
      From-SVN: r269007
      Jakub Jelinek committed
    • Adjust C++11/C++14 tests to work with -fchar8_t · 102a4fe1
      	* testsuite/21_strings/basic_string/literals/types.cc
      	[_GLIBCXX_USE_CHAR8_T]: Adjust expected string type for u8 literal.
      	* testsuite/21_strings/basic_string/literals/values.cc
      	[_GLIBCXX_USE_CHAR8_T]: Likewise.
      	* testsuite/22_locale/codecvt/char16_t.cc: Adjust for u8 literals
      	potentially having different type.
      	* testsuite/22_locale/codecvt/char32_t.cc: Likewise.
      	* testsuite/22_locale/codecvt/codecvt_utf8/79980.cc: Cast u8 literal
      	to char.
      	* testsuite/22_locale/codecvt/codecvt_utf8/wchar_t/1.cc: Likewise.
      	* testsuite/22_locale/codecvt/utf8.cc: Likewise.
      	* testsuite/22_locale/conversions/string/2.cc: Remove u8 prefix from
      	string literals only using basic character set.
      	* testsuite/22_locale/conversions/string/3.cc: Likewise. Cast other
      	u8 literals to char.
      	* testsuite/29_atomics/headers/atomic/macros.cc [_GLIBCXX_USE_CHAR8_T]:
      	Test ATOMIC_CHAR8_T_LOCK_FREE.
      	Add missing #error to ATOMIC_CHAR16_T_LOCK_FREE test.
      	* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc
      	[_GLIBCXX_USE_CHAR8_T]: Check for std::atomic_char8_t.
      	* testsuite/experimental/string_view/literals/types.cc
      	[_GLIBCXX_USE_CHAR8_T]: Adjust expected string_view type for u8
      	literal.
      	* testsuite/experimental/string_view/literals/values.cc
      	[_GLIBCXX_USE_CHAR8_T]: Likewise.
      
      From-SVN: r269006
      Jonathan Wakely committed
    • P0482R5 char8_t: New standard library tests · 46ca1dd7
      2019-02-19  Tom Honermann  <tom@honermann.net>
      
      	* testsuite/18_support/numeric_limits/char8_t.cc: New test cloned
      	from char16_32_t.cc; validates numeric_limits<char8_t>.
      	* testsuite/21_strings/basic_string/literals/types-char8_t.cc: New
      	test cloned from types.cc; validates operator""s for char8_t
      	returns u8string.
      	* testsuite/21_strings/basic_string/literals/values-char8_t.cc: New
      	test cloned from values.cc; validates construction and comparison
      	of u8string values.
      	* testsuite/21_strings/basic_string/requirements/
      	/explicit_instantiation/char8_t/1.cc: New test cloned from
      	char16_t/1.cc; validates explicit instantiation of
      	basic_string<char8_t>.
      	* testsuite/21_strings/basic_string_view/literals/types-char8_t.cc:
      	New test cloned from types.cc; validates operator""sv for char8_t
      	returns u8string_view.
      	* testsuite/21_strings/basic_string_view/literals/
      	values-char8_t.cc: New test cloned from values.cc; validates
      	construction and comparison of u8string_view values.
      	* testsuite/21_strings/basic_string_view/requirements/
      	explicit_instantiation/char8_t/1.cc: New test cloned from
      	char16_t/1.cc; validates explicit instantiation of
      	basic_string_view<char8_t>.
      	* testsuite/21_strings/char_traits/requirements/char8_t/65049.cc:
      	New test cloned from char16_t/65049.cc; validates that
      	char_traits<char8_t> is not vulnerable to the concerns in PR65049.
      	* testsuite/21_strings/char_traits/requirements/char8_t/
      	typedefs.cc: New test cloned from char16_t/typedefs.cc; validates
      	that char_traits<char8_t> member typedefs are present and correct.
      	* testsuite/21_strings/char_traits/requirements/
      	explicit_instantiation/char8_t/1.cc: New test cloned from
      	char16_t/1.cc; validates explicit instantiation of
      	char_traits<char8_t>.
      	* testsuite/22_locale/codecvt/char16_t-char8_t.cc: New test cloned
      	from char16_t.cc: validates
      	codecvt<char16_t, char8_t, mbstate_t>.
      	* testsuite/22_locale/codecvt/char32_t-char8_t.cc: New test cloned
      	from char32_t.cc: validates
      	codecvt<char32_t, char8_t, mbstate_t>.
      	* testsuite/22_locale/codecvt/utf8-char8_t.cc: New test cloned from
      	utf8.cc; validates codecvt<char16_t, char8_t, std::mbstate_t> and
      	codecvt<char32_t, char8_t, std::mbstate_t>.
      	* testsuite/27_io/filesystem/path/native/string-char8_t.cc: New
      	test cloned from string.cc; validates filesystem::path construction
      	from char8_t input.
      	* testsuite/experimental/feat-char8_t.cc: New test; validates that
      	the __cpp_lib_char8_t feature test macro is defined with the
      	correct value.
      	* testsuite/experimental/filesystem/path/native/string-char8_t.cc:
      	New test cloned from string.cc; validates filesystem::path
      	construction from char8_t input.
      	* testsuite/experimental/string_view/literals/types-char8_t.cc: New
      	test cloned from types.cc; validates operator""sv for char8_t
      	returns u8string_view.
      	* testsuite/experimental/string_view/literals/values-char8_t.cc:
      	New test cloned from values.cc; validates construction and
      	comparison of u8string_view values.
      	* testsuite/experimental/string_view/requirements/
      	explicit_instantiation/char8_t/1.cc: New test cloned from
      	char16_t/1.cc; validates explicit instantiation of
      	basic_string_view<char8_t>.
      	* testsuite/ext/char8_t/atomic-1.cc: New test; validates that
      	ATOMIC_CHAR8_T_LOCK_FREE is not defined if char8_t support is not
      	enabled.
      
      From-SVN: r269005
      Tom Honermann committed
    • P0482R5 char8_t: Standard library support · c124af93
      gcc/cp:
      
      2019-02-19  Tom Honermann  <tom@honermann.net>
      
      	* name-lookup.c (get_std_name_hint): Added u8string as a name hint.
      
      libstdc++:
      
      2019-02-19  Tom Honermann  <tom@honermann.net>
      
      	P0482R5 char8_t: Standard library support
      	* config/abi/pre/gnu-versioned-namespace.ver (CXXABI_2.0): Add
      	typeinfo symbols for char8_t.
      	* config/abi/pre/gnu.ver: Add CXXABI_1.3.12.
      	(GLIBCXX_3.4.26): Add symbols for specializations of
      	numeric_limits and codecvt that involve char8_t.
      	(CXXABI_1.3.12): Add typeinfo symbols for char8_t.
      	* include/bits/atomic_base.h: Add atomic_char8_t.
      	* include/bits/basic_string.h: Add std::hash<u8string> and
      	operator""s(const char8_t*, size_t).
      	* include/bits/c++config: Define _GLIBCXX_USE_CHAR8_T and
      	__cpp_lib_char8_t.
      	* include/bits/char_traits.h: Add char_traits<char8_t>.
      	* include/bits/codecvt.h: Add
      	codecvt<char16_t, char8_t, mbstate_t>,
      	codecvt<char32_t, char8_t, mbstate_t>,
      	codecvt_byname<char16_t, char8_t, mbstate_t>, and
      	codecvt_byname<char32_t, char8_t, mbstate_t>.
      	* include/bits/cpp_type_traits.h: Add __is_integer<char8_t> to
      	recognize char8_t as an integral type.
      	* include/bits/fs_path.h: (path::__is_encoded_char): Recognize
      	char8_t.
      	(path::u8string): Return std::u8string when char8_t support is
      	enabled.
      	(path::generic_u8string): Likewise.
      	(path::_S_convert): Handle conversion from char8_t input.
      	(path::_S_str_convert): Likewise.
      	* include/bits/functional_hash.h: Add hash<char8_t>.
      	* include/bits/locale_conv.h (__str_codecvt_out): Add overloads for
      	char8_t.
      	* include/bits/locale_facets.h (_GLIBCXX_NUM_UNICODE_FACETS): Bump
      	for new char8_t specializations.
      	* include/bits/localefwd.h: Add missing declarations of
      	codecvt<char16_t, char, mbstate_t> and
      	codecvt<char32_t, char, mbstate_t>.  Add char8_t declarations
      	codecvt<char16_t, char8_t, mbstate_t> and
      	codecvt<char32_t, char8_t, mbstate_t>.
      	* include/bits/postypes.h: Add u8streampos
      	* include/bits/stringfwd.h: Add declarations of
      	char_traits<char8_t> and u8string.
      	* include/c_global/cstddef: Add __byte_operand<char8_t>.
      	* include/experimental/bits/fs_path.h (path::__is_encoded_char):
      	Recognize char8_t.
      	(path::u8string): Return std::u8string when char8_t support is
      	enabled.
      	(path::generic_u8string): Likewise.
      	(path::_S_convert): Handle conversion from char8_t input.
      	(path::_S_str_convert): Likewise.
      	* include/experimental/string: Add u8string.
      	* include/experimental/string_view: Add u8string_view,
      	hash<experimental::u8string_view>, and
      	operator""sv(const char8_t*, size_t).
      	* include/std/atomic: Add atomic<char8_t> and atomic_char8_t.
      	* include/std/charconv (__is_int_to_chars_type): Recognize char8_t
      	as a character type.
      	* include/std/limits: Add numeric_limits<char8_t>.
      	* include/std/string_view: Add u8string_view,
      	hash<experimental::u8string_view>, and
      	operator""sv(const char8_t*, size_t).
      	* include/std/type_traits: Add __is_integral_helper<char8_t>,
      	__make_unsigned<char8_t>, and __make_signed<char8_t>.
      	* libsupc++/atomic_lockfree_defines.h: Define
      	ATOMIC_CHAR8_T_LOCK_FREE.
      	* src/c++11/Makefile.am: Compile with -fchar8_t when compiling
      	codecvt.cc and limits.cc so that char8_t specializations of
      	numeric_limits and codecvt and emitted.
      	* src/c++11/Makefile.in: Likewise.
      	* src/c++11/codecvt.cc: Define members of
      	codecvt<char16_t, char8_t, mbstate_t>,
      	codecvt<char32_t, char8_t, mbstate_t>,
      	codecvt_byname<char16_t, char8_t, mbstate_t>, and
      	codecvt_byname<char32_t, char8_t, mbstate_t>.
      	* src/c++11/limits.cc: Define members of
      	numeric_limits<char8_t>.
      	* src/c++98/Makefile.am: Compile with -fchar8_t when compiling
      	locale_init.cc and localename.cc.
      	* src/c++98/Makefile.in: Likewise.
      	* src/c++98/locale_init.cc: Add initialization for the
      	codecvt<char16_t, char8_t, mbstate_t> and
      	codecvt<char32_t, char8_t, mbstate_t> facets.
      	* src/c++98/localename.cc: Likewise.
      	* testsuite/util/testsuite_abi.cc: Validate ABI bump.
      
      From-SVN: r269004
      Tom Honermann committed
    • PR c++/89336 - multiple stores in constexpr stmt. · e8b3c1bc
      If we evaluate the RHS in the context of the LHS, that evaluation might
      change the LHS in ways that mess with being able to store the value later.
      So for assignment or scalar values, evaluate the RHS first.
      
      	* constexpr.c (cxx_eval_store_expression): Preevaluate scalar or
      	assigned value.
      
      From-SVN: r269003
      Jason Merrill committed
    • Daily bump. · 44db22fc
      From-SVN: r269002
      GCC Administrator committed
  2. 18 Feb, 2019 23 commits
    • libphobos: Detect if qsort_r is available · 36d7f151
      Merges upstream druntime bbfb58e8.
      
      libphobos/ChangeLog:
      
      2019-02-19  Johannes Pfau  <johannespfau@gmail.com>
      
      	PR d/88127
      	* m4/druntime/libraries.m4 (DRUNTIME_LIBRARIES_CLIB): Add new macro.
      	* configure.ac: Use DRUNTIME_LIBRARIES_CLIB.
      	* configure: Regenerate
      	* Makefile.in: Regenerate
      	* libdruntime/gcc/config.d.in: Add Have_Qsort_R.
      	* libdruntime/Makefile.in: Regenerate.
      	* src/Makefile.in: Regenerate.
      	* testsuite/Makefile.in: Regenerate.
      
      From-SVN: r268999
      Johannes Pfau committed
    • * fr.po: Update. · 0232a219
      From-SVN: r268998
      Joseph Myers committed
    • Improve diagnostic for redundant template arguments in declaration. · 802813ea
      	* pt.c (check_explicit_specialization): If the declarator is a
      	template-id, only check whether the arguments are dependent.
      
      From-SVN: r268997
      Jason Merrill committed
    • README: Fix typos. · ab7b72e1
      2019-02-18  Sharon Dvir  <unapologtic@gmail.com>
      
      gcc/testsuite/
      	* README: Fix typos.
      
      From-SVN: r268996
      Sharon Dvir committed
    • Fix g++.dg/torture/pr89303.C with Solaris ld · c22e84c2
      	* g++.dg/torture/pr89303.C (bad_weak_ptr): Rename to
      	bad_weak_ptr_.
      
      From-SVN: r268995
      Rainer Orth committed
    • Improve duplicate [[likely]] diagnostic. · 2d9273ca
      	* parser.c (cp_parser_statement): Make attrs_loc a range.  Pass it
      	to process_stmt_hotness_attribute.
      	* cp-gimplify.c (process_stmt_hotness_attribute): Take attrs_loc.
      	(genericize_if_stmt): Use likely/unlikely instead of predictor_name.
      
      From-SVN: r268994
      Jason Merrill committed
    • cpp.texi (Conditional syntax): Add __has_attribute, __has_cpp_attribute, and __has_include. · 84fdd8f4
      
      gcc/ChangeLog:
      
      	* doc/cpp.texi (Conditional syntax): Add __has_attribute,
      	__has_cpp_attribute, and __has_include.
      
      From-SVN: r268993
      Martin Sebor committed
    • re PR fortran/87689 (PowerPC64 ELFv2 function parameter passing violation) · 378f53c7
      2019-02-18  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
          PR fortran/87689
          * trans-decl.c (gfc_get_extern_function_decl): Add argument
          actual_args and pass it through to gfc_get_function_type.
          * trans-expr.c (conv_function_val): Add argument actual_args
          and pass it on to gfc_get_extern_function_decl.
          (conv_procedure_call): Pass actual arguments to conv_function_val.
          * trans-types.c (get_formal_from_actual_arglist): New function.
          (gfc_get_function_type): Add argument actual_args.  Generate
          formal args from actual args if necessary.
          * trans-types.h (gfc_get_function_type): Add optional argument.
          * trans.h (gfc_get_extern_function_decl): Add optional argument.
      
      2019-02-18  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
          PR fortran/87689
          * gfortran.dg/lto/20091028-1_0.f90: Add -Wno-lto-type-mismatch to
          options.
          * gfortran.dg/lto/20091028-2_0.f90: Likewise.
          * gfortran.dg/lto/pr87689_0.f: New file.
          * gfortran.dg/lto/pr87689_1.f: New file.
      
      From-SVN: r268992
      Thomas Koenig committed
    • invoke.texi (-Wreturn-type): Correct and expand. · 7a247605
      
      gcc/ChangeLog:
      
      	* doc/invoke.texi (-Wreturn-type): Correct and expand.
      
      From-SVN: r268991
      Martin Sebor committed
    • PR middle-end/89294 - ICE in valid_constant_size_p · e2ebb05c
      gcc/c-family/ChangeLog:
      
      	PR middle-end/89294
      	* c-common.c (invalid_array_size_error): Handle cst_size_not_constant.
      
      gcc/ChangeLog:
      
      	PR middle-end/89294
      	* tree.c (valid_constant_size_p): Avoid assuming size is a constant
      	expression.
      	* tree.h (cst_size_error): Add the cst_size_not_constant enumerator.
      
      From-SVN: r268990
      Martin Sebor committed
    • Fix libstdc++ filesystem tests · eb8c4926
      Some recently added libstdc++ filesystem tests are missing a
      dg-require-filesystem-ts.
      
      Committed as obvious.
      
          libstdc++/testsuite/
      	* 27_io/filesystem/operations/all.cc: Add dg-require-filesystem-ts.
      	* 27_io/filesystem/operations/resize_file.cc: Likewise.
      	* 27_io/filesystem/path/generation/normal2.cc: Likewise.
      
      From-SVN: r268989
      Wilco Dijkstra committed
    • Fix test pr88680.C · e99589e2
      Fix pr88680.C failures due to short enums on arm-none-eabi.
      
      Committed as obvious.
      
          gcc/testsuite/
      	* g++.dg/wrappers/pr88680.C: Add -fno-short-enums.
      
      From-SVN: r268988
      Wilco Dijkstra committed
    • Tabify all D *.exp files · cc2cc3be
      	libphobos:
      	* testsuite/lib/libphobos-dg.exp: Tabify.
      	* testsuite/lib/libphobos.exp: Likewise.
      	* testsuite/libphobos.cycles/cycles.exp: Likewise.
      	* testsuite/libphobos.shared/shared.exp: Likewise.
      	* testsuite/libphobos.unittests/unittests.exp: Likewise.
      
      	gcc/testsuite:
      	* gdc.dg/dg.exp: Tabify.
      	* gdc.dg/lto/lto.exp: Likewise.
      	* gdc.test/gdc-test.exp: Likewise.
      	* lib/gdc-dg.exp: Likewise.
      	* lib/gdc.exp: Likewise.
      
      From-SVN: r268987
      Rainer Orth committed
    • re PR tree-optimization/89296 (tree copy-header masking uninitialized warning) · c4149197
      2019-02-18  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/89296
      	* tree-ssa-loop-ch.c (ch_base::copy_headers): Restrict setting
      	of no-warning flag to cases that might emit the bogus warning.
      
      	* gcc.dg/uninit-pr89296.c: New testcase.
      
      From-SVN: r268986
      Richard Biener committed
    • re PR bootstrap/88714 (bootstrap comparison failure on armv7l since r265398) · 02204940
      	PR bootstrap/88714
      	* config/arm/arm.md (*arm_movdi, *movdf_soft_insn): Use "r" instead of
      	"q" constraint.
      	* config/arm/vfp.md (*movdi_vfp): Likewise.
      	* config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Use "r" instead of
      	"q" constraint for operands[0].
      
      From-SVN: r268985
      Jakub Jelinek committed
    • re PR target/89369 (pseudo-RNG miscompiled on s390x-linux with -O2 -march=zEC12… · 290dfd9b
      re PR target/89369 (pseudo-RNG miscompiled on s390x-linux with -O2 -march=zEC12 -mtune=z13 starting with r266203)
      
      	PR target/89369
      	* config/s390/s390.md (*r<noxa>sbg_<mode>_srl_bitmask,
      	*r<noxa>sbg_<mode>_sll, *r<noxa>sbg_<mode>_srl): Don't construct
      	pattern in a temporary buffer.
      	(*r<noxa>sbg_sidi_srl): Likewise.  Always use 32 as I3 rather
      	than 64-operands[2].
      
      	* gcc.c-torture/execute/pr89369.c: New test.
      	* gcc.target/s390/md/rXsbg_mode_sXl.c (rosbg_si_srl,
      	rxsbg_si_srl): Expect last 3 operands 32,63,62 rather than
      	34,63,62.
      
      From-SVN: r268984
      Jakub Jelinek committed
    • re PR target/89361 (s390 broken without S390_USE_TARGET_ATTRIBUTE, likely since r257489) · a10e76ed
      	PR target/89361
      	* config/s390/s390.c (s390_indirect_branch_attrvalue,
      	s390_indirect_branch_settings): Define unconditionally.
      	(s390_set_current_function): Likewise, but guard the whole body except
      	the s390_indirect_branch_settings call with
      	#if S390_USE_TARGET_ATTRIBUTE.
      	(TARGET_SET_CURRENT_FUNCTION): Redefine unconditionally.
      
      From-SVN: r268983
      Jakub Jelinek committed
    • * config/s390/s390.md (*<risbg_n>_ior_and_sr_ze, · 14653c37
      	*<risbg_n>_<mode>_ior_and_lshiftrt, *<risbg_n>_sidi_ior_and_lshiftrt):
      	Use HOST_WIDE_INT_M1U instead of ~(0ULL).
      	(*<risbg_n>_and_subregdi_rotr, *<risbg_n>_and_subregdi_rotl): Use
      	HOST_WIDE_INT_1U instead of 1ULL.
      	(*pre_z10_extzv<mode>, *pre_z10_extv<mode>): Change mask type from int
      	to unsigned HOST_WIDE_INT, use HOST_WIDE_INT_1U instead of 1ul.
      	(*insv<mode><clobbercc_or_nocc>_appendbitsleft,
      	z = (x << c) | (y >> d) splitters): Use HOST_WIDE_INT_1U
      	instead of 1UL.
      	(*insv<mode>_mem_reg, *insvdi_mem_reghigh): Use HOST_WIDE_INT_1U
      	instead of 1ul.
      
      From-SVN: r268982
      Jakub Jelinek committed
    • Use 1UL constant in order to not overflow (PR c++/89383). · a5f87af7
      2019-02-18  Martin Liska  <mliska@suse.cz>
      
      	PR c++/89383
      	* line-map.c (linemap_line_start): Use 1UL in order
      	to not overflow.
      
      From-SVN: r268981
      Martin Liska committed
    • [PR 89209] Avoid segfault in a peculiar corner case in SRA · 469b4adb
      2019-02-18  Martin Jambor  <mjambor@suse.cz>
      
      	PR tree-optimization/89209
      	* tree-sra.c (create_access_replacement): New optional parameter
      	reg_tree.  Use it as a type if non-NULL and access type is not of
      	a register type.
      	(get_repl_default_def_ssa_name): New parameter REG_TYPE, pass it
      	to create_access_replacement.
      	(sra_modify_assign): Pass LHS type to get_repl_default_def_ssa_name.
      	Check lacc is non-NULL before attempting to re-create it on the RHS.
      
      	testsuite/
      	* gcc.dg/tree-ssa/pr89209.c: New test.
      
      From-SVN: r268980
      Martin Jambor committed
    • Come up with fast {function,call}_summary classes (PR ipa/89306). · db30281f
      2019-02-18  Martin Liska  <mliska@suse.cz>
      
      	PR ipa/89306
      	* cgraph.c (symbol_table::create_edge): Set m_summary_id to -1
      	by default.
      	(symbol_table::free_edge): Recycle m_summary_id.
      	* cgraph.h (get_summary_id): New.
      	(symbol_table::release_symbol): Set m_summary_id to -1
      	by default.
      	(symbol_table::allocate_cgraph_symbol): Recycle m_summary_id.
      	* ipa-fnsummary.c (ipa_fn_summary_t): Switch from
      	function_summary to fast_function_summary.
      	* ipa-fnsummary.h (ipa_fn_summary_t): Likewise.
      	* ipa-pure-const.c (class funct_state_summary_t):
      	Switch from function_summary to fast_function_summary.
      	* ipa-reference.c (class ipa_ref_var_info_summary_t): Likewise.
      	(class ipa_ref_opt_summary_t): Switch from function_summary
      	to fast_function_summary.
      	* symbol-summary.h (class function_summary_base): New class
      	that is created from base of former function_summary.
      	(function_summary_base::unregister_hooks): New.
      	(class function_summary): Inherit from function_summary_base.
      	(class call_summary_base): New class
      	that is created from base of former call_summary.
      	(class call_summary): Inherit from call_summary_base.
      	(struct is_same): New.
      	(class fast_function_summary): New summary class.
      	(class fast_call_summary): New summary class.
      	* vec.h (vec_safe_grow_cleared): New function.
      
      From-SVN: r268979
      Martin Liska committed
    • Support if statement in !GCC$ builtin directive. · e8cecccc
      2019-02-18  Martin Liska  <mliska@suse.cz>
      
      	* config/i386/i386.c (ix86_get_multilib_abi_name): New function.
      	(TARGET_GET_MULTILIB_ABI_NAME): New macro defined.
      	* doc/tm.texi: Document new target hook.
      	* doc/tm.texi.in: Likewise.
      	* target.def: Add new target macro.
      	* gcc.c (find_fortran_preinclude_file): Do not search multilib
      	suffixes.
      2019-02-18  Martin Liska  <mliska@suse.cz>
      
      	* decl.c (gfc_match_gcc_builtin): Add support for filtering
      	of builtin directive based on multilib ABI name.
      2019-02-18  Martin Liska  <mliska@suse.cz>
      
      	* gfortran.dg/simd-builtins-7.f90: New test.
      	* gfortran.dg/simd-builtins-7.h: New test.
      
      From-SVN: r268978
      Martin Liska committed
    • Daily bump. · d3cbcb23
      From-SVN: r268977
      GCC Administrator committed
  3. 17 Feb, 2019 7 commits