Commit Graph

144367 Commits

Author SHA1 Message Date
Joseph Myers
37064e3daf * eo.po: Update.
From-SVN: r233392
2016-02-12 21:26:33 +00:00
Mike Stump
82f0f78917 Fix FAIL: special_functions/18_riemann_zeta/check_value.cc (test for excess errors)
From-SVN: r233391
2016-02-12 21:23:11 +00:00
Walter Lee
77602f8bc5 t-tilepro: Replace CC_FOR_BUILD with CXX_FOR_BUILD.
gcc/ChangeLog:
        * config/tilepro/t-tilepro: Replace CC_FOR_BUILD with
          CXX_FOR_BUILD.
        * config/tilegx/t-tilegx: Likewise.

From-SVN: r233390
2016-02-12 21:21:15 +00:00
Walter Lee
b29d9a29a1 config.host (tilegx*-*-linux*): remove ti from softfp_int_modes for 32-bit configs.
libgcc/ChangeLog:
        * config.host (tilegx*-*-linux*): remove ti from
          softfp_int_modes for 32-bit configs.

From-SVN: r233389
2016-02-12 21:15:43 +00:00
Jerry DeLisle
7f4cc3ced8 re PR fortran/69668 (Error reading namelist opened with DELIM='NONE')
2016-02-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/69668
	* gfortran.dg/namelist_88.f90: New test.

From-SVN: r233388
2016-02-12 21:02:02 +00:00
Jerry DeLisle
955ca6dc77 re PR fortran/69668 (Error reading namelist opened with DELIM='NONE')
2016-02-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/69668
	* io/list_read.c (read_character): Remove code related to DELIM_NONE.

	PR libgfortran/69668
	* gfortran.dg/namelist_38.f90: Update test.
	* gfortran.dg/namelist_84.f90: Update test.

From-SVN: r233387
2016-02-12 19:52:13 +00:00
David Malcolm
876217ae71 PR other/69554: avoid excessive source printing for widely-separated locations
gcc/ChangeLog:
	PR other/69554
	* diagnostic-show-locus.c (struct line_span): New struct.
	(layout::get_first_line): Delete.
	(layout::get_last_line): Delete.
	(layout::get_num_line_spans): New member function.
	(layout::get_line_span): Likewise.
	(layout::print_heading_for_line_span_index_p): Likewise.
	(layout::get_expanded_location): Likewise.
	(layout::calculate_line_spans): Likewise.
	(layout::m_first_line): Delete.
	(layout::m_last_line): Delete.
	(layout::m_line_spans): New field.
	(layout::layout): Update comment.  Replace m_first_line and
	m_last_line with m_line_spans, replacing their initialization
	with a call to calculate_line_spans.
	(diagnostic_show_locus): When printing source lines and
	annotations, rather than looping over a single span
	of lines, instead loop over each line_span within
	the layout, with an inner loop over the lines within them.
	Call the context's start_span callback when changing line spans.
	* diagnostic.c (diagnostic_initialize): Initialize start_span.
	(diagnostic_build_prefix): Break out the building of the location
	part of the string into...
	(diagnostic_get_location_text): ...this new function, rewriting
	it from nested ternary expressions to a sequence of "if"
	statements.
	(default_diagnostic_start_span_fn): New function.
	* diagnostic.h (diagnostic_start_span_fn): New typedef.
	(diagnostic_context::start_span): New field.
	(default_diagnostic_start_span_fn): New prototype.

gcc/fortran/ChangeLog:
	PR other/69554
	* error.c (gfc_diagnostic_start_span): New function.
	(gfc_diagnostics_init): Initialize global_dc's start_span.

gcc/testsuite/ChangeLog:
	PR other/69554
	* gcc.dg/pr69554-1.c: New test.
	* gfortran.dg/pr69554-1.F90: New test.
	* gfortran.dg/pr69554-2.F90: New test.
	* lib/gcc-dg.exp (proc dg-locus): New function.
	* lib/gfortran-dg.exp (proc gfortran-dg-test): Update comment to
	distinguish between the caret-printing and non-caret-printing
	cases.  If caret-printing has been explicitly enabled, bail out
	without attempting to fix up the output.

