On Tue, Jun 2, 2026 at 9:16 AM Kewen Lin <[email protected]> wrote: > > CC maintainers for this. > > 在 2025/12/23 13:44, xuexiaomei 写道: > > From: "[email protected]" <[email protected]> > > > > gcc/ChangeLog: > > > > * config/i386/sse.md > > (define_mode_attr sse2): > > Add V4SI/V8SI/V16SI/V8HI/V16HI/V32HI. > > (<sse2>_movnt<mode>): Change operand mode from VI8 to > > VI_AVX_AVX512F. > > (define_mode_iterator STORENT_MODE): > > Add V4SI/V8SI/V16SI/V8HI/V16HI/V32HI/V16QI/V32QI/V64QI. > > > > Though patch 1/2 needs rework as Richi's review comments, IMHO this > patch 2/2 is independent of patch 1/2. Ok.
> > BR, > Kewen > > > Signed-off-by: [email protected] <[email protected]> > > --- > > gcc/config/i386/sse.md | 13 +++++++++---- > > 1 file changed, 9 insertions(+), 4 deletions(-) > > > > diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md > > index 46ee77ba38e..7ceb705959a 100644 > > --- a/gcc/config/i386/sse.md > > +++ b/gcc/config/i386/sse.md > > @@ -1024,7 +1024,9 @@ > > > > (define_mode_attr sse2 > > [(V16QI "sse2") (V32QI "avx") (V64QI "avx512f") > > - (V2DI "sse2") (V4DI "avx") (V8DI "avx512f")]) > > + (V2DI "sse2") (V4DI "avx") (V8DI "avx512f") > > + (V4SI "sse2") (V8SI "avx") (V16SI "avx512f") > > + (V8HI "sse2") (V16HI "avx") (V32HI "avx512f")]) > > > > (define_mode_attr sse3 > > [(V16QI "sse3") (V32QI "avx")]) > > @@ -2049,8 +2051,8 @@ > > (set_attr "mode" "<MODE>")]) > > > > (define_insn "<sse2>_movnt<mode>" > > - [(set (match_operand:VI8 0 "memory_operand" "=m") > > - (unspec:VI8 [(match_operand:VI8 1 "register_operand" "v")] > > + [(set (match_operand:VI_AVX_AVX512F 0 "memory_operand" "=m") > > + (unspec:VI_AVX_AVX512F [(match_operand:VI_AVX_AVX512F 1 > > "register_operand" "v")] > > UNSPEC_MOVNT))] > > "TARGET_SSE2" > > "%vmovntdq\t{%1, %0|%0, %1}" > > @@ -2073,7 +2075,10 @@ > > (SF "TARGET_SSE4A") (DF "TARGET_SSE4A") > > (V8DI "TARGET_AVX512F") (V4DI "TARGET_AVX") (V2DI "TARGET_SSE2") > > (V16SF "TARGET_AVX512F") (V8SF "TARGET_AVX") V4SF > > - (V8DF "TARGET_AVX512F") (V4DF "TARGET_AVX") (V2DF "TARGET_SSE2")]) > > + (V8DF "TARGET_AVX512F") (V4DF "TARGET_AVX") (V2DF "TARGET_SSE2") > > + (V16SI "TARGET_AVX512F") (V8SI "TARGET_AVX") V4SI > > + (V32HI "TARGET_AVX512F") (V16HI "TARGET_AVX") V8HI > > + (V64QI "TARGET_AVX512F") (V32QI "TARGET_AVX") V16QI]) > > > > (define_expand "storent<mode>" > > [(set (match_operand:STORENT_MODE 0 "memory_operand") > -- BR, Hongtao
