Commit Graph

172444 Commits

Author SHA1 Message Date
Andreas Krebbel
76d8b4d1ad IBM Z: Use tree_fits_uhwi_p in vector_alignment hook
This fixes an ICE in gcc.dg/attr-vector_size.c testcase.

gcc/ChangeLog:

2019-11-05  Andreas Krebbel  <krebbel@linux.ibm.com>

	* config/s390/s390.c (s390_vector_alignment): Check if the value
	fits into uhwi before using it.

From-SVN: r277829
2019-11-05 13:21:06 +00:00
Christophe Lyon
30f1f974b8 [ARM,testsuite] Skip tests incompatible with -mpure-code.
All these tests fail when using -mpure-code:
* some force A or R profile
* some use Neon
* some use -fpic/-fPIC
all of which are not supported by this option.

2019-11-05  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/arm/attr-crypto.c: Skip if -mpure-code is used.
	* gcc.target/arm/attr-neon-fp16.c: Likewise.
	* gcc.target/arm/combine-cmp-shift.c: Likewise.
	* gcc.target/arm/data-rel-1.c: Likewise.
	* gcc.target/arm/data-rel-2.c: Likewise.
	* gcc.target/arm/data-rel-3.c: Likewise.
	* gcc.target/arm/ftest-armv7a-arm.c: Likewise.
	* gcc.target/arm/ftest-armv7a-thumb.c: Likewise.
	* gcc.target/arm/ftest-armv7r-arm.c: Likewise.
	* gcc.target/arm/ftest-armv7r-thumb.c: Likewise.
	* gcc.target/arm/ftest-armv7ve-arm.c: Likewise.
	* gcc.target/arm/ftest-armv7ve-thumb.c: Likewise.
	* gcc.target/arm/ftest-armv8a-arm.c: Likewise.
	* gcc.target/arm/ftest-armv8a-thumb.c: Likewise.
	* gcc.target/arm/lceil-vcvt_1.c: Likewise.
	* gcc.target/arm/lfloor-vcvt_1.c: Likewise.
	* gcc.target/arm/lround-vcvt_1.c: Likewise.
	* gcc.target/arm/memset-inline-10.c: Likewise.
	* gcc.target/arm/mod_2.c: Likewise.
	* gcc.target/arm/mod_256.c: Likewise.
	* gcc.target/arm/pr40657-1.c: Likewise.
	* gcc.target/arm/pr44788.c: Likewise.
	* gcc.target/arm/pr50305.c: Likewise.
	* gcc.target/arm/pr51835.c: Likewise.
	* gcc.target/arm/pr51915.c: Likewise.
	* gcc.target/arm/pr52006.c: Likewise.
	* gcc.target/arm/pr53187.c: Likewise.
	* gcc.target/arm/pr58784.c: Likewise.
	* gcc.target/arm/pr59575.c: Likewise.
	* gcc.target/arm/pr59923.c: Likewise.
	* gcc.target/arm/pr60650-2.c: Likewise.
	* gcc.target/arm/pr60657.c: Likewise.
	* gcc.target/arm/pr60663.c: Likewise.
	* gcc.target/arm/pr67439_1.c: Likewise.
	* gcc.target/arm/pr68620.c: Likewise.
	* gcc.target/arm/pr7676.c: Likewise.
	* gcc.target/arm/pr79239.c: Likewise.
	* gcc.target/arm/pr81863.c: Likewise.
	* gcc.target/arm/pragma_attribute.c: Likewise.
	* gcc.target/arm/pragma_cpp_fma.c: Likewise.
	* gcc.target/arm/require-pic-register-loc.c: Likewise.
	* gcc.target/arm/thumb-ltu.c: Likewise.
	* gcc.target/arm/thumb1-pic-high-reg.c: Likewise.
	* gcc.target/arm/thumb1-pic-single-base.c: Likewise.
	* gcc.target/arm/tlscall.c: Likewise.
	* gcc.target/arm/unsigned-float.c: Likewise.
	* gcc.target/arm/vrinta-ce.c: Likewise.