From-SVN: r233386
2016-02-12 19:18:03 +00:00
David Malcolm
8dccd19b3b PR driver/69779: fix bogus cleanup code used by libgccjit affecting s390x
gcc/ChangeLog:
	PR driver/69779
	* gcc.c (driver::finalize): Fix cleanup of "specs".

From-SVN: r233385
2016-02-12 18:37:35 +00:00
David Malcolm
61789eedf8 PR driver/69265 and 69453: improved suggestions for various misspelled options
gcc/ChangeLog:
	PR driver/69265
	PR driver/69453
	* gcc.c (driver::driver): Initialize m_option_suggestions.
	(driver::~driver): Clean up m_option_suggestions.
	(suggest_option): Convert to...
	(driver::suggest_option): ...this, and split out into
	driver::build_option_suggestions and find_closest_string.
	(driver::build_option_suggestions): New function, from
	first half of suggest_option.  Special-case
	OPT_fsanitize_ and OPT_fsanitize_recover_, making use of
	the sanitizer_opts array.  For options of enum types, add the
	various enum values to the candidate strings.
	(driver::handle_unrecognized_options): Remove "const".
	* gcc.h (driver::handle_unrecognized_options): Likewise.
	(driver::build_option_suggestions): New decl.
	(driver::suggest_option): New decl.
	(driver::m_option_suggestions): New field.
	* opts-common.c (add_misspelling_candidates): New function.
	* opts.c (sanitizer_opts): Remove decl of struct sanitizer_opts_s
	and make non-static.
	* opts.h (sanitizer_opts): New array decl.
	(add_misspelling_candidates): New function decl.
	* spellcheck.c (find_closest_string): New function.
	* spellcheck.h (find_closest_string): New function decl.

gcc/testsuite/ChangeLog:
	PR driver/69265
	PR driver/69453
	* gcc.dg/spellcheck-options-3.c: New test case.
	* gcc.dg/spellcheck-options-4.c: New test case.
	* gcc.dg/spellcheck-options-5.c: New test case.
	* gcc.dg/spellcheck-options-6.c: New test case.
	* gcc.dg/spellcheck-options-7.c: New test case.
	* gcc.dg/spellcheck-options-8.c: New test case.
	* gcc.dg/spellcheck-options-9.c: New test case.
	* gcc.dg/spellcheck-options-10.c: New test case.

From-SVN: r233382
2016-02-12 17:39:27 +00:00
Jakub Jelinek
c3090c1f52 re PR rtl-optimization/69764 (ICE on x86_64-linux-gnu at -O0 (in decompose, at rtl.h:2107))
PR rtl-optimization/69764
	PR rtl-optimization/69771
	* optabs.c (expand_binop_directly): For shift_optab_p, force
	convert_modes with VOIDmode if xop1 has VOIDmode.

	* c-c++-common/pr69764.c: New test.
	* gcc.dg/torture/pr69771.c: New test.

From-SVN: r233381
2016-02-12 17:49:44 +01:00
Marek Polacek
8222034d05 * g++.dg/torture/init-list1.C: New.
From-SVN: r233380
2016-02-12 16:40:47 +00:00
Marek Polacek
f749f7923d * gcc.dg/pr69522.c: Add empty dg-options.
From-SVN: r233377
2016-02-12 13:48:01 +00:00
Ilya Enkovich
199fb02a78 re PR middle-end/69729 ([CHKP] internal compiler error: Segmentation fault)
gcc/

	PR target/69729
	* lto-streamer-out.c (lto_output): Use thunk.add_pointer_bounds_args
	to correctly determine instrumentation thunks.

gcc/testsuite/

	* g++.dg/lto/lto.exp: Include and init mpx.
	* g++.dg/lto/pr69729_0.C: New test.

From-SVN: r233376
2016-02-12 13:17:28 +00:00
Jakub Jelinek
06ff700018 re PR ipa/69241 (ICE with noreturn and function that return non-POD)
PR ipa/69241
	* ipa-split.c (split_function): If split part returns TREE_ADDRESSABLE
	type by reference, force lhs on the call.

	* g++.dg/ipa/pr69241-4.C: New test.

