Commit Graph

138817 Commits

Author SHA1 Message Date
Kyrylo Tkachov
9ce3eaa4ff [ifcvt][obvious] Fix typo in comment
* ifcvt (end_ifcvt_sequence): Fix typo in comment above.

From-SVN: r224075
2015-06-03 12:47:36 +00:00
Ilya Enkovich
67321dcf21 ipa-chkp.c (chkp_maybe_create_clone): Create alias reference when cloning alias node.
gcc/

	* ipa-chkp.c (chkp_maybe_create_clone): Create alias
	reference when cloning alias node.

gcc/testsuite/

	* gcc.dg/lto/chkp-removed-alias_0.c: New.

From-SVN: r224074
2015-06-03 11:31:08 +00:00
Martin Liska
b2b43e3329 Fix memory report layout at various places.
* alloc-pool.h (struct pool_usage): Correct space padding.
	* ggc-page.c (ggc_print_statistics): Align columns in a report.
	* mem-stats.h (struct mem_usage): Add argument to print_dash_line.
	* tree.c (dump_tree_statistics): Align columns in a report.

From-SVN: r224071
2015-06-03 09:36:08 +00:00
Martin Liska
ac05926156 Port pool-allocator memory stats to a new infrastructure.
* alloc-pool.c (allocate_pool_descriptor): Remove.
	(struct pool_output_info): Likewise.
	(print_alloc_pool_statistics): Likewise.
	(dump_alloc_pool_statistics): Likewise.
	* alloc-pool.h (struct pool_usage): New struct.
	(pool_allocator::initialize): Change usage of memory statistics
	to a new interface.
	(pool_allocator::release): Likewise.
	(pool_allocator::allocate): Likewise.
	(pool_allocator::remove): Likewise.
	* mem-stats-traits.h (enum mem_alloc_origin): Add new enum value
	for a pool allocator.
	* mem-stats.h (struct mem_location): Add new ctor.
	(struct mem_usage): Add counter for number of
	instances.
	(mem_alloc_description::register_descriptor): New overload of
	* mem-stats.h (mem_location::to_string): New function.
	* bitmap.h (struct bitmap_usage): Use this new function.
	* ggc-common.c (struct ggc_usage): Likewise.
	the function.

From-SVN: r224070
2015-06-03 09:33:32 +00:00
Richard Sandiford
8a810680ee defaults.h (SWITCHABLE_TARGET, [...]): Move out of GCC_INSN_FLAGS_H block.
gcc/
	* defaults.h (SWITCHABLE_TARGET, TARGET_SUPPORTS_WIDE_INT): Move out
	of GCC_INSN_FLAGS_H block.

From-SVN: r224069
2015-06-03 09:29:42 +00:00
Eric Botcazou
4b7bd26024 * gcc-interface/utils.c (copy_type): Also set TYPE_CANONICAL.
From-SVN: r224068
2015-06-03 09:28:07 +00:00
Eric Botcazou
d020df06a7 trans.c (gnat_to_gnu): Fix typo in latest change.
* gcc-interface/trans.c (gnat_to_gnu) <N_Simple_Return_Statement>: Fix
	typo in latest change.

From-SVN: r224066
2015-06-03 09:22:09 +00:00
Andrew Bennett
2c19378bd9 Update check after force_const_mem call in the plus_constant function to see if the value returned is not a NULL_RTX.
2015-06-03  Andrew Bennett  <andrew.bennett@imgtec.com>

gcc/
	* explow.c (plus_constant): Update check after force_const_mem call 
	to see if the value returned is not a NULL_RTX.

From-SVN: r224064
2015-06-03 09:15:25 +00:00
Ilya Enkovich
48de5d37c3 ipa.c (symbol_table::remove_unreachable_nodes): Don't remove instumentation thunks calling reachable functions.
gcc/

	* ipa.c (symbol_table::remove_unreachable_nodes): Don't
	remove instumentation thunks calling reachable functions.
	* lto-cgraph.c (output_refs): Always output IPA_REF_CHKP.
	* lto/lto-partition.c (privatize_symbol_name_1): New.
	(privatize_symbol_name): Privatize both decl and orig_decl
	names for instrumented functions.
	* cgraph.c (cgraph_node::verify_node): Add transparent
	alias chain check for instrumented node.

