gcc.git
8 years ago* g++.dg/ubsan/pr70135.C: Don't rely on C++17 static_assert.
Jason Merrill [Thu, 10 Mar 2016 20:19:47 +0000 (15:19 -0500)]
* g++.dg/ubsan/pr70135.C: Don't rely on C++17 static_assert.

From-SVN: r234120

8 years agore PR target/7044 (vax casesi breakage)
Nick Clifton [Thu, 10 Mar 2016 17:24:16 +0000 (17:24 +0000)]
re PR target/7044 (vax casesi breakage)

PR target/7044
* config/aarch64/aarch64.c
(aarch64_override_options_after_change_1): When forcing
flag_omit_frame_pointer to be true, use a special value that can
be detected if this function is called again, thus preventing
flag_omit_leaf_frame_pointer from being forced to be false.

* gcc.target/aarch64/pr70044.c: New test.

From-SVN: r234118

8 years agore PR c++/70001 (Infinity compilation time)
Patrick Palka [Thu, 10 Mar 2016 17:23:06 +0000 (17:23 +0000)]
re PR c++/70001 (Infinity compilation time)

PR c++/70001
* constexpr.c (cxx_eval_vec_init_1): For pre_init case, reuse
return value from cxx_eval_constant_expression from earlier
elements if it is valid constant initializer requiring no
relocations.

* g++.dg/cpp0x/constexpr-70001-1.C: New test.
* g++.dg/cpp0x/constexpr-70001-2.C: New test.
* g++.dg/cpp0x/constexpr-70001-3.C: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r234117

8 years ago[AArch64] Fix thinko in handling of -momit-leaf-frame-pointer option
Kyrylo Tkachov [Thu, 10 Mar 2016 16:24:26 +0000 (16:24 +0000)]
[AArch64] Fix thinko in handling of -momit-leaf-frame-pointer option

* common/config/aarch64/aarch64-common.c (aarch64_handle_option):
Set x_flag_omit_leaf_frame_pointer when handling
-momit-leaf-frame-pointer.

From-SVN: r234116

8 years agore PR ipa/69589 (ICE in initialize_node_lattices, at ipa-cp.c:971)
Jan Hubicka [Thu, 10 Mar 2016 16:11:14 +0000 (17:11 +0100)]
re PR ipa/69589 (ICE in initialize_node_lattices, at ipa-cp.c:971)

PR lto/69589
* cgraph.c (cgraph_node::dump): Dump split_part and indirect_call_target.
* cgraph.h (cgraph_node): Add indirect_call_target flag.
* ipa.c (has_addr_references_p): Cleanup.
(is_indirect_call_target_p): New.
(walk_polymorphic_call_targets): Do not mark virtuals that may be
called indirectly as local.
(symbol_table::remove_unreachable_nodes): Compute indirect_call_target.

* g++.dg/lto/pr69589_0.C: New testcase
* g++.dg/lto/pr69589_1.C: New testcase

From-SVN: r234115

8 years agore PR lto/69630 (LTO ICE in types_same_for_odr at ipa-devirt.c:402)
Jan Hubicka [Thu, 10 Mar 2016 16:05:59 +0000 (17:05 +0100)]
re PR lto/69630 (LTO ICE in types_same_for_odr at ipa-devirt.c:402)

PR ipa/69630
* ipa-devirt.c (possible_polymorphic_call_targets): Do not ICE
on cxa_pure_virtual.

From-SVN: r234114

8 years agore PR ipa/69589 (ICE in initialize_node_lattices, at ipa-cp.c:971)
Jan Hubicka [Thu, 10 Mar 2016 16:02:55 +0000 (17:02 +0100)]
re PR ipa/69589 (ICE in initialize_node_lattices, at ipa-cp.c:971)

PR lto/69589
* tree.c (free_lang_data_in_decl): Clear visibility of TYPE_DECL.

From-SVN: r234113

8 years agore PR ipa/69589 (ICE in initialize_node_lattices, at ipa-cp.c:971)
Jan Hubicka [Thu, 10 Mar 2016 16:02:00 +0000 (17:02 +0100)]
re PR ipa/69589 (ICE in initialize_node_lattices, at ipa-cp.c:971)

PR lto/69589
* tree.c (need_assembler_name_p): Only record main variant type names.

From-SVN: r234112

8 years agore PR c++/70153 (ICE on valid C++ code)
Marek Polacek [Thu, 10 Mar 2016 15:13:01 +0000 (15:13 +0000)]
re PR c++/70153 (ICE on valid C++ code)

PR c++/70153
* cp-gimplify.c (cp_fold): Handle UNARY_PLUS_EXPR.

* g++.dg/delayedfold/unary-plus1.C: New test.

From-SVN: r234111

8 years agopr45701-1.c: Escape brackets.
Andre Vieira [Thu, 10 Mar 2016 13:43:29 +0000 (13:43 +0000)]
pr45701-1.c: Escape brackets.

2016-03-10 Andre Vieira <andre.simoesdiasvieira@arm.com>

    gcc/testsuite/
    * gcc.target/arm/pr45701-1.c: Escape brackets.
    * gcc.target/arm/pr45701-2.c: Likewise.

From-SVN: r234109