From-SVN: r233375
2016-02-12 12:59:00 +01:00
Jakub Jelinek
b69539cbf5 re PR ipa/68672 (g++.dg/torture/pr68470.C: ICE: cannot update SSA form: statement uses released SSA name)
PR ipa/68672
	* ipa-split.c (split_function): Don't compute/use main_part_return_p.
	Compute retval and retbnd early in all cases if split_part_return_p
	and return_bb is not EXIT.  Remove all clobber stmts and reset
	all debug stmts that refer to SSA_NAMEs defined in split part,
	except if it is retval, in that case replace the old retval with the
	lhs of the call to the split part.

	* g++.dg/ipa/pr68672-1.C: New test.
	* g++.dg/ipa/pr68672-2.C: New test.
	* g++.dg/ipa/pr68672-3.C: New test.

From-SVN: r233374
2016-02-12 12:57:54 +01:00
Kugan Vivekanandarajah
4c70798069 revert: re PR tree-optimization/66726 (missed optimization, factor conversion out of COND_EXPR)
2016-02-12  Kugan Vivekanandarajah  <kuganv@linaro.org>

	revert:
	2016-02-12  Kugan Vivekanandarajah  <kuganv@linaro.org>

	PR middle-end/66726
	* tree-ssa-reassoc.c (optimize_range_tests): Handle tcc_compare stmt
	whose result is used in PHI.
	(maybe_optimize_range_tests): Likewise.
	(final_range_test_p): Likweise.

From-SVN: r233368
2016-02-12 06:40:55 +00:00
Bernd Schmidt
f48dfe985e Fix incomplete initialization of the declspec struct.
* c-decl.c (build_null_declspecs): Zero the entire struct.

From-SVN: r233367
2016-02-12 01:50:25 +00:00
Bernd Schmidt
16595a1f28 Fix obstack use-after-free problems in C frontend, PR69522
c/
	PR c/69522
	* c-parser.c (c_parser_braced_init): New arg outer_obstack.  All
	callers changed.  If nested_p is true, use it to call
	finish_implicit_inits.
	* c-tree.h (finish_implicit_inits): Declare.
	* c-typeck.c (finish_implicit_inits): New function.  Move code
	from ...
	(push_init_level): ... here.
	(set_designator, process_init_element): Call finish_implicit_inits.

testsuite/
	PR c/69522
	gcc.dg/pr69522.c: New test.

From-SVN: r233366
2016-02-12 01:38:06 +00:00
Patrick Palka
38d795d27c Fix PR c++/69098 (bogus errors with static data member template)
gcc/cp/ChangeLog:

	PR c++/69098
	* pt.c (lookup_and_finish_template_variable): New function,
	extracted from ...
	(tsubst_copy_and_build) [TEMPLATE_ID_EXPR]: ... here.
	(tsubst_qualified_id): Consider that EXPR might be a variable
	template.
	* typeck.c (check_template_keyword): Don't emit an error
	if DECL is a variable template.

gcc/testsuite/ChangeLog:

	PR c++/69098
	* g++.dg/cpp1y/69098.C: New test.
	* g++.dg/cpp1y/69098-2.C: New test.

From-SVN: r233365
2016-02-12 01:11:52 +00:00
Kugan Vivekanandarajah
3ac29b0f88 re PR tree-optimization/66726 (missed optimization, factor conversion out of COND_EXPR)
gcc/ChangeLog:

2016-02-12  Kugan Vivekanandarajah  <kuganv@linaro.org>

	PR middle-end/66726
	* tree-ssa-reassoc.c (optimize_range_tests): Handle tcc_compare stmt
	whose result is used in PHI.
	(maybe_optimize_range_tests): Likewise.
	(final_range_test_p): Likweise.

