Commit Graph

137319 Commits

Author SHA1 Message Date
Jan Hubicka 931c8e9a04 re PR ipa/65600 (bost testsuite failure: ICE: Segmentation fault)
PR ipa/65600
	* cgraph.c (cgraph_update_edges_for_call_stmt_node): Fix the case
	of optimized out indirect call.
	(redirect_to_unreachable): Always build symbol table node for
	BUILT_IN_UNREACHABLE
	* g++.dg/torture/pr65600.C: New testcase.

From-SVN: r221735
2015-03-27 15:13:54 +00:00
Vladimir Makarov d81c5030d1 re PR target/65407 (Extra mask register move in gcc.target/i386/avx512f-kandnw-1.c)
2015-03-27  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/65407
	* ira-costs.c (record_reg_classes): Process all constraint string
	containing 0-9.

2015-03-27  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/65407
	* gcc.target/i386/avx512f-kandnw-1.c: Add scanning kmovw.

From-SVN: r221734
2015-03-27 14:47:24 +00:00
Bernd Schmidt 2166d2a1a0 Allow misaligned volatile stores in C6X.
* config/c6x/c6x.md (movmisalign<mode>): Use MEM_P, not
	memory_operand.

From-SVN: r221732
2015-03-27 13:02:39 +00:00
Bernd Schmidt f50e5fcc32 Fix c6x-uclinux build failure.
* config/c6x/constraints.md (S3): New constraint.
	* config/c6x/c6x.md (real_jump): Use it.

From-SVN: r221731
2015-03-27 12:50:01 +00:00
Jonathan Wakely 04f69fda7a re PR libstdc++/65499 (Missing "using namespace literals::chrono_literals" in std::chrono)
PR libstdc++/65499
	* include/std/chrono: Add using-directive for literals to std::chrono.
	* testsuite/20_util/duration/literals/65499.cc: New.

From-SVN: r221730
2015-03-27 12:45:10 +00:00
Andre Vehreschild d239da042c unlimited_polymorphic_24.f03: Added copyright statement and cleanup.
* gfortran.dg/unlimited_polymorphic_24.f03: Added copyright
	statement and cleanup. Fixed typos.

From-SVN: r221729
2015-03-27 13:42:01 +01:00
Tom de Vries 3e8165a5df Add verification to libgomp.graphite/force-parallel-6.c
2015-03-27  Tom de Vries  <tom@codesourcery.com>

	PR testsuite/65594
	* testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
	(init, check): New function.
	(foo): Change return type to void.
	(main): Call init and check.

From-SVN: r221728
2015-03-27 12:10:16 +00:00
Tom de Vries 4d688c9a17 Scale down libgomp.graphite/force-parallel-6.c
2015-03-27  Tom de Vries  <tom@codesourcery.com>

	PR testsuite/65594
	* testsuite/libgomp.graphite/force-parallel-6.c (M): Define.
	(foo): Use M for non-inner loops to scale down test-case.

From-SVN: r221727
2015-03-27 12:10:07 +00:00
Jan Hubicka 88e7d85fba re PR middle-end/65595 (Linux kernel build failure: ICE: in as_a, at is-a.h:192)
PR middle-end/65595
	* cgraph.c (cgraph_update_edges_for_call_stmt_node): Only
	do redirection if the call is not optimized out.

	* gcc.c-torture/compile/pr65595.c: New testcase.

From-SVN: r221726
2015-03-27 10:33:17 +00:00
Ilya Enkovich 79d6490452 re PR target/65495 (ICE: chkp_make_addressed_object_bounds: Unexpected tree code const_decl with -fcheck-pointer-bounds -mmpx and fortran)
PR target/65495
	* c-family/c.opt (fcheck-pointer-bounds): List supported languages.
	(fchkp-check-incomplete-type): Add LTO.
	(fchkp-zero-input-bounds-for-main): Likewise.
	(fchkp-first-field-has-own-bounds): Likewise.
	(fchkp-narrow-bounds): Likewise.
	(fchkp-narrow-to-innermost-array): Likewise.
	(fchkp-use-static-bounds): Likewise.
	(fchkp-use-static-const-bounds): Likewise.
	(fchkp-treat-zero-dynamic-size-as-infinite): Likewise.