gcc/testsuite/

	* gcc.dg/lto/chkp-privatize-1_0.c: New.
	* gcc.dg/lto/chkp-privatize-1_1.c: New.
	* gcc.dg/lto/chkp-privatize-2_0.c: New.
	* gcc.dg/lto/chkp-privatize-2_1.c: New.

From-SVN: r224063
2015-06-03 08:29:28 +00:00
Marek Polacek
b2858c9f3e re PR c/64223 (same warning repeated twice with same line number)
PR c/64223
	PR c/29358
	* tree.c (attribute_value_equal): Handle attribute format.
	(cmp_attrib_identifiers): Factor out of lookup_ident_attribute.

	* gcc.dg/pr64223-1.c: New test.
	* gcc.dg/pr64223-2.c: New test.

From-SVN: r224062
2015-06-03 08:24:50 +00:00
Richard Biener
4da6008223 re PR tree-optimization/63916 (value-numbering fails to forward variable addresses)
2015-06-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63916
	* tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address):
	Forward-propagate non-invariant addresses by splicing their
	reference ops if the result isn't going to be used by PRE.
	(vn_reference_lookup_3): Remove pointless assert.

	* gcc.dg/tree-ssa/ssa-fre-45.c: New testcase.

From-SVN: r224061
2015-06-03 08:02:10 +00:00
Richard Biener
b9b79ba426 re PR middle-end/66375 (wrong code at -O2 and -O3 on x86_64-linux-gnu)
2015-06-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/66375
	* tree-scalar-evolution.c (follow_ssa_edge_binary): First
	add to the evolution before following SSA edges.

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

From-SVN: r224060
2015-06-03 07:57:13 +00:00
Bin Cheng
e185f450b8 tree-ssa-loop-ivopts.c (dump_iv): New parameter.
* tree-ssa-loop-ivopts.c (dump_iv): New parameter.
	(dump_use, dump_cand, find_induction_variables): Pass new argument
	to dump_iv.
	(record_use): Preserve the ssa name information in IV.

From-SVN: r224058
2015-06-03 07:33:50 +00:00
Richard Sandiford
40130403e5 genpreds.c (mark_mode_tests): Mark all MATCH_CODEs as NO_MODE_TEST.
gcc/
	* genpreds.c (mark_mode_tests): Mark all MATCH_CODEs as
	NO_MODE_TEST.
	(add_mode_tests): Don't add mode tests if the predicate only
	accepts scalar constant integers.  Otherwise, allow the mode
	of "op" to be VOIDmode if the predicate does accept such integers.

From-SVN: r224056
2015-06-03 06:28:11 +00:00
Bin Cheng
c49316be70 pr65447.c: Increase searching number.
gcc/testsuite	
	* gcc.dg/tree-ssa/pr65447.c: Increase searching number.

	Also fix date mis-match in ChangeLog.

From-SVN: r224055
2015-06-03 06:06:35 +00:00
Jim Wilson
d5726973a7 re PR target/66258 (compiling a stdarg function with arch +nofp generates an ICE)
gcc/
	PR target/66258
	* config/aarch64/aarch64.c (aarch64_function_value_regno_p): Change
	!TARGET_GENERAL_REGS_ONLY to TARGET_FLOAT.
	(aarch64_secondary_reload): Likewise
	(aarch64_expand_builtin_va_start): Change TARGET_GENERAL_REGS_ONLY
	to !TARGET_FLOAT.
	(aarch64_gimplify_va_arg_expr, aarch64_setup_incoming_varargs):
	Likewise.

From-SVN: r224054
2015-06-02 17:46:19 -07:00
GCC Administrator
b20b17b1c4 Daily bump.
From-SVN: r224053
2015-06-03 00:16:17 +00:00
Kugan Vivekanandarajah
32e0a7d983 re PR target/65768 (sub-optimimal code for constant Uses in loop)
gcc/ChangeLog:

2015-06-03  Kugan Vivekanandarajah  <kuganv@linaro.org>
	    Zhenqiang Chen  <zhenqiang.chen@linaro.org>

	PR target/65768
	* cprop.c (try_replace_reg): Check cost of constants before propagating.


gcc/testsuite/ChangeLog:

2015-06-03  Kugan Vivekanandarajah  <kuganv@linaro.org>

	PR target/65768
	* gcc.target/arm/maskdata.c: Remove -fno-gcse.


Co-Authored-By: Zhenqiang Chen <zhenqiang.chen@linaro.org>

From-SVN: r224048
2015-06-02 22:53:15 +00:00
Steven G. Kargl
2b263f6a01 Add the PR number that I forgot in m y previous commit.
From-SVN: r224044
2015-06-02 22:11:10 +00:00
Steven G. Kargl
b4cb2a41df simplify.c (gfc_simplify_reshape): Convert assert into returning NULL, which triggers an error condition.
2015-06-02  Steven G. Kargl  <kargl@gcc.gnu.org>

	* simplify.c (gfc_simplify_reshape): Convert assert into returning
	NULL, which triggers an error condition.

2015-06-02  Steven G. Kargl  <kargl@gcc.gnu.org>

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

From-SVN: r224043
2015-06-02 22:08:14 +00:00
Michael Meissner
6712d6fd30 rs6000-modes.def (IFmode): Define IFmode to provide access to the IBM extended double floating point mode...
2015-06-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000-modes.def (IFmode): Define IFmode to
	provide access to the IBM extended double floating point mode if
	long double is IEEE 128-bit floating point.
	(KFmode): Define KFmode to provide access to IEEE 128-bit floating
	point if long double is the IBM extended double type.

	* config/rs6000/rs6000.opt (-mfloat128-none): New switches to
	enable adding IEEE 128-bit floating point support.
	(-mfloat128-software): Likewise.
	(-mfloat128-sw): Likewise.

	* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): Do not allow
	128-bit floating point types to occupy any register if
	-mlong-double-64.  Do not allow use of IFmode/KFmode unless
	-mfloat128-software is enabled.
	(rs6000_debug_reg_global): Add IEEE 128-bit floating point debug
	support.
	(rs6000_option_override_internal): Add -mfloat128-* support.
	(rs6000_init_builtins): Setup __ibm128 and __float128 type modes.

	* config/rs6000/rs6000.h (rs6000_builtin_type_index): Add ibm128
	and float128 type nodes.
	(ieee128_float_type_node): Likewise.
	(ibm128_float_type_node): Likewise.

From-SVN: r224042
2015-06-02 21:58:24 +00:00
David Malcolm
6ac481556e PR c/66220: Fix false positive from -Wmisleading-indentation
gcc/c-family/ChangeLog:
	PR c/66220:
	* c-indentation.c (should_warn_for_misleading_indentation): Use
	expand_location rather than expand_location_to_spelling_point.
	Don't warn if the guarding statement is more indented than the
	next/body stmts.

gcc/testsuite/ChangeLog:
	PR c/66220:
	* c-c++-common/Wmisleading-indentation.c (fn_35): New.
	(fn_36): New.

From-SVN: r224041
2015-06-02 18:45:50 +00:00
David Malcolm
773ce42e90 Avoid unnecessary work when -Wmisleading-indentation isn't enabled
gcc/c-family/ChangeLog:
	* c-indentation.c (warn_for_misleading_indentation): Bail out
	immediately if -Wmisleading-indentation isn't enabled.

From-SVN: r224040
2015-06-02 18:39:49 +00:00
Jason Merrill
8ca528d906 re PR bootstrap/66319 (gcov-tool.c:84:65: error: invalid conversion from 'int (*)(const c har*, const stat*, int, FTW*)' to 'int (*)(const char*, const stat*, int, FTW)')
PR bootstrap/66319
	* configure.ac: Use -std=gnu++98.

