Re: [PATCH] vec-narrow-1.C/vec-narrow-minmax-2.C: Compile with -msse4 and require int128
Richard Biener <[email protected]>
| Newsgroups | gmane.comp.gcc.patches |
|---|---|
| Message-ID | <[email protected]> |
On Tue, 18 Aug 2026, H.J. Lu wrote: > On Tue, Aug 18, 2026 at 4:18 PM Richard Biener <[email protected]> wrote: > > > > On Tue, 18 Aug 2026, Jakub Jelinek wrote: > > > > > Hi! > > > > > > I'm seeing various recent FAILs on ia32. > > > +FAIL: gcc.dg/tree-ssa/divmul-mod-1.c (test for excess errors) > > > +FAIL: gcc.dg/tree-ssa/round-up-ior-1.c (test for excess errors) > > > +FAIL: gcc.dg/tree-ssa/vec-mask-zero-1.c (test for excess errors) > > > +FAIL: gcc.dg/tree-ssa/vec-mask-zero-1.c scan-tree-dump-times optimized " != " 2 > > > +FAIL: gcc.dg/tree-ssa/vec-mask-zero-1.c scan-tree-dump-times optimized " & " 2 > > > +FAIL: gcc.dg/tree-ssa/vec-mask-zero-1.c scan-tree-dump-times optimized " == " 2 > > > +FAIL: gcc.dg/tree-ssa/vec-mask-zero-1.c scan-tree-dump-times optimized " \\\\| " 2 > > > +FAIL: gcc.dg/tree-ssa/vector-alignup-1.c (test for excess errors) > > > +FAIL: gcc.dg/tree-ssa/vector-alignup-1.c scan-tree-dump-times optimized " & " 2 > > > +FAIL: gcc.dg/tree-ssa/vector-alignup-1.c scan-tree-dump-times optimized " \\\\+ " 2 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++11 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++14 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++17 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++20 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++23 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++26 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++29 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++98 scan-tree-dump-not optimized "vector\\\\(2\\\\) long" > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++11 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++11 (test for excess errors) > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++14 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++14 (test for excess errors) > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++17 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++17 (test for excess errors) > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++20 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++20 (test for excess errors) > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++23 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++23 (test for excess errors) > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++26 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++26 (test for excess errors) > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++29 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++29 (test for excess errors) > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++98 scan-tree-dump-times optimized "MIN_EXPR" 1 > > > +FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++98 (test for excess errors) > > > The following patch fixes the gcc.dg ones and the excess errors in > > > vec-narrow-minmax-2.C. > > > vec-narrow-1.C still fails on ia32, dunno why (added at least -mmmx but it > > > didn't help, unlike x86_64 ia32 doesn't emulate MMX sized vectors in SSE2), > > > and the MIN_EXPR scans fail before/after on both x86_64 and ia32. > > > > > > Tested on x86_64-linux with > > > GXX_TESTSUITE_STDS=98,11,14,17,20,23,26,29 make check-gcc check-g++ RUNTESTFLAGS="--target_board=unix\{-m64,-m32,-m32/-mno-sse/-mno-mmx\} tree-ssa.exp='divmul-mod-1.c round-up-ior-1.c vec-mask-zero-1.c vector-alignup-1.c' dg.exp='vec-narrow-minmax-2.C vec-narrow-1.C'" > > > Ok for trunk? > > I still got > > FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++20 scan-tree-dump-not > optimized "vector\\(2\\) long" > FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++98 scan-tree-dump-not > optimized "vector\\(2\\) long" > FAIL: g++.dg/tree-ssa/vec-narrow-1.C -std=gnu++29 scan-tree-dump-not > optimized "vector\\(2\\) long" > FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++20 > scan-tree-dump-times optimized "MIN_EXPR" 1 > FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++98 > scan-tree-dump-times optimized "MIN_EXPR" 1 > FAIL: g++.dg/tree-ssa/vec-narrow-minmax-2.C -std=gnu++29 > scan-tree-dump-times optimized "MIN_EXPR" 1 > > for -m32. > > Here is the patch to fix them. OK. I suppose they will still fail on targets without vector support though. Richard.