1. 26 Jan, 2016 13 commits
    • remove arm_crypto_pragma test selector · 213a1c03
      From-SVN: r232824
      Christian Bruel committed
    • re PR tree-optimization/69467 (Pattern X * C1 CMP 0 to X CMP 0 causes… · bc6e9db4
      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
      Richard Biener committed
    • re PR tree-optimization/69452 (gcc ICE at -O3 on x86_64-linux-gnu in with verify_ssa failed) · 22a08dd1
      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
      Richard Biener committed
    • re PR target/69442 (wrong code with -Og and 64bit modulo @ armv7a) · 6c06e0e8
      	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
      Jakub Jelinek committed
    • [PATCH] Do not set structural equality on polynomial types · b96824c4
      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
      Roger Ferrer Ibáñez committed
    • PR 69400: Invalid 128-bit modulus result · 5ee31e57
      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
      Richard Sandiford committed
    • pr68674.c: Check and use arm_fp effective target. · 7ddfb31d
      2016-01-26  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	* gcc.target/arm/pr68674.c: Check and use arm_fp effective target.
      
      From-SVN: r232816
      Christophe Lyon committed
    • Add missing includes in JIT frontend. · 1c652ccb
      gcc/jit/
      	* jit-playback.c: Include pthread.h.
      
      From-SVN: r232815
      Iain Buclaw committed
    • new scop schedule for isl-0.15 · adba512d
      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
      Aditya Kumar committed
    • fix PR68343: disable fuse-*.c tests for isl 0.14 or earlier · 1e050c90
      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
      Aditya Kumar committed
    • add missing testcase · c8ee4bf5
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r232810
      Aditya Kumar committed
    • Daily bump. · 0a2ba2ef
      From-SVN: r232809
      GCC Administrator committed
  2. 25 Jan, 2016 16 commits
  3. 24 Jan, 2016 8 commits
    • [multiple changes] · 1d101216
      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
      Jerry DeLisle committed
    • re PR fortran/66094 (Handle transpose(A) in inline matmul) · a220f43d
      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
      Thomas Koenig committed
    • Revert "Fix the remaining PR c++/24666 blockers" · a59b92b0
      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
      Patrick Palka committed
    • Pass LSAN_OPTIONS to Makefiles in subdirectories · cefadad1
      	PR bootstrap/69329
      	* Makefile.tpl (BASE_FLAGS_TO_PASS): Add LSAN_OPTIONS.
      	* Makefile.in: Regenerate.
      
      From-SVN: r232777
      Mikhail Maltsev committed
    • re PR fortran/68283 (ice: gfc_variable_attr(): Bad array reference) · e9fe2963
      2016-01-24  Dominique d'Humieres  <dominiq@lps.ens.fr>
      
      	PR fortran/68283
      	gfortran.dg/pr68283.f90: New test.
      
      From-SVN: r232776
      Dominique d'Humieres committed
    • [multiple changes] · 16acb1a8
      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
      Dominique d'Humieres committed
    • re PR fortran/66094 (Handle transpose(A) in inline matmul) · 094773e8
      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
      Thomas Koenig committed
    • Daily bump. · d13cd3a6
      From-SVN: r232773
      GCC Administrator committed
  4. 23 Jan, 2016 3 commits