From-SVN: r224039
2015-06-02 13:50:23 -04:00
Jason Merrill
5e9ad4c687 * g++.dg/warn/Wsystem-headers1.C: Use extern "C".
From-SVN: r224038
2015-06-02 13:50:18 -04:00
Patrick Palka
5d58db82b0 cp-tree.h (init_error): Remove declaration.
* cp-tree.h (init_error): Remove declaration.
	* error.c (scratch_pretty_printer): Rename to ...
	(actual_pretty_printer): ... this.
	(cxx_pp): Constify and update accordingly.
	(init_error): Remove definition.
	* lex.c (cxx_init): Do not call init_error.

From-SVN: r224037
2015-06-02 13:50:13 -04:00
Steve Ellcey
1a607203b2 test_installed (--target=): New option.
2015-06-02  Steve Ellcey  <sellcey@imgtec.com>

	* test_installed (--target=): New option.

From-SVN: r224034
2015-06-02 17:12:16 +00:00
Prathamesh Kulkarni
c2d474827d re PR target/49551 (tentative declaration after definition and -fdata-sections cause ICE in C front-end.)
2015-06-02  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

        PR c/49551
        * c-decl.c (merge_decls): Merge DECL_COMMON.
        * gcc.dg/pr49551.c: New test-case.

From-SVN: r224033
2015-06-02 16:42:27 +00:00
Szabolcs Nagy
4526c3c15c MAINTAINERS (Write After Approval): Add myself.
2015-06-02  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r224032
2015-06-02 16:39:19 +00:00
Szabolcs Nagy
ddda05980f [AArch64][PR 66136] rewrite geniterators.sh in awk
2015-06-02  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	PR target/66136
	* config/aarch64/geniterators.sh: Rewrite in awk.

From-SVN: r224031
2015-06-02 16:21:18 +00:00
Martin Liska
755afe2e51 Pool allocator fallout: fix uninialized class members.
* alloc-pool.h (pool_allocator::pool_allocator): Set implicit
	values to avoid -Wmaybe-uninitialized errors.

From-SVN: r224030
2015-06-02 14:10:17 +00:00
Richard Biener
71fa02e0d8 re PR debug/65549 (crash in htab_hash_string with -flto -g)
2015-06-02  Richard Biener  <rguenther@suse.de>

	PR debug/65549
	* dwarf2out.c (lookup_context_die): New function.
	(resolve_addr): Avoid forcing a full DIE for the
	target of a DW_TAG_GNU_call_site during late compilation.
	Instead create a stub DIE without a type if we have a
	context DIE present.

	* g++.dg/lto/pr65549_0.C: New testcase.

From-SVN: r224029
2015-06-02 12:33:02 +00:00
Thomas Schwinge
1817fe58f2 [PR libgomp/65742, PR middle-end/66332] XFAIL acc_on_device compile-time evaluation
The OpenACC 2.0a specification mandates differently, but we currently do get a
library call in the host code.

	PR libgomp/65742
	PR middle-end/66332

	gcc/testsuite/
	* c-c++-common/goacc/acc_on_device-2.c: XFAIL for C, too.

From-SVN: r224028
2015-06-02 13:48:56 +02:00
Uros Bizjak
6a3222f3c7 mangle-regparm.C (dg-do): Fix x86_32 target selector.
* g++.dg/abi/mangle-regparm.C (dg-do): Fix x86_32 target selector.