From-SVN: r277828
2019-11-05 14:18:36 +01:00
Martin Liska
9aca5960a4 Use more ggc_delete.
2019-11-05  Martin Liska  <mliska@suse.cz>

	* symbol-summary.h: Use ggc_delete.

From-SVN: r277827
2019-11-05 12:45:04 +00:00
Anton Youdkevitch
5aef51c219 [Aarch64] Fix vec_perm cost for thunderx2t99
Here is the one-liner that fixes the incorrect
vec_perm cost for thunderx2t99 chip.
With the patch applied 526.blender of CPU2017
gets ~5% improvement with no measurable changes
for other benchmarks.

2019-11-05  Anton Youdkevitch  <anton.youdkevitch@bell-sw.com>

	* config/aarch64/aarch64.c (thunderx2t99_vector_cost):
	Change vec_perm field to 10.

From-SVN: r277826
2019-11-05 12:07:53 +00:00
Arnaud Charlet
dd2f3208c1 * doc/install.texi: Further fix syntax for html generation
From-SVN: r277824
2019-11-05 12:46:29 +01:00
Martin Liska
dbe348c157 Update coding style in symbol-summary.h.
2019-11-05  Martin Liska  <mliska@suse.cz>

	* symbol-summary.h: Rename allocator to m_allocator and
	add comment.

From-SVN: r277823
2019-11-05 11:10:04 +00:00
Richard Biener
f340142b83 re PR tree-optimization/92324 (ICE in expand_direct_optab_fn, at internal-fn.c:2890)
2019-11-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/92324
	* tree-vect-loop.c (check_reduction_path): For MIN/MAX require
	all signed or unsigned operations.

	* gcc.dg/vect/pr92324-3.c: New testcase.

From-SVN: r277822
2019-11-05 11:00:24 +00:00
Jan Hubicka
a895e6d72d hsa-brig.c: Include alloc-pool.h
* hsa-brig.c: Include alloc-pool.h
	* hsa-dump.c: Likewise.
	* hsa-gen.c: Likewise.
	* hse-regalloc.c: Likewise.
	* ipa-hsa.c: Likewise.
	* ipa-predicate.c: Likewise.
	* ipa-reference.c: Likewise.
	* ipa-sra.c: Likewise.
	* omp-expand.c: Likewise.
	* omp-general.c: Likewise.
	* omp-low.c: Likewise.
	* sumbol-summary.h (function_summary_base): Add allocator.
	(function_summary<T *>::function_summary): Update construction.
	(fast_function_summary<T *, V>::fast_function_summary): Likewise.
	(call_summary_base): Add allcator.
	(call_summary<T *>::call_summary): Update construction.
	(fast_call_summary<T *, V>::fast_call_summary): Likewise.

From-SVN: r277821
2019-11-05 10:38:02 +00:00
Jakub Jelinek
f05b372429 re PR tree-optimization/91945 (ICE: tree check: expected integer_cst, have var_decl in get_len, at tree.h:5837 since r274997)
PR tree-optimization/91945
	* builtins.c (compute_objsize): For ARRAY_REF, only multiply off
	by tpsize if it is both non-NULL and INTEGER_CST, otherwise punt.
	Formatting fix.

	* gfortran.dg/pr91945.f90: New test.

From-SVN: r277820
2019-11-05 11:17:29 +01:00
Jakub Jelinek
8101268456 re PR c++/92343 ([[likely]]/[[unlikely]] prevent method from being a constant expression)
PR c++/92343
	* constexpr.c (potential_constant_expression_1): Return true rather
	than false for PREDICT_EXPR.

	* g++.dg/cpp2a/attr-likely6.C: New test.

From-SVN: r277819
2019-11-05 11:16:39 +01:00
Aldy Hernandez
8f119c559e Move vrp_set_zero_nonzero_bits from tree-vrp.c into vr-values.c, and make it use wi_set_zero_nonzero_bits.
Move vrp_set_zero_nonzero_bits from tree-vrp.c into vr-values.c, and
make it use wi_set_zero_nonzero_bits.  Remove the now redundant
wide_int_range_set_zero_nonzero_bits.

