> FX Coudert wrote: > > Hi all, > > > > I reviewed this afternoon the postings from the gcc-testresults > > mailing-list for the past month, and we have a couple of gfortran > > testsuite failures showing up on various targets. Could people with > > access to said targets (possibly maintainers) please file PRs in > > bugzilla for each testcase, reporting the error message and/or > > backtrace? (I'd be happy to be added to the Cc list of these) > > > > * ia64-suse-linux-gnu: gfortran.dg/vect/vect-4.f90 > FAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times Alignment of > access > forced using peeling 1 > FAIL: gfortran.dg/vect/vect-4.f90 -O scan-tree-dump-times Vectorizing > an unali > gned access 1 >
These tests should xfail on "vect_no_align" targets. On targets that support misaligned accesses we use peeling to align two datarefs, and generate a misaligned memory-access for a third dataref. But on targets that do not support misaligned accesses I expect we just use versioning with runtime alignment test. Does the following pass for you (I just added "{ xfail vect_no_align }" to the two failing tests)? Index: vect-4.f90 =================================================================== --- vect-4.f90 (revision 123409) +++ vect-4.f90 (working copy) @@ -10,7 +10,7 @@ END ! { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } -! { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" } } -! { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" } } +! { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" { xfail vect_no_align } } } +! { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail vect_no_align } } } ! { dg-final { scan-tree-dump-times "accesses have the same alignment." 1 "vect" } } ! { dg-final { cleanup-tree-dump "vect" } } > This happens on all reported ia64 targets, including mine. What is > expected here? There is no vectorization on ia64, no reason for > peeling. apparently there is vectorization taking place because the first test passes: 'scan-tree-dump-times "vectorized 1 loops" 1 "vect" ' dorit > The compilation has no problem, and there is no report > generated. As far as I know, the vectorization options are ignored. > Without unrolling, of course, gfortran doesn't optimize the loop at all, > but I assume that's a different question.