On 12 November 2015 at 21:04, Christophe Lyon <christophe.l...@linaro.org> wrote: > On 12 November 2015 at 16:49, Andreas Schwab <sch...@suse.de> wrote: >> Richard Biener <rguent...@suse.de> writes: >> >>> * tree-vectorizer.h (vect_slp_analyze_and_verify_instance_alignment): >>> Declare. >>> (vect_analyze_data_refs_alignment): Make loop vect specific. >>> (vect_verify_datarefs_alignment): Likewise. >>> * tree-vect-data-refs.c (vect_slp_analyze_data_ref_dependences): >>> Add missing continue. >>> (vect_compute_data_ref_alignment): Export. >>> (vect_compute_data_refs_alignment): Merge into... >>> (vect_analyze_data_refs_alignment): ... this. >>> (verify_data_ref_alignment): Split out from ... >>> (vect_verify_datarefs_alignment): ... here. >>> (vect_slp_analyze_and_verify_node_alignment): New function. >>> (vect_slp_analyze_and_verify_instance_alignment): Likewise. >>> * tree-vect-slp.c (vect_supported_load_permutation_p): Remove >>> misplaced checks on alignment. >>> (vect_slp_analyze_bb_1): Add fatal output parameter. Do >>> alignment analysis after SLP discovery and do it per instance. >>> (vect_slp_bb): When vect_slp_analyze_bb_1 fatally failed do not >>> bother to re-try using different vector sizes. >> >> This breaks libgfortran on ia64: >> >> ../../../libgfortran/generated/matmul_c4.c: In function 'matmul_c4': >> ../../../libgfortran/generated/matmul_c4.c:79:1: internal compiler error: in >> vectorizable_store, at tree-vect-stmts.c:5651 >> matmul_c4 (gfc_array_c4 * const restrict retarray, >> ^ >> 0x40000000010ff01f vectorizable_store >> ../../gcc/tree-vect-stmts.c:5651 >> 0x4000000001115b5f vect_transform_stmt(gimple*, gimple_stmt_iterator*, >> bool*, _slp_tree*, _slp_instance*) >> ../../gcc/tree-vect-stmts.c:8003 >> 0x400000000114df1f vect_schedule_slp_instance >> ../../gcc/tree-vect-slp.c:3484 >> 0x4000000001154d6f vect_schedule_slp(vec_info*) >> ../../gcc/tree-vect-slp.c:3549 >> 0x40000000011562bf vect_slp_bb(basic_block_def*) >> ../../gcc/tree-vect-slp.c:2543 >> 0x4000000001159f2f execute >> ../../gcc/tree-vectorizer.c:734 >> > > Same problem on armeb. > Now fixed at r230260 (pr68308).
Thanks. > >> Andreas. >> >> -- >> Andreas Schwab, SUSE Labs, sch...@suse.de >> GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 >> "And now for something completely different."