From-SVN: r277818
2019-11-05 09:50:39 +00:00
Tobias Burnus
16a3a930ce Really add gcc/config/gcn/t-omp-device
gcc/
        * config/gcn/t-omp-device: New.
        Should have been part of Rev. 277797.

From-SVN: r277817
2019-11-05 10:01:57 +01:00
Martin Liska
db81e91cc6 Remove FIELD_DECL leftover.
2019-11-05  Martin Liska  <mliska@suse.cz>

	PR c++/92339
	* fold-const.c (operand_compare::hash_operand): Remove
	FIELD_DECL handling.
2019-11-05  Martin Liska  <mliska@suse.cz>

	PR c++/92339
	* g++.dg/pr92339.C: New test.

From-SVN: r277816
2019-11-05 08:39:14 +00:00
Richard Biener
d50dbea102 crontab: Disable snapshots from gcc-7-branch.
2019-10-05  Richard Biener  <rguenther@suse.de>

        * crontab: Disable snapshots from gcc-7-branch.

From-SVN: r277815
2019-11-05 07:58:51 +00:00
Jakub Jelinek
80d7f5d322 decl.c (omp_declare_variant_finalize_one): Call declare_simd_adjust_this not just on the context...
* decl.c (omp_declare_variant_finalize_one): Call
	declare_simd_adjust_this not just on the context, but also on the
	variant-id expression for methods.  Don't call
	cp_get_callee_fndecl_nofold, call cp_get_callee and only if it is
	safe cp_get_fndecl_from_callee.  Don't try to print as %qD
	NULL in diagnostics.
	* pt.c (tsubst_attribute): Handle "omp declare variant base"
	attribute.
	(tsubst_function_decl): Call omp_declare_variant_finalize
	if there are any "omp declare variant base" attributes left.

	* g++.dg/gomp/declare-variant-7.C: New test.
	* g++.dg/gomp/declare-variant-8.C: New test.

From-SVN: r277814
2019-11-05 08:46:03 +01:00
Aldy Hernandez
2b13f5a622 Move vrp_bitmap_equal_p above its only use and make it static.
From-SVN: r277813
2019-11-05 04:14:40 +00:00
Aldy Hernandez
e65deaff25 Use value_range_base::equal_p in value_range_base::operator== so we can handle
symbolics without dying.

From-SVN: r277812
2019-11-05 03:35:27 +00:00
GCC Administrator
5d29310521 Daily bump.
From-SVN: r277810
2019-11-05 00:16:28 +00:00
Kamlesh Kumar
e0c866ddfd PR c++/91979 - mangling nullptr expression
2019-11-04  Kamlesh Kumar  <kamleshbhalui@gmail.com>

gcc/cp
        * cp/mangle.c (write_template_arg_literal): Handle nullptr
        mangling.
gcc
	* common.opt (-fabi-version): Document =14.
	* doc/invoke.texi (C++ Dialect Options): Likewise.
gcc/c-family
        * c-opts.c (c_common_post_options): Update
        latest_abi_version.
libiberty
        * cp-demangle.c (d_expr_primary): Handle
        nullptr demangling.
        * testsuite/demangle-expected: Added test.

From-SVN: r277801
2019-11-04 18:24:25 -05:00
Aldy Hernandez
04373f9288 Do not special case pointers in value_range_base::set.
From-SVN: r277799
2019-11-04 22:57:51 +00:00
Jason Merrill
1dee89967b * typeck.c (check_return_expr): Avoid redundant error.
From-SVN: r277798
2019-11-04 17:34:59 -05:00
Tobias Burnus
955cd05745 Add gcc/config/gcn/t-omp-device for OpenMP declare variant kind/arch/isa
gcc/
        * config/gcn/gcn.c (gcn_omp_device_kind_arch_isa): New function.
        (TARGET_OMP_DEVICE_KIND_ARCH_ISA): Redefine to
        gcn_omp_device_kind_arch_isa.
        * config/gcn/t-omp-device: New file.
        * configure.ac: Support gcn for omp_device_property.
        * configure: Regenerate.

From-SVN: r277797
2019-11-04 23:29:11 +01:00
Aldy Hernandez
9ac6cb7eb0 Remove handle_pointers argument from all the vrp_val*{min,max} functions.
Remove handle_pointers argument from all the vrp_val*{min,max} functions.  Always
assume pointers should be handled.