From-SVN: r233362
2016-02-12 00:24:22 +00:00
GCC Administrator
228e2674c8 Daily bump.
From-SVN: r233361
2016-02-12 00:16:17 +00:00
Jakub Jelinek
9c58255170 cgraph.c: Spelling fixes - behaviour -> behavior and neighbour -> neighbor.
* cgraph.c: Spelling fixes - behaviour -> behavior and
	neighbour -> neighbor.
	* target.def: Likewise.
	* sel-sched.c: Likewise.
	* config/mips/mips.c: Likewise.
	* config/arc/arc.md: Likewise.
	* config/arm/cortex-a57.md: Likewise.
	* config/arm/arm.c: Likewise.
	* config/arm/neon.md: Likewise.
	* config/arm/arm-c.c: Likewise.
	* config/vms/vms-c.c: Likewise.
	* config/s390/s390.c: Likewise.
	* config/i386/znver1.md: Likewise.
	* config/i386/i386.c: Likewise.
	* config/ia64/hpux-unix2003.h: Likewise.
	* config/msp430/msp430.md: Likewise.
	* config/rx/rx.c: Likewise.
	* config/rx/rx.md: Likewise.
	* config/aarch64/aarch64-simd.md: Likewise.
	* config/aarch64/aarch64.c: Likewise.
	* config/nvptx/nvptx.c: Likewise.
	* config/bfin/bfin.c: Likewise.
	* config/cris/cris.opt: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* target.h: Likewise.
	* spellcheck.c: Likewise.
	* ira-build.c: Likewise.
	* tree-inline.c: Likewise.
	* builtins.c: Likewise.
	* lra-constraints.c: Likewise.
	* explow.c: Likewise.
	* hwint.h: Likewise.
	* targhooks.c: Likewise.
	* tree-vect-data-refs.c: Likewise.
	* expr.c: Likewise.
	* doc/tm.texi: Likewise.
	* doc/extend.texi: Likewise.
	* doc/install.texi: Likewise.
	* doc/md.texi: Likewise.
	* tree-ssa-tail-merge.c: Likewise.
	* sched-int.h: Likewise.
	* match.pd: Likewise.
	* sched-ebb.c: Likewise.
	* target.def (omit_struct_return_reg): Likewise.
	* gimple-ssa-isolate-paths.c: Likewise.
	(find_implicit_erroneous_behaviour): Renamed to...
	(find_implicit_erroneous_behavior): ... this.
	(find_explicit_erroneous_behaviour): Renamed to...
	(find_explicit_erroneous_behavior): ... this.
	(gimple_ssa_isolate_erroneous_paths): Adjust caller.
gcc/cp/
	* error.c: Spelling fixes - behaviour -> behavior and
	neighbour -> neighbor.
	* decl.c: Likewise.
	* typeck.c (cp_build_binary_op): Fix up behavior spelling in
	diagnostics.
	* init.c (build_delete): Likewise.
gcc/objc/
	* objc-act.c: Spelling fixes - behaviour -> behavior and
	neighbour -> neighbor.
	* objc-map.h: Likewise.
gcc/go/
	* gofrontend/lex.cc: Spelling fixes - behaviour -> behavior and
	neighbour -> neighbor.
	* gccgo.texi: Likewise.
gcc/ada/
	* prj-tree.ads: Spelling fixes - behaviour -> behavior and
	neighbour -> neighbor.
	* prep.adb: Likewise.
	* prj.ads: Likewise.
	* prepcomp.adb: Likewise.
	* g-socket.ads: Likewise.
	* s-imgrea.adb: Likewise.
	* a-calend.adb: Likewise.
	* exp_disp.adb: Likewise.
	* doc/gnat_ugn/gnat_utility_programs.rst: Likewise.
	* g-socket.adb: Likewise.
	* sem_ch12.adb: Likewise.
	* terminals.c: Likewise.