From-SVN: r224026
2015-06-02 13:23:48 +02:00
Jonathan Wakely
5211a52d57 abi.xml: Document versioning for 5.1.0 release.
* doc/xml/manual/abi.xml: Document versioning for 5.1.0 release.
	* doc/html/manual/*: Regenerate.

From-SVN: r224025
2015-06-02 12:17:43 +01:00
Jonathan Wakely
5d65efd4df lwg-active.html: Update to R93.
* doc/html/ext/lwg-active.html: Update to R93.
	* doc/html/ext/lwg-closed.html: Likewise.
	* doc/html/ext/lwg-defects.html: Likewise.
	* doc/html/manual/*: Regenerate.
	* doc/xml/manual/intro.xml: Document status of several DRs.

From-SVN: r224023
2015-06-02 12:07:30 +01:00
Paolo Carlini
a983abd29c re PR c++/61683 (decltype-specifier not accepted as mem-initializer-id)
/cp
2015-06-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/61683
	* parser.c (cp_parser_mem_initializer): Allow for decltype-specifier.

/testsuite
2015-06-02  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/61683
	* g++.dg/cpp0x/decltype-mem-initializer1.C: New.

From-SVN: r224022
2015-06-02 10:28:14 +00:00
Uros Bizjak
b4147b63ad df-scan.c (df_scan_start_dump): Add space between regno and regname.
* df-scan.c (df_scan_start_dump): Add space between regno and regname.

From-SVN: r224021
2015-06-02 12:27:31 +02:00
Bin Cheng
2f07b722ed re PR tree-optimization/48052 (loop not vectorized if index is "unsigned int")
PR tree-optimization/48052
	* cfgloop.h (struct control_iv): New.
	(struct loop): New field control_ivs.
	* tree-ssa-loop-niter.c : Include "stor-layout.h".
	(number_of_iterations_lt): Set no_overflow information.
	(number_of_iterations_exit): Init control iv in niter struct.
	(record_control_iv): New.
	(estimate_numbers_of_iterations_loop): Call record_control_iv.
	(loop_exits_before_overflow): New.  Interface factored out of
	scev_probably_wraps_p.
	(scev_probably_wraps_p): Factor loop niter related code into
	loop_exits_before_overflow.
	(free_numbers_of_iterations_estimates_loop): Free control ivs.
	* tree-ssa-loop-niter.h (free_loop_control_ivs): New.

	gcc/testsuite/ChangeLog
	PR tree-optimization/48052
	* gcc.dg/tree-ssa/scev-8.c: New.
	* gcc.dg/tree-ssa/scev-9.c: New.
	* gcc.dg/tree-ssa/scev-10.c: New.
	* gcc.dg/vect/pr48052.c: New.

From-SVN: r224020
2015-06-02 10:19:18 +00:00
Eric Botcazou
b47717225b gimplify.c (gimplify_modify_expr): Do not create a DECL_DEBUG_EXPR if the target doesn't belong to the current...
* gimplify.c (gimplify_modify_expr): Do not create a DECL_DEBUG_EXPR if
	the target doesn't belong to the current function.

From-SVN: r224019
2015-06-02 09:47:02 +00:00
Uros Bizjak
6903dd4fb9 vect-outer-simd-1.c: Remove cleanup-tree-dump directive.
* gcc.dg/vect/vect-outer-simd-1.c: Remove cleanup-tree-dump directive.

From-SVN: r224018
2015-06-02 11:26:05 +02:00
Marek Polacek
af9db3a7b0 re PR middle-end/66345 (internal compiler error: Segmentation fault)
PR middle-end/66345
	* gimple-fold.c (gimple_fold_builtin_snprintf): Return false if
	get_maxval_strlen does not produce an INTEGER_CST.

	* gcc.dg/torture/pr66345.c: New test.

From-SVN: r224016
2015-06-02 09:13:29 +00:00
Renlin Li
fc7e20fd7a [libstdc++-v3]Add _GLIBCXX_HAVE_LIMIT_FSIZE to guard 27_io/fpos/14775.cc.
libstdc++-v3/

2015-06-02  Renlin Li  <renlin.li@arm.com>

	* testsuite/27_io/fpos/14775.cc: Add _GLIBCXX_HAVE_LIMIT_FSIZE check.

From-SVN: r224015
2015-06-02 08:54:25 +00:00
Richard Sandiford
8da140e0e4 constraints.md: Use lower-case names in match_code.
gcc/
	* config/arc/constraints.md: Use lower-case names in match_code.
	* config/mmix/constraints.md: Likewise.

From-SVN: r224014
2015-06-02 08:29:42 +00:00
Richard Biener
3fc356dcdc re PR tree-optimization/65961 (ice in vect_is_simple_use_1 with -O3)
2015-06-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65961
	* tree-vect-slp.c (vect_get_and_check_slp_defs): Remove bogus
	check and clarify dump message.
	(vect_build_slp_tree): If all children are built up from scalars
	build up the parent from scalars instead.
	* tree-vect-stmts.c (vect_is_simple_use): Cleanup.

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

From-SVN: r224013
2015-06-02 07:50:19 +00:00
Jan Kratochvil
4c50b2212d re PR other/65366 (gdbhooks.py is incompatible with Python3)
PR other/65366
	* gdbhooks.py: Use int(...) instead of long(...).  Use print(...)
	instead of print ... .

From-SVN: r224012
2015-06-02 07:37:22 +00:00
Alan Modra
ae2bb6daf3 vsx.md (vsx_extract_v4sf): Revert accidental 2014-08-11 change.
* config/rs6000/vsx.md (vsx_extract_v4sf): Revert accidental
	2014-08-11 change.

From-SVN: r224010
2015-06-02 13:08:11 +09:30
Bin Cheng
c70ed622fc re PR testsuite/52563 (FAIL: gcc.dg/tree-ssa/scev-[3,4].c scan-tree-dump-times optimized "&a" 1)
PR tree-optimization/52563
	PR tree-optimization/62173
	* tree-ssa-loop-ivopts.c (struct iv): New field.  Reorder fields.
	(alloc_iv, set_iv): New parameter.
	(determine_biv_step): Delete.
	(find_bivs): Inline original determine_biv_step.  Pass new
	argument to set_iv.
	(idx_find_step): Use no_overflow information for conversion.
	* tree-scalar-evolution.c (analyze_scalar_evolution_in_loop): Let
	resolve_mixers handle folded_casts.
	(instantiate_scev_name): Change bool parameter to bool pointer.
	(instantiate_scev_poly, instantiate_scev_binary): Ditto.
	(instantiate_array_ref, instantiate_scev_not): Ditto.
	(instantiate_scev_3, instantiate_scev_2): Ditto.
	(instantiate_scev_1, instantiate_scev_r): Ditto.
	(instantiate_scev_convert, ): Change parameter.  Pass argument
	to chrec_convert_aggressive.
	(instantiate_scev): Change argument.
	(resolve_mixers): New parameter and set it.
	(scev_const_prop): New argument.
	* tree-scalar-evolution.h (resolve_mixers): New parameter.
	* tree-chrec.c (convert_affine_scev): Call chrec_convert instead
	of chrec_conert_1.
	(chrec_convert): New parameter.  Move definition below.
	(chrec_convert_aggressive): New parameter and set it.  Call
	convert_affine_scev.
	* tree-chrec.h (chrec_convert): New parameter.
	(chrec_convert_aggressive): Ditto.

	gcc/testsuite/ChangeLog
	PR tree-optimization/52563
	PR tree-optimization/62173
	* gcc.dg/tree-ssa/scev-3.c: Remove xfail.
	* gcc.dg/tree-ssa/scev-4.c: Ditto.

From-SVN: r224009
2015-06-02 03:33:35 +00:00
Jason Merrill
81371eff9b re PR c++/65942 ([C++14] cannot use std::function as comparator in algorithms)
PR c++/65942
	* decl2.c (mark_used): Don't always instantiate constexpr fns.
	* constexpr.c (cxx_eval_call_expression): Instantiate them here.

From-SVN: r224008
2015-06-01 22:28:25 -04:00
Jason Merrill
603eaec49a re PR c++/44282 (fastcall is not mangled at all)
PR c++/44282
gcc/cp/
	* mangle.c (attr_strcmp): New.
	(write_CV_qualifiers_for_type): Also write out attributes that
	affect type identity.
	(write_type): Strip all attributes after writing qualifiers.
libiberty/
	* cp-demangle.c (cplus_demangle_type): Handle arguments to vendor
	extended qualifier.

From-SVN: r224007
2015-06-01 22:28:19 -04:00