From-SVN: r221725
2015-03-27 10:29:04 +00:00
Marek Polacek 7d1ff6f0a4 * gimple-iterator.h (gsi_prev_nondebug): Fix typo.
From-SVN: r221724
2015-03-27 10:21:26 +00:00
Marek Polacek 27674ca63c re PR sanitizer/65583 ([UBSAN] ICE segfault in inline_edge_summary)
PR sanitizer/65583
	* ubsan.c (ubsan_create_edge): New function.
	(instrument_bool_enum_load): Call it.
	(instrument_nonnull_arg): Likewise.
	(instrument_nonnull_return): Likewise.
	(instrument_object_size): Likewise.

	* g++.dg/ubsan/pr65583.C: New test.

From-SVN: r221723
2015-03-27 09:33:20 +00:00
Jan Hubicka 50cfd44e5d lto-streamer.h (class lto_location_cache): Turn loc_cache into auto_vec.
* lto-streamer.h (class lto_location_cache): Turn loc_cache into
	auto_vec.

From-SVN: r221722
2015-03-27 09:03:15 +00:00
Jan Hubicka c3d11ebeac lto-streamer.h (class lto_location_cache): New.
* lto-streamer.h (class lto_location_cache): New.
	(struct data_in): Add location_cache.
	(lto_input_location): Update prototype.
	(stream_input_location_now): New.
	* streamer-hooks.h (struct streamer_hooks): Make input_location to take
	pointer to location.
	(stream_input_location): Update.
	* ipa-devirt.c: Include streamer-hooks.h and lto-streamer.h
	(warn_odr): Apply location cache before warning.
	(lto_input_location): Update prototype.
	* gimple-streamer-in.c (input_phi, input_gimple_stmt):
	Use stream_input_location_now.
	* lto-streamer-in.c (lto_location_cache::current_cache): New static
	variable.
	(lto_location_cache::cmp_loc): New function.
	(lto_location_cache::apply_location_cache): New function.
	(lto_location_cache::accept_location_cache): New function.
	(lto_location_cache::revert_location_cache): New function.
	(lto_location_cache::input_location): New function.
	(lto_input_location): Do location caching.
	(stream_input_location_now): New function.
	(input_eh_region, input_struct_function_base): Use
	stream_input_location_now.
	(lto_data_in_create): use new.
	(lto_data_in_delete): Use delete.
	* tree-streamer-in.c (unpack_ts_block_value_fields,
	unpack_ts_omp_clause_value_fields, streamer_read_tree_bitfields,
	lto_input_ts_exp_tree_pointers): Update for cached location api.

From-SVN: r221721
2015-03-27 06:59:35 +00:00
Jan Hubicka eaeec5ecfa re PR lto/65536 (LTO line number information garbled)
PR lto/65536
	* lto-streamer.h (class lto_location_cache): New.
	(struct data_in): Add location_cache.
	(lto_input_location): Update prototype.
	(stream_input_location_now): New.
	* streamer-hooks.h (struct streamer_hooks): Make input_location to take
	pointer to location.
	(stream_input_location): Update.
	* ipa-devirt.c: Include streamer-hooks.h and lto-streamer.h
	(warn_odr): Apply location cache before warning.
	(lto_input_location): Update prototype.
	* gimple-streamer-in.c (input_phi, input_gimple_stmt):
	Use stream_input_location_now.
	* lto/lto.c (unify_scc): Revert location cache when unification
	suceeded.
	(lto_read_decls): Accept location cache after sucess;
	apply location cache before calling debug hooks.
	* lto-streamer-in.c (lto_location_cache::current_cache): New static
	variable.
	(lto_location_cache::cmp_loc): New function.
	(lto_location_cache::apply_location_cache): New function.
	(lto_location_cache::accept_location_cache): New function.
	(lto_location_cache::revert_location_cache): New function.
	(lto_location_cache::input_location): New function.
	(lto_input_location): Do location caching.
	(stream_input_location_now): New function.
	(input_eh_region, input_struct_function_base): Use
	stream_input_location_now.
	(lto_data_in_create): use new.
	(lto_data_in_delete): Use delete.
	* tree-streamer-in.c (unpack_ts_block_value_fields,
	unpack_ts_omp_clause_value_fields, streamer_read_tree_bitfields,
	lto_input_ts_exp_tree_pointers): Update for cached location api.