gcc/testsuite/
	* objc.dg/gnu-api-2-method.m: Spelling fixes - behaviour -> behavior
	and neighbour -> neighbor.
	* objc.dg/attributes/method-nonnull-1.m: Likewise.
	* objc.dg/gnu-api-2-class-meta.m: Likewise.
	* c-c++-common/Wvarargs.c: Likewise.
	* c-c++-common/goacc/host_data-5.c: Likewise.
	* obj-c++.dg/gnu-api-2-class-meta.mm: Likewise.
	* obj-c++.dg/attributes/method-nonnull-1.mm: Likewise.
	* obj-c++.dg/gnu-api-2-method.mm: Likewise.
	* gcc.target/aarch64/pr60697.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vldX_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqshl.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vshuffle.inc: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vrshl.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vstX_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrshl.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vldX.c: Likewise.
	* gcc.target/aarch64/aapcs64/ice_2.c: Likewise.
	* gcc.target/aarch64/aapcs64/test_23.c: Likewise.
	* gcc.target/aarch64/vrnd_f64_1.c: Likewise.
	* g++.dg/warn/Wconversion-real-integer-3.C: Likewise.
	* g++.dg/lookup/koenig5.C: Likewise.
	* g++.dg/ext/no-asm-2.C: Likewise.
	* gfortran.dg/bounds_check_array_ctor_3.f90: Likewise.
	* gfortran.dg/bounds_check_array_ctor_7.f90: Likewise.
	* gfortran.dg/used_types_16.f90: Likewise.
	* gfortran.dg/assumed_rank_bounds_1.f90: Likewise.
	* gfortran.dg/bounds_check_array_ctor_1.f90: Likewise.
	* gfortran.dg/assumed_rank_bounds_2.f90: Likewise.
	* gfortran.dg/bounds_check_array_ctor_4.f90: Likewise.
	* gfortran.dg/abstract_type_6.f03: Likewise.
	* gfortran.dg/bounds_check_array_ctor_5.f90: Likewise.
	* gfortran.dg/used_types_15.f90: Likewise.
	* gfortran.dg/bounds_check_array_ctor_8.f90: Likewise.
	* gfortran.dg/exit_3.f08: Likewise.
	* gfortran.dg/open_status_2.f90: Likewise.
	* gfortran.dg/derived_pointer_recursion_2.f90: Likewise.
	* gfortran.dg/intrinsic_std_1.f90: Likewise.
	* gfortran.dg/associate_1.f03: Likewise.
	* gfortran.dg/bounds_check_array_ctor_2.f90: Likewise.
	* gfortran.dg/intrinsic_std_6.f90: Likewise.
	* gfortran.dg/bounds_check_array_ctor_6.f90: Likewise.
	* gcc.dg/builtin-object-size-1.c: Likewise.
	* gcc.dg/noreturn-6.c: Likewise.
	* gcc.dg/builtin-stringop-chk-1.c: Likewise.
	* gcc.dg/globalalias.c: Likewise.
	* gcc.dg/builtins-config.h: Likewise.
	* gcc.dg/pr30457.c: Likewise.
	* gcc.c-torture/compile/volatile-1.c: Likewise.
	* gcc.c-torture/execute/20101011-1.c: Likewise.
	* c-c++-common/Waddress-1.c: Likewise.

From-SVN: r233358
2016-02-12 00:53:54 +01:00
Jakub Jelinek
66756373c1 re PR c/69768 (Bogus -Waddress warning)
PR c/69768
	* c-typeck.c (parser_build_binary_op): Strip nops from integer_zerop
	arguments for -Waddress warning.

	* typeck.c (cp_build_binary_op): cp_fully_fold integer_zerop
	arguments for -Waddress warning.  Fix up formatting.

	* c-c++-common/Waddress-1.c: New test.

From-SVN: r233357
2016-02-11 23:55:02 +01:00
Segher Boessenkool
ec4836a75d combine: More distribute_notes trouble (PR69737)
PR64682 is a problem in distribute_notes, where it has trouble putting
a REG_DEAD note for a reg that is set twice in the right spot.  My fix
for that did the wrong thing for PR69567.  And then my attempted fix
for that one made PR64682 fail again.

Instead, let's just lose the note in such complicated cases, like we
already do in certain similar cases.


	PR rtl-optimization/64682
	PR rtl-optimization/69567
	PR rtl-optimization/69737
	* combine.c (distribute_notes) <REG_DEAD>: If the register is set
	in I2 as well, just lose it.

From-SVN: r233356
2016-02-11 23:26:35 +01:00
Andre Vehreschild
76fe932be3 re PR fortran/69296 ([F03] Problem with associate and vector subscript)
gcc/fortran/ChangeLog:

2016-02-11  Andre Vehreschild  <vehre@gcc.gnu.org>

	PR fortran/69296
	* gfortran.h: Added flag to gfc_association_list indicating that
	the rank of an associate variable has been guessed only.
	* parse.c (parse_associate): Set the guess flag mentioned above
	when guessing the rank of an expression.
	* resolve.c (resolve_assoc_var): When the rank has been guessed,
	make sure, that the guess was correct else overwrite with the actual
	rank.
	* trans-stmt.c (trans_associate_var): For subref_array_pointers in
	class objects, take the span from the _data component.

