gcc.git
8 years agod-demangle.c (dlang_type): Handle function types only in the context of seeing a...
Iain Buclaw [Wed, 27 Jan 2016 01:07:08 +0000 (01:07 +0000)]
d-demangle.c (dlang_type): Handle function types only in the context of seeing a pointer type symbol.

libiberty/ChangeLog:

2016-01-27  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_type): Handle function types only in the context
of seeing a pointer type symbol.
* testsuite/d-demangle-expected: Update function pointer tests.

From-SVN: r232862

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

From-SVN: r232861

8 years agocompiler: Don't crash on erroneous array return types.
Ian Lance Taylor [Wed, 27 Jan 2016 00:00:58 +0000 (00:00 +0000)]
compiler: Don't crash on erroneous array return types.

    Another issue with erroneous array types.  When an erroneous array
    type is in a function's signature, particularly the return type, we
    must guarantee that type is changed into an error type.  Otherwise,
    any operations that work on arrays and slices will crash when applied
    to the erroneous array return type.

    Fixes golang/go#12939.

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

From-SVN: r232858

8 years agocompiler: Don't crash on invalid array type declarations.
Ian Lance Taylor [Tue, 26 Jan 2016 23:28:37 +0000 (23:28 +0000)]
compiler: Don't crash on invalid array type declarations.

    Fixes golang/go#12937.

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

From-SVN: r232857

8 years ago* gcc.c-torture/execute/stkalign.c: XFAIL run on SPARC 64-bit.
Eric Botcazou [Tue, 26 Jan 2016 22:44:46 +0000 (22:44 +0000)]
* gcc.c-torture/execute/stkalign.c: XFAIL run on SPARC 64-bit.

From-SVN: r232856

8 years agocompiler: Avoid knock-on errors with impossibly large types.
Ian Lance Taylor [Tue, 26 Jan 2016 22:35:20 +0000 (22:35 +0000)]
compiler: Avoid knock-on errors with impossibly large types.

    The gofrontend asks the backend compiler for the architecture
    appropriate size of a given type.  For array types, it is possible
    to construct a type too large to fit on the machine.  This patch does
    two things: 1. When an impossibly large type is encountered, we mark
    the type as erroneous and later calls to discover the size of that
    type are short-circuited. 2. When generating the GC symbol data for
    an impossibly large array of arrays, we avoid generating symbol data
    as soon as we find an array that is too large to be expressed.

    Fixes golang/go#12938.

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

From-SVN: r232855

8 years agoHandle DR_NUM_DIMENSIONS == 0 in initialize_data_dependence_relation
Tom de Vries [Tue, 26 Jan 2016 22:11:51 +0000 (22:11 +0000)]
Handle DR_NUM_DIMENSIONS == 0 in initialize_data_dependence_relation

2016-01-26  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/69110
* tree-data-ref.c (initialize_data_dependence_relation): Handle
DR_NUM_DIMENSIONS == 0.

* gcc.dg/autopar/pr69110.c: New test.

* testsuite/libgomp.c/pr69110.c: New test.

From-SVN: r232852

8 years agohandle isl_ast_op_select
Abderrazek Zaafrani [Tue, 26 Jan 2016 22:02:11 +0000 (22:02 +0000)]
handle isl_ast_op_select

2016-01-26  Abderrazek Zaafrani  <a.zaafrani@samsung.com>
            Sebastian Pop  <s.pop@samsung.com>

* graphite-isl-ast-to-gimple.c (ternary_op_to_tree): Handle
isl_ast_op_cond and isl_ast_op_select.
(gcc_expression_from_isl_expr_op): Same.

* gcc.dg/graphite/isl-ast-op-select.c: New.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232851

8 years ago[multiple changes]
Paul Thomas [Tue, 26 Jan 2016 21:57:12 +0000 (21:57 +0000)]
[multiple changes]

2016-01-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/69385
* trans-expr.c (gfc_trans_assignment_1): Exclude initialization
assignments from check on assignment of scalars to unassigned
arrays and correct wrong code within the corresponding block.

2015-01-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/69385
* gfortran.dg/allocate_error_6.f90: New test.

From-SVN: r232850

8 years agore PR c++/68949 (Implicit initialization of array member silently miscompiling.)
Jason Merrill [Tue, 26 Jan 2016 21:34:16 +0000 (16:34 -0500)]
re PR c++/68949 (Implicit initialization of array member silently miscompiling.)

PR c++/68949

* constexpr.c (register_constexpr_fundef): Keep the un-massaged body.
(cxx_eval_call_expression): Don't look through clones.
* optimize.c (maybe_clone_body): Clear DECL_SAVED_TREE of the alias.
* semantics.c (expand_or_defer_fn_1): Keep DECL_SAVED_TREE of
maybe-in-charge *tor.

From-SVN: r232848

8 years agore PR c++/68782 (bad reference member formed with constexpr)
Jason Merrill [Tue, 26 Jan 2016 21:34:10 +0000 (16:34 -0500)]
re PR c++/68782 (bad reference member formed with constexpr)

PR c++/68782

gcc/
* tree.c (recompute_constructor_flags): Split out from
build_constructor.
(verify_constructor_flags): New.
* tree.h: Declare them.
gcc/cp/
* constexpr.c (cxx_eval_bare_aggregate): Update TREE_CONSTANT
and TREE_SIDE_EFFECTS.
(cxx_eval_constant_expression) [CONSTRUCTOR]: Call
verify_constructor_flags.

From-SVN: r232847

8 years agore PR rtl-optimization/69217 (ICE at var-tracking.c:5038 Segmentation fault)
Iain Buclaw [Tue, 26 Jan 2016 20:57:37 +0000 (20:57 +0000)]
re PR rtl-optimization/69217 (ICE at var-tracking.c:5038 Segmentation fault)

PR rtl-optimization/69217
* var-tracking.c (tracked_record_parameter_p): Don't segfault if there
are no TYPE_FIELDS set for the record type.

From-SVN: r232845

8 years agore PR target/68662 (FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1...
Jakub Jelinek [Tue, 26 Jan 2016 19:53:37 +0000 (20:53 +0100)]
re PR target/68662 (FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O2 -flto -flto-partition=none -fuse-linker-plugin -fno-fat-lto-objects)

PR target/68662
* config/rs6000/rs6000.c (rs6000_option_override_internal): Initialize
toc_label_name unconditionally.
(rs6000_emit_load_toc_table): Call ggc_strdup on toc_label_name for
SYMBOL_REF string.  Use toc_label_name instead of constructing
LCTOC1.
(rs6000_elf_declare_function_name): Use toc_label_name instead of
constructing LCTOC1.

From-SVN: r232844

8 years agore PR c++/68357 (FAIL: g++.dg/other/darwin-cfstring1.C -std=* (internal compiler...
Jakub Jelinek [Tue, 26 Jan 2016 19:52:53 +0000 (20:52 +0100)]
re PR c++/68357 (FAIL: g++.dg/other/darwin-cfstring1.C  -std=* (internal compiler error) on x86_64-apple-darwin1(0|4|5))

PR c++/68357
* cp-gimplify.c (cp_fold): If some operand folds to error_mark_node,
return error_mark_node instead of building trees with error_mark_node
operands.

From-SVN: r232843

8 years agoFix assertions for move assignment of trivial types
Jonathan Wakely [Tue, 26 Jan 2016 19:38:20 +0000 (19:38 +0000)]
Fix assertions for move assignment of trivial types

PR libstdc++/69478
* include/bits/stl_algobase.h (__copy_move<_IsMove, true,
random_access_iterator_tag>): Check is_move_assignable when moving.
(__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
Likewise.
* testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
* testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
* testsuite/25_algorithms/move/69478.cc: New.
* testsuite/25_algorithms/move_backward/69478.cc: new.

From-SVN: r232842

8 years agoPR other/69477 - attribute aligned documentation misleading
Martin Sebor [Tue, 26 Jan 2016 17:44:38 +0000 (17:44 +0000)]
PR other/69477 - attribute aligned documentation misleading

gcc/ChangeLog:
2016-01-26  Martin Sebor  <msebor@redhat.com>

PR other/69477
* doc/extend.texi (Common Type Attributes): Move text that talks about
attribute packed from attribute aligned to the section discussing
the former attribute for clarity.

From-SVN: r232840

8 years agore PR middle-end/60908 (compiler bug related to trans-mem.c)
Richard Henderson [Tue, 26 Jan 2016 17:29:02 +0000 (09:29 -0800)]
re PR middle-end/60908 (compiler bug related to trans-mem.c)

PR middle-end/60908

  * trans-mem.c (tm_region_init): Mark entry block as visited.
testsuite/
  * gcc.dg/tm/pr60908.c: New test.

From-SVN: r232839

8 years agoremove accidental empty commit
Nathan Sidwell [Tue, 26 Jan 2016 17:09:20 +0000 (17:09 +0000)]
remove accidental empty commit

From-SVN: r232838

8 years agoPR other/69006: fix extra newlines after diagnostics
David Malcolm [Tue, 26 Jan 2016 17:08:12 +0000 (17:08 +0000)]
PR other/69006: fix extra newlines after diagnostics

gcc/c-family/ChangeLog:
PR other/69006
* c-opts.c (c_diagnostic_finalizer): Replace invocation of
pp_newline_and_flush with pp_flush.

gcc/cp/ChangeLog:
PR other/69006
* error.c (print_instantiation_partial_context_line): Add missing
newlines from output for the t == NULL case.
(print_instantiation_partial_context): Remove call to pp_newline.

gcc/ChangeLog:
PR other/69006
* diagnostic-show-locus.c (layout::print_source_line): Replace
call to pp_newline with call to layout::print_newline.
(layout::print_annotation_line): Likewise.
(layout::move_to_column): Likewise.
(layout::print_any_fixits): After printing any fixits, print a
trailing newline, if necessary.
(layout::print_newline): New method, resetting any colorization
before a newline.
(diagnostic_show_locus): Move the pp_newline to before the
early bailout.  Remove dummy block enclosing the layout instance.
* diagnostic.c (default_diagnostic_finalizer): Replace invocation
of pp_newline_and_flush with pp_flush.
(diagnostic_append_note): Delete use of pp_newline.
(diagnostic_append_note_at_rich_loc): Delete.
* diagnostic.h (diagnostic_append_note_at_rich_loc): Delete.
* pretty-print.h (output_buffer_append_r): Reset buff->line_length
when newline characters are added to the buffer.

gcc/fortran/ChangeLog:
PR other/69006
* error.c (gfc_diagnostic_starter): Delete use of pp_newline.

gcc/testsuite/ChangeLog:
PR other/69006
* g++.dg/ext/timevar1.C: Add dg-allow-blank-lines-in-output
directive.
* gcc.dg/plugin/diagnostic-test-show-locus-color.c: Update
expected multiline output to reflect the colorization being
disabled before newlines.
* gcc.dg/plugin/diagnostic_plugin_test_show_locus.c
(custom_diagnostic_finalizer): Replace call to
pp_newline_and_flush with call to pp_flush.
* gcc.dg/unroll-2.c: Add dg-allow-blank-lines-in-output directive.
* gfortran.dg/implicit_class_1.f90: Likewise.
* lib/gcc-dg.exp (allow_blank_lines): New global.
(dg-allow-blank-lines-in-output): New procedure.
(gcc-dg-prune): Complain about blank lines in the output, unless
dg-allow-blank-lines-in-output was called.
* lib/multiline.exp (_build_multiline_regex): Only support
arbitrary followup text for non-blank-lines, not for blank lines.

From-SVN: r232837

8 years agoconfigure.ac (ac_cv_std_swap_in_utility): New test.
Michael Matz [Tue, 26 Jan 2016 16:34:24 +0000 (16:34 +0000)]
configure.ac (ac_cv_std_swap_in_utility): New test.

* configure.ac (ac_cv_std_swap_in_utility): New test.
* system.h (<algorithm>): Check HAVE_SWAP_IN_UTILITY as well.
* configure: Regenerate.
* config.in: Regenerate.

From-SVN: r232836

8 years agoFix build failure when wide character support is not available
Andris Pavenis [Tue, 26 Jan 2016 16:07:33 +0000 (18:07 +0200)]
Fix build failure when wide character support is not available

* include/c_compatibility/stdlib.h: Include wide character related
definitions only when they are available in cstdlib.

From-SVN: r232835

8 years ago[ARC] Fix arcset* pattern's predicate.
Claudiu Zissulescu [Tue, 26 Jan 2016 16:06:16 +0000 (17:06 +0100)]
[ARC] Fix arcset* pattern's predicate.

gcc/
2016-01-26  Claudiu Zissulescu  <claziss@synopsys.com>

        * config/arc/arc.md (cstoresi4): Force operand into register.
        (arcset<code>): Fix predicate.
        (arcsetltu): Likewise.
        (arcsetgeu): Likewise.
        (arcsethi): Likewise.
        (arcsetls): Likewise.

From-SVN: r232834

8 years agore PR tree-optimization/69483 (gcc ICE on x86_64-linux-gnu with "expected class ...
Jakub Jelinek [Tue, 26 Jan 2016 15:51:51 +0000 (16:51 +0100)]
re PR tree-optimization/69483 (gcc ICE on x86_64-linux-gnu with "expected class 'type', have 'exceptional' (error_mark) in useless_type_conversion_p")

PR tree-optimization/69483
* gimple-fold.c (canonicalize_constructor_val): Return NULL
if base has error_mark_node type.

* c-parser.c (c_parser_translation_unit): Use FOR_EACH_VEC_ELT.

* gcc.dg/pr69483.c: New test.
* g++.dg/opt/pr69483.C: New test.

From-SVN: r232833

8 years agore PR target/68620 (ICE on gcc.target/arm/attr-neon-fp16.c)
Christophe Lyon [Tue, 26 Jan 2016 15:17:00 +0000 (15:17 +0000)]
re PR target/68620 (ICE on gcc.target/arm/attr-neon-fp16.c)

2016-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
PR target/68620
* config/arm/arm.c (neon_valid_immediate): Handle FP16 vectors.
* config/arm/arm_neon.h (__ARM_NUM_LANES, __arm_lane, arm_lanq):
New helper macros.
(vget_lane_f16): Handle big-endian.
(vgetq_lane_f16): Likewise.
(vset_lane_f16): Likewise.
(vsetq_lane_f16): Likewise.
* config/arm/iterators.md (VQXMOV): Add V8HF.
(VDQ): Add V4HF and V8HF.
(V_reg): Handle V4HF and V8HF.
(Is_float_mode): Likewise.
* config/arm/neon.md (movv4hf, movv8hf, neon_vdup_nv4hf,
neon_vdup_nv8hf): New patterns.
(vec_set<mode>_internal, vec_extract<mode>, neon_vld1_dup<mode>):
Use VD_LANE iterator.
(neon_vld1_dup<mode>): Use VQ2 iterator.

testsuite/
PR target/68620
* gcc.target/arm/pr68620.c: New test.

From-SVN: r232832

8 years agoRemove -m32 from gcc.target/i386/pr68986-2.c
H.J. Lu [Tue, 26 Jan 2016 14:33:12 +0000 (14:33 +0000)]
Remove -m32 from gcc.target/i386/pr68986-2.c

* gcc.target/i386/pr68986-2.c: Remove -m32.

From-SVN: r232831

8 years agoomp-low.h (oacc_fn_attrib_kernels_p): Declare.
Nathan Sidwell [Tue, 26 Jan 2016 14:32:30 +0000 (14:32 +0000)]
omp-low.h (oacc_fn_attrib_kernels_p): Declare.

* omp-low.h (oacc_fn_attrib_kernels_p): Declare.
(set_oacc_fn_attrib): Add IS_KERNEL arg.
* omp-low.c (set_oacc_fn_attrib): Add IS_KERNEL arg.
(oacc_fn_attrib_kernels_p, oacc_fn_attrib_level): New.
(expand_omp_target): Pass is_kernel to set_oacc_fn_attrib.
(oacc_validate_dims): Add LEVEL arg, don't return level.
(new_oacc_loop_routine): Use oacc_fn_attrib_level, not
oacc_validate_dims.
(execute_oacc_device_lower): Adjust, add more dump output.
* tree-ssa-loop.c (gate_oacc_kernels): Use
oacc_fn_attrib_kernels_p.
* tree-parloops.c (create_parallel_loop): Adjust
set_oacc_fn_attrib call.

From-SVN: r232830

8 years agore PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on...
Jakub Jelinek [Tue, 26 Jan 2016 14:25:56 +0000 (15:25 +0100)]
re PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on the compile side only)

PR lto/69254
* lto-wrapper.c (merge_and_complain): Handle -fcilkplus.
(append_compiler_options): Handle -fcilkplus.
(append_linker_options): Ignore -fno-{openmp,openacc,cilkplus}.

From-SVN: r232829

8 years agore PR target/66655 (miscompilation due to ipa-ra on MinGW)
Nick Clifton [Tue, 26 Jan 2016 14:02:11 +0000 (14:02 +0000)]
re PR target/66655 (miscompilation due to ipa-ra on MinGW)

PR target/66655
* config/i386/winnt.c (i386_pe_binds_local_p): If a function has
been marked as DECL_ONE_ONLY but we do not the means to make it
so, then do not allow it to bind locally.

From-SVN: r232828

8 years agore PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on...
Jakub Jelinek [Tue, 26 Jan 2016 13:01:44 +0000 (14:01 +0100)]
re PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on the compile side only)

PR lto/69254
* opts.h (parse_sanitizer_options): New prototype.
* opts.c (sanitizer_opts): New array.
(parse_sanitizer_options): New function.
(common_handle_option): Use parse_sanitizer_options.

From-SVN: r232826

8 years agoUpdate stack alignment in ix86_update_stack_boundary
H.J. Lu [Tue, 26 Jan 2016 12:51:07 +0000 (12:51 +0000)]
Update stack alignment in ix86_update_stack_boundary

Stack alignment adjustment for __tls_get_addr should be done in
ix86_update_stack_boundary, not ix86_compute_frame_layout.  Also
there is no need to over-align stack for __tls_get_addr and function
with __tls_get_addr call isn't a leaf function.

gcc/

PR target/68986
* config/i386/i386.c (ix86_compute_frame_layout): Move stack
alignment adjustment to ...
(ix86_update_stack_boundary): Here.  Don't over-align stack for
__tls_get_addr.
(ix86_finalize_stack_realign_flags): Use stack_alignment_needed
if __tls_get_addr is called.

gcc/testsuite/

PR target/68986
* gcc.target/i386/pr68986-1.c: New test.
* gcc.target/i386/pr68986-2.c: Likewise.
* gcc.target/i386/pr68986-3.c: Likewise.

From-SVN: r232825

8 years agoremove arm_crypto_pragma test selector
Christian Bruel [Tue, 26 Jan 2016 12:45:13 +0000 (13:45 +0100)]
remove arm_crypto_pragma test selector

From-SVN: r232824

8 years ago* config/ia64/ia64.c (ia64_expand_vecint_compare): Use gen_int_mode.
Eric Botcazou [Tue, 26 Jan 2016 12:06:36 +0000 (12:06 +0000)]
* config/ia64/ia64.c (ia64_expand_vecint_compare): Use gen_int_mode.

From-SVN: r232822

8 years agore PR tree-optimization/69467 (Pattern X * C1 CMP 0 to X CMP 0 causes performance...
Richard Biener [Tue, 26 Jan 2016 12:05:22 +0000 (12:05 +0000)]
re PR tree-optimization/69467 (Pattern X * C1 CMP 0 to X CMP 0 causes performance drop on 32-bit x86.)

2016-01-26  Richard Biener  <rguenther@suse.de>

PR middle-end/69467
* match.pd: Guard X * CST CMP 0 pattern with single_use.

From-SVN: r232821

8 years agore PR tree-optimization/69452 (gcc ICE at -O3 on x86_64-linux-gnu in with verify_ssa...
Richard Biener [Tue, 26 Jan 2016 11:51:01 +0000 (11:51 +0000)]
re PR tree-optimization/69452 (gcc ICE at -O3 on x86_64-linux-gnu in with verify_ssa failed)

2016-01-26  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69452
* tree-ssa-loop-im.c (move_computations_dom_walker): Remove.
(move_computations_dom_walker::before_dom_children): Rename
to ...
(move_computations_worker): This.
(move_computations): Perform an RPO rather than a DOM walk.

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

From-SVN: r232820

8 years agore PR target/69442 (wrong code with -Og and 64bit modulo @ armv7a)
Jakub Jelinek [Tue, 26 Jan 2016 11:12:03 +0000 (12:12 +0100)]
re PR target/69442 (wrong code with -Og and 64bit modulo @ armv7a)

PR target/69442
* combine.c (combine_instructions): For REG_EQUAL note with
SET_DEST being ZERO_EXTRACT, also temporarily set SET_DEST
to the underlying register.
* doc/rtl.texi (REG_EQUAL): Document the behavior of
REG_EQUAL/REG_EQUIV notes if SET_DEST is ZERO_EXTRACT.

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

From-SVN: r232819

8 years ago[PATCH] Do not set structural equality on polynomial types
Roger Ferrer Ibáñez [Tue, 26 Jan 2016 10:04:46 +0000 (10:04 +0000)]
[PATCH] Do not set structural equality on polynomial types

gcc/ChangeLog:

PR target/67896
* config/aarch64/aarch64-builtins.c
(aarch64_init_simd_builtin_types): Do not set structural
equality to __Poly{8,16,64,128}_t types.

gcc/testsuite/ChangeLog:

PR target/67896
* gcc.target/aarch64/simd/pr67896.C: New.

From-SVN: r232818

8 years agoPR 69400: Invalid 128-bit modulus result
Richard Sandiford [Tue, 26 Jan 2016 09:53:33 +0000 (09:53 +0000)]
PR 69400: Invalid 128-bit modulus result

As described in the PR, wi::divmod_internal was sign- rather than
zero-extending a modulus result in cases where the result has fewer
HWIs than the precision and the upper bit of the upper HWI was set.

This patch tries to make things more robust by getting wi_pack
to handle the canonicalisation step itself.

Tested on x86_64-linux-gnu.  I added tests to the wide-int
plugin since that seemed more direct.

gcc/
PR tree-optimization/69400
* wide-int.cc (wi_pack): Take the precision as argument and
perform canonicalization here rather than in the callers.
Use the main loop to handle all full-width HWIs.  Add a
zero HWI if in_len isn't a full result.
(wi::divmod_internal): Update accordingly.
(wi::mul_internal): Likewise.  Simplify.

gcc/testsuite/
PR tree-optimization/69400
* gcc.dg/plugin/wide-int_plugin.c (test_wide_int_mod_trunc): New
function.
(plugin_init): Call it.
* gcc.dg/torture/pr69400.c: New test.

From-SVN: r232817

8 years agopr68674.c: Check and use arm_fp effective target.
Christophe Lyon [Tue, 26 Jan 2016 09:45:43 +0000 (09:45 +0000)]
pr68674.c: Check and use arm_fp effective target.

2016-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/arm/pr68674.c: Check and use arm_fp effective target.

From-SVN: r232816

8 years agoAdd missing includes in JIT frontend.
Iain Buclaw [Tue, 26 Jan 2016 08:53:17 +0000 (08:53 +0000)]
Add missing includes in JIT frontend.

gcc/jit/
* jit-playback.c: Include pthread.h.

From-SVN: r232815

8 years agonew scop schedule for isl-0.15
Aditya Kumar [Tue, 26 Jan 2016 00:19:20 +0000 (00:19 +0000)]
new scop schedule for isl-0.15

Keep unchanged the implementation for isl-0.14.

* graphite-poly.c (apply_poly_transforms): Simplify.
(print_isl_set): Use more readable format: ISL_YAML_STYLE_BLOCK.
(print_isl_map): Same.
(print_isl_union_map): Same.
(print_isl_schedule): New.
(debug_isl_schedule): New.
* graphite-dependences.c (scop_get_reads): Do not call
isl_union_map_add_map that is undocumented isl functionality.
(scop_get_must_writes): Same.
(scop_get_may_writes): Same.
(scop_get_original_schedule): Remove.
(scop_get_dependences): Do not call isl_union_map_compute_flow that
is deprecated in isl 0.15.  Instead, use isl_union_access_* interface.
(compute_deps): Remove.
* graphite-isl-ast-to-gimple.c (print_schedule_ast): New.
(debug_schedule_ast): New.
(translate_isl_ast_to_gimple::scop_to_isl_ast): Call set_separate_option.
(graphite_regenerate_ast_isl): Add dump.
(translate_isl_ast_to_gimple::scop_to_isl_ast): Generate code
from scop->transformed_schedule.
(graphite_regenerate_ast_isl): Add more dump.
* graphite-optimize-isl.c (optimize_isl): Set
scop->transformed_schedule.  Check whether schedules are equal.
(apply_poly_transforms): Move here.
* graphite-poly.c (apply_poly_transforms): ... from here.
(free_poly_bb): Static.
(free_scop): Static.
(pbb_number_of_iterations_at_time): Remove.
(print_isl_ast): New.
(debug_isl_ast): New.
(debug_scop_pbb): New.
* graphite-scop-detection.c (print_edge): Move.
(print_sese): Move.
* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Remove.
(build_scop_scattering): Remove.
(create_pw_aff_from_tree): Assert instead of bailing out.
(add_condition_to_pbb): Remove unused code, do not fail.
(add_conditions_to_domain): Same.
(add_conditions_to_constraints): Remove.
(build_scop_context): New.
(add_iter_domain_dimension): New.
(build_iteration_domains): Initialize pbb->iterators.
Call add_conditions_to_domain.
(nested_in): New.
(loop_at): New.
(index_outermost_in_loop): New.
(index_pbb_in_loop): New.
(outermost_pbb_in): New.
(add_in_sequence): New.
(add_outer_projection): New.
(outer_projection_mupa): New.
(add_loop_schedule): New.
(build_schedule_pbb): New.
(build_schedule_loop): New.
(embed_in_surrounding_loops): New.
(build_schedule_loop_nest): New.
(build_original_schedule): New.
(build_poly_scop): Call build_original_schedule.
* graphite.h: Declare print_isl_schedule and debug_isl_schedule.
(free_poly_dr): Remove.
(struct poly_bb): Add iterators.  Remove schedule, transformed, saved.
(free_poly_bb): Remove.
(debug_loop_vec): Remove.
(print_isl_ast): Declare.
(debug_isl_ast): Declare.
(scop_do_interchange): Remove.
(scop_do_strip_mine): Remove.
(scop_do_block): Remove.
(flatten_all_loops): Remove.
(optimize_isl): Remove.
(pbb_number_of_iterations_at_time): Remove.
(debug_scop_pbb): Declare.
(print_schedule_ast): Declare.
(debug_schedule_ast): Declare.
(struct scop): Remove schedule.  Add original_schedule,
transformed_schedule.
(free_gimple_poly_bb): Remove.
(print_generated_program): Remove.
(debug_generated_program): Remove.
(unify_scattering_dimensions): Remove.
* sese.c (print_edge): ... here.
(print_sese): ... here.
(debug_edge): ... here.
(debug_sese): ... here.
* sese.h (print_edge): Declare.
(print_sese): Declare.
(dump_edge): Declare.
(dump_sese): Declare.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232812

8 years agofix PR68343: disable fuse-*.c tests for isl 0.14 or earlier
Aditya Kumar [Tue, 26 Jan 2016 00:19:11 +0000 (00:19 +0000)]
fix PR68343: disable fuse-*.c tests for isl 0.14 or earlier

The patch disables all fuse-*.c tests when configuring gcc with isl 0.14 or earlier.

ChangeLog:

* Makefile.in: Regenerate.
* Makefile.tpl: Export ISLVER.
* configure: Regenerate.
* config/isl.m4: Detect isl-0.15.

gcc/

* Makefile.in: Set ISLVER in site.exp.

gcc/testsuite/

* gcc.dg/graphite/graphite.exp: Only run the fuse-*.c tests with isl-0.15.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232811

8 years agoadd missing testcase
Aditya Kumar [Tue, 26 Jan 2016 00:18:56 +0000 (00:18 +0000)]
add missing testcase

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r232810

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

From-SVN: r232809

8 years agore PR target/69444 (recent changes broke x64_64 -> powerpc crosscompiler build)
Jakub Jelinek [Mon, 25 Jan 2016 21:37:08 +0000 (22:37 +0100)]
re PR target/69444 (recent changes broke x64_64 -> powerpc crosscompiler build)

PR target/69444
* config/rs6000/sfp-machine.h: Fix a typo in #ifndef - __NO_FPRS__
instead of ___NO_FPRS__.

From-SVN: r232805

8 years agoomp-low.c (lower_omp_target): Set DECL_VALUE_EXPR of new_var even for the non-array...
Jakub Jelinek [Mon, 25 Jan 2016 21:34:06 +0000 (22:34 +0100)]
omp-low.c (lower_omp_target): Set DECL_VALUE_EXPR of new_var even for the non-array case.

* omp-low.c (lower_omp_target) <case USE_DEVICE_PTR>: Set
DECL_VALUE_EXPR of new_var even for the non-array case.  Look
through DECL_VALUE_EXPR for expansion.

* c-c++-common/goacc/use_device-1.c: New test.

From-SVN: r232804

8 years agomips.c (mips_compute_frame_info): Skip re-computing the frame info after reload compl...
Bernd Edlinger [Mon, 25 Jan 2016 20:33:52 +0000 (20:33 +0000)]
mips.c (mips_compute_frame_info): Skip re-computing the frame info after reload completed.

        * config/mips/mips.c (mips_compute_frame_info): Skip re-computing
        the frame info after reload completed.

From-SVN: r232803

8 years agore PR tree-optimization/69196 (code size regression with jump threading at -O2)
Jeff Law [Mon, 25 Jan 2016 19:19:09 +0000 (12:19 -0700)]
re PR tree-optimization/69196 (code size regression with jump threading at -O2)

PR tree-optimization/69196
PR tree-optimization/68398
* tree-ssa-threadupdate.h (enum bb_dom_status): Moved here from
tree-ssa-threadupdate.c.
(determine_bb_domination_status): Prototype
* tree-ssa-threadupdate.c (enum bb_dom_status): Remove
(determine_bb_domination_status): No longer static.
(valid_jump_thread_path): Remove code to detect characteristics
of the jump thread path not associated with correctness.
* tree-ssa-threadbackward.c (fsm_find_control_statment_thread_paths):
Correct test for thread path length.  Count PHIs for real operands as
statements that need to be copied.  Do not count ASSERT_EXPRs.
Look at all the blocks in the thread path.  Compute and selectively
filter thread paths based on threading through the latch, threading
a multiway branch or crossing a multiway branch.

PR tree-optimization/69196
PR tree-optimization/68398
* gcc.dg/tree-ssa/pr66752-3.c: Update expected output
* gcc.dg/tree-ssa/pr68198.c: Likewise.

From-SVN: r232802

8 years agoAvoid including all of <random> in <algorithm>
Jonathan Wakely [Mon, 25 Jan 2016 16:44:30 +0000 (16:44 +0000)]
Avoid including all of <random> in <algorithm>

PR libstdc++/69464
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* include/bits/random.h (uniform_int_distribution): Move to
bits/uniform_int_dist.h.
* include/bits/random.tcc (uniform_int_distribution::operator(),
uniform_int_distribution::__generate_impl): Likewise.
* include/bits/uniform_int_dist.h: New header.
* include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
<bits/uniform_int_dist.h> instead of <random>.
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
move_iterators/1.cc: Include correct header for uninitialized_copy.
* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/nth_element/58800.cc: Include correct
header for vector.
* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.

From-SVN: r232798

8 years agore PR target/69469 (test case gcc.target/powerpc/vsx-vector-2.c fails on power starti...
David Edelsohn [Mon, 25 Jan 2016 16:16:21 +0000 (16:16 +0000)]
re PR target/69469 (test case gcc.target/powerpc/vsx-vector-2.c fails on power starting with r232632)

        PR target/69469
        * gcc.target/powerpc/vsx-vector-2.c: Adjust for Goldschmidt's
        Algorithm.

From-SVN: r232796

8 years agore PR testsuite/69380 (FAIL: g++.dg/tree-ssa/pr69336.C scan-tree-dump-not optimized...
Richard Biener [Mon, 25 Jan 2016 14:42:39 +0000 (14:42 +0000)]
re PR testsuite/69380 (FAIL: g++.dg/tree-ssa/pr69336.C   scan-tree-dump-not optimized "cmap")

2016-01-25  Richard Biener  <rguenther@suse.de>

PR testsuite/69380
* g++.dg/tree-ssa/pr69336.C: Restrict to x86_64 and i?86.

From-SVN: r232795

8 years agors6000.c (rs6000_keep_leaf_when_profiled): Add decl with __attribute__ ((unused)...
Bill Schmidt [Mon, 25 Jan 2016 14:06:28 +0000 (14:06 +0000)]
rs6000.c (rs6000_keep_leaf_when_profiled): Add decl with __attribute__ ((unused)) annotation.

2016-01-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_keep_leaf_when_profiled):  Add
decl with __attribute__ ((unused)) annotation.

From-SVN: r232793

8 years agore PR target/69421 (ICE in maybe_legitimize_operand, at optabs.c:6888 with -O3)
Ilya Enkovich [Mon, 25 Jan 2016 12:48:54 +0000 (12:48 +0000)]
re PR target/69421 (ICE in maybe_legitimize_operand, at optabs.c:6888 with -O3)

gcc/

PR target/69421
* tree-vect-stmts.c (vectorizable_condition): Check vectype
of operands is compatible with a statement vectype.

gcc/testsuite/

PR target/69421
* gcc.dg/pr69421.c: New test.

From-SVN: r232792

8 years agoextend.texi (scalar_storage_order type attribute): Fix typo and improve wording for...
Eric Botcazou [Mon, 25 Jan 2016 11:42:25 +0000 (11:42 +0000)]
extend.texi (scalar_storage_order type attribute): Fix typo and improve wording for mixed storage order support.

* doc/extend.texi (scalar_storage_order type attribute): Fix typo and
improve wording for mixed storage order support.

From-SVN: r232791

8 years ago[AARCH64][ACLE][NEON] Implement vcvt*_s64_f64 and vcvt*_u64_f64 NEON intrinsics.
Bilyan Borisov [Mon, 25 Jan 2016 11:32:07 +0000 (11:32 +0000)]
[AARCH64][ACLE][NEON] Implement vcvt*_s64_f64 and vcvt*_u64_f64 NEON intrinsics.

gcc/

* config/aarch64/arm_neon.h (vcvt_s64_f64): New intrinsic.
(vcvt_u64_f64): Likewise.
(vcvta_s64_f64): Likewise.
(vcvta_u64_f64): Likewise.
(vcvtm_s64_f64): Likewise.
(vcvtm_u64_f64): Likewise.
(vcvtn_s64_f64): Likewise.
(vcvtn_u64_f64): Likewise.
(vcvtp_s64_f64): Likewise.
(vcvtp_u64_f64): Likewise.

gcc/testsuite/

* gcc.target/aarch64/simd/vcvt_s64_f64_1.c: New.
* gcc.target/aarch64/simd/vcvt_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvta_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvta_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtm_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtm_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtn_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtn_u64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtp_s64_f64_1.c: Likewise.
* gcc.target/aarch64/simd/vcvtp_u64_f64_1.c: Likewise.

From-SVN: r232789

8 years ago[ARC] Add basic support for double load and store instructions
Claudiu Zissulescu [Mon, 25 Jan 2016 11:15:58 +0000 (12:15 +0100)]
[ARC] Add basic support for double load and store instructions

gcc/
2016-01-25  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.c (TARGET_DWARF_REGISTER_SPAN): Define.
(arc_init): Check validity mll64 option.
(arc_save_restore): Use double load/store instruction.
(arc_expand_movmem): Likewise.
(arc_split_move): Don't split if we have double load/store
instructions. Returns a boolean.
(arc_process_double_reg_moves): Change function to return boolean
instead of a sequence of instructions.
(arc_dwarf_register_span): New function.
* config/arc/arc-protos.h (arc_split_move): Change prototype.
* config/arc/arc.h (TARGET_CPU_CPP_BUILTINS): Define __ARC_LL64__.
* config/arc/arc.md (*movdi_insn): Emit ldd/std instructions.
(*movdf_insn): Likewise.
* config/arc/arc.opt (mll64): New option.
* config/arc/predicates.md (even_register_operand): New predicate.
* doc/invoke.texi (ARC Options): Add mll64 documentation.

From-SVN: r232788

8 years agore PR lto/69393 (ICE in dwarf2out_finish, at dwarf2out.c:27175 with LTO)
Richard Biener [Mon, 25 Jan 2016 09:31:47 +0000 (09:31 +0000)]
re PR lto/69393 (ICE in dwarf2out_finish, at dwarf2out.c:27175 with LTO)

2016-01-25  Richard Biener  <rguenther@suse.de>

PR lto/69393
* dwarf2out.c (is_naming_typedef_decl): Not when DECL_NAMELESS.
* tree-streamer-out.c (pack_ts_base_value_fields): Stream
DECL_NAMELESS.
* tree-streamer-in.c (unpack_ts_base_value_fields): Likewise.

* testsuite/libgomp.c++/pr69393.C: New testcase.

From-SVN: r232787

8 years agore PR tree-optimization/69376 (wrong code at -Os and above on x86_64-linux-gnu)
Richard Biener [Mon, 25 Jan 2016 09:05:47 +0000 (09:05 +0000)]
re PR tree-optimization/69376 (wrong code at -Os and above on x86_64-linux-gnu)

2016-01-25  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69376
* tree-ssa-sccvn.h (struct vn_ssa_aux): Add range_info_anti_range_p
flag.
(VN_INFO_ANTI_RANGE_P): New inline.
(VN_INFO_RANGE_TYPE): Likewise.
* tree-ssa-sccvn.c (set_ssa_val_to): Also record and copy
SSA_NAME_ANTI_RANGE_P.
(free_scc_vn): Restore SSA_NAME_ANTI_RANGE_P.
* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Properly query VN_INFO_RANGE_TYPE.

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

From-SVN: r232786

8 years agore PR target/66655 (miscompilation due to ipa-ra on MinGW)
Nick Clifton [Mon, 25 Jan 2016 08:57:02 +0000 (08:57 +0000)]
re PR target/66655 (miscompilation due to ipa-ra on MinGW)

PR target/66655
* config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Remove definition.

From-SVN: r232785

8 years agoDaily bump.
GCC Administrator [Mon, 25 Jan 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r232783

8 years ago[multiple changes]
Jerry DeLisle [Sun, 24 Jan 2016 22:18:20 +0000 (22:18 +0000)]
[multiple changes]

2016-01-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/69397
PR fortran/68442
* interface.c (gfc_arglist_matches_symbol): Replace assert with
a return false if not a procedure.
* resolve.c (resolve_generic_f): Test if we are resolving an
initialization expression and adjust error message accordingly.

2016-01-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/69397
PR fortran/68442
* gfortran.dg/interface_38.f90: New test.
* gfortran.dg/interface_39.f90: New test.

From-SVN: r232780

8 years agore PR fortran/66094 (Handle transpose(A) in inline matmul)
Thomas Koenig [Sun, 24 Jan 2016 18:15:08 +0000 (18:15 +0000)]
re PR fortran/66094 (Handle transpose(A) in inline matmul)

2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66094
* frontend-passes.c (matmul_lhs_realloc):  Add
forgotten break statement.

From-SVN: r232779

8 years agoRevert "Fix the remaining PR c++/24666 blockers"
Patrick Palka [Sun, 24 Jan 2016 17:45:21 +0000 (17:45 +0000)]
Revert "Fix the remaining PR c++/24666 blockers"

gcc/cp/ChangeLog:

Revert:
2016-01-18  Patrick Palka  <ppalka@gcc.gnu.org>

PR c++/11858
PR c++/24663
PR c++/24664
* decl.c (grokdeclarator): Don't decay array parameter type to
a pointer type if it's dependent.
(grokparms): Invoke strip_top_quals instead of directly invoking
cp_build_qualified_type.
* pt.c (decay_dependent_array_parm_type): New static function.
(type_unification_real): Call decay_dependent_array_parm_type
to decay a dependent array parameter type to its corresponding
pointer type before unification.
(more_specialized_fn): Likewise.
(get_bindings): Likewise.
* tree.c (cp_build_qualified_type): Trivial typofix in
documentation.

gcc/testsuite/ChangeLog:

Revert:
2016-01-18  Patrick Palka  <ppalka@gcc.gnu.org>

PR c++/11858
PR c++/24663
PR c++/24664
* g++.dg/template/pr11858.C: New test.
* g++.dg/template/pr24663.C: New test.
* g++.dg/template/unify12.C: New test.
* g++.dg/template/unify13.C: New test.
* g++.dg/template/unify14.C: New test.
* g++.dg/template/unify15.C: New test.
* g++.dg/template/unify16.C: New test.
* g++.dg/template/unify17.C: New test.

From-SVN: r232778

8 years agoPass LSAN_OPTIONS to Makefiles in subdirectories
Mikhail Maltsev [Sun, 24 Jan 2016 15:32:17 +0000 (15:32 +0000)]
Pass LSAN_OPTIONS to Makefiles in subdirectories

PR bootstrap/69329
* Makefile.tpl (BASE_FLAGS_TO_PASS): Add LSAN_OPTIONS.
* Makefile.in: Regenerate.

From-SVN: r232777

8 years agore PR fortran/68283 (ice: gfc_variable_attr(): Bad array reference)
Dominique d'Humieres [Sun, 24 Jan 2016 13:13:38 +0000 (14:13 +0100)]
re PR fortran/68283 (ice: gfc_variable_attr(): Bad array reference)

2016-01-24  Dominique d'Humieres  <dominiq@lps.ens.fr>

PR fortran/68283
gfortran.dg/pr68283.f90: New test.

From-SVN: r232776

8 years ago[multiple changes]
Dominique d'Humieres [Sun, 24 Jan 2016 13:12:44 +0000 (14:12 +0100)]
[multiple changes]

2016-01-24  Dominique d'Humieres <dominiq@lps.ens.fr>

PR fortran/68283
* primary.c (gfc_variable_attr): revert revision r221955,
call gfc_internal_error only if there is no error.

2016-01-24  Dominique d'Humieres  <dominiq@lps.ens.fr>

PR fortran/68283
gfortran.dg/pr68283.f90: New test.

From-SVN: r232775

8 years agore PR fortran/66094 (Handle transpose(A) in inline matmul)
Thomas Koenig [Sun, 24 Jan 2016 09:11:50 +0000 (09:11 +0000)]
re PR fortran/66094 (Handle transpose(A) in inline matmul)

2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66094
* frontend-passes.c (enum matrix_case):  Add case A2B2T for
MATMUL(A,TRANSPoSE(B)) where A and B are rank 2.
(inline_limit_check):  Also add A2B2T.
(matmul_lhs_realloc):  Handle A2B2T.
(check_conjg_variable):  Rename to
(check_conjg_transpose_variable):  and also count TRANSPOSE.
(inline_matmul_assign):  Handle A2B2T.

2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66094
* gfortran.dg/inline_matmul_13.f90:  New test.
* gfortran.dg/matmul_bounds_8.f90:  New test.
* gfortran.dg/matmul_bounds_9.f90:  New test.
* gfortran.dg/matmul_bounds_10.f90:  New test.

From-SVN: r232774

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

From-SVN: r232773

8 years agore PR libfortran/68744 (FAIL: gfortran.dg/backtrace_1.f90 -O0 execution test)
John David Anglin [Sat, 23 Jan 2016 23:32:13 +0000 (23:32 +0000)]
re PR libfortran/68744 (FAIL: gfortran.dg/backtrace_1.f90   -O0  execution test)

PR libfortran/68744
* runtime/backtrace.c: Include gthr.h.
(show_backtrace): Use __gthread_active_p() to determine whether threads
are active.  Return if lbstate is NULL.

From-SVN: r232770

8 years agore PR libstdc++/69446 (cow-stdexcept.cc:374:1: error: alias d efinitions not supporte...
John David Anglin [Sat, 23 Jan 2016 22:24:59 +0000 (22:24 +0000)]
re PR libstdc++/69446 (cow-stdexcept.cc:374:1: error: alias d efinitions not supported in this configuration)

PR libstdc++/69446
* config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.

From-SVN: r232769

8 years agoFix clobber removal in parloops
Tom de Vries [Sat, 23 Jan 2016 20:28:17 +0000 (20:28 +0000)]
Fix clobber removal in parloops

2016-01-23  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/69426
* tree-parloops.c (eliminate_local_variables_stmt): Handle vdef of
removed clobber.

* gcc.dg/autopar/pr69426.c: New test.

From-SVN: r232767

8 years agoPR c++/58109 - alignas() fails to compile with constant expression
Martin Sebor [Sat, 23 Jan 2016 16:01:47 +0000 (16:01 +0000)]
PR c++/58109 - alignas() fails to compile with constant expression

PR c++/58109 - alignas() fails to compile with constant expression
PR c++/69022 - attribute vector_size ignored with dependent bytes

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

PR c++/58109
PR c++/69022
* g++.dg/cpp0x/alignas5.C: New test.
* g++.dg/ext/vector29.C: Same.

gcc/cp/ChangeLog:
2016-01-23  Martin Sebor  <msebor@redhat.com>

PR c++/58109
PR c++/69022
* decl2.c (is_late_template_attribute): Handle dependent argument
  to attribute align and attribute vector_size.

From-SVN: r232766

8 years agotree-ssanames.c (release_free_names_and_compact_live_names): Replace "the the" with...
Jakub Jelinek [Sat, 23 Jan 2016 14:13:53 +0000 (15:13 +0100)]
tree-ssanames.c (release_free_names_and_compact_live_names): Replace "the the" with "the" in the comments.

* tree-ssanames.c (release_free_names_and_compact_live_names): Replace
"the the" with "the" in the comments.
* ipa-devirt.c (build_type_inheritance_graph,
update_type_inheritance_graph): Likewise.
* tree.c (build_function_type_list_1): Likewise.
* cfgloopmanip.c (scale_loop_profile): Likewise.
* tree-ssa-loop-ivopts.c (get_shiftadd_cost): Likewise.
* gimple-ssa-split-paths.c
(find_block_to_duplicate_for_splitting_paths): Likewise.
* tree-sra.c (init_subtree_with_zero, clobber_subtree): Likewise.
* expr.c (convert_move): Likewise.
* var-tracking.c (vt_stack_adjustments): Likewise.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Likewise.
* tree-vrp.c (test_for_singularity): Likewise.

From-SVN: r232765

8 years agotree-vect-stmts.c (vectorizable_condition): Build a VEC_COND_EXPR directly instead...
Jakub Jelinek [Sat, 23 Jan 2016 09:54:53 +0000 (10:54 +0100)]
tree-vect-stmts.c (vectorizable_condition): Build a VEC_COND_EXPR directly instead of building a temporary tree.

* tree-vect-stmts.c (vectorizable_condition): Build a VEC_COND_EXPR
directly instead of building a temporary tree.

From-SVN: r232764

8 years agore PR bootstrap/69434 (bootstrap failed with --with-arch=corei7 --with-cpu=corei7)
Jakub Jelinek [Sat, 23 Jan 2016 09:54:19 +0000 (10:54 +0100)]
re PR bootstrap/69434 (bootstrap failed with --with-arch=corei7 --with-cpu=corei7)

PR bootstrap/69434
* genrecog.c: Define INCLUDE_ALGORITHM before including system.h,
remove <algorithm> include.

From-SVN: r232763

8 years agochkp-strlen-2.c: Define _GNU_SOURCE.
Uros Bizjak [Sat, 23 Jan 2016 09:29:12 +0000 (10:29 +0100)]
chkp-strlen-2.c: Define _GNU_SOURCE.

* gcc.target/i386/chkp-strlen-2.c: Define _GNU_SOURCE.
* gcc.target/i386/chkp-strlen-4.c: Move the definition of
_GNU_SOURCE from compile flags to the source.
* gcc.target/i386/chkp-stropt-12.c: Ditto.
* gcc.target/i386/chkp-stropt-16.c: Ditto.
* gcc.target/i386/chkp-stropt-4.c: Ditto.
* gcc.target/i386/chkp-stropt-8.c: Ditto.

From-SVN: r232762

8 years agoDaily bump.
GCC Administrator [Sat, 23 Jan 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r232760

8 years agoTR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
Edward Smith-Rowland [Fri, 22 Jan 2016 23:17:10 +0000 (23:17 +0000)]
TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.

2016-01-22  Edward Smith-Rowland  <3dw4rd@verizon.net>

TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
* include/c_compatibility/math.h: Import the TR29124 functions
into the global namespace.
* testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
xfail and make compile-only.
* testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
* testsuite/special_functions/03_beta/compile_2.cc: Ditto.
* testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
* testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
* testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
* testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
* testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
* testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
* testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
* testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
* testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
* testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
* testsuite/special_functions/14_expint/compile_2.cc: Ditto.
* testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
* testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
* testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
* testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
* testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
* testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
* testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.

From-SVN: r232755

8 years agore PR other/69432 (ICE in connect_traces, at dwarf2cfi.c with -O3 -m32 -minline-strin...
Jakub Jelinek [Fri, 22 Jan 2016 23:14:27 +0000 (00:14 +0100)]
re PR other/69432 (ICE in connect_traces, at dwarf2cfi.c with -O3 -m32 -minline-stringops-dynamically)

PR target/69432
* config/i386/i386.c: Include dojump.h.
(expand_small_movmem_or_setmem,
expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Spelling
fixes.
(ix86_expand_set_or_movmem): Call do_pending_stack_adjust () early
if dynamic_check != -1.

* g++.dg/opt/pr69432.C: New test.

From-SVN: r232754

8 years agoFix ChangeLog entry in wrong file
William Schmidt [Fri, 22 Jan 2016 22:06:06 +0000 (22:06 +0000)]
Fix ChangeLog entry in wrong file

From-SVN: r232750

8 years agoConstrain std::valarray functions and operators
Jonathan Wakely [Fri, 22 Jan 2016 21:15:41 +0000 (21:15 +0000)]
Constrain std::valarray functions and operators

PR libstdc++/69116
* include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
define result_type for types which can be safely used with valarrays.
* testsuite/26_numerics/valarray/69116.cc: New.

From-SVN: r232748

8 years agore PR c++/69392 (G++ can't capture 'this' pointer to templated type using init-capture)
Jason Merrill [Fri, 22 Jan 2016 20:36:30 +0000 (15:36 -0500)]
re PR c++/69392 (G++ can't capture 'this' pointer to templated type using init-capture)

PR c++/69392
* lambda.c (lambda_capture_field_type): Handle 'this' specially
for init-capture, too.

From-SVN: r232746

8 years agore PR tree-optimization/69347 (excessive compile time with -O2)
Jeff Law [Fri, 22 Jan 2016 20:18:59 +0000 (13:18 -0700)]
re PR tree-optimization/69347 (excessive compile time with -O2)

PR middle-end/69347
* tree-ssa-dom.c (back_propagate_equivalences): Factored out of
record_temporary_equivalences.  Rewritten to avoid unnecessary calls
into dominated_by_p.
(cprop_into_successor_phis): Avoid unnecessary tests.

From-SVN: r232745

8 years agopr63354c: Adjust target selector to include 32-bit targets testing an -m64 multilib.
Bill Schmidt [Fri, 22 Jan 2016 19:59:23 +0000 (19:59 +0000)]
pr63354c: Adjust target selector to include 32-bit targets testing an -m64 multilib.

2016-01-22  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/pr63354c: Adjust target selector to include
32-bit targets testing an -m64 multilib.

From-SVN: r232744

8 years ago- fix a ChangeLog entry
Bernd Edlinger [Fri, 22 Jan 2016 19:41:04 +0000 (19:41 +0000)]
- fix a ChangeLog entry

From-SVN: r232743

8 years agore PR target/69416 (Nonsense rtl checking failure)
Richard Henderson [Fri, 22 Jan 2016 17:21:41 +0000 (09:21 -0800)]
re PR target/69416 (Nonsense rtl checking failure)

PR target/69416

  * config/aarch64/aarch64.md (UNSPEC_NZCV): New.
  (ccmp<mode>, fccmp<mode>, fccmpe<mode>): Use it.

From-SVN: r232737

8 years agosystem.h (string, algorithm): Include only conditionally.
Michael Matz [Fri, 22 Jan 2016 16:44:10 +0000 (16:44 +0000)]
system.h (string, algorithm): Include only conditionally.

* system.h (string, algorithm): Include only conditionally.
(new): Include always under C++.
* bb-reorder.c (toplevel): Define INCLUDE_ALGORITHM.
* final.c (toplevel): Ditto.
* ipa-chkp.c (toplevel): Define INCLUDE_STRING.
* genconditions.c (write_header): Make gencondmd.c define
INCLUDE_STRING.
* mem-stats.h (mem_usage::print_dash_line): Don't use std::string.

* config/aarch64/aarch64.c (toplevel): Define INCLUDE_STRING.
* common/config/aarch64/aarch64-common.c (toplevel): Ditto.

From-SVN: r232736

8 years agolibitm: Fix HTM fastpath.
Torvald Riegel [Fri, 22 Jan 2016 16:13:06 +0000 (16:13 +0000)]
libitm: Fix HTM fastpath.

* beginend.cc (GTM::gtm_thread::serial_lock): Put on cacheline
boundary.
(htm_fastpath): Remove.
(gtm_thread::begin_transaction): Fix HTM fastpath.
(_ITM_commitTransaction): Adapt.
(_ITM_commitTransactionEH): Adapt.
* libitm/config/linux/rwlock.h (gtm_rwlock): Add htm_fastpath member
and accessors.
* libitm/config/posix/rwlock.h (gtm_rwlock): Likewise.
* libitm/config/posix/rwlock.cc (gtm_rwlock::gtm_rwlock): Adapt.
* libitm/config/x86/sjlj.S (_ITM_beginTransaction): Fix HTM fastpath.
* libitm/libitm_i.h (htm_fastpath): Remove declaration.
* libitm/method-serial.cc (htm_mg): Adapt.
(gtm_thread::serialirr_mode): Adapt.
* libitm/query.cc (_ITM_inTransaction, _ITM_getTransactionId): Adapt.

From-SVN: r232735

8 years agopr63354.c: Restrict to Linux targets with 64-bit support.
Bill Schmidt [Fri, 22 Jan 2016 15:02:14 +0000 (15:02 +0000)]
pr63354.c: Restrict to Linux targets with 64-bit support.

2016-01-22  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/pr63354.c: Restrict to Linux targets with
64-bit support.

From-SVN: r232732

8 years ago[Patch Obvious] gcc.dg/vect/bb-slp-pr68892.c requires vectorization of doubles
James Greenhalgh [Fri, 22 Jan 2016 15:00:43 +0000 (15:00 +0000)]
[Patch Obvious] gcc.dg/vect/bb-slp-pr68892.c requires vectorization of doubles

gcc/testsuite/

* gcc.dg/vect/bb-slp-pr68892.c: Require vect_double.

From-SVN: r232731

8 years agotarget.c (gomp_get_target_fn_addr): Allow host fallback if target function wasn't...
Ilya Verbin [Fri, 22 Jan 2016 14:27:37 +0000 (14:27 +0000)]
target.c (gomp_get_target_fn_addr): Allow host fallback if target function wasn't mapped to the device with...

libgomp/
* target.c (gomp_get_target_fn_addr): Allow host fallback if target
function wasn't mapped to the device with non-shared memory.

From-SVN: r232729

8 years ago[multiple changes]
Christian Bruel [Fri, 22 Jan 2016 14:16:47 +0000 (15:16 +0100)]
[multiple changes]

2016-01-22  Christian Bruel  <christian.bruel@st.com>

PR target/68674
* expr.c (expand_expr_real_1): Reset DECL_MODE if VECTOR_TYPE_P changed.

// testsuite
2016-01-21  Christian Bruel  <christian.bruel@st.com>

PR target/68674
* gcc.target/i386/pr68674.c
* gcc.target/aarch64/pr68674.c
* gcc.target/arm/pr68674.c

From-SVN: r232728

8 years ago[ARM] Fix PR target/69403: Bug in thumb2_ior_scc_strict_it pattern
Kyrylo Tkachov [Fri, 22 Jan 2016 13:58:11 +0000 (13:58 +0000)]
[ARM] Fix PR target/69403: Bug in thumb2_ior_scc_strict_it pattern

PR target/69403
* config/arm/thumb2.md (*thumb2_ior_scc_strict_it): Convert to
define_insn_and_split.  Ensure operands[1] and operands[0] do not
get assigned the same register.

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

From-SVN: r232727

8 years agoAllow _GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN to be overridden
Jonathan Wakely [Fri, 22 Jan 2016 12:47:26 +0000 (12:47 +0000)]
Allow _GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN to be overridden

PR libstdc++/69413
* config/os/gnu-linux/os_defines.h: Define
_GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
* include/c_global/cmath (isinf, isnan): Check it.
* doc/xml/manual/internals.xml: Document it.
* doc/html/*: Regenerate.

From-SVN: r232726

8 years agoipa-prop.c (ipa_set_jf_constant): Remove redundant unshare_expr.
Kugan Vivekanandarajah [Fri, 22 Jan 2016 12:09:58 +0000 (12:09 +0000)]
ipa-prop.c (ipa_set_jf_constant): Remove redundant unshare_expr.

gcc/ChangeLog:

2016-01-22  Kugan Vivekanandarajah  <kuganv@linaro.org>

* ipa-prop.c (ipa_set_jf_constant): Remove redundant unshare_expr.

From-SVN: r232725

8 years agomissed : in log
Christian Bruel [Fri, 22 Jan 2016 11:24:47 +0000 (12:24 +0100)]
missed : in log

From-SVN: r232724

8 years ago2016-01-22 Christian Bruel <christian.bruel@st.com>
Christian Bruel [Fri, 22 Jan 2016 11:20:08 +0000 (12:20 +0100)]
2016-01-22  Christian Bruel  <christian.bruel@st.com>

* config/arm/arm-c.c (arm_pragma_target_parse)
Remove warn_builtin_macro_redefined overwrite.

From-SVN: r232723

8 years agoipa-inline.c (can_inline_edge_p): Back out overzealous check on flag_non_call_excepti...
Eric Botcazou [Fri, 22 Jan 2016 11:06:06 +0000 (11:06 +0000)]
ipa-inline.c (can_inline_edge_p): Back out overzealous check on flag_non_call_exceptions compatibility.

* ipa-inline.c (can_inline_edge_p): Back out overzealous check on
flag_non_call_exceptions compatibility.

From-SVN: r232722

8 years agore PR c++/55843 (ICE after exceeding template instantiation depth)
Paolo Carlini [Fri, 22 Jan 2016 11:03:54 +0000 (11:03 +0000)]
re PR c++/55843 (ICE after exceeding template instantiation depth)

2016-01-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55843
* g++.dg/template/pr55843.C: New.

From-SVN: r232721

8 years ago[Testsuite] Fix PR66877
Alan Lawrence [Fri, 22 Jan 2016 10:56:43 +0000 (10:56 +0000)]
[Testsuite] Fix PR66877

* gcc.dg/vect/vect-over-widen-3-big-array.c: Only look for 1
vect_recog_over_widening_pattern in dump if we have vect_widen_shift.

From-SVN: r232720

8 years agore PR debug/66668 (FAIL: gcc.dg/debug/dwarf2/stacked-qualified-types-3.c scan-assembl...
Jakub Jelinek [Fri, 22 Jan 2016 09:40:54 +0000 (10:40 +0100)]
re PR debug/66668 (FAIL: gcc.dg/debug/dwarf2/stacked-qualified-types-3.c scan-assembler-times DIE \\([^\n]*\\) DW_TAG_(?:const|volatile|atomic|restrict)_type 8)

PR debug/66668
* dwarf2out.c (add_child_die_after): New function.
(dwarf_qual_info_t): New type.
(dwarf_qual_info): New variable.
(qualified_die_p): New function.
(modified_type_die): For -fdebug-types-section, ensure
canonical order of qualifiers.  Put qualified DIEs adjacent
to the corresponding non-qualified type DIE and search there
for existing qualified DIEs.

From-SVN: r232719