From-SVN: r277796
2019-11-04 22:05:26 +00:00
Jan Hubicka
74b6e216b0 ipa-reference.c (init_function_info): Initialize info->global.statics_read.
* ipa-reference.c (init_function_info): Initialize
	info->global.statics_read.

From-SVN: r277795
2019-11-04 21:56:02 +00:00
Aldy Hernandez
8ced1d76b1 Use the value_range_base constructors in value_range_base::invert to
make sure we build canonically correct ranges.

From-SVN: r277794
2019-11-04 21:41:12 +00:00
Richard Sandiford
a1b6805971 [D] Remove unchecked to_constant in VECTOR_TYPE handling
The SVE port now tries to register variable-length VECTOR_TYPEs
at start-up, so it's no longer possible to use the asserting
to_constant on the number of vector elements.  This patch punts
on variable element counts instead, just like we do for other
things that the frontend doesn't recognise.

The brace indentation matches the surrounding style.

2019-11-04  Richard Sandiford  <richard.sandiford@arm.com>

gcc/d/
	* d-builtins.cc (build_frontend_type): Cope with variable
	TYPE_VECTOR_SUBPARTS.

From-SVN: r277793
2019-11-04 21:14:22 +00:00
Aldy Hernandez
63b7a614dd Remove unused range_int_cst_singleton_p.
From-SVN: r277792
2019-11-04 19:52:24 +00:00
Aldy Hernandez
c58d504699 Handle VR_UNDEFINED in value_range_base::normalize_addresses().
From-SVN: r277791
2019-11-04 19:52:15 +00:00
Aldy Hernandez
dbb640fa1c Implement debugging functions for assert_info's.
From-SVN: r277790
2019-11-04 19:52:06 +00:00
Jan Hubicka
2bc2379be5 ipa-inline-transform.c: Include ipa-utils.h
* ipa-inline-transform.c: Include ipa-utils.h
	(inline_call): Set thunk_expansion flag.
	* ipa-utils.h (thunk_expansion): Declare.
	* ipa-devirt.c (thunk_expansion): New global var.
	(devirt_node_removal_hook): Do not invalidate cache while
	doing thunk expansion.

From-SVN: r277789
2019-11-04 19:39:52 +00:00
Tamar Christina
0ec77a6c25 SLP: Initialize variable to fix bootstrap after r277784.
This initializes the rstmt variable with NULL and adds an assert to
check that a value has been given by one of the if cases before use.

This fixes the bootstrap failure due to -Werror.

Committed under the gcc obvious rule.

gcc/ChangeLog:

	* tree-vect-slp.c (vectorize_slp_instance_root_stmt): Initialize rstmt.

From-SVN: r277788
2019-11-04 19:25:20 +00:00
Eric Botcazou
57d4aea2b4 re PR testsuite/92302 (gcc.target/sparc/sparc-ret-3.c FAILs)
PR testsuite/92302
	* gcc.target/sparc/sparc-ret-3.c: Accept more registers in address.

From-SVN: r277787
2019-11-04 18:30:23 +00:00
Martin Sebor
2f967bc4b3 PR tree-optimization/92349 - ICE in -Warray-bounds of a VLA member
gcc/testsuite/ChangeLog:

	PR tree-optimization/92349
	* gcc.dg/Warray-bounds-50.c: New test.

gcc/ChangeLog:

	PR tree-optimization/92349
	* tree-vrp.c (vrp_prop::check_array_ref): Avoid assuming struct
	memebers have constant sizes.

From-SVN: r277786
2019-11-04 11:15:43 -07:00
Andre Vieira
494d6c28c5 [vect] Clean up orig_loop_vinfo from vect_analyze_loop
gcc/ChangeLog:
2019-11-04  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* tree-vect-loop.c (vect_analyze_loop): Remove orig_loop_vinfo
	parameter.
	* tree-vectorizer.h (vect_analyze_loop): Update declaration.
	* tree-vectorizer.c (try_vectorize_loop_1): Update calls to
	vect_analyze_loop.