gcc/testsuite/ChangeLog:

2016-02-11  Andre Vehreschild  <vehre@gcc.gnu.org>

	PR fortran/69296
	* gfortran.dg/associate_19.f03: New test.
	* gfortran.dg/associate_20.f03: New test.

From-SVN: r233351
2016-02-11 17:48:45 +01:00
Oleg Endo
564c4d4bb3 pr54089-8.c: Adjust optimization level.
gcc/testsuite/
	* gcc.target/sh/pr54089-8.c: Adjust optimization level.

From-SVN: r233346
2016-02-11 14:47:20 +00:00
Kyrylo Tkachov
e1c1ecb0fe [AArch64] Only update assembler .arch directive when necessary
* config/aarch64/aarch64.c (aarch64_last_printed_arch_string):
	New variable.
	(aarch64_last_printed_tune_string): Likewise.
	(aarch64_declare_function_name): Only output .arch assembler
	directive if it will be different from the previously output
	directive.  Same for .tune comment but only if -dA is set.
	(aarch64_start_file): New function.
	(TARGET_ASM_FILE_START): Define.

	* gcc.target/aarch64/target_attr_15.c: Scan assembly for
	.arch armv8-a\n.  Add -dA to dg-options.
	* gcc.target/aarch64/assembler_arch_1.c: New test.
	* gcc.target/aarch64/target_attr_7.c: Add -dA to dg-options.

From-SVN: r233342
2016-02-11 13:27:28 +00:00
Paolo Carlini
4146b7b8c4 re PR c++/68726 (ice: tree check: expected tree_vec, have error_mark in comp_template_args_with_info, at cp/pt.c:7890)
/cp
2016-02-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68726
	* pt.c (lookup_template_class_1): Check tsubst return value for
	error_mark_node.

/testsuite
2016-02-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68726
	* g++.dg/cpp0x/pr68726.C: New.

From-SVN: r233340
2016-02-11 11:45:10 +00:00
Paolo Carlini
0d7d945855 re PR c++/68726 (ice: tree check: expected tree_vec, have error_mark in comp_template_args_with_info, at cp/pt.c:7890)
/cp
2016-02-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68726
	* pt.c (lookup_template_class_1): Check tsubst return value for
	error_mark_node.

/testsuite
2016-02-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68726
	* g++.dg/cpp0x/pr68726.C: New.

From-SVN: r233339
2016-02-11 11:44:51 +00:00
David Malcolm
26fb38a1d7 PR plugins/69758: add params.list to PLUGIN_HEADERS
gcc/ChangeLog:
	PR plugins/69758
	* Makefile.in (PLUGIN_HEADERS): Add params.list.

From-SVN: r233338
2016-02-11 11:26:54 +00:00
Jakub Jelinek
567a3691a7 re PR target/65313 (Compilation error in lto profiledbootstrap on powerpc64le-unknown-linux-gnu)
PR target/65313
	* tree-vect-slp.c (vect_schedule_slp_instance): Avoid
	-Wmaybe-uninitialized warning.

From-SVN: r233337
2016-02-11 11:08:14 +01:00
Ilya Enkovich
e6208a60cd mpx-dg.exp: Fix warning in check_effective_target_mpx test.
gcc/testsuite/

	* lib/mpx-dg.exp: Fix warning in check_effective_target_mpx
	test.

From-SVN: r233333
2016-02-11 09:26:23 +00:00
Oleg Endo
3a71ddbcad re PR target/69713 (Invalid code of optimization in SH)
gcc/
	PR target/69713
	* config/sh/sh.md (casesi_worker_0): Add T_REG use.

From-SVN: r233324
2016-02-11 09:12:18 +00:00
Richard Biener
281a11eb25 pr61034.C: Adjust.
2016-02-11  Richard Biener  <rguenther@suse.de>

	* g++.dg/tree-ssa/pr61034.C: Adjust.