From-SVN: r221720
2015-03-27 06:58:59 +00:00
Jan Hubicka 38147a2a4e re PR ipa/65076 (16% tramp3d-v4.cpp compile time regression)
PR ipa/65076
	* passes.def: Add pass_nothrow.
	* ipa-pure-const.c: (pass_data_nothrow): New.
	(pass_nothrow): New.
	(pass_nothrow::execute): New.
	(make_pass_nothrow): New.
	* tree-pass.h (make_pass_nothrow): Declare.

From-SVN: r221719
2015-03-27 04:02:28 +00:00
Jan Hubicka a21065cad0 ipa-inline-analysis.c (redirect_to_unreachable): Be prepared for edge to change by speculation resolution or redirection.
* ipa-inline-analysis.c (redirect_to_unreachable): Be prepared for
	edge to change by speculation resolution or redirection.
	(edge_set_predicate): Likewise.
	(inline_summary_t::duplicate): Likewise.
	(remap_edge_summaries): Likewise.
	* gcc.c-torture/compile/20150327.c: New testcase.

From-SVN: r221718
2015-03-27 04:01:04 +00:00
GCC Administrator e59887e7b6 Daily bump.
From-SVN: r221717
2015-03-27 00:16:12 +00:00
Jan Hubicka 8e926cb160 ipa-inline.c (check_maybe_up, [...]): New macros.
* ipa-inline.c (check_maybe_up, check_maybe_down, check_match):
	New macros.
	(can_inline_edge_p): Relax option matching for always inline functions.

From-SVN: r221714
2015-03-26 23:43:27 +00:00
Eric Botcazou 06d750319f * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Deref>: New case.
From-SVN: r221711
2015-03-26 21:12:55 +00:00
Jan Hubicka f809d2138c * cif-code.def (CILK_SPAWN): New code.
From-SVN: r221710
2015-03-26 21:10:28 +00:00
Uros Bizjak bf3b2de71f re PR target/65561 (avx512fintrin.h:5344:1: internal compiler error: in curr_insn_transform, at lra-constraints.c:3494)
PR target/65561
	* config/i386/sse.md (avx512dq_vextract<shuffletype>64x2_1_maskm):
	Check operand 4 and operand 0 for equality.
	(avx512f_vextract<shuffletype>32x4_1_maskm):
	Check operand 6 and operand 0 for equality.
	(vec_extract_lo_<mode>_maskm): Check operand 2 and operand 0
	for equality.
	(vec_extract_hi_<mode>_maskm): Ditto.

From-SVN: r221709
2015-03-26 21:37:53 +01:00
Jonathan Wakely d1a74a287e re PR libstdc++/58038 (std::this_thread::sleep_until can cause inifinite sleep)
PR libstdc++/58038
	PR libstdc++/60421
	* include/std/thread (this_thread::sleep_for): Check for negative
	durations.
	(this_thread::sleep_until): Check for times in the past.
	* testsuite/30_threads/this_thread/58038.cc: New.
	* testsuite/30_threads/this_thread/60421.cc: New.