From-SVN: r277785
2019-11-04 17:19:23 +00:00
Joel Hutton
818b3293f4 [SLP] SLP vectorization: vectorize vector constructors
gcc/ChangeLog:
2019-11-04  Joel Hutton  <Joel.Hutton@arm.com>

	* expr.c (store_constructor): Modify to handle single element vectors.
	* tree-vect-slp.c (vect_analyze_slp_instance): Add case for vector
	constructors.
	(vect_slp_check_for_constructors): New function.
	(vect_slp_analyze_bb_1): Call new function to check for vector
	constructors.
	(vectorize_slp_instance_root_stmt): New function.
	(vect_schedule_slp): Call new function to vectorize root stmt of vector
	constructors.
	* tree-vectorizer.h (SLP_INSTANCE_ROOT_STMT): New field.

gcc/testsuite/ChangeLog:
2019-11-04  Joel Hutton  <Joel.Hutton@arm.com>

	* gcc.dg/vect/bb-slp-40.c: New test.
	* gcc.dg/vect/bb-slp-41.c: New test.

From-SVN: r277784
2019-11-04 16:39:32 +00:00
Richard Biener
a6ba623777 re PR tree-optimization/92345 (ICE in vec<_stmt_vec_info*, va_heap, vl_embed>::space (vect_get_and_check_slp_defs))
2019-11-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/92345
	* tree-vect-loop.c (vect_is_simple_reduction): Return whether
	we produced a reduction chain.
	(vect_analyze_scalar_cycles_1): Do not add reduction chains to
	LOOP_VINFO_REDUCTIONS.

	* gcc.dg/torture/pr92345.c: New testcase.

From-SVN: r277782
2019-11-04 14:50:11 +00:00
Jan Hubicka
7237f93eb3 cgraphclones.c (cgraph_node::create_version_clone): Do not duplicate summaries.
* cgraphclones.c (cgraph_node::create_version_clone): Do not
	duplicate summaries.
	* ipa-fnsummary.c (ipa_fn_summary_alloc): Allocate size summary
	first.
	(ipa_fn_summary_t::duplicate): Use get instead of get_create to
	access call summaries.
	(dump_ipa_call_summary): Be ready for missing edge summaries.
	(analyze_function_body): Use get instead of get_create to access
	edge summary.
	(estimate_calls_size_and_time): Do not access summaries of
	inlined edges; sanity check they are missing.
	(ipa_call_context::estimate_size_and_time): Use get instead
	of get_create to access node summary.
	(inline_update_callee_summaries): Do not update depth of
	inlined edge.
	(ipa_merge_fn_summary_after_inlining): Remove inline edge from
	growth caches.
	(ipa_merge_fn_summary_after_inlining): Use get instead
	of get_create.
	* ipa-fnsummary.h (ipa_remove_from_growth_caches): Declare.
	* ipa-inline-analyssi.c (edge_growth_cache): Turn to
	fast summary.
	(initialize_growth_caches): Update.
	(do_estimate_edge_time): Remove redundant copy of context.
	(ipa_remove_from_growth_caches): New function.
	* ipa-inline.c (flatten_function): Update overall summary
	only when optimizing.
	(inline_to_all_callers): Update overall summary of function
	inlined to.
	* ipa-inline.h (edge_growth_cache): Turn to fast summary.
	* symbol-summary.h (call_summary_base): Set m_initialize_when_cloning
	to false.

From-SVN: r277780
2019-11-04 14:07:09 +00:00
Richard Biener
6fb349540c system.h: Include malloc.h if INCLUDE_MALLOC_H and HAVE_MALLINFO.
2019-11-04  Richard Biener  <rguenther@suse.de>

	* system.h: Include malloc.h if INCLUDE_MALLOC_H and HAVE_MALLINFO.
	* ggc-common.c: Remove inclusion of malloc.h, define INCLUDE_MALLOC_H.