From-SVN: r233317
2016-02-11 08:15:44 +00:00
Richard Biener
f167cf54a1 re PR rtl-optimization/69291 (wrong code at -O1 for ruby-2.3.0/regcomp.c:985:compile_length_quantifier_node())
2016-02-11  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/69291
	* ifcvt.c (noce_try_store_flag_constants): Do not allow
	subexpressions affected by changing the result.

From-SVN: r233316
2016-02-11 08:11:52 +00:00
GCC Administrator
168a75879e Daily bump.
From-SVN: r233314
2016-02-11 00:16:12 +00:00
Jason Merrill
46f0d909aa re PR c++/68926 (decltype and sfinae to check for template instance availability fails to compile)
PR c++/68926

	* pt.c (resolve_nondeduced_context): Add complain parm.
	(do_auto_deduction): Pass it.
	* cvt.c (convert_to_void): Likewise.
	* decl.c (cp_finish_decl): Likewise.
	* init.c (build_new): Likewise.
	* rtti.c (get_tinfo_decl_dynamic): Likewise.
	* semantics.c (finish_decltype_type): Likewise.
	* typeck.c (decay_conversion): Likewise.
	* cp-tree.h: Adjust declaration.
	* call.c (standard_conversion): Add complain parm, pass it along.
	(implicit_conversion): Pass it.

From-SVN: r233304
2016-02-10 14:12:32 -05:00
Vladimir Makarov
4b48faf548 Fix PR #.
From-SVN: r233303
2016-02-10 18:47:43 +00:00
Ian Lance Taylor
931f434a72 re PR go/66904 (cmd/go: "#cgo pkg-config:" comments do not work with gccgo)
PR go/66904
    cmd/go: fix "#cgo pkg-config:" comments with gccgo
    
    Copy of https://golang.org/cl/18790 by Michael Hudson-Doyle.
    
    The unique difficulty of #cgo pkg-config is that the linker flags are recorded
    when the package is compiled but (obviously) must be used when the package is
    linked into an executable -- so the flags need to be stored on disk somewhere.
    As it happens cgo already writes out a _cgo_flags file: nothing uses it
    currently, but this change adds it to the lib$pkg.a file when compiling a
    package, reads it out when linking (and passes a version of the .a file with
    _cgo_flags stripped out of it to the linker). It's all fairly ugly but it works
    and I can't really think of any way of reducing the essential level of
    ugliness.
    
    Update golang/go#11739.
    GCC PR 66904.

    Reviewed-on: https://go-review.googlesource.com/19431

From-SVN: r233290
2016-02-10 18:30:27 +00:00
Vladimir Makarov
e03dd76578 re PR target/69148 (ICE (floating point exception) on s390x-linux-gnu)
2016-02-10  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/69148
	* lra-constraints.c (curr_insn_transform): Find in/out operands
	for secondary memory moves.  Update dups.

2016-02-10  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/69468
	* gcc.target/s390/pr69148.c: New.

From-SVN: r233283
2016-02-10 18:01:40 +00:00
Jason Merrill
89908c8f2b re PR c++/69657 (abs() not inlined after including math.h)
PR c++/69657

	* name-lookup.c (ambiguous_decl): Call remove_hidden_names.
	(lookup_name_real_1): Likewise.
	(remove_hidden_names): Handle non-functions too.

From-SVN: r233278
2016-02-10 10:34:59 -05:00
Jason Merrill
ff2faafcf6 re PR c++/10200 (Weird clash with same names in different scopes)
PR c++/10200

	* parser.c (cp_parser_lookup_name): When looking for a template
	after . or ->, only consider class templates.
	(cp_parser_postfix_dot_deref_expression): Handle the current
	instantiation.  Remember a dependent object expression.
	* typeck2.c (build_x_arrow): Handle the current instantiation.

From-SVN: r233277
2016-02-10 10:34:52 -05:00
Jason Merrill
3a4219caad * ptree.c (debug_tree): Implement for cp_expr.
From-SVN: r233276
2016-02-10 10:34:45 -05:00
Yuri Rumyantsev
cdc23927ee re PR tree-optimization/69652 ([ICE] verify_ssa fail w/ -O2 -ffast-math -ftree-vectorize)
gcc/