From-SVN: r221708
2015-03-26 19:59:08 +00:00
Jan Hubicka 1f4eb0e985 cgraph.c (cgraph_update_edges_for_call_stmt_node): Do not bring dead calls back to live.
* cgraph.c (cgraph_update_edges_for_call_stmt_node): Do not bring
	dead calls back to live.
	(cgraph_edge::verify_count_and_frequency): Move cgraph/cfg frequency
	cross check to ...
	(cgraph_node::verify_node): ... here; verify only callee edges,
	not caller.

From-SVN: r221707
2015-03-26 19:56:25 +00:00
Jan Hubicka 5058c03758 ipa-inline-analysis.c (redirect_to_unreachable): New function.
* ipa-inline-analysis.c (redirect_to_unreachable): New function.
	(edge_set_predicate): Use it to mark unreachable edges.
	(inline_summary_t::duplicate): Remove unnecesary code.
	(remap_edge_summaries): Likewise.
	(dump_inline_summary): Report contains_cilk_spawn.
	(compute_inline_parameters): Compute contains_cilk_spawn.
	(inline_read_section, inline_write_summary): Stream
	contains_cilk_spawn.
	* ipa-inline.c (can_inline_edge_p): Do not tuch 
	DECL_STRUCT_FUNCTION that may not be available;
	use CIF_CILK_SPAWN for cilk; fix optimization attribute checks;
	remove check for callee_fun->can_throw_non_call_exceptions and
	replace it by optimization attribute check; check for flag_exceptions.
	* ipa-inline-transform.c (inline_call): Maintain
	DECL_FUNCTION_PERSONALITY
	* ipa-inline.h (inline_summary): Add contains_cilk_spawn.

From-SVN: r221706
2015-03-26 19:54:44 +00:00
Mikhail Maltsev 082276588e re PR c++/65154 (ICE with {} initialized array with string)
PR c++/65154
	* init.c (build_vec_init): Fix initializing aggregates
	with empty init list.

