Marek Polacek [Wed, 3 Jun 2015 16:54:24 +0000 (16:54 +0000)]
re PR sanitizer/66190 (ICE: tree code ‘call_expr’ is not supported in LTO streams with -fsanitize=null)
PR sanitizer/66190
* cp-gimplify.c (struct cp_genericize_data): Add no_sanitize_p.
(cp_genericize_r): Don't instrument static initializers.
(cp_genericize_tree): Initialize wtd.no_sanitize_p.
* g++.dg/ubsan/static-init-1.C: New test.
* g++.dg/ubsan/static-init-2.C: New test.
* g++.dg/ubsan/static-init-3.C: New test.
From-SVN: r224096
Michael Meissner [Wed, 3 Jun 2015 16:38:10 +0000 (16:38 +0000)]
config.gcc (powerpc*-*-*): Add support for a new configure option --with-advance-toolchain=<xxx> which...
2015-06-03 Michael Meissner <meissner@linux.vnet.ibm.com>
* config.gcc (powerpc*-*-*): Add support for a new configure
option --with-advance-toolchain=<xxx> which overrides using the
default header files, libraries and dynamic linker.
* config/rs6000/linux64.h (SUBSUBTARGET_EXTRA_SPECS): Add new
specs to support the configure --with-advance-toolchain=<xxx>
option.
(INCLUDE_EXTRA_SPEC): Likewise.
(LINK_OS_EXTRA_SPEC32): Likewise.
(LINK_OK_EXTRA_SPEC64): Likewise.
(LINK_OS_NEW_DTAGS_SPEC): Likewise.
(DYNAMIC_LINKER_PREFIX): Likewise.
(CPP_OS_DEFAULT_SPEC): Use the new specs for providing advance
toolchain support.
(GLIBC_DYNAMIC_LINKER32): Likewise.
(GLIBC_DYNAMIC_LINKER64): Likewise.
(LINK_OS_LINUX_SPEC32): Likewise.
(LINK_OS_LINUX_SPEC64): Likewise.
* doc/install.texi (--enable-advance-toolchain=<xx>): Document new
configuration option.
From-SVN: r224095
Uros Bizjak [Wed, 3 Jun 2015 15:46:41 +0000 (17:46 +0200)]
re PR target/66275 (__attribute__((sysv_abi)) with x86_64-w64-mingw32-gcc generates incorrect code)
PR target/66275
* config/i386/i386.c (ix86_function_arg_regno): Use ix86_cfun_abi
to determine current function ABI.
(ix86_function_value_regno_p): Ditto.
testsuite/ChangeLog:
PR target/66275
* gcc.target/i386/pr66275.c: New test.
From-SVN: r224094
Prathamesh Kulkarni [Wed, 3 Jun 2015 15:10:44 +0000 (15:10 +0000)]
c-decl.c (warn_cxx_compat_finish_struct): New parameters code, record_loc.
2015-06-03 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
c/
* c-decl.c (warn_cxx_compat_finish_struct): New parameters code, record_loc.
Warn for empty struct.
(finish_struct): Pass TREE_CODE(t) and loc to warn_cxx_compat_finish_struct.
testsuite/
* gcc.dg/Wcxx-compat-22.c: New testcase.
* c-c++-common/Wsizeof-pointer-memaccess1.c: Pass -Wno-c++-compat.
* c-c++-common/Wsizeof-pointer-memaccess2.c: Likewise.
* c-c++-common/pr58346-1.c: Likewise.
* c-c++-common/transparent-union-1.c: Likewise.
From-SVN: r224083
Martin Liska [Wed, 3 Jun 2015 14:49:13 +0000 (16:49 +0200)]
Fix GNU coding style in memory statistics.
* alloc-pool.h (struct pool_usage): Correct GNU coding style.
* bitmap.h (struct bitmap_usage): Likewise.
* ggc-common.c (struct ggc_usage): Likewise.
* mem-stats.h (struct mem_location): Likewise.
(struct mem_usage): Likewise.
* vec.c (struct vec_usage): Likewise.
From-SVN: r224082
Jeff Law [Wed, 3 Jun 2015 13:39:45 +0000 (07:39 -0600)]
Fix FT32 ChangeLogs
From-SVN: r224080
Benigno B. Junior [Wed, 3 Jun 2015 13:29:51 +0000 (13:29 +0000)]
netbsd-elf.h (NETBSD_LINK_SPEC_ELF): Turn -symbolic into -Bsymbolic.
2015-06-03 Benigno B. Junior <bbj@gentoo.org>
* config/netbsd-elf.h (NETBSD_LINK_SPEC_ELF): Turn -symbolic into
-Bsymbolic.
From-SVN: r224079
Andres Tiraboschi [Wed, 3 Jun 2015 13:27:11 +0000 (13:27 +0000)]
plugins.texi (enum plugin_event): New event.
* doc/plugins.texi (enum plugin_event): New event.
* plugin.c (register_callback): Handle PLUGIN_START_PARSE_FUNCTION
and PLUGIN_FINISH_FUNCTION.
* plugin.def (PLUGIN_START_PARSE_FUNCTION): Add plugin event
(PLUGIN_FINISH_PARSE_FUNCTION): Likewise.
cp/
* decl.c (start_function): Call plugin before parsing.
(finish_function): Call plugin after parsing.
c/
* c-decl.c (start_function): Call plugin before parsing.
(finish_function): Call plugin after parsing.
testsuite/
* g++.dg/plugin/plugin.exp: Add def-plugin-test.C.
* g++.dg/plugin/def_plugin.c: New file.
* g++.dg/plugin/def-plugin-test.C: New file.
From-SVN: r224078
Richard Biener [Wed, 3 Jun 2015 13:10:13 +0000 (13:10 +0000)]
tree-vect-data-refs.c (vect_analyze_group_access): Properly compute GROUP_GAP for the first element.
2015-06-03 Richard Biener <rguenther@suse.de>
* tree-vect-data-refs.c (vect_analyze_group_access): Properly
compute GROUP_GAP for the first element.
* tree-vect-slp.c (vect_build_slp_tree_1): Remove restriction
on in-group gaps.
* gcc.dg/vect/bb-slp-36.c: New testcase.
From-SVN: r224077
Nick Clifton [Wed, 3 Jun 2015 12:59:38 +0000 (12:59 +0000)]
rl78-real.md: Add peepholes to avoid a register copy when calling a function.
* config/rl78/rl78-real.md: Add peepholes to avoid a register
copy when calling a function.
* config/rl78/rl78.c (need_to_save): Do not push the frame
pointer in an interrupt handler prologue if it is never used.
From-SVN: r224076
Kyrylo Tkachov [Wed, 3 Jun 2015 12:47:36 +0000 (12:47 +0000)]
[ifcvt][obvious] Fix typo in comment
* ifcvt (end_ifcvt_sequence): Fix typo in comment above.
From-SVN: r224075
Ilya Enkovich [Wed, 3 Jun 2015 11:31:08 +0000 (11:31 +0000)]
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
Martin Liska [Wed, 3 Jun 2015 09:36:08 +0000 (11:36 +0200)]
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
Martin Liska [Wed, 3 Jun 2015 09:33:32 +0000 (11:33 +0200)]
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
Richard Sandiford [Wed, 3 Jun 2015 09:29:42 +0000 (09:29 +0000)]
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
Eric Botcazou [Wed, 3 Jun 2015 09:28:07 +0000 (09:28 +0000)]
* gcc-interface/utils.c (copy_type): Also set TYPE_CANONICAL.
From-SVN: r224068
Eric Botcazou [Wed, 3 Jun 2015 09:22:09 +0000 (09:22 +0000)]
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
Andrew Bennett [Wed, 3 Jun 2015 09:15:25 +0000 (09:15 +0000)]
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
Ilya Enkovich [Wed, 3 Jun 2015 08:29:28 +0000 (08:29 +0000)]
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
Marek Polacek [Wed, 3 Jun 2015 08:24:50 +0000 (08:24 +0000)]
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
Richard Biener [Wed, 3 Jun 2015 08:02:10 +0000 (08:02 +0000)]
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
Richard Biener [Wed, 3 Jun 2015 07:57:13 +0000 (07:57 +0000)]
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
Bin Cheng [Wed, 3 Jun 2015 07:33:50 +0000 (07:33 +0000)]
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
Richard Sandiford [Wed, 3 Jun 2015 06:28:11 +0000 (06:28 +0000)]
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
Bin Cheng [Wed, 3 Jun 2015 06:06:35 +0000 (06:06 +0000)]
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
Jim Wilson [Wed, 3 Jun 2015 00:46:19 +0000 (00:46 +0000)]
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
GCC Administrator [Wed, 3 Jun 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224053
Kugan Vivekanandarajah [Tue, 2 Jun 2015 22:53:15 +0000 (22:53 +0000)]
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
Steven G. Kargl [Tue, 2 Jun 2015 22:11:10 +0000 (22:11 +0000)]
Add the PR number that I forgot in m y previous commit.
From-SVN: r224044
Steven G. Kargl [Tue, 2 Jun 2015 22:08:14 +0000 (22:08 +0000)]
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
Michael Meissner [Tue, 2 Jun 2015 21:58:24 +0000 (21:58 +0000)]
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
David Malcolm [Tue, 2 Jun 2015 18:45:50 +0000 (18:45 +0000)]
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
David Malcolm [Tue, 2 Jun 2015 18:39:49 +0000 (18:39 +0000)]
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
Jason Merrill [Tue, 2 Jun 2015 17:50:23 +0000 (13:50 -0400)]
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
Jason Merrill [Tue, 2 Jun 2015 17:50:18 +0000 (13:50 -0400)]
* g++.dg/warn/Wsystem-headers1.C: Use extern "C".
From-SVN: r224038
Patrick Palka [Tue, 2 Jun 2015 17:50:13 +0000 (00:50 +0700)]
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
Steve Ellcey [Tue, 2 Jun 2015 17:12:16 +0000 (17:12 +0000)]
test_installed (--target=): New option.
2015-06-02 Steve Ellcey <sellcey@imgtec.com>
* test_installed (--target=): New option.
From-SVN: r224034
Prathamesh Kulkarni [Tue, 2 Jun 2015 16:42:27 +0000 (16:42 +0000)]
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
Szabolcs Nagy [Tue, 2 Jun 2015 16:39:19 +0000 (16:39 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2015-06-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r224032
Szabolcs Nagy [Tue, 2 Jun 2015 16:21:18 +0000 (16:21 +0000)]
[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
Martin Liska [Tue, 2 Jun 2015 14:10:17 +0000 (16:10 +0200)]
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
Richard Biener [Tue, 2 Jun 2015 12:33:02 +0000 (12:33 +0000)]
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
Thomas Schwinge [Tue, 2 Jun 2015 11:48:56 +0000 (13:48 +0200)]
[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
Uros Bizjak [Tue, 2 Jun 2015 11:23:48 +0000 (13:23 +0200)]
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
Jonathan Wakely [Tue, 2 Jun 2015 11:17:43 +0000 (12:17 +0100)]
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
Jonathan Wakely [Tue, 2 Jun 2015 11:07:30 +0000 (12:07 +0100)]
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
Paolo Carlini [Tue, 2 Jun 2015 10:28:14 +0000 (10:28 +0000)]
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
Uros Bizjak [Tue, 2 Jun 2015 10:27:31 +0000 (12:27 +0200)]
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
Bin Cheng [Tue, 2 Jun 2015 10:19:18 +0000 (10:19 +0000)]
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
Eric Botcazou [Tue, 2 Jun 2015 09:47:02 +0000 (09:47 +0000)]
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
Uros Bizjak [Tue, 2 Jun 2015 09:26:05 +0000 (11:26 +0200)]
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
Marek Polacek [Tue, 2 Jun 2015 09:13:29 +0000 (09:13 +0000)]
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
Renlin Li [Tue, 2 Jun 2015 08:54:25 +0000 (08:54 +0000)]
[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
Richard Sandiford [Tue, 2 Jun 2015 08:29:42 +0000 (08:29 +0000)]
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
Richard Biener [Tue, 2 Jun 2015 07:50:19 +0000 (07:50 +0000)]
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
Jan Kratochvil [Tue, 2 Jun 2015 07:37:22 +0000 (07:37 +0000)]
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
Alan Modra [Tue, 2 Jun 2015 03:38:11 +0000 (13:08 +0930)]
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
Bin Cheng [Tue, 2 Jun 2015 03:33:35 +0000 (03:33 +0000)]
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
Jason Merrill [Tue, 2 Jun 2015 02:28:25 +0000 (22:28 -0400)]
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
Jason Merrill [Tue, 2 Jun 2015 02:28:19 +0000 (22:28 -0400)]
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
GCC Administrator [Tue, 2 Jun 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224006
Eric Botcazou [Mon, 1 Jun 2015 20:49:18 +0000 (20:49 +0000)]
gimplify.c (gimplify_modify_expr_rhs): Use simple test on the size.
* gimplify.c (gimplify_modify_expr_rhs): Use simple test on the size.
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Do not remove
the LHS of a no-return call if its type has variable size.
* tree-cfgcleanup.c (fixup_noreturn_call): Likewise.
* tree-cfg.c (verify_gimple_call): Accept these no-return calls.
From-SVN: r223997
Andreas Tobler [Mon, 1 Jun 2015 19:46:17 +0000 (21:46 +0200)]
read-rtl.c: Adapt to use HAVE_DECL_ATOLL instead of HAVE_ATOLL.
2015-06-01 Andreas Tobler <andreast@gcc.gnu.org>
* read-rtl.c: Adapt to use HAVE_DECL_ATOLL instead of HAVE_ATOLL.
* config.in: Regenerate.
From-SVN: r223996
Yuri Rumyantsev [Mon, 1 Jun 2015 17:15:31 +0000 (17:15 +0000)]
tree-vect-data-refs.c (vect_analyze_data_ref_access): Allow consecutive accesses within outer-loop with force_vectorize for...
gcc/
* tree-vect-data-refs.c (vect_analyze_data_ref_access): Allow
consecutive accesses within outer-loop with force_vectorize
for references with zero step in inner-loop.
gcc/testsuite/
* gcc.dg/vect/vect-outer-simd-1.c: New test.
From-SVN: r223993
Vidya Praveen [Mon, 1 Jun 2015 16:42:30 +0000 (17:42 +0100)]
Makefile.in: Pick up gcov-dump dependencies from gcc/ directory rather than from gcc/build...
2015-06-01 Vidya Praveen <vidyapraveen@arm.com>
* Makefile.in: Pick up gcov-dump dependencies from gcc/ directory
rather than from gcc/build directory.
From-SVN: r223992
Martin Liska [Mon, 1 Jun 2015 15:38:10 +0000 (15:38 +0000)]
Fix Changelog entry.
From-SVN: r223988
Matthew Wahab [Mon, 1 Jun 2015 15:24:37 +0000 (15:24 +0000)]
re PR target/65697 (__atomic memory barriers not strong enough for __sync builtins)
PR target/65697
* gcc.target/aarch64/sync-comp-swap.c: New.
* gcc.target/aarch64/sync-comp-swap.x: New.
* gcc.target/aarch64/sync-op-acquire.c: New.
* gcc.target/aarch64/sync-op-acquire.x: New.
* gcc.target/aarch64/sync-op-full.c: New.
* gcc.target/aarch64/sync-op-full.x: New.
* gcc.target/aarch64/sync-op-release.c: New.
* gcc.target/aarch64/sync-op-release.x: New.
From-SVN: r223986
Matthew Wahab [Mon, 1 Jun 2015 15:21:02 +0000 (15:21 +0000)]
re PR target/65697 (__atomic memory barriers not strong enough for __sync builtins)
PR target/65697
* config/aarch64/aarch64.c (aarch64_split_compare_and_swap): Check
for __sync memory models, emit initial loads and final barriers as
appropriate.
From-SVN: r223984
Matthew Wahab [Mon, 1 Jun 2015 15:18:19 +0000 (15:18 +0000)]
re PR target/65697 (__atomic memory barriers not strong enough for __sync builtins)
PR target/65697
* config/aarch64/aarch64.c (aarch64_emit_post_barrier):New.
(aarch64_split_atomic_op): Check for __sync memory models, emit
appropriate initial loads and final barriers.
From-SVN: r223983
Alex Velenko [Mon, 1 Jun 2015 15:04:54 +0000 (15:04 +0000)]
thumb-ltu.c (foo): Predefined.
2015-06-01 Alex Velenko <Alex.Velenko@arm.com>
* gcc.target/arm/thumb-ltu.c (foo): Predefined.
(bar): Predefined.
From-SVN: r223982
Vidya Praveen [Mon, 1 Jun 2015 14:09:19 +0000 (14:09 +0000)]
Fix Makefile dependencies.
* Makefile.in: Fix gcov dependencies that should
not point to a build folder.
From-SVN: r223981
Richard Biener [Mon, 1 Jun 2015 13:58:50 +0000 (13:58 +0000)]
re PR tree-optimization/66349 (ICE on valid code at -O1, -O2 and -O3 on x86_64-linux-gnu in dfs_enumerate_from, at cfganal.c:1195)
2015-06-01 Richard Biener <rguenther@suse.de>
PR tree-optimization/66349
PR tree-optimization/66352
PR tree-optimization/66357
* gcc.dg/torture/pr66357.c: New testcase.
* gcc.dg/torture/pr66349.c: Likewise.
* gfortran.fortran-torture/compile/pr66352.f90: Likewise.
From-SVN: r223980
Richard Biener [Mon, 1 Jun 2015 13:55:12 +0000 (13:55 +0000)]
revert: re PR middle-end/66314 (ice in verify_loop_structure)
2015-06-01 Richard Biener <rguenther@suse.de>
Revert
2015-05-29 Richard Biener <rguenther@suse.de>
PR tree-optimization/66314
* tree-ssa-threadupdate.c (create_block_for_threading): Add
parameter that says which loop the new block belongs to.
(ssa_create_duplicates): Blocks duplicated for the threaded
path belong to the loop of the thread destination.
* gcc.dg/asan/pr66314.c: New testcase.
From-SVN: r223979
Martin Liska [Mon, 1 Jun 2015 13:53:10 +0000 (15:53 +0200)]
Fix pool_allocator fallback.
* sched-deps.c: Include pool-alloc.h before
cselib.h header file is included.
From-SVN: r223978
Richard Biener [Mon, 1 Jun 2015 13:51:20 +0000 (13:51 +0000)]
tree-ssa-structalias.c (ipa_pta_execute): Handle address-taken functions.
2015-06-01 Richard Biener <rguenther@suse.de>
* tree-ssa-structalias.c (ipa_pta_execute): Handle address-taken
functions.
* gcc.dg/ipa/ipa-pta-1.c: Adjust.
From-SVN: r223977
Joseph Myers [Mon, 1 Jun 2015 13:43:13 +0000 (14:43 +0100)]
* sv.po: Update.
From-SVN: r223975
Martin Liska [Mon, 1 Jun 2015 13:01:12 +0000 (15:01 +0200)]
Small pool-allocator fallback.
* alloc-pool.h: Add ATTRIBUTE_UNUSED for
a function local variabled.
From-SVN: r223974
Martin Liska [Mon, 1 Jun 2015 12:54:05 +0000 (14:54 +0200)]
Remove old pool allocator.
* alloc-pool.c (create_alloc_pool): Remove.
(empty_alloc_pool): Likewise.
(free_alloc_pool): Likewise.
(free_alloc_pool_if_empty): Likewise.
(pool_alloc): Likewise.
(pool_free): Likewise.
* alloc-pool.h: Remove old declarations.
From-SVN: r223973
Martin Liska [Mon, 1 Jun 2015 12:51:12 +0000 (14:51 +0200)]
Change use to type-based pool allocator in ira-build.c.
* ira-build.c (initiate_allocnos): Use new type-based pool allocator.
(ira_create_object): Likewise.
(ira_create_allocno): Likewise.
(ira_create_live_range): Likewise.
(copy_live_range): Likewise.
(ira_finish_live_range): Likewise.
(ira_free_allocno_costs): Likewise.
(finish_allocno): Likewise.
(finish_allocnos): Likewise.
(initiate_prefs): Likewise.
(ira_create_pref): Likewise.
(finish_pref): Likewise.
(finish_prefs): Likewise.
(initiate_copies): Likewise.
(ira_create_copy): Likewise.
(finish_copy): Likewise.
(finish_copies): Likewise.
(finish_prefs): Likewise.
From-SVN: r223972
Martin Liska [Mon, 1 Jun 2015 12:50:36 +0000 (14:50 +0200)]
Change use to type-based pool allocator in ipa-prop.c
* ipa-cp.c (ipcp_value::add_source): Use new type-based pool allocator.
(allocate_and_init_ipcp_value): Likewise.
(ipcp_lattice::add_value): Likewise.
(merge_agg_lats_step): Likewise.
(ipcp_driver): Likewise.
* ipa-prop.c (ipa_free_all_structures_after_ipa_cp): Likewise.
(ipa_free_all_structures_after_iinln): Likewise.
* ipa-prop.h: Likewise.
From-SVN: r223971
Martin Liska [Mon, 1 Jun 2015 12:49:51 +0000 (14:49 +0200)]
Change use to type-based pool allocator in
* ipa-inline-analysis.c (edge_set_predicate): Use new type-based pool allocator.
(set_hint_predicate): Likewise.
(inline_summary_alloc): Likewise.
(reset_inline_edge_summary): Likewise.
(reset_inline_summary): Likewise.
(set_cond_stmt_execution_predicate): Likewise.
(set_switch_stmt_execution_predicate): Likewise.
(compute_bb_predicates): Likewise.
(estimate_function_body_sizes): Likewise.
(inline_free_summary): Likewise.
From-SVN: r223970
Martin Liska [Mon, 1 Jun 2015 12:49:17 +0000 (14:49 +0200)]
Change use to type-based pool allocator in ipa-prop.c.
* ipa-prop.c (ipa_set_jf_constant): Use new type-based pool allocator.
(ipa_edge_duplication_hook): Likewise.
(ipa_free_all_structures_after_ipa_cp): Likewise.
(ipa_free_all_structures_after_iinln): Likewise.
From-SVN: r223969
Martin Liska [Mon, 1 Jun 2015 12:48:40 +0000 (14:48 +0200)]
Change use to type-based pool allocator in
* ipa-profile.c (account_time_size): Use new type-based pool allocator.
(ipa_profile_generate_summary): Likewise.
(ipa_profile_read_summary): Likewise.
(ipa_profile): Likewise.
From-SVN: r223968
Martin Liska [Mon, 1 Jun 2015 12:48:06 +0000 (14:48 +0200)]
Change use to type-based pool allocator in
* tree-ssa-structalias.c (new_var_info): Use new type-based pool allocator.
(new_constraint): Likewise.
(init_alias_vars): Likewise.
(delete_points_to_sets): Likewise.
From-SVN: r223967
Martin Liska [Mon, 1 Jun 2015 12:47:26 +0000 (14:47 +0200)]
Change use to type-based pool allocator in
* tree-ssa-strlen.c (new_strinfo): Use new type-based pool allocator.
(free_strinfo): Likewise.
(pass_strlen::execute): Likewise.
From-SVN: r223966
Martin Liska [Mon, 1 Jun 2015 12:46:55 +0000 (14:46 +0200)]
Change use to type-based pool allocator in
* tree-ssa-sccvn.c (vn_reference_insert): Use new type-based pool allocator.
(vn_reference_insert_pieces): Likewise.
(vn_phi_insert): Likewise.
(visit_reference_op_call): Likewise.
(copy_phi): Likewise.
(copy_reference): Likewise.
(process_scc): Likewise.
(allocate_vn_table): Likewise.
(free_vn_table): Likewise.
From-SVN: r223965
Martin Liska [Mon, 1 Jun 2015 12:46:24 +0000 (14:46 +0200)]
Change use to type-based pool allocator in
* tree-ssa-reassoc.c (add_to_ops_vec): Use new type-based pool allocator.
(add_repeat_to_ops_vec): Likewise.
(get_ops): Likewise.
(maybe_optimize_range_tests): Likewise.
(init_reassoc): Likewise.
(fini_reassoc): Likewise.
From-SVN: r223964
Martin Liska [Mon, 1 Jun 2015 12:45:55 +0000 (14:45 +0200)]
Change use to type-based pool allocator in
* tree-ssa-pre.c (get_or_alloc_expr_for_name): Use new type-based pool allocator.
(bitmap_set_new): Likewise.
(get_or_alloc_expr_for_constant): Likewise.
(get_or_alloc_expr_for): Likewise.
(phi_translate_1): Likewise.
(compute_avail): Likewise.
(init_pre): Likewise.
(fini_pre): Likewise.
From-SVN: r223963
Martin Liska [Mon, 1 Jun 2015 12:45:14 +0000 (14:45 +0200)]
Change use to type-based pool allocator in
* sched-deps.c (create_dep_node): Use new type-based pool allocator.
(delete_dep_node): Likewise.
(create_deps_list): Likewise.
(free_deps_list): Likewise.
(sched_deps_init): Likewise.
(sched_deps_finish): Likewise.
From-SVN: r223962
Martin Liska [Mon, 1 Jun 2015 12:44:44 +0000 (14:44 +0200)]
Change use to type-based pool allocator in regcprop.c.
* regcprop.c (free_debug_insn_changes): Use new type-based pool allocator.
(replace_oldest_value_reg): Likewise.
(pass_cprop_hardreg::execute): Likewise.
From-SVN: r223961
Martin Liska [Mon, 1 Jun 2015 12:44:17 +0000 (14:44 +0200)]
Change use to type-based pool allocator in ira-build.c.
* ira-build.c (initiate_cost_vectors): Use new type-based pool allocator.
(ira_allocate_cost_vector): Likewise.
(ira_free_cost_vector): Likewise.
(finish_cost_vectors): Likewise.
From-SVN: r223960
Martin Liska [Mon, 1 Jun 2015 12:43:47 +0000 (14:43 +0200)]
Change use to type-based pool allocator in
* sel-sched-ir.c (alloc_sched_pools): Use new type-based pool allocator.
(free_sched_pools): Likewise.
* sel-sched-ir.h (_list_alloc): Likewise.
(_list_remove): Likewise.
From-SVN: r223959
Martin Liska [Mon, 1 Jun 2015 12:43:16 +0000 (14:43 +0200)]
Change use to type-based pool allocator in stmt.c.
* stmt.c (add_case_node): Use new type-based pool allocator.
(expand_case): Likewise.
(expand_sjlj_dispatch_table): Likewise.
From-SVN: r223958
Martin Liska [Mon, 1 Jun 2015 12:42:45 +0000 (14:42 +0200)]
Change use to type-based pool allocator in
* tree-ssa-math-opts.c (occ_new): Use new type-based pool allocator.
(free_bb): Likewise.
(pass_cse_reciprocals::execute): Likewise.
From-SVN: r223957
Martin Liska [Mon, 1 Jun 2015 12:42:16 +0000 (14:42 +0200)]
Change use to type-based pool allocator in tree-sra.c.
* tree-sra.c (sra_initialize): Use new type-based pool allocator.
(sra_deinitialize) Likewise.
(create_access_1) Likewise.
(build_accesses_from_assign) Likewise.
(create_artificial_child_access) Likewise.
From-SVN: r223956
Martin Liska [Mon, 1 Jun 2015 12:41:48 +0000 (14:41 +0200)]
Change use to type-based pool allocator in dse.c.
* dse.c (get_group_info):Use new type-based pool allocator.
(dse_step0) Likewise.
(free_store_info) Likewise.
(delete_dead_store_insn) Likewise.
(free_read_records) Likewise.
(record_store) Likewise.
(replace_read) Likewise.
(check_mem_read_rtx) Likewise.
(scan_insn) Likewise.
(dse_step1) Likewise.
(dse_step7) Likewise.
From-SVN: r223955
Martin Liska [Mon, 1 Jun 2015 12:41:18 +0000 (14:41 +0200)]
Change use to type-based pool allocator in df-scan.c.
* df-scan.c (struct df_scan_problem_data):Use new type-based pool allocator.
(df_scan_free_internal) Likewise.
(df_scan_alloc) Likewise.
(df_grow_reg_info) Likewise.
(df_free_ref) Likewise.
(df_insn_create_insn_record) Likewise.
(df_mw_hardreg_chain_delete) Likewise.
(df_insn_info_delete) Likewise.
(df_free_collection_rec) Likewise.
(df_mw_hardreg_chain_delete_eq_uses) Likewise.
(df_sort_and_compress_mws) Likewise.
(df_ref_create_structure) Likewise.
(df_ref_record) Likewise.
From-SVN: r223954
Martin Liska [Mon, 1 Jun 2015 12:40:47 +0000 (14:40 +0200)]
Change use to type-based pool allocator in
* df-problems.c (df_chain_create):Use new type-based pool allocator.
(df_chain_unlink_1) Likewise.
(df_chain_unlink) Likewise.
(df_chain_remove_problem) Likewise.
(df_chain_alloc) Likewise.
(df_chain_free) Likewise.
* df.h (struct dataflow) Likewise.
From-SVN: r223953
Martin Liska [Mon, 1 Jun 2015 12:39:32 +0000 (14:39 +0200)]
Change use to type-based pool allocator in cselib.c.
* cselib.c (new_elt_list):Use new type-based pool allocator.
(new_elt_loc_list) Likewise.
(unchain_one_elt_list) Likewise.
(unchain_one_elt_loc_list) Likewise.
(unchain_one_value) Likewise.
(new_cselib_val) Likewise.
(cselib_init) Likewise.
(cselib_finish) Likewise.
From-SVN: r223952
Martin Liska [Mon, 1 Jun 2015 12:38:48 +0000 (14:38 +0200)]
Change use to type-based pool allocator in sh.c.
* config/sh/sh.c (add_constant):Use new type-based pool allocator.
(sh_reorg) Likewise.
From-SVN: r223951