From-SVN: r277779
2019-11-04 14:05:24 +00:00
David Edelsohn
253f29f1ad * ggc-common.c: Include system.h before malloc.h.
From-SVN: r277778
2019-11-04 08:52:46 -05:00
Alexandre Oliva
499d66aafd pass --enable-obsolete down to gcc/configure for auto-build.h
Configuring GCC for obsolete targets works as long as build = host.
When it isn't, --enable-obsolete is not passed down to the additional
build configure started by gcc/configure, used to generate
auto-build.h.  The build configure fails and we end up without a
auto-build.h, but the host configure proceeds, so we only get a fatal
failure much later, when make realizes auto-build.h is not there and
there's no rule to create it.

This patch gets the host configure to fail when the build configure
does, leaving the temporary build configure dir behind for
investigation.  It also arranges for --eanble-obsolete to be passed
down to the build configure.

Alas, the latter triggered a warning in the build configure because
--enable-obsolete is not a recognized configure option.  That's not
reported in the host configure because of the
--disable-option-checking passed by the top-level configure, so I
arranged for that to be passed down to the build configure as well.

Finally, since my initial suspicion when investigating this failure
was that auto-build.h had been removed after configuration and there
was no rule to rebuild it, I'm adding rules to gcc/Makefile to get it
created or updated as needed.  Since it is configure that creates it,
as run by e.g. config.status --recheck, and config.status is created
after auto-build.h, I've made config.status depend on auto-build.h,
and added a dummy rule to create auto-build.h.  This would normally
not be enough to create a header when needed, but since Makefile
depends on config.status, and make first updates Makefile, it ends up
working, as long as nothing else that Makefile depends on requires
auto-build.h but not config.status.  The config.status dependency and
the auto-build.h rule are only enabled in the cases in which
auto-build.h is actually used, namely when build != host.


for  gcc/ChangeLog

	* configure.ac: Pass --enable-obsolete=* and
	--enable-option-checking=* down to build configure, and fail
	if it fails.  AC_SUBST HAVE_AUTO_BUILD.
	* configure: Rebuild.
	* Makefile.in [HAVE_AUTO_BUILD] (auto-build.h): New rule.
	[HAVE_AUTO_BUILD] (config.status): Depend on auto-build.h.

From-SVN: r277777
2019-11-04 13:40:12 +00:00
Tobias Burnus
d8f03b0341 libgomp - remove dg-run if dg-options O2 is used
* testsuite/libgomp.fortran/pr66199-1.f90: Remove
	'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
	* testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
	* testsuite/libgomp.fortran/taskloop2.f90: Ditto.
	* testsuite/libgomp.fortran/taskloop3.f90: Ditto.
	* testsuite/libgomp.fortran/taskloop4.f90: Ditto.

From-SVN: r277776
2019-11-04 14:18:50 +01:00
Jozef Lawrynowicz
62ec242ea1 libgcc: Fix incorrect use of USE_TM_CLONE_REGISTRY
2019-11-04  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

	* crtstuff.c: Define USE_TM_CLONE_REGISTRY to 0 if it's undefined and
	the target output object format is not ELF.
	s/defined(USE_TM_CLONE_REGISTRY)/USE_TM_CLONE_REGISTRY.

From-SVN: r277775
2019-11-04 12:41:56 +00:00
Jozef Lawrynowicz
02afb6a932 MSP430: Add -mtiny-printf option
2019-11-04  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

gcc/
	* config.in: Regenerate.
	* config/msp430/msp430.c (msp430_option_override): Emit an error if
	-mtiny-printf is used without GCC being configured with
	--enable-newlib-nano-formatted-io.
	* config/msp430/msp430.h (LINK_SPEC): Pass 
	"--wrap puts --wrap printf" when -mtiny-printf is used.
	* config/msp430/msp430.opt: Document -mtiny-printf.
	* configure: Regenerate.
	* configure.ac: Enable --enable-newlib-nano-formatted-io flag.
	Define HAVE_NEWLIB_NANO_FORMATTED_IO if
	--enable-newlib-nano-formatted-io is passed.
	* doc/invoke.texi: Document -mtiny-printf.

gcc/testsuite/
	* gcc.target/msp430/tiny-printf.c: New test.