2016-02-10  Yuri Rumyantsev  <ysrumyan@gmail.com>

	PR tree-optimization/69652
	* tree-vect-loop.c (optimize_mask_stores): Move declaration of STMT1
	to nested loop, did source re-formatting, skip debug statements,
	add check on statement with volatile operand, remove dead scalar
	statements.

gcc/testsuite/

2016-02-10  Yuri Rumyantsev  <ysrumyan@gmail.com>

	PR tree-optimization/69652
	* gcc.dg/torture/pr69652.c: New test.

From-SVN: r233275
2016-02-10 15:22:17 +00:00
Ian Lance Taylor
03a0ae7d98 re PR go/68562 (morestack misaligns stack on x86_64)
PR go/68562
	* config/i386/morestack.S (__stack_split_initialize): Align
	stack.

From-SVN: r233273
2016-02-10 15:14:05 +00:00
Jakub Jelinek
e199dd0a2f re PR ipa/69241 (ICE with noreturn and function that return non-POD)
PR ipa/69241
	PR c++/69649
	* gimplify.c (gimplify_modify_expr): Set lhs even for noreturn
	calls if the return type is TREE_ADDRESSABLE.
	* cgraphunit.c (cgraph_node::expand_thunk): Likewise.
	* ipa-split.c (split_function): Fix doubled "we" in comment.
	Use void return type for the split part even if
	!split_point->split_part_set_retval.

	* g++.dg/ipa/pr69241-1.C: New test.
	* g++.dg/ipa/pr69241-2.C: New test.
	* g++.dg/ipa/pr69241-3.C: New test.
	* g++.dg/ipa/pr69649.C: New test.

Co-Authored-By: Patrick Palka <ppalka@gcc.gnu.org>

From-SVN: r233271
2016-02-10 16:06:20 +01:00
Uros Bizjak
d6b38027a0 sra-17.c: Add -mcpu=ev4 for target alpha*-*-*.
* gcc.dg/tree-ssa/sra-17.c: Add -mcpu=ev4 for target alpha*-*-*.
	* gcc.dg/tree-ssa/sra-18.c: Ditto.

From-SVN: r233270
2016-02-10 15:41:59 +01:00
Bin Cheng
13b562c502 re PR tree-optimization/68021 (ice in rewrite_use_nonlinear_expr with -O3)
PR tree-optimization/68021
	* tree-ssa-loop-ivopts.c (get_computation_aff): Set ratio to 1 if
	when computing the value of biv cand by itself.

	gcc/testsuite/ChangeLog
	PR tree-optimization/68021
	* gcc.dg/tree-ssa/pr68021.c: New test.

From-SVN: r233269
2016-02-10 14:09:05 +00:00
Wilco Dijkstra
00a8574af2 Enable instruction fusion of dependent AESE; AESMC and AESD; AESIMC pairs.
This can give up to 2x speedup on many AArch64 implementations. Also model
the crypto instructions on Cortex-A57 according to the Optimization Guide.

    gcc/
        * config/aarch64/aarch64.c (cortexa53_tunings): Enable AES fusion.
        (cortexa57_tunings): Likewise.
        (cortexa72_tunings): Likewise.
        (arch_macro_fusion_pair_p): Add support for AES fusion.
        * config/aarch64/aarch64-fusion-pairs.def: Add AES_AESMC entry.
        * config/arm/aarch-common.c (aarch_crypto_can_dual_issue):
        Allow virtual registers before reload so early scheduling works.
        * config/arm/cortex-a57.md (cortex_a57_crypto_simple): Use
        correct latency and pipeline.
        (cortex_a57_crypto_complex): Likewise.
        (cortex_a57_crypto_xor): Likewise.
        (define_bypass): Add AES bypass.

From-SVN: r233268
2016-02-10 12:52:23 +00:00
Richard Biener
24a179f835 re PR tree-optimization/69726 (Bogus warnings with -O3 -Wuninitialized because dead code after if-conversion)
2016-02-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/69726
	* passes.def: Add DCE pass before late uninit.
	* match.pd: Add A ? B : (!A ? C : X) -> A ? B : C patterns to
	really fixup if-conversions job.

	* gcc.dg/uninit-22.c: New testcase.

From-SVN: r233267
2016-02-10 12:46:33 +00:00