From-SVN: r221704
2015-03-26 15:51:58 -04:00
Jonathan Wakely 4280698d09 re PR libstdc++/62259 (atomic class doesn't enforce required alignment on powerpc64)
PR libstdc++/62259
	PR libstdc++/65147
	* include/std/atomic (atomic<T>): Increase alignment for types with
	the same size as one of the integral types.
	* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
	* testsuite/29_atomics/atomic/62259.cc: New.

From-SVN: r221703
2015-03-26 19:27:02 +00:00
Jakub Jelinek 552b2afefb re PR tree-optimization/65551 (FAIL: 26_numerics/complex/50880.cc execution test)
PR tree-optimization/65551
	* tree-ssa-sccvn.c (fully_constant_vn_reference_p): Use
	TYPE_PRECISION only for INTEGRAL_TYPE_P types.

From-SVN: r221702
2015-03-26 20:17:44 +01:00
Richard Henderson 8be568519b re PR libstdc++/65033 (C++11 atomics: is_lock_free result does not always match the real lock-free property)
PR libstdc++/65033

 * include/bits/atomic_base.h (__atomic_base<T>::is_lock_free): Build
 a fake pointer indicating type alignment.
 (__atomic_base<T *>::is_lock_free): Likewise.
 * include/std/atomic (atomic<T>::is_lock_free): Likewise.

From-SVN: r221701
2015-03-26 11:31:11 -07:00
Jason Merrill 41b38772cc re PR c++/65525 (ICE: sorry, unimplemented: unexpected AST of kind mem_ref (-std=c++14, ICE: in potential_constant_expression_1, at cp/constexpr.c:4432))
PR c++/65525
	* constexpr.c (potential_constant_expression_1): Handle MEM_REF.

From-SVN: r221699
2015-03-26 13:58:39 -04:00
Ian Lance Taylor ef99b3de9f re PR go/65587 (C package incomplete/not working for powerpc-linux-gnu)
PR go/65587
debug/elf: apply relocations for SHT_RELA/EM_PPC

From-SVN: r221698
2015-03-26 17:51:57 +00:00
Richard Biener fd0c2f00f6 re PR middle-end/65555 (ICE: verify_gimple failed (LHS in noreturn call))
2015-03-26  Richard Biener  <rguenther@suse.de>

	PR middle-end/65555
	* tree-cfg.c (verify_gimple_call): Do not require a call to
	have no LHS if it wasn't recognized as control altering yet.

	* g++.dg/torture/pr65555.C: New testcase.

From-SVN: r221697
2015-03-26 14:22:57 +00:00
Jakub Jelinek 672ff0b6fd re PR tree-optimization/64715 (__builtin_object_size (..., 1) fails to locate subobject)
PR tree-optimization/64715
	* passes.def: Add another instance of pass_object_sizes before
	ccp1.
	* tree-object-size.c (pass_object_sizes::execute): In
	first_pass_instance, only handle __bos (, 1) and __bos (, 3)
	calls, and keep the call in the IL, as {MIN,MAX}_EXPR of the
	__bos result and the computed constant.  Remove redundant
	checks, obsoleted by gimple_call_builtin_p test.

	* gcc.dg/builtin-object-size-15.c: New test.
	* gcc.dg/pr64715-1.c: New test.
	* gcc.dg/pr64715-2.c: New test.

From-SVN: r221694
2015-03-26 14:19:59 +01:00
Jakub Jelinek d00dce2749 var-tracking.c (variable_tracking_main_1): Don't track variables for targetm.no_register_allocation targets.
* var-tracking.c (variable_tracking_main_1): Don't track
	variables for targetm.no_register_allocation targets.

From-SVN: r221693
2015-03-26 14:19:00 +01:00
Richard Biener 83eb7847bc re PR middle-end/65519 (unable to coalesce ssa_names 2 and 87 which are marked as MUST COALESCE)
2015-03-26  Richard Biener  <rguenther@suse.de>

	PR middle-end/65519
	* gnat.dg/specs/opt2.ads: Fix testcase.

From-SVN: r221690
2015-03-26 09:26:26 +00:00
Uros Bizjak e5215d07ef install.texi (Building a native compiler): Document new bootstrap-lto-noplugin configuration.
* doc/install.texi (Building a native compiler): Document new
	bootstrap-lto-noplugin configuration.  Mention that bootstrap-lto
	configuration assumes that the host supports the linker plugin.

From-SVN: r221688
2015-03-26 09:18:56 +01:00
Oleg Endo 8ed7e5f1de t-linux (DEFAULT_ENDIAN, [...]): Remove.
gcc/
	* config/sh/t-linux (DEFAULT_ENDIAN, MULTILIB_EXCEPTIONS): Remove.
	* config/sh/t-sh (MULTILIB_EXCEPTIONS): Handle default endian.

From-SVN: r221685
2015-03-26 07:40:44 +00:00
Michael Meissner ee8c0889cd re PR target/65569 (Fix for PR target/65240 causes a regression in building Spec for power4/power5/power6)
2015-03-25  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/65569
	* config/rs6000/rs6000.md (extenddftf2_fprs): On VSX systems use
	XXLXOR to create 0.0.  On pre-VSX systems make sure the constant
	0.0 is correctly setup.
	(extenddftf2_internal): Likewise.

From-SVN: r221683
2015-03-26 04:07:21 +00:00
Jerry DeLisle 9c5b1bf795 re PR fortran/65541 (namelist regression)
2015-03-25 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/65541
	* io/write.c (nml_write_obj): Convert '+' to '%' before emitting
	object names in namelists.

From-SVN: r221682
2015-03-26 02:44:34 +00:00
Ian Lance Taylor d94a1e7fe9 libgo: Fix go/runtime test failure on S390.
The tests run out of memory on 31-bit S390 systems because
it does not have split stacks.

From-SVN: r221681
2015-03-26 00:39:45 +00:00
GCC Administrator d9c14be954 Daily bump.
From-SVN: r221680
2015-03-26 00:16:10 +00:00
Martin Sebor ca69bb98a2 re PR testsuite/65526 (testsuite checks for arm vectorization support on non-arm targets)
PR testsuite/65526
* lib/target-supports.exp (check_effective_target_arm32): Fail early
when target isn't arm*-*-*-*.
(check_effective_target_arm_nothumb): Likewise.
(check_effective_target_arm_little_endian): Likewise.
(check_effective_target_arm_vect_no_misalign): Likewise.
(check_effective_target_aarch64_little_endian): Fail early if target
isn't aarch64*-*-*.

From-SVN: r221677
2015-03-25 17:35:54 -06:00
Sebastian Pop 71e3f77e8c diamonds are not valid execution threads for jump threading
PR tree-optimization/65177
	* tree-ssa-threadupdate.c (verify_seme): Renamed verify_jump_thread.
	(bb_in_bbs): New.
	(duplicate_seme_region): Renamed duplicate_thread_path.  Redirect all
	edges not adjacent on the path to the original code.

	* gcc.dg/tree-ssa/ssa-dom-thread-10.c: New.

From-SVN: r221675
2015-03-25 22:49:47 +00:00
Uros Bizjak 9c8129f563 sse-13.c: Include x86intrin.h and adjust #defines.
* gcc.target/i386/sse-13.c: Include x86intrin.h and adjust #defines.
	* gcc.target/i386/sse-23.c: Do not explicitly include wmmintrin.h,
	smmintrin.h and mm3dnow.h.

From-SVN: r221674
2015-03-25 22:56:11 +01:00
Ian Lance Taylor 7b980c32fa re PR go/65570 (cannot find package "runtime/cgo")
PR go/65570
libgo/Makefile.am: add runtime/cgo to list of standard packages

The runtime/cgo package is treated specially by the go tool.
It needs to know that it is always available for gccgo.

From-SVN: r221673
2015-03-25 21:19:01 +00:00
Marek Polacek 1cc57b5910 re PR c++/65558 (crash using __attribute__((__abi_tag__)) on anonymous inline namespace)
PR c++/65558
	* name-lookup.c (handle_namespace_attrs): Ignore abi_tag attribute
	on an anonymous namespace.

	* g++.dg/cpp0x/pr65558.C: New test.

From-SVN: r221672
2015-03-25 20:08:05 +00:00
Marek Polacek 2a924bb46c re PR c++/61670 (ICE on invalid in tree_nop_conversion)
PR c++/61670
	* class.c (remove_zero_width_bit_fields): Check for null DECL_SIZE.

	* g++.dg/template/pr61670.C: New test.

From-SVN: r221671
2015-03-25 20:06:24 +00:00
Paolo Carlini b7f5cbad2e re PR c++/54987 (missed ambiguity in template function call)
2015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/54987
	* g++.dg/template/pr54987.C: New.

From-SVN: r221668
2015-03-25 17:14:40 +00:00
Uros Bizjak 871fe673a2 re PR bootstrap/65537 (--with-build-config=bootstrap-lto fails on CentOS 5.11)
config/ChangeLog:

	PR bootstrap/65537
	* bootstrap-lto-noplugin.mk: New build configuration.

gcc/ChangeLog:

	PR bootstrap/65537
	* doc/install.texi (Building a native compiler): Document new
	bootstrap-lto-noplugin configuration.  Mention that bootstrap-lto
	configuration assumes that the host supports the linker plugin.

From-SVN: r221667
2015-03-25 17:01:36 +01:00
Alan Lawrence 28fda0c459 re PR libstdc++/33394 (Add test case for Thread race segfault in std::string::append with -O and -s)
PR libstdc++/33394
	* testsuite/21_strings/basic_string/pthread33394.cc: Use
	dg-additional-options.

From-SVN: r221666
2015-03-25 15:46:58 +00:00