8 years agore PR target/70113 ([AArch64] -mpc-relative-literal-loads conflicts with fix-cortex...
Christophe Lyon [Thu, 10 Mar 2016 13:29:48 +0000 (13:29 +0000)]
re PR target/70113 ([AArch64] -mpc-relative-literal-loads conflicts with fix-cortex-a53-843419)

2016-03-10  Christophe Lyon  <christophe.lyon@linaro.org>

PR target/70113.
* config/aarch64/aarch64.h (TARGET_FIX_ERR_A53_843419_DEFAULT):
Always define to 0 or 1.
(TARGET_FIX_ERR_A53_843419): New macro.
* config/aarch64/aarch64-elf-raw.h
(TARGET_FIX_ERR_A53_843419_DEFAULT): Update for above changes.
* config/aarch64/aarch64-linux.h: Likewise.
* config/aarch64/aarch64.c
(aarch64_override_options_after_change_1): Do not default
aarch64_nopcrelative_literal_loads to true if Cortex-A53 erratum
843419 is on.
(aarch64_attributes): Handle fix-cortex-a53-843419.
(aarch64_can_inline_p): Likewise.
* config/aarch64/aarch64.opt (aarch64_fix_a53_err843419): Save.

From-SVN: r234108

8 years agoAdd -funconstrained-commons to work around PR/69368 (and others) in SPEC2006
Alan Lawrence [Thu, 10 Mar 2016 12:19:45 +0000 (12:19 +0000)]
Add -funconstrained-commons to work around PR/69368 (and others) in SPEC2006

gcc/:

        * common.opt (funconstrained-commons, flag_unconstrained_commons): New.
        * tree.c (array_at_struct_end_p): Do not limit to size of decl for
        DECL_COMMONS if flag_unconstrained_commons is set.
        * tree-dfa.c (get_ref_base_and_extent): Likewise.
        * doc/invoke.texi (Optimize Options): Add -funconstrained-commons.
        (funconstrained-commons): Document.

gcc/testsuite:

* gfortran.dg/unconstrained_commons.f: New.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r234106

8 years agot-aarch64 (OPTIONS_H_EXTRA): Add aarch64-fusion-pairs.def and aarch64-tuning-flags.def
Christophe Lyon [Thu, 10 Mar 2016 12:03:25 +0000 (12:03 +0000)]
t-aarch64 (OPTIONS_H_EXTRA): Add aarch64-fusion-pairs.def and aarch64-tuning-flags.def

2016-03-10  Christophe Lyon  <christophe.lyon@linaro.org>

* config/aarch64/t-aarch64 (OPTIONS_H_EXTRA): Add
aarch64-fusion-pairs.def and aarch64-tuning-flags.def

From-SVN: r234105

8 years agotree-vect-stmts.c (vectorizable_mask_load_store): Check mask has a proper number...
Ilya Enkovich [Thu, 10 Mar 2016 10:58:57 +0000 (10:58 +0000)]
tree-vect-stmts.c (vectorizable_mask_load_store): Check mask has a proper number of elements.

gcc/

* tree-vect-stmts.c (vectorizable_mask_load_store): Check mask
has a proper number of elements.

From-SVN: r234104

8 years agoPR69195, Reload confused by invalid reg_equiv
Alan Modra [Thu, 10 Mar 2016 10:47:13 +0000 (21:17 +1030)]
PR69195, Reload confused by invalid reg_equiv

Optimizing indirect jumps to direct jumps, and deleting dead insns can
lead to changes in register lifetimes, which in turn can result in bad
reg_equiv info being passed to reload.  So do these tasks before
calculating reg_equiv info.

gcc/
PR rtl-optimization/69195
PR rtl-optimization/47992
* ira.c (recorded_label_ref): Delete.
(update_equiv_regs): Return void.
(indirect_jump_optimize): New function.
(ira): Call indirect_jump_optimize and delete_trivially_dead_insns
before regstat_compute_ri.  Don't rebuild_jump_labels here.
Delete update_regstat.
gcc/testsuite/
* gcc.dg/pr69195.c: New.
* gcc.dg/pr69238.c: New.

From-SVN: r234101

8 years agoXfail pr46032.c scan if alignment requirements not met
Tom de Vries [Thu, 10 Mar 2016 08:37:01 +0000 (08:37 +0000)]
Xfail pr46032.c scan if alignment requirements not met

2016-03-10  Tom de Vries  <tom@codesourcery.com>

PR testsuite/68915
* gcc.dg/vect/pr46032.c: Xfail scan if alignment requirements not met.

From-SVN: r234100

8 years agore PR tree-optimization/70128 (Linux kernel div patching optimized away)
Richard Biener [Thu, 10 Mar 2016 08:06:03 +0000 (08:06 +0000)]
re PR tree-optimization/70128 (Linux kernel div patching optimized away)

2016-03-10  Richard Biener  <rguenther@suse.de>

PR tree-optimization/70128
* tree-ssa-structalias.c (set_uids_in_ptset): Set
vars_contains_nonlocal for any FUNCTION_DECL or LABEL_DECL.

* gcc.dg/tree-ssa/alias-34.c: New testcase.
* gcc.dg/tree-ssa/alias-35.c: Likewise.

From-SVN: r234099

8 years agoDaily bump.
GCC Administrator [Thu, 10 Mar 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r234097

8 years agore PR tree-optimization/70152 (gcc ICE at -O3 and above on valid code on x86_64-linux...
Jakub Jelinek [Wed, 9 Mar 2016 20:12:19 +0000 (21:12 +0100)]
re PR tree-optimization/70152 (gcc ICE at -O3 and above on valid code on x86_64-linux-gnu in "replace_uses_by")

PR tree-optimization/70152
* tree-sra.c (replace_removed_params_ssa_names): Copy over
SSA_NAME_OCCURS_IN_ABNORMAL_PHI from old_name to new_name.

* gcc.dg/pr70152.c: New test.

From-SVN: r234092

8 years agore PR target/70086 (ICE: in extract_constrain_insn_cached, at recog.c:2202 (insn...
Jakub Jelinek [Wed, 9 Mar 2016 20:06:59 +0000 (21:06 +0100)]
re PR target/70086 (ICE: in extract_constrain_insn_cached, at recog.c:2202 (insn does not satisfy its constraints) with -mavx512vl -ffloat-store)

PR target/70086
* config/i386/i386.md (truncdfsf2 splitter): Use gen_vec_concatv2df
instead of gen_sse2_loadlpd.
* config/i386/sse.md (*vec_concatv2df): Rename to...
(vec_concatv2df): ... this.

* gcc.target/i386/pr70086-1.c: New test.
* gcc.target/i386/pr70086-2.c: New test.
* gcc.target/i386/pr70086-3.c: New test.

From-SVN: r234091

8 years agore PR middle-end/70127 (wrong code on x86_64-linux-gnu at -O3 in 32-bit and 64-bit...
Jakub Jelinek [Wed, 9 Mar 2016 20:05:40 +0000 (21:05 +0100)]
re PR middle-end/70127 (wrong code on x86_64-linux-gnu at -O3 in 32-bit and 64-bit modes)

PR tree-optimization/70127
* fold-const.c (operand_equal_p): Revert the 2015-10-28 change.

* gcc.c-torture/execute/pr70127.c: New test.

From-SVN: r234090

8 years agoc-parser.c (c_parser_oacc_loop): Update cclauses and clauses when calling c_finish_om...
Cesar Philippidis [Wed, 9 Mar 2016 19:39:53 +0000 (11:39 -0800)]
c-parser.c (c_parser_oacc_loop): Update cclauses and clauses when calling c_finish_omp_clauses.

gcc/c/
* c-parser.c (c_parser_oacc_loop): Update cclauses and clauses
when calling c_finish_omp_clauses.

gcc/cp/
* parser.c (cp_parser_oacc_loop): Update cclauses and clauses
when calling c_finish_omp_clauses.

gcc/testsuite/
* c-c++-common/goacc/combined-directives-2.c: New test.

From-SVN: r234089

8 years agoPR c++/70105: prevent nonsensical underline spew for macro expansions
David Malcolm [Wed, 9 Mar 2016 18:23:27 +0000 (18:23 +0000)]
PR c++/70105: prevent nonsensical underline spew for macro expansions

diagnostic_show_locus can sometimes do the wrong thing when handling
expressions built up from macros.

PR c++/70105 (currently marked as a P3 regression) has an example of
a diagnostic where over 500 lines of irrelevant source are printed,
and underlined, giving >1000 lines of useless spew to stderr.

This patch adds extra sanitization to diagnostic-show-locus.c, so that
we only attempt to print underlines and secondary locations if such
locations are "sufficiently sane" relative to the primary location
of a diagnostic.

This "sufficiently sane" condition is implemented by a new helper
function compatible_locations_p, which requires such locations to
have the same macro expansion hierarchy as the primary location,
using linemap_macro_map_loc_unwind_toward_spelling, effectively
mimicing the expansion performed by LRK_SPELLING_LOCATION.

This may be too strong a condition, but it effectively fixes
PR c++/70105, without removing any underlines in my testing.

Successfully bootstrapped&regrtested in combination with the previous
patch on x86_64-pc-linux-gnu; adds 15 new PASS results to g++.sum
and 4 new PASS results to gcc.sum.

gcc/ChangeLog:
PR c/68473
PR c++/70105
* diagnostic-show-locus.c (compatible_locations_p): New function.
(layout::layout): Sanitize ranges using compatible_locations_p.

gcc/testsuite/ChangeLog:
PR c/68473
PR c++/70105
* g++.dg/diagnostic/pr70105.C: New test.
* gcc.dg/plugin/diagnostic-test-expressions-1.c (foo): New decl.
(test_multiple_ordinary_maps): New test function.

libcpp/ChangeLog:
PR c/68473
PR c++/70105
* line-map.c (linemap_macro_map_loc_unwind_toward_spelling): Move
decl...
* include/line-map.h
(linemap_macro_map_loc_unwind_toward_spelling): ...here,
converting from static to extern.

From-SVN: r234088

8 years agoPR c++/70105: Defer location expansion until diagnostic_show_locus
David Malcolm [Wed, 9 Mar 2016 18:14:43 +0000 (18:14 +0000)]
PR c++/70105: Defer location expansion until diagnostic_show_locus

gcc/ChangeLog:
PR c/68473
PR c++/70105
* diagnostic-show-locus.c (layout_range::layout_range): Replace
location_range param with three const expanded_locations * and a
bool.
(layout::layout): Replace call to
rich_location::lazily_expand_location with get_expanded_location.
Extract the range and perform location expansion here, passing
the results to the layout_range ctor.
* diagnostic.c (source_range::debug): Delete.
* diagnostic.h (diagnostic_expand_location): Reimplement in terms
of rich_location::get_expanded_location.
* gcc-rich-location.c (get_range_for_expr): Delete.
(gcc_rich_location::add_expr): Reimplement to avoid the
rich_location::add_range overload that took a location_range,
passing a location_t instead.

gcc/testsuite/ChangeLog:
PR c/68473
PR c++/70105
* gcc.dg/plugin/diagnostic_plugin_show_trees.c (show_tree):
Drop range information from call to inform_at_rich_loc.
* gcc.dg/plugin/diagnostic_plugin_test_show_locus.c (add_range):
New.
(test_show_locus): Replace calls to rich_location::add_range with
calls to add_range.  Rewrite the tests that used the now-defunct
rich_location ctor taking a source_range.  Simplify other tests
by replacing calls to COMBINE_LOCATION_DATA with calls to
make_location.

libcpp/ChangeLog:
PR c/68473
PR c++/70105
* include/line-map.h (source_range::debug): Delete.
(struct location_range): Update comment.  Replace
expanded_location fields "m_start", "m_finish", and "m_caret" with
a source_location field: "m_loc".
(class rich_location): Reword comment.
(rich_location::get_loc): Reimplement in terms of a new overloaded
variant which takes an unsigned int.
(rich_location::get_loc_addr): Delete.
(rich_location::add_range): Drop params "start" and "finish" in
favor of param "loc".  Drop overloaded variants taking a
source_range or location_range *.
(rich_location::lazily_expand_location): Delete in favor of...
(rich_location::get_expanded_location): New decl.
(rich_location::m_loc): Delete field.
(rich_location::m_column_override): New field.
* line-map.c (rich_location::rich_location):  Drop name of
line_maps * param.  Update initializations for deletion of field
"m_loc" and addition of field "m_column_override".  Reimplement
body as a call to add_range.  Delete overloaded variant taking a
source_range.
(rich_location::get_loc): New function.
(rich_location::lazily_expand_location): Delete in favor of...
(rich_location::get_expanded_location): New function.
(rich_location::override_column): Reimplement.
(rich_location::add_range): Drop params "start" and "finish" in
favor of param "loc".  Eliminate location expansion in favor of
simply storing loc.  Drop overloaded variants taking a
source_range or location_range *.
(rich_location::set_range): Eliminate location expansion.

From-SVN: r234087

8 years agore PR tree-optimization/70138 (wrong code at -O3 on x86_64-linux-gnu)
Richard Biener [Wed, 9 Mar 2016 16:41:19 +0000 (16:41 +0000)]
re PR tree-optimization/70138 (wrong code at -O3 on x86_64-linux-gnu)

2016-03-09  Richard Biener  <rguenther@suse.de>
Jakub Jelinek  <jakub@redhat.com>

PR tree-optimization/70138
* tree-vect-loop-manip.c (vect_update_ivs_after_vectorizer):
Also skip vect_double_reduction_def.

* gcc.dg/vect/pr70138-1.c: New testcase.
* gcc.dg/vect/pr70138-2.c: Likewise.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r234086

8 years agore PR target/70049 (Error: operand size mismatch for `vpextrw' (wrong assembly genera...
Jakub Jelinek [Wed, 9 Mar 2016 14:10:58 +0000 (15:10 +0100)]
re PR target/70049 (Error: operand size mismatch for `vpextrw' (wrong assembly generated) with -masm=intel)

PR target/70049
* config/i386/sse.md (*vec_extract<mode>): Use %0 instead of %k0
if the operand is "m".

* gcc.target/i386/pr70049.c: New test.

From-SVN: r234085

8 years agore PR c/70143 (false strict-aliasing warning)
Richard Biener [Wed, 9 Mar 2016 14:01:16 +0000 (14:01 +0000)]
re PR c/70143 (false strict-aliasing warning)

2016-03-09  Richard Biener  <rguenther@suse.de>

c-family/
PR c/70143
* c-common.c (strict_aliasing_warning): Add back
alias_sets_conflict_p check.

* gcc.dg/Wstrict-aliasing-bogus-upcast.c: New testcase.
* gcc.dg/Wstrict-aliasing-struct-with-char-member.c: Likewise.
* gcc.dg/Wstrict-aliasing-struct-member.c: Remove again.

From-SVN: r234084

8 years ago* config/nvptx/nvptx.c (nvptx_option_override): Don't kill debug level.
Nathan Sidwell [Wed, 9 Mar 2016 13:33:03 +0000 (13:33 +0000)]
* config/nvptx/nvptx.c (nvptx_option_override): Don't kill debug level.

From-SVN: r234083

8 years agoReally don't xfail gcc.dg/vect/bb-slp-34.c on aarch64, arm
Rainer Orth [Wed, 9 Mar 2016 13:09:02 +0000 (13:09 +0000)]
Really don't xfail gcc.dg/vect/bb-slp-34.c on aarch64, arm

* gcc.dg/vect/bb-slp-34.c: Really don't xfail on aarch64-*-*,
arm-*-*.

From-SVN: r234081

8 years agore PR target/67278 (ICE: verify_gimple failed on darwin 14.5 x86_64)
Jakub Jelinek [Wed, 9 Mar 2016 09:23:53 +0000 (10:23 +0100)]
re PR target/67278 (ICE: verify_gimple failed on darwin 14.5 x86_64)

PR middle-end/67278
* gcc.dg/simd-7.c: Add -w -Wno-psabi to dg-options.

From-SVN: r234080

8 years agore PR target/67278 (ICE: verify_gimple failed on darwin 14.5 x86_64)
Jakub Jelinek [Wed, 9 Mar 2016 09:20:18 +0000 (10:20 +0100)]
re PR target/67278 (ICE: verify_gimple failed on darwin 14.5 x86_64)

PR target/67278
* gcc.dg/simd-8.c: Add -w -Wno-psabi to dg-options.

PR middle-end/70050
* gcc.dg/pr70050.c: Add -w to dg-options.  Fix up PR number
in testcase comment.

From-SVN: r234079

8 years agoAdd oacc kernels testcases in libgomp.oacc-fortran
Tom de Vries [Wed, 9 Mar 2016 09:14:21 +0000 (09:14 +0000)]
Add oacc kernels testcases in libgomp.oacc-fortran

2016-03-09  Tom de Vries  <tom@codesourcery.com>

* testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
Same.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
* testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
* testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.

From-SVN: r234078

8 years agoAdd oacc kernels test-cases in gfortran.dg/goacc
Tom de Vries [Wed, 9 Mar 2016 09:14:05 +0000 (09:14 +0000)]
Add oacc kernels test-cases in gfortran.dg/goacc

2016-03-09  Tom de Vries  <tom@codesourcery.com>

* gfortran.dg/goacc/kernels-loop-2.f95: New test.
* gfortran.dg/goacc/kernels-loop-data-2.f95: New test.
* gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95: New test.
* gfortran.dg/goacc/kernels-loop-data-enter-exit.f95: New test.
* gfortran.dg/goacc/kernels-loop-data-update.f95: New test.
* gfortran.dg/goacc/kernels-loop-data.f95: New test.
* gfortran.dg/goacc/kernels-loop-n.f95: New test.
* gfortran.dg/goacc/kernels-loop.f95: New test.

From-SVN: r234077

8 years agoFix cost table initialization order for AMD znver1 target.
Venkataramanan Kumar [Wed, 9 Mar 2016 07:32:11 +0000 (07:32 +0000)]
Fix cost table initialization order for AMD znver1 target.

2016-03-09  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>

        *  config/i386/i386.c (processor_target_table): Fix cost table
        intialization order for znver1.

From-SVN: r234076

8 years agoPR c++/62096 - unexpected warning overflow in implicit constant conversion
Martin Sebor [Wed, 9 Mar 2016 04:20:07 +0000 (04:20 +0000)]
PR c++/62096 - unexpected warning overflow in implicit constant conversion

gcc/testsuite/ChangeLog:
2016-03-08  Martin Sebor  <msebor@redhat.com>

        PR c++/62096
        * g++.dg/warn/overflow-warn-7.C: New test.

From-SVN: r234075

8 years agoDaily bump.
GCC Administrator [Wed, 9 Mar 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r234074

8 years agoRemove Concepts from -std=c++1z.
Jason Merrill [Tue, 8 Mar 2016 22:30:44 +0000 (17:30 -0500)]
Remove Concepts from -std=c++1z.

gcc/c-family/
* c-opts.c (set_std_cxx1z): Don't enable concepts.
gcc/testsuite/
* lib/g++-dg.exp (g++-dg-runtest): Handle "concepts" in std list.
* lib/target-supports.exp (check_effective_target_concepts): New.
gcc/cp/
* parser.c (cp_parser_diagnose_invalid_type_name): Give helpful
diagnostic for use of "concept".
(cp_parser_requires_clause_opt): And "requires".
(cp_parser_type_parameter, cp_parser_late_return_type_opt)
(cp_parser_explicit_template_declaration): Adjust.
* Make-lang.in (check-c++-all): Add "concepts" to std list.

From-SVN: r234069

8 years agoP0036R0: Unary Folds and Empty Parameter Packs
Jason Merrill [Tue, 8 Mar 2016 22:30:30 +0000 (17:30 -0500)]
P0036R0: Unary Folds and Empty Parameter Packs

* pt.c (expand_empty_fold): Remove special cases for *,+,&,|.

From-SVN: r234068

8 years agore PR sanitizer/70135 (-fsanitize=undefined causes static_assert to fail)
Jakub Jelinek [Tue, 8 Mar 2016 20:05:21 +0000 (21:05 +0100)]
re PR sanitizer/70135 (-fsanitize=undefined causes static_assert to fail)

PR c++/70135
* constexpr.c (cxx_eval_loop_expr): Forget saved values of SAVE_EXPRs
even after the last iteration of the loop.

* g++.dg/cpp1y/constexpr-loop4.C: New test.
* g++.dg/ubsan/pr70135.C: New test.

From-SVN: r234064

8 years agoipa-polymorphic-call.c (walk_ssa_copies): Fix spelling - becuase -> because.
Jakub Jelinek [Tue, 8 Mar 2016 17:49:34 +0000 (18:49 +0100)]
ipa-polymorphic-call.c (walk_ssa_copies): Fix spelling - becuase -> because.

* ipa-polymorphic-call.c (walk_ssa_copies): Fix spelling
- becuase -> because.
* ipa-reference.c (ignore_module_statics): Likewise.
* cgraph.c (cgraph_node::get_body): Likewise.
* ipa-inline.c (early_inliner): Likewise.
* ipa-devirt.c (types_same_for_odr): Likewise.
* tree-streamer-out.c (pack_ts_type_common_value_fields): Likewise.
* config/i386/i386.h (ACCUMULATE_OUTGOING_ARGS): Likewise.
cp/
* decl.c (duplicate_decls): Fix spelling - becuase -> because.
lto/
* lto-symtab.h (lto_symtab_prevail_decl): Fix spelling
- becuase -> because.

From-SVN: r234061

8 years ago[obvious] Fix typo in tree-ssa-math-opts.c
Kyrylo Tkachov [Tue, 8 Mar 2016 13:39:09 +0000 (13:39 +0000)]
[obvious] Fix typo in tree-ssa-math-opts.c

* tree-ssa-math-opts.c: Fix typo in comment.

From-SVN: r234058

8 years agore PR target/70110 (ICE at -O3 in the 32-bit mode in set_last_insn, at emit-rtl.h...
Jakub Jelinek [Tue, 8 Mar 2016 08:05:26 +0000 (09:05 +0100)]
re PR target/70110 (ICE at -O3 in the 32-bit mode in set_last_insn, at emit-rtl.h:420)

PR target/70110
* config/i386/i386.c (scalar_chain::make_vector_copies,
scalar_chain::convert_reg): Call end_sequence in between
get_insns and emit_conversion_insns rather than after both
calls.

* gcc.dg/pr70110.c: New test.

From-SVN: r234057

8 years ago* sv.po: Update.
Joseph Myers [Tue, 8 Mar 2016 01:35:13 +0000 (01:35 +0000)]
* sv.po: Update.

From-SVN: r234056

8 years agoDaily bump.
GCC Administrator [Tue, 8 Mar 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r234055

8 years agore PR target/70064 (Wrong code with custom flags and quite big testcase @ i686)
Uros Bizjak [Mon, 7 Mar 2016 19:54:02 +0000 (20:54 +0100)]
re PR target/70064 (Wrong code with custom flags and quite big testcase @ i686)

PR target/70064
* config/i386/i386.h (machine_function): Add
pc_thunk_call_expanded flag.
(ix86_pc_thunk_call_expanded): New define.
* config/i386/i386.md (set_got, set_got_labelled): New expanders.
(*set_got): Rename insn pattern from set_got.
(*set_got_labelled): Rename inst pattern from set_got_labelled.
* config/i386/i386.c (ix86_compute_frame_layout): Use
ix86_pc_thunk_call_expanded to prevent red-zone.

From-SVN: r234050

8 years ago[hsa testsuite] New directory for HSA-specific C testcases
Martin Jambor [Mon, 7 Mar 2016 18:45:17 +0000 (19:45 +0100)]
[hsa testsuite] New directory for HSA-specific C testcases

2016-03-07  Martin Jambor  <mjambor@suse.cz>

* testsuite/lib/libgomp.exp
(check_effective_target_hsa_offloading_selected_nocache): New.
(check_effective_target_hsa_offloading_selected): Likewise.
* testsuite/libgomp.hsa.c/c.exp: Likewise.
* testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
* testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
* testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
* testsuite/libgomp.hsa.c/complex-1.c: Likewise.
* testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
* testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
* testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
* testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
* testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
* testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
* testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
* testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
* testsuite/libgomp.hsa.c/pr69568.c: Likewise.
* testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
* testsuite/libgomp.hsa.c/switch-1.c: Likewise.
* testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.

From-SVN: r234047

8 years ago[hsa testsuite] Adjust libgomp tests that do not work on host fallback
Martin Jambor [Mon, 7 Mar 2016 18:42:33 +0000 (19:42 +0100)]
[hsa testsuite] Adjust libgomp tests that do not work on host fallback

2016-03-07  Martin Jambor  <mjambor@suse.cz>

* testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
non-shared memory accelerators.
* testsuite/libgomp.c/examples-4/device-1.c: Likewise.
* testsuite/libgomp.c/examples-4/target-5.c: Likewise.
* testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
* testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
* testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
* testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
* testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
* testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
* testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.

From-SVN: r234046

8 years ago[hsa testsuite] Suppress hsa warnings in libgomp tests
Martin Jambor [Mon, 7 Mar 2016 18:41:18 +0000 (19:41 +0100)]
[hsa testsuite] Suppress hsa warnings in libgomp tests

2016-03-07  Martin Jambor  <mjambor@suse.cz>

* testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
ALWAYS_CFLAGS.

From-SVN: r234045

8 years ago[hsa testsuite] Suppress hsa warnings in compiler gomp tests
Martin Jambor [Mon, 7 Mar 2016 18:39:51 +0000 (19:39 +0100)]
[hsa testsuite] Suppress hsa warnings in compiler gomp tests

2016-03-07  Martin Jambor  <mjambor@suse.cz>

* c-c++-common/gomp/clauses-1.c: Remove dg-options.
* c-c++-common/gomp/if-1.c: Likewise.
* c-c++-common/gomp/pr61486-2.c: Likewise.
* c-c++-common/gomp/target-teams-1.c: Moved dg-options except -fopenmp
to dg-additional-options.
* g++.dg/gomp/gomp.exp: Pass -Wno-hsa to all tests.
* g++/gomp/target-teams-1.c: Likewise.
* gcc.dg/gomp/gomp.exp: Likewise.
* gcc.dg/gomp/pr68128-2.c: Moved dg-options except -fopenmp to
dg-additional-options.
* gfortran.dg/gomp/gomp.exp: Likewise.
* gfortran.dg/gomp/target1.f90: Remove dg-options.
* gfortran.dg/gomp/target2.f90: Moved dg-options except -fopenmp to
dg-additional-options.
* gfortran.dg/gomp/target3.f90: Remove dg-options.

From-SVN: r234044

8 years ago[hsa testsuite] Gridification tests
Martin Jambor [Mon, 7 Mar 2016 18:37:20 +0000 (19:37 +0100)]
[hsa testsuite] Gridification tests

2016-03-07  Martin Jambor  <mjambor@suse.cz>

* lib/target-supports.exp (check_effective_target_offload_hsa): New.
* c-c++-common/gomp/gridify-1.c: New test.
        * gfortran.dg/gomp/gridify-1.f90: Likewise.

From-SVN: r234043

8 years ago[hsa] Consodlidate GTY roots for trees used during expansion to HSA
Martin Jambor [Mon, 7 Mar 2016 18:31:53 +0000 (19:31 +0100)]
[hsa] Consodlidate GTY roots for trees used during expansion to HSA

2016-03-07  Martin Jambor  <mjambor@suse.cz>

* hsa.h (hsa_get_ctor_statements): Declare.
(hsa_get_dtor_statements): Likewise.
(hsa_get_kernel_dispatch_type): Likewise.
* hsa.c (hsa_get_ctor_statements): New function.
(hsa_get_dtor_statements): Likewise.
(hsa_get_kernel_dispatch_type): Likewise.
* hsa-brig.c (hsa_cdtor_statements): Removed.
(hsa_output_libgomp_mapping): Use hsa_get_ctor_statements and
hsa_get_dtor_statements.
* hsa-gen.c (hsa_kernel_dispatch_type): Removed.
(get_hsa_kernel_dispatch_offset): Use hsa_get_kernel_dispatch_type.

From-SVN: r234042

8 years agopr45701-1.c: Change assembler scan to not trigger for cortex-r8, when scanning for...
Andre Vieira [Mon, 7 Mar 2016 18:04:31 +0000 (18:04 +0000)]
pr45701-1.c: Change assembler scan to not trigger for cortex-r8, when scanning for register r8.

2016-03-07  Andre Vieira  <andre.simoesdiasvieira@arm.com>

    * gcc.target/arm/pr45701-1.c: Change assembler scan to not
    trigger for cortex-r8, when scanning for register r8.
    * gcc.target/arm/pr45701-2.c: Likewise.

From-SVN: r234041

8 years agoarm-cores.def (cortex-r8): New.
Andre Vieira [Mon, 7 Mar 2016 18:04:20 +0000 (18:04 +0000)]
arm-cores.def (cortex-r8): New.

2016-03-07  Andre Vieira  <andre.simoesdiasvieira@arm.com>

    gcc/
    * config/arm/arm-cores.def (cortex-r8): New.
    * config/arm/arm-tables.opt (cortex-r8): Regenerate.
    * config/arm/arm-tune.md: Likewise.
    * gcc/doc/invoke.texi: Add cortex-r8 to list of cpu values.

From-SVN: r234040

8 years agoPR rtl-optimization/19705 - -fno-branch-count-reg doesn't prevent decrement
Martin Sebor [Mon, 7 Mar 2016 17:10:12 +0000 (17:10 +0000)]
PR rtl-optimization/19705 - -fno-branch-count-reg doesn't prevent decrement

PR rtl-optimization/19705 - -fno-branch-count-reg doesn't prevent decrement
and branch instructions on a count register

gcc/ChangeLog:
2016-03-07  Martin Sebor  <msebor@redhat.com>

PR rtl-optimization/19705
* doc/invoke.texi (Options That Control Optimization): Clarify
-fno-branch-count-reg.

From-SVN: r234039

8 years agoAdjust fix for PR c++/66786
Patrick Palka [Mon, 7 Mar 2016 17:09:53 +0000 (17:09 +0000)]
Adjust fix for PR c++/66786

gcc/cp/ChangeLog:

PR c++/66786
* pt.c (get_template_info): Handle PARM_DECL.
(template_class_depth): Check DECL_P instead of
VAR_OR_FUNCTION_DECL_P.

From-SVN: r234038

8 years agore PR tree-optimization/69740 (gcc ICE at -O2 and above on valid code on x86_64-linux...
Richard Biener [Mon, 7 Mar 2016 17:01:54 +0000 (17:01 +0000)]
re PR tree-optimization/69740 (gcc ICE at -O2 and above on valid code on x86_64-linux-gnu in "verify_loop_structure")

PR tree-optimization/69740
* cfghooks.c (remove_edge): Request loop fixups if we delete
an edge that might turn an irreducible loop into a natural
loop.
* cfgloop.h (check_verify_loop_structure): Clear LOOPS_NEED_FIXUP.
Move after definition of loops_state_clear.

PR tree-optimization/69740
* gcc.c-torture/compile/pr69740-1.c: New test.
* gcc.c-torture/compile/pr69740-2.c: New test.

Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r234036

8 years agoAdd style checks to check_GNU_style.sh.
Martin Sebor [Mon, 7 Mar 2016 17:01:44 +0000 (17:01 +0000)]
Add style checks to check_GNU_style.sh.

gcc/contrib/ChangeLog:
2016-03-07  Martin Sebor  <msebor@redhat.com>

* check_GNU_style.sh (color): New global variable.
Add checks for trailing operators and spaces before left brackets.
Tightened up a check for a trailing left curly brace.
(g, ag, vg): Use color.
(col): Don't complain about excessively long lines with DejaGnu
directives.

From-SVN: r234035

8 years agore PR rtl-optimization/69052 (Performance regression after r229402.)
Bin Cheng [Mon, 7 Mar 2016 16:39:27 +0000 (16:39 +0000)]
re PR rtl-optimization/69052 (Performance regression after r229402.)

PR rtl-optimization/69052
* rtlanal.c (commutative_operand_precedence): Set higher precedence
to CONST_WIDE_INT.

From-SVN: r234034

8 years ago2016-03-07 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Bill Schmidt [Mon, 7 Mar 2016 15:22:34 +0000 (15:22 +0000)]
2016-03-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* lib/target-supports.exp
(check_effective_target_whole_vector_shift): Enable for PPC64.

From-SVN: r234032

8 years agoSkip ubsan/asan internal fns with different location in tail-merge
Tom de Vries [Mon, 7 Mar 2016 14:50:13 +0000 (14:50 +0000)]
Skip ubsan/asan internal fns with different location in tail-merge

2016-03-07  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/70116
* tree-ssa-tail-merge.c (merge_stmts_p): New function, handling
is_tm_ending stmts and ubsan/asan internal functions.
(find_duplicate): Use it.  Don't test is_tm_ending here.

From-SVN: r234029

8 years agore PR tree-optimization/70115 (gcc ICE at -O2 (seg fault) and above on valid code...
Richard Biener [Mon, 7 Mar 2016 14:15:56 +0000 (14:15 +0000)]
re PR tree-optimization/70115 (gcc ICE at -O2 (seg fault) and above on valid code on x86_64-linux-gnu)

2016-03-07  Richard Biener  <rguenther@suse.de>

PR tree-optimization/70115
* tree-ssa-loop-ivcanon.c (propagate_into_all_uses): Remove.
(propagate_constants_for_unrolling): Use replace_uses_by.

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

From-SVN: r234027

8 years agore PR middle-end/69916 ([openacc] ICE in single_succ_edge called from oacc_loop_xform...
Nathan Sidwell [Mon, 7 Mar 2016 13:22:07 +0000 (13:22 +0000)]
re PR middle-end/69916 ([openacc] ICE in single_succ_edge called from oacc_loop_xform_loop)

gcc/
PR middle-end/69916
* omp-low.c (struct oacc_loop): Add ifns.
(new_oacc_loop_raw): Initialize it.
(finish_oacc_loop): Clear mask & flags if no ifns.
(oacc_loop_discover_walk): Count IFN_GOACC_LOOP calls.
(oacc_loop_xform_loop): Add ifns arg & adjust.
(oacc_loop_process): Adjust oacc_loop_xform_loop call.

gcc/testsuite/
PR middle-end/69916
* c-c-++-common/goacc/pr69916.c: New.

From-SVN: r234026

8 years agore PR rtl-optimization/70061 (ICE: SIGSEGV in delete_insn_chain() with unused label)
Richard Henderson [Mon, 7 Mar 2016 11:48:57 +0000 (03:48 -0800)]
re PR rtl-optimization/70061 (ICE: SIGSEGV in delete_insn_chain() with unused label)

PR rtl-opt/70061

  * tree-outofssa.c (emit_partition_copy): Flush pending stack adjust.
  (insert_value_copy_on_edge): Likewise.

  * gcc.c-torture/compile/pr70061.c: New test.

From-SVN: r234025

8 years agore PR testsuite/70109 (FAIL: gcc.dg/vect/O3-pr36098.c scan-tree-dump-times vect ...
Richard Biener [Mon, 7 Mar 2016 11:45:49 +0000 (11:45 +0000)]
re PR testsuite/70109 (FAIL: gcc.dg/vect/O3-pr36098.c scan-tree-dump-times vect "vectorizing stmts usin g SLP" 0)

2016-03-07  Richard Biener  <rguenther@suse.de>

PR testsuite/70109
* gcc.dg/vect/O3-pr36098.c: New testcase.

From-SVN: r234024

8 years ago[ARM] Error out of arm_neon.h if compiling for soft-float ABI
Kyrylo Tkachov [Mon, 7 Mar 2016 11:45:41 +0000 (11:45 +0000)]
[ARM] Error out of arm_neon.h if compiling for soft-float ABI

* config/arm/arm_neon.h: Show error if using with soft-float ABI.

From-SVN: r234023

8 years agoOnly assume 4-byte stack alignment on 32-bit Solaris/x86 (PR target/62281)
Rainer Orth [Mon, 7 Mar 2016 09:51:31 +0000 (09:51 +0000)]
Only assume 4-byte stack alignment on 32-bit Solaris/x86 (PR target/62281)

PR target/62281
* config/i386/sol2.h (STACK_REALIGN_DEFAULT): Define.

From-SVN: r234022

8 years agopragma_cpp_fma.c: Reset default FPU.
Christophe Lyon [Mon, 7 Mar 2016 09:43:48 +0000 (09:43 +0000)]
pragma_cpp_fma.c: Reset default FPU.

2016-03-07  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/arm/pragma_cpp_fma.c: Reset default FPU.

From-SVN: r234021

8 years agotrans.c (statement_node_p): New predicate.
Eric Botcazou [Mon, 7 Mar 2016 08:46:52 +0000 (08:46 +0000)]
trans.c (statement_node_p): New predicate.

* gcc-interface/trans.c (statement_node_p): New predicate.
(gnat_to_gnu): Invoke it to detect statement nodes.  In ASIS mode, do
not return dummy results for expressions attached to packed array
implementation types.

From-SVN: r234020

8 years agodecl.c (gnat_to_gnu_entity): Always mark the expression of a renaming manually in...
Eric Botcazou [Mon, 7 Mar 2016 08:08:27 +0000 (08:08 +0000)]
decl.c (gnat_to_gnu_entity): Always mark the expression of a renaming manually in case #3.

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Always mark
the expression of a renaming manually in case #3.

From-SVN: r234018

8 years agoDaily bump.
GCC Administrator [Mon, 7 Mar 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r234017

8 years agoteach mklog to look in the current directory for ChangeLog files
Trevor Saunders [Sun, 6 Mar 2016 17:36:19 +0000 (17:36 +0000)]
teach mklog to look in the current directory for ChangeLog files

 when run in repos other than gcc mklog fails to find ChangeLog files
because it looks for $0/../$dir/ChangeLog, but of course if the diff is
for a project other than gcc that might not exist.  It should be fine to
also look for $cwd/$dir/ChangeLog, and use that if we find it.  This
means that for example in binutils-gdb.git you can do git commit,
and then in your editor read git diff HEAD~ | mklog - to generate a
template ChangeLog for that commit.

contrib/ChangeLog:

2016-03-06  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* mklog: Look for the ChangeLog file in $cwd.

From-SVN: r234014

8 years agore PR c++/67364 ("accessing uninitialized member" error in constexpr context)
Jason Merrill [Sun, 6 Mar 2016 06:47:22 +0000 (01:47 -0500)]
re PR c++/67364 ("accessing uninitialized member" error in constexpr context)

PR c++/67364
* constexpr.c (cxx_eval_store_expression): Replace
CONSTRUCTOR_ELTS in nested CONSTRUCTORs, too.

From-SVN: r234013

8 years agoDaily bump.
GCC Administrator [Sun, 6 Mar 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r234012

8 years agolibffi: Match upstream soname
Richard Henderson [Sat, 5 Mar 2016 18:25:20 +0000 (10:25 -0800)]
libffi: Match upstream soname

  * libtool-version: Increase to 7:0:0.
  * libffi.map.in: Increase version numbers to 7.0.

From-SVN: r234009

8 years agoFix Multiply costs for AMD -march=znver1.
Venkataramanan Kumar [Sat, 5 Mar 2016 17:20:22 +0000 (17:20 +0000)]
Fix Multiply costs for AMD -march=znver1.

2016-03-05  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>

        * config/i386/i386.c (znver1_cost): Fix Multiply cost.

From-SVN: r234008

8 years agoFix sseimul type attribute.
Venkataramanan Kumar [Sat, 5 Mar 2016 12:33:09 +0000 (12:33 +0000)]
Fix sseimul type attribute.

2016-03-05  Venkataramanan Kumar  <Venkataramanan.kumar@amd.com>

        Fix sseimul type attribute.
        * config/i386/znver1.md
        (znver1_sseimul, znver1_sseimul_avx256, znver1_sseimul_load,
        znver1_sseimul_avx256_load) : Fix the type attribute.
        (znver1_sseimul_di,
        znver1_sseimul_load_di): Fix type attribute, pipe usage and latency.

From-SVN: r234007

8 years ago* sr.po: Update.
Joseph Myers [Sat, 5 Mar 2016 12:07:03 +0000 (12:07 +0000)]
* sr.po: Update.

From-SVN: r234006

8 years agore PR c++/70084 (va_arg ((ap), int) regression on s390*-*)
Jakub Jelinek [Sat, 5 Mar 2016 06:50:23 +0000 (07:50 +0100)]
re PR c++/70084 (va_arg ((ap), int) regression on s390*-*)

PR c++/70084
* tree-inline.c (copy_tree_body_r): When cancelling ADDR_EXPR
of INDIRECT_REF and ADDR_EXPR changed type, fold_convert it
to the right type.

* g++.dg/expr/stdarg3.C: New test.

From-SVN: r234004

8 years agore PR tree-optimization/69196 (code size regression with jump threading at -O2)
Jeff Law [Sat, 5 Mar 2016 06:12:09 +0000 (23:12 -0700)]
re PR tree-optimization/69196 (code size regression with jump threading at -O2)

PR tree-optimization/69196
* gcc.dg/tree-ssa/pr69196-1.c: Limit this to sparc*-*-* and
x86_64-*-*.

From-SVN: r234003

8 years agore PR c/69973 (ICE on excessive attribute vector_size)
Bernd Schmidt [Sat, 5 Mar 2016 05:36:42 +0000 (22:36 -0700)]
re PR c/69973 (ICE on excessive attribute vector_size)

PR c/69973
* targhooks.c (default_vector_alignment): Limit to MAX_OFILE_ALIGNMENT.

PR c/69973
* gcc.dg/pr69973.c: New test.

From-SVN: r234002

8 years agore PR rtl-optimization/69941 (bogus zero_extend transformation in postreload on aarch64)
Bernd Schmidt [Sat, 5 Mar 2016 05:30:10 +0000 (22:30 -0700)]
re PR rtl-optimization/69941 (bogus zero_extend transformation in postreload on aarch64)

PR rtl-optimization/69941
* postreload.c (reload_combine_recognize_pattern): Ensure all uses of
the reg share its mode.

PR rtl-optimization/69941
* gcc.dg/torture/pr69941.c: New test.

From-SVN: r234001

8 years agore PR c/69824 (internal compiler error in unshare_body)
Bernd Schmidt [Sat, 5 Mar 2016 05:22:01 +0000 (22:22 -0700)]
re PR c/69824 (internal compiler error in unshare_body)

PR c/69824
* c-decl.c (get_parm_info): Don't queue implicit function declarations
for later.

PR c/69824
* gcc.dg/pr69824.c: New test.

From-SVN: r234000

8 years agore PR tree-optimization/69196 (code size regression with jump threading at -O2)
Jeff Law [Sat, 5 Mar 2016 05:10:58 +0000 (22:10 -0700)]
re PR tree-optimization/69196 (code size regression with jump threading at -O2)

PR tree-optimization/69196
* tree-ssa-threadbackward.c (fsm_find_control_statement_thread_paths):
If the both SSA_NAMEs are anonymous, then consider them unassociated
and include the PHI in the statement count.

From-SVN: r233999

8 years agoHandle oacc region in oacc routine
Tom de Vries [Sat, 5 Mar 2016 02:48:30 +0000 (02:48 +0000)]
Handle oacc region in oacc routine

2016-03-05  Tom de Vries  <tom@codesourcery.com>

* omp-low.c (check_omp_nesting_restrictions): Check for non-oacc
construct in oacc routine.  Check for oacc region in oacc routine.

* c-c++-common/goacc/nesting-fail-1.c (f_acc_routine): New function.
* c-c++-common/goacc-gomp/nesting-fail-1.c (f_acc_routine): New
function.

From-SVN: r233998

8 years agoFix PR c++/66786 (ICE with nested lambdas in variable template)
Patrick Palka [Sat, 5 Mar 2016 01:59:04 +0000 (01:59 +0000)]
Fix PR c++/66786 (ICE with nested lambdas in variable template)

gcc/cp/ChangeLog:

PR c++/66786
* pt.c (template_class_depth): Given a lambda type, iterate
into its LAMBDA_TYPE_EXTRA_SCOPE field instead of its
TYPE_CONTEXT.  Given a VAR_DECL, iterate into its
CP_DECL_CONTEXT.

gcc/testsuite/ChangeLog:

PR c++/66786
* g++.dg/cpp1y/var-templ48.C: New test.
* g++.dg/cpp1y/var-templ49.C: New test.

From-SVN: r233997

8 years agoDaily bump.
GCC Administrator [Sat, 5 Mar 2016 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r233994

8 years ago* g++.dg/Wno-frame-address.C: Skip on IA-64.
Eric Botcazou [Fri, 4 Mar 2016 22:56:18 +0000 (22:56 +0000)]
* g++.dg/Wno-frame-address.C: Skip on IA-64.

From-SVN: r233988

8 years agore PR c++/69203 (ICE in potential_constant_expression_1, at cp/constexpr.c:4754)
Jason Merrill [Fri, 4 Mar 2016 22:53:29 +0000 (17:53 -0500)]
re PR c++/69203 (ICE in potential_constant_expression_1, at cp/constexpr.c:4754)

PR c++/69203

* cp-tree.h (COND_EXPR_IS_VEC_DELETE): New.
* init.c (build_vec_delete_1): Set it.
* constexpr.c (potential_constant_expression_1) [COND_EXPR]: Check it.

From-SVN: r233987

8 years agoSync include/plugin-api.h with binutils.
Cary Coutant [Fri, 4 Mar 2016 22:15:55 +0000 (14:15 -0800)]
Sync include/plugin-api.h with binutils.

2016-03-03  Than McIntosh <thanm@google.com>

* plugin-api.h: Add new hooks to the plugin transfer vector to
to support querying section alignment and section size.
(ld_plugin_get_input_section_alignment): New hook.
(ld_plugin_get_input_section_size): New hook.
(ld_plugin_tag): Add LDPT_GET_INPUT_SECTION_ALIGNMENT
and LDPT_GET_INPUT_SECTION_SIZE.
(ld_plugin_tv): Add tv_get_input_section_alignment and
tv_get_input_section_size.

2016-03-03  Evgenii Stepanov  <eugenis@google.com>

* plugin-api.h (enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V3.

From-SVN: r233986

8 years agodecl.c (start_preparsed_function): Don't emit start clobber at the start of construct...
Jakub Jelinek [Fri, 4 Mar 2016 22:11:41 +0000 (23:11 +0100)]
decl.c (start_preparsed_function): Don't emit start clobber at the start of constructor clones.

* decl.c (start_preparsed_function): Don't emit start clobber at the
start of constructor clones.

From-SVN: r233985

8 years agore PR c++/70035 (Calling a non-virtual member in base-class constructor call with...
Jakub Jelinek [Fri, 4 Mar 2016 22:10:49 +0000 (23:10 +0100)]
re PR c++/70035 (Calling a non-virtual member in base-class constructor call with ubsan causes segfault when superclass has virtual member with same name)

PR c++/70035
* cp-tree.h (cp_ubsan_maybe_initialize_vtbl_ptrs): New prototype.
* decl.c (start_preparsed_function): Call
cp_ubsan_maybe_initialize_vtbl_ptrs if needed.
* cp-ubsan.c (cp_ubsan_dfs_initialize_vtbl_ptrs,
cp_ubsan_maybe_initialize_vtbl_ptrs): New functions.

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

From-SVN: r233984

8 years agore PR c++/67364 ("accessing uninitialized member" error in constexpr context)
Jason Merrill [Fri, 4 Mar 2016 22:08:22 +0000 (17:08 -0500)]
re PR c++/67364 ("accessing uninitialized member" error in constexpr context)

PR c++/67364

* constexpr.c (cxx_eval_component_reference): Further tweak.

From-SVN: r233982

8 years agoFix constexpr handling of SAVE_EXPR in loops.
Jason Merrill [Fri, 4 Mar 2016 22:08:17 +0000 (17:08 -0500)]
Fix constexpr handling of SAVE_EXPR in loops.

* constexpr.c (struct constexpr_ctx): Add save_exprs field.
(cxx_eval_loop_expr): Discard SAVE_EXPR values before looping.
(cxx_eval_constant_expression) [SAVE_EXPR]: Add it to the set.
(cxx_eval_outermost_constant_expr, is_sub_constant_expr): Initialize.

From-SVN: r233981

8 years agore PR target/70062 (ICE: in decide_alg, at config/i386/i386.c:26173 with -mmemcpy...
Jakub Jelinek [Fri, 4 Mar 2016 20:28:27 +0000 (21:28 +0100)]
re PR target/70062 (ICE: in decide_alg, at config/i386/i386.c:26173 with -mmemcpy-strategy=libcall)

PR target/70062
* config/i386/i386.c (decide_alg): Add RECUR argument.  Revert
2016-02-22 changes, instead don't recurse if RECUR is already true.
Don't change *dynamic_check if RECUR.  Adjust recursive caller
to pass true to the new argument.
(ix86_expand_set_or_movmem): Adjust decide_alg caller.

* gcc.target/i386/pr70062.c: New test.

From-SVN: r233979

8 years agoRemove c++98_only on g++.dg/template/typename21.C
H.J. Lu [Fri, 4 Mar 2016 19:51:53 +0000 (19:51 +0000)]
Remove c++98_only on g++.dg/template/typename21.C

* g++.dg/template/typename21.C: Remove c++98_only.

From-SVN: r233977

8 years agoReplace c++98 with c++98_only
H.J. Lu [Fri, 4 Mar 2016 19:41:35 +0000 (19:41 +0000)]
Replace c++98 with c++98_only

* g++.dg/template/typename21.C: Replace c++98 with c++98_only.

From-SVN: r233975

8 years agore PR c++/70067 (internal compiler error: in strip_typedefs, at cp/tree.c:1466)
Jason Merrill [Fri, 4 Mar 2016 16:07:20 +0000 (11:07 -0500)]
re PR c++/70067 (internal compiler error: in strip_typedefs, at cp/tree.c:1466)

PR c++/70067

* tree.c (strip_typedefs): Handle TYPENAME_TYPE lookup finding the
same type.

From-SVN: r233973

8 years agoPR c/68187: fix overzealous -Wmisleading-indentation (comment #1)
David Malcolm [Fri, 4 Mar 2016 15:50:27 +0000 (15:50 +0000)]
PR c/68187: fix overzealous -Wmisleading-indentation (comment #1)

gcc/c-family/ChangeLog:
PR c/68187
* c-indentation.c (get_visual_column): Move code to determine next
tab stop to...
(next_tab_stop): ...this new function.
(line_contains_hash_if): Delete function.
(detect_preprocessor_logic): Delete function.
(get_first_nws_vis_column): New function.
(detect_intervening_unindent): New function.
(should_warn_for_misleading_indentation): Replace call to
detect_preprocessor_logic with a call to
detect_intervening_unindent.

gcc/testsuite/ChangeLog:
PR c/68187
* c-c++-common/Wmisleading-indentation.c (fn_42_a): New test
function.
(fn_42_b): Likewise.
(fn_42_c): Likewise.

From-SVN: r233972

8 years agoPR c/68187: fix overzealous -Wmisleading-indentation (comment #0)
David Malcolm [Fri, 4 Mar 2016 15:45:19 +0000 (15:45 +0000)]
PR c/68187: fix overzealous -Wmisleading-indentation (comment #0)

gcc/c-family/ChangeLog:
PR c/68187
* c-indentation.c (should_warn_for_misleading_indentation): When
suppressing warnings about cases where the guard and body are on
the same column, only use the first non-whitespace column in place
of the guard token column when dealing with "else" clauses.
When rejecting aligned BODY and NEXT, loosen the requirement
from equality with the first non-whitespace of guard to simply
that they not be indented relative to it.

gcc/testsuite/ChangeLog:
PR c/68187
* c-c++-common/Wmisleading-indentation.c (fn_40_a): New test
function.
(fn_40_b): Likewise.
(fn_41_a): Likewise.
(fn_41_b): Likewise.

From-SVN: r233971

8 years agore PR target/70059 (Invalid codegen on AVX-512 when using _mm512_inserti64x4(x, y...
Jakub Jelinek [Fri, 4 Mar 2016 14:45:56 +0000 (15:45 +0100)]
re PR target/70059 (Invalid codegen on AVX-512 when using _mm512_inserti64x4(x, y, 0))

PR target/70059
* config/i386/sse.md (vec_set_lo_<mode><mask_name>,
<extract_type_2>_vinsert<shuffletype><extract_suf_2>_mask): Formatting
fixes.
(vec_set_hi_<mode><mask_name>): Likewise.  Swap VEC_CONCAT operands.

* gcc.target/i386/avx512f-pr70059.c: New test.
* gcc.target/i386/avx512dq-pr70059.c: New test.

From-SVN: r233968