From-SVN: r277774
2019-11-04 11:23:46 +00:00
Jozef Lawrynowicz
e0f8e3da33 Regenerate gcc/configure
From-SVN: r277773
2019-11-04 11:18:24 +00:00
Jozef Lawrynowicz
d7eabfd452 MSP430: Add new methods of finding external MCU data file
MCU data file can now be specified with an environment variable or installed
into a toolchain subdirectory.

2019-11-04  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

gcc/
	* config/msp430/driver-msp430.c
	(msp430_get_linker_devices_include_path): New spec function.
	* config/msp430/msp430-devices.c (msp430_dirname): New function.
	(extract_devices_dir_from_exec_prefix): New function.
	(extract_devices_dir_from_collect_gcc): New function.
	(msp430_check_env_var_for_devices): New function.
	(msp430_check_path_for_devices): Use xstrdup instead of ASTRDUP.
	(parse_devices_csv): Call msp430_check_env_var_for_devices if
	devices.csv was not found using other methods.
	* config/msp430/msp430-devices.h (msp430_check_env_var_for_devices):
	New prototype.
	(msp430_dirname): Likewise.
	* config/msp430/msp430.c (msp430_register_pre_includes): New function.
	* config/msp430/msp430.h (EXTRA_SPEC_FUNCTIONS): Add
	msp430_get_linker_devices_include_path.
	(TARGET_EXTRA_PRE_INCLUDES): Define.
	* doc/invoke.texi: Document new ways of searching for support files.

gcc/testsuite/
	* gcc.target/msp430/devices/csv-using-env-var.c: New test.
	* gcc.target/msp430/devices/csv-using-installed.c: New test.
	* gcc.target/msp430/devices/csv-using-option.c: New test.
	* gcc.target/msp430/devices/devices-main.c: New test source file.
	* gcc.target/msp430/devices/msp430-devices.h: New test.
	* gcc.target/msp430/msp430.exp (msp430_device_permutations_runtest):
	Add special cases for csv-using* tests.
	Define TESTING_HARD_DATA when running tests that use hard-coded device
	data.
	(get_installed_device_data_path): New.
	(msp430_hide_installed_devices_data): New.
	(msp430_restore_installed_devices_data): New.
	(msp430_test_installed_device_data): New.
	(msp430_install_device_data): New.

From-SVN: r277772
2019-11-04 11:01:03 +00:00
Richard Biener
b76f4e6c06 re PR bootstrap/92301 (Wrong vectorizer code since r277566)
2019-11-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/92301
	* tree-vect-stmts.c (process_use): Force reduction PHI defs live
	as required by epilogue generation

	* gcc.dg/pr92301.c: New testcase.

From-SVN: r277771
2019-11-04 10:08:22 +00:00
Tobias Burnus
12fd2ec5ae libgomp/testsuite - use unique numbers with Fortran's 'stop'
PR fortran/92305
        * testsuite/libgomp.fortran/allocatable2.f90: Use
        unique numbers with 'stop'.
        * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
        * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
        * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
        * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
        * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.

From-SVN: r277769
2019-11-04 11:01:22 +01:00
Martin Liska
2323aa040b Fix hash_operand for fields of a CONSTRUCTOR.
2019-11-04  Martin Liska  <mliska@suse.cz>

	PR ipa/92304
	* fold-const.c (operand_compare::hash_operand): Fix field
	hashing of CONSTRUCTOR.

From-SVN: r277768
2019-11-04 09:11:26 +00:00
Martin Liska
ddf628e42f Come up with ggc_delete.
2019-11-04  Martin Liska  <mliska@suse.cz>

	* ggc.h (ggc_delete): New function.
	* ipa-fnsummary.c (ipa_free_fn_summary): Use it.
	* ipa-prop.c (ipa_free_all_edge_args): Likewise.
	(ipa_free_all_node_params): Likewise.
	* ipa-sra.c (ipa_sra_analysis): Likewise.

From-SVN: r277767
2019-11-04 09:11:14 +00:00
Thomas Koenig
cedaa3f605 re PR fortran/92113 (r276673 causes segfault in gfortran.dg/pr51434.f90)
2019-11-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/92113
    * ChangeLog: Fix PR number

From-SVN: r277766
2019-11-04 07:39:21 +00:00