platform/upstream/linaro-gcc.git
8 years agoPR 69400: Invalid 128-bit modulus result
rsandifo [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232817 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-26 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Tue, 26 Jan 2016 09:45:43 +0000 (09:45 +0000)]
2016-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232816 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAdd missing includes in JIT frontend.
ibuclaw [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232815 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agonew scop schedule for isl-0.15
spop [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232812 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agofix PR68343: disable fuse-*.c tests for isl 0.14 or earlier
spop [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232811 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232810 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232809 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69444
jakub [Mon, 25 Jan 2016 21:37:08 +0000 (21:37 +0000)]
PR target/69444
* config/rs6000/sfp-machine.h: Fix a typo in #ifndef - __NO_FPRS__
instead of ___NO_FPRS__.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232805 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * omp-low.c (lower_omp_target) <case USE_DEVICE_PTR>: Set
jakub [Mon, 25 Jan 2016 21:34:06 +0000 (21:34 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232804 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/mips/mips.c (mips_compute_frame_info): Skip re-computing
edlinger [Mon, 25 Jan 2016 20:33:52 +0000 (20:33 +0000)]
    * config/mips/mips.c (mips_compute_frame_info): Skip re-computing
        the frame info after reload completed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232803 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR tree-optimization/69196
law [Mon, 25 Jan 2016 19:19:09 +0000 (19:19 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232802 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAvoid including all of <random> in <algorithm>
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232798 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69469
dje [Mon, 25 Jan 2016 16:16:21 +0000 (16:16 +0000)]
    PR target/69469
        * gcc.target/powerpc/vsx-vector-2.c: Adjust for Goldschmidt's
        Algorithm.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232796 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Jan 2016 14:42:39 +0000 (14:42 +0000)]
2016-01-25  Richard Biener  <rguenther@suse.de>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232795 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Mon, 25 Jan 2016 14:06:28 +0000 (14:06 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232793 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/
ienkovich [Mon, 25 Jan 2016 12:48:54 +0000 (12:48 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232792 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232791 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[AARCH64][ACLE][NEON] Implement vcvt*_s64_f64 and vcvt*_u64_f64 NEON intrinsics.
jgreenhalgh [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232789 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARC] Add basic support for double load and store instructions
claziss [Mon, 25 Jan 2016 11:15:58 +0000 (11:15 +0000)]
[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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232788 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Jan 2016 09:31:47 +0000 (09:31 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232787 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Jan 2016 09:05:47 +0000 (09:05 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232786 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/66655
nickc [Mon, 25 Jan 2016 08:57:02 +0000 (08:57 +0000)]
PR target/66655
* config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Remove definition.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232785 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232783 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 24 Jan 2016 22:18:20 +0000 (22:18 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232780 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-24 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 24 Jan 2016 18:15:08 +0000 (18:15 +0000)]
2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232779 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoRevert "Fix the remaining PR c++/24666 blockers"
ppalka [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232778 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPass LSAN_OPTIONS to Makefiles in subdirectories
miyuki [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232777 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-24 Dominique d'Humieres <dominiq@lps.ens.fr>
dominiq [Sun, 24 Jan 2016 13:13:38 +0000 (13:13 +0000)]
2016-01-24  Dominique d'Humieres  <dominiq@lps.ens.fr>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232776 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-24 Dominique d'Humieres <dominiq@lps.ens.fr>
dominiq [Sun, 24 Jan 2016 13:12:44 +0000 (13:12 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232775 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-24 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 24 Jan 2016 09:11:50 +0000 (09:11 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232774 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232773 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR libfortran/68744
danglin [Sat, 23 Jan 2016 23:32:13 +0000 (23:32 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232770 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR libstdc++/69446
danglin [Sat, 23 Jan 2016 22:24:59 +0000 (22:24 +0000)]
PR libstdc++/69446
* config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232769 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix clobber removal in parloops
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232767 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR c++/58109 - alignas() fails to compile with constant expression
msebor [Sat, 23 Jan 2016 16:01:47 +0000 (16:01 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232766 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * tree-ssanames.c (release_free_names_and_compact_live_names): Replace
jakub [Sat, 23 Jan 2016 14:13:53 +0000 (14:13 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232765 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232764 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR bootstrap/69434
jakub [Sat, 23 Jan 2016 09:54:19 +0000 (09:54 +0000)]
PR bootstrap/69434
* genrecog.c: Define INCLUDE_ALGORITHM before including system.h,
remove <algorithm> include.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232763 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * gcc.target/i386/chkp-strlen-2.c: Define _GNU_SOURCE.
uros [Sat, 23 Jan 2016 09:29:12 +0000 (09:29 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232762 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232760 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
emsr [Fri, 22 Jan 2016 23:17:10 +0000 (23:17 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232755 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69432
jakub [Fri, 22 Jan 2016 23:14:27 +0000 (23:14 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232754 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232750 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoConstrain std::valarray functions and operators
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232748 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/69392
jason [Fri, 22 Jan 2016 20:36:30 +0000 (20:36 +0000)]
PR c++/69392
* lambda.c (lambda_capture_field_type): Handle 'this' specially
for init-capture, too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232746 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR middle-end/69347
law [Fri, 22 Jan 2016 20:18:59 +0000 (20:18 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232745 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Fri, 22 Jan 2016 19:59:23 +0000 (19:59 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232744 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232743 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR target/69416
rth [Fri, 22 Jan 2016 17:21:41 +0000 (17:21 +0000)]
PR target/69416

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232737 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * system.h (string, algorithm): Include only conditionally.
matz [Fri, 22 Jan 2016 16:44:10 +0000 (16:44 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232736 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agolibitm: Fix HTM fastpath.
torvald [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232735 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Fri, 22 Jan 2016 15:02:14 +0000 (15:02 +0000)]
2016-01-22  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232732 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[Patch Obvious] gcc.dg/vect/bb-slp-pr68892.c requires vectorization of doubles
jgreenhalgh [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232731 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agolibgomp/
iverbin [Fri, 22 Jan 2016 14:27:37 +0000 (14:27 +0000)]
libgomp/
* target.c (gomp_get_target_fn_addr): Allow host fallback if target
function wasn't mapped to the device with non-shared memory.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232729 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-22 Christian Bruel <christian.bruel@st.com>
chrbr [Fri, 22 Jan 2016 14:16:47 +0000 (14:16 +0000)]
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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232728 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM] Fix PR target/69403: Bug in thumb2_ior_scc_strict_it pattern
ktkachov [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232727 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAllow _GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN to be overridden
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232726 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/ChangeLog:
kugan [Fri, 22 Jan 2016 12:09:58 +0000 (12:09 +0000)]
gcc/ChangeLog:

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

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232725 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232724 138bc75d-0d04-0410-961f-82ee72b054a4

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

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232723 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * ipa-inline.c (can_inline_edge_p): Back out overzealous check on
ebotcazou [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232722 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-22 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 22 Jan 2016 11:03:54 +0000 (11:03 +0000)]
2016-01-22  Paolo Carlini  <paolo.carlini@oracle.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232721 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[Testsuite] Fix PR66877
alalaw01 [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232720 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR debug/66668
jakub [Fri, 22 Jan 2016 09:40:54 +0000 (09:40 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232719 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * doc/extend.texi (scalar_storage_order type attribute): Document
ebotcazou [Fri, 22 Jan 2016 09:25:58 +0000 (09:25 +0000)]
* doc/extend.texi (scalar_storage_order type attribute): Document
restriction on type punning and aliasing, and remove future tense.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232718 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-21 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Fri, 22 Jan 2016 03:01:27 +0000 (03:01 +0000)]
2016-01-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR testsuite/67489
* gcc.target/powerpc/p8vector-builtin-8.c: Remove { target int128
} from dg-do compile directive, and instead add {
dg-require-effective-target int128 }.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232717 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Fri, 22 Jan 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232716 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR c/69405 - [6 Regression] ICE in c_tree_printer on an invalid
msebor [Thu, 21 Jan 2016 23:19:05 +0000 (23:19 +0000)]
PR c/69405 - [6 Regression] ICE in c_tree_printer on an invalid
    __atomic_fetch_add

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

        PR c/69405
        * gcc.dg/sync-fetch.c: New test.

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

        PR c/69405
        * c-common.c (sync_resolve_size): Avoid printing diagnostic about
        an incompatible argument when the argument isn't a valid tree node.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232713 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69252
law [Thu, 21 Jan 2016 22:58:29 +0000 (22:58 +0000)]
PR target/69252
* modulo-sched.c (optimize_sc): Allow branch-scheduling to add a new
first stage.

PR target/69252
* gcc.target/powerpc/pr69252.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232712 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[PATCH] [PR tree-optimization/69347] Fix memory consumption in threader & minor speed...
law [Thu, 21 Jan 2016 22:21:55 +0000 (22:21 +0000)]
[PATCH] [PR tree-optimization/69347] Fix memory consumption in threader & minor speed improvement

PR middle-end/69347
* tree-ssa-dom.c (dom_opt_dom_walker::thread_across_edge): Avoid
useless call to record_temporary_equivalences.
* tree-ssa-threadbackward.c (find_jump_threads_backwards): Just
allocate 10 slots in the bb_path vector and let it grow as needed.
(fsm_find_control_statement_thread_paths): Similarly for the next_path
vector.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232711 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Thu, 21 Jan 2016 21:08:00 +0000 (21:08 +0000)]
2016-01-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/65996
* error.c (gfc_error): Save the state of abort_on_error and set
it to false for buffered errors to allow normal processing.
Restore the state before leaving.

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

PR fortran/65996
gfortran.dg/pr65996.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232707 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/68810
jakub [Thu, 21 Jan 2016 20:29:33 +0000 (20:29 +0000)]
PR c++/68810
* g++.dg/cpp0x/constexpr-reinterpret1.C: Fix line number that is
expected to generate an error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232705 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/59281
jason [Thu, 21 Jan 2016 20:26:26 +0000 (20:26 +0000)]
PR c++/59281
* g++.dg/ext/attr-constructor1.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232704 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/65687
jason [Thu, 21 Jan 2016 20:26:21 +0000 (20:26 +0000)]
PR c++/65687
* decl.c (type_is_deprecated): Don't look into a typedef.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232703 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/40751
jason [Thu, 21 Jan 2016 20:26:09 +0000 (20:26 +0000)]
PR c++/40751
PR c++/64987
* decl.c (copy_type_enum): Respect TYPE_USER_ALIGN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232702 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/43407
jason [Thu, 21 Jan 2016 20:26:02 +0000 (20:26 +0000)]
PR c++/43407
* decl.c (start_enum): Add attributes parameter.
* parser.c (cp_parser_enum_specifier): Pass it.
* pt.c (lookup_template_class_1): Pass it.
* cp-tree.h: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232701 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoRecord configure regenerate
dje [Thu, 21 Jan 2016 18:51:21 +0000 (18:51 +0000)]
Record configure regenerate

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232698 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * configure.ac (gcc_cv_as_powerpc_mfcrf, gcc_cv_as_machine_directive):
dje [Thu, 21 Jan 2016 18:50:17 +0000 (18:50 +0000)]
    * configure.ac (gcc_cv_as_powerpc_mfcrf, gcc_cv_as_machine_directive):
        Detangle.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232697 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAdd missing file
meissner [Thu, 21 Jan 2016 18:45:26 +0000 (18:45 +0000)]
Add missing file

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232695 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/rs6000/aix71.h (ASM_CPU_SPEC): Add entry for Power9.
pthaugen [Thu, 21 Jan 2016 18:30:29 +0000 (18:30 +0000)]
* config/rs6000/aix71.h (ASM_CPU_SPEC): Add entry for Power9.
* config/rs6000/driver-rs6000.c (struct asm_names): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232694 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agolibitm: Disable testing transaction-safe exceptions on Darwin and AIX.
torvald [Thu, 21 Jan 2016 18:25:42 +0000 (18:25 +0000)]
libitm: Disable testing transaction-safe exceptions on Darwin and AIX.

* testsuite/libitm.c++/libstdc++-safeexc.C: Not supported on darwin
or AIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232693 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix missed comment fix in last change.
bernds [Thu, 21 Jan 2016 18:11:10 +0000 (18:11 +0000)]
Fix missed comment fix in last change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232690 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix PR66178, ICE due to misexpansion of constant expressions involving labels.
bernds [Thu, 21 Jan 2016 18:10:03 +0000 (18:10 +0000)]
Fix PR66178, ICE due to misexpansion of constant expressions involving labels.

PR middle-end/66178
* expr.c (expand_expr_real_2) [PLUS_EXPR, MINUS_EXPR]: Don't
drop EXPAND_INITIALIZER.
* rtl.h (contains_symbolic_reference_p): Declare.
* rtlanal.c (contains_symbolic_reference_p): New function.
* simplify-rtx.c (simplify_binary_operation_1): Don't turn
a subtraction into a NOT if symbolic constants are involved.

testsuite/
PR middle-end/66178
gcc.dg/torture/pr66178.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232689 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-21 Michael Meissner <meissner@linux.vnet.ibm.com>
meissner [Thu, 21 Jan 2016 17:52:33 +0000 (17:52 +0000)]
2016-01-21  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Steven Munroe <munroesj@linux.vnet.ibm.com>
    Tulio Magno Quites Machado Filho <tulioqm@br.ibm.com>

* config/rs6000/float128-sed: New files to convert TF names to KF
names for PowerPC IEEE 128-bit floating point support.
* config/rs6000/float128-sed-hw: Likewise.

* config/rs6000/float128-hw.c: New file for ISA 3.0 IEEE 128-bit
floating point hardware support.

* config/rs6000/float128-ifunc.c: New file to pick either IEEE
128-bit floating point software emulation or use ISA 3.0 hardware
support if it is available.

* config/rs6000/quad-float128.h: New file to support IEEE 128-bit
floating point.

* config/rs6000/extendkftf2-sw.c: New file, convert IEEE 128-bit
floating point to IBM extended double.

* config/rs6000/trunctfkf2-sw.c: New file, convert IBM extended
double to IEEE 128-bit floating point.

* config/rs6000/t-float128: New Makefile fragments to enable
building __float128 emulation support.
* config/rs6000/t-float128-hw: Likewise.

* config/rs6000/sfp-exceptions.c: New file to provide exception
support for IEEE 128-bit floating point.

* config/rs6000/floattikf.c: New files for converting between IEEE
128-bit floating point and signed/unsigned 128-bit integers.
* config/rs6000/fixunskfti.c: Likewise.
* config/rs6000/fixkfti.c: Likewise.
* config/rs6000/floatuntikf.c: Likewise.

* config/rs6000/sfp-machine.h (_FP_W_TYPE_SIZE): Use 64-bit types
when building on 64-bit systems, or when VSX is enabled.
(_FP_W_TYPE): Likewise.
(_FP_WS_TYPE): Likewise.
(_FP_I_TYPE): Likewise.
(TItype): Define on 64-bit systems.
(UTItype): Likewise.
(TI_BITS): Likewise.
(_FP_MUL_MEAT_D): Add support for using 64-bit types.
(_FP_MUL_MEAT_Q): Likewise.
(_FP_DIV_MEAT_D): Likewise.
(_FP_DIV_MEAT_Q): Likewise.
(_FP_NANFRAC_D): Likewise.
(_FP_NANFRAC_Q): Likewise.
(ISA_BIT): Add exception support if we are being compiled on a
machine with hardware floating point support to build the IEEE
128-bit emulation functions.
(FP_EX_INVALID): Likewise.
(FP_EX_OVERFLOW): Likewise.
(FP_EX_UNDERFLOW): Likewise.
(FP_EX_DIVZERO): Likewise.
(FP_EX_INEXACT): Likewise.
(FP_EX_ALL): Likewise.
(__sfp_handle_exceptions): Likewise.
(FP_HANDLE_EXCEPTIONS): Likewise.
(FP_RND_NEAREST): Likewise.
(FP_RND_ZERO): Likewise.
(FP_RND_PINF): Likewise.
(FP_RND_MINF): Likewise.
(FP_RND_MASK): Likewise.
(_FP_DECL_EX): Likewise.
(FP_INIT_ROUNDMODE): Likewise.
(FP_ROUNDMODE): Likewise.

* libgcc/config.host (powerpc*-*-linux*): If compiler can compile
VSX code, enable IEEE 128-bit floating point.  If the compiler can
compile IEEE 128-bit floating point code with ISA 3.0 IEEE 128-bit
floating point hardware instructions and it supports declaring
functions with the ifunc attribute, enable ifunc functions to
switch between software and hardware support.
* configure.ac (powerpc*-*-linux*): Likewise.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232685 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[gcc]
wschmidt [Thu, 21 Jan 2016 17:32:28 +0000 (17:32 +0000)]
[gcc]

2016-01-21  Anton Blanchard  <anton@samba.org>
    Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/63354
* config/rs6000/linux64.h (TARGET_KEEP_LEAF_WHEN_PROFILED): New
#define.
* config/rs6000/rs6000.c (rs6000_keep_leaf_when_profiled): New
function.

[gcc/testsuite]

2016-01-21  Anton Blanchard  <anton@samba.org>
    Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/63354
* gcc.target/powerpc/pr63354.c:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232684 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoIssue wic prefetch instruction at call site.
eager [Thu, 21 Jan 2016 17:15:52 +0000 (17:15 +0000)]
Issue wic prefetch instruction at call site.
This optimization is enabled with  microblaze target flag mxl-prefetch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232683 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoMark r20 as fixed. Mark r21 not fixed & allocatable in callee.
eager [Thu, 21 Jan 2016 17:10:54 +0000 (17:10 +0000)]
Mark r20 as fixed.  Mark r21 not fixed & allocatable in callee.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232682 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/
ienkovich [Thu, 21 Jan 2016 16:05:14 +0000 (16:05 +0000)]
gcc/

2016-01-21  Yuri Rumyantsev  <ysrumyan@gmail.com>

PR rtl-optimization/68920
* ifcvt.c (cond_move_process_if_block): Limit number of conditional
moves.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232680 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-21 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Thu, 21 Jan 2016 16:01:22 +0000 (16:01 +0000)]
2016-01-21  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/68990
* lra-coalesce.c (lra_coalesce): Invalidate value for the result
pseudo instead of inheritance ones.

2016-01-21  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/68990
* gcc.target/i386/pr68990: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232679 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix typo
dje [Thu, 21 Jan 2016 14:08:35 +0000 (14:08 +0000)]
Fix typo

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232675 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69129
nickc [Thu, 21 Jan 2016 14:07:01 +0000 (14:07 +0000)]
PR target/69129
PR target/69012
* config/mips/mips.c (mips_compute_frame_info): Initialise
args_size and hard_frame_pointer_offset fields of the frame
structure before calling mips_global_pointer.

PR target/69129
* gcc.target/mips/pr69129.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232674 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago* configure.ac (gcc_cv_as_dwloc): Test support for debug frame section
dje [Thu, 21 Jan 2016 13:53:28 +0000 (13:53 +0000)]
* configure.ac (gcc_cv_as_dwloc): Test support for debug frame section
label reference.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232673 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agolibstdc++/69406 Fix test to check for supported headers
redi [Thu, 21 Jan 2016 13:33:27 +0000 (13:33 +0000)]
libstdc++/69406 Fix test to check for supported headers

PR libstdc++/69406
* include/bits/cpp_type_traits.h: Ensure C++ language linkage.
* include/ext/type_traits.h: Likewise.
* testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
for presence of C headers.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
dg-error line number.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232672 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-21 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 21 Jan 2016 10:55:30 +0000 (10:55 +0000)]
2016-01-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58046
* g++.dg/cpp0x/pr58046.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232671 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 Jan 2016 10:50:30 +0000 (10:50 +0000)]
2016-01-21  Richard Biener  <rguenther@suse.de>

* graphite-optimize-isl.c (get_schedule_map): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232670 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoS/390: Fix missing .size directives.
krebbel [Thu, 21 Jan 2016 09:55:38 +0000 (09:55 +0000)]
S/390: Fix missing .size directives.

It seems at some point the .size hook was hijacked to emit some
machine-specific directives, and the actual .size directive was
forgotten.  This caused problems for split-stack support, since
linker couldn't scan the function body for non-split-stack calls.

gcc/ChangeLog:

* config/s390/s390.c (s390_asm_declare_function_size): Add code
to actually emit the .size directive.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232669 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69187
jakub [Thu, 21 Jan 2016 09:52:46 +0000 (09:52 +0000)]
PR target/69187
PR target/65624
* config/arm/arm-builtins.c (arm_expand_neon_builtin): Increase
args array size by one to avoid buffer overflow.

* gcc.target/arm/pr69187.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232668 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoS/390: Use proper read-only data section for literals.
krebbel [Thu, 21 Jan 2016 09:45:42 +0000 (09:45 +0000)]
S/390: Use proper read-only data section for literals.

Previously, .rodata was hardcoded.  For C++ vague linkage functions,
this resulted in needlessly duplicated literals.  With the new split
stack support, this resulted in link errors, due to .rodata containing
relocations to the discarded text sections.

gcc/ChangeLog:

* config/s390/s390.md (pool_section_start): Use switch_to_section
to select proper read-only data section instead of hardcoding .rodata.
(pool_section_end): Use switch_to_section to match the above.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232667 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 Jan 2016 08:50:38 +0000 (08:50 +0000)]
2016-01-21  Richard Biener  <rguenther@suse.de>

        PR tree-optimization/69378
* tree-ssa-sccvn.c (dominated_by_p_w_unex): New function.
(set_ssa_val_to): Use it for dominance checks taking into
account not executable edges.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232666 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/69355
jakub [Thu, 21 Jan 2016 07:59:32 +0000 (07:59 +0000)]
PR c++/69355
* tree-dfa.c (get_ref_base_and_extent): Use GET_MODE_BITSIZE (mode)
for bitsize instead of GET_MODE_PRECISION (mode).

* g++.dg/torture/pr69355.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232663 138bc75d-0d04-0410-961f-82ee72b054a4