Hi! While working on the OpenMP isa patch, I've noticed most of the x86 ISA options imply in the help text that it enables MMX, when they do not. We now have the mmx in sse2, so to some extent most of the built-in functions are enabled with sse2 on 64-bit targets, but we do not enable MMX code generation and I think listing MMX in there does more harm than good, it is something that should better be explained in the documentation.
Ok for trunk? 2019-10-29 Jakub Jelinek <ja...@redhat.com> * config/i386/i386.opt (-msse, -msse2, -msse3, -mssse3, -msse4.1, -msse4.2, -msse4, -mavx, -mavx2, -mavx512f, -mavx512pf, -mavx512er, -mavx512cd, -mavx512dq, -mavx512bw, -mavx512vl, -mavx512ifma, -mavx512vbmi, -mavx5124fmaps, -mavx5124vnniw, -mavx512vpopcntdq, -mavx512vbmi2, -mavx512bitalg, -mfma, -msse4a, -mavx512bf16): Don't mention MMX among supported builtins or code generation. --- gcc/config/i386/i386.opt.jj 2019-09-11 21:50:55.000000000 +0200 +++ gcc/config/i386/i386.opt 2019-10-26 22:12:58.122039453 +0200 @@ -646,31 +646,31 @@ Support Athlon 3Dnow! built-in functions msse Target Report Mask(ISA_SSE) Var(ix86_isa_flags) Save -Support MMX and SSE built-in functions and code generation. +Support SSE built-in functions and code generation. msse2 Target Report Mask(ISA_SSE2) Var(ix86_isa_flags) Save -Support MMX, SSE and SSE2 built-in functions and code generation. +Support SSE and SSE2 built-in functions and code generation. msse3 Target Report Mask(ISA_SSE3) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation. +Support SSE, SSE2 and SSE3 built-in functions and code generation. mssse3 Target Report Mask(ISA_SSSE3) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code generation. +Support SSE, SSE2, SSE3 and SSSE3 built-in functions and code generation. msse4.1 Target Report Mask(ISA_SSE4_1) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code generation. msse4.2 Target Report Mask(ISA_SSE4_2) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation. msse4 Target RejectNegative Report Mask(ISA_SSE4_2) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation. mno-sse4 Target RejectNegative Report InverseMask(ISA_SSE4_1) Var(ix86_isa_flags) Save @@ -682,63 +682,63 @@ Target Undocumented Alias(mavx) Warn(%<- mavx Target Report Mask(ISA_AVX) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in functions and code generation. mavx2 Target Report Mask(ISA_AVX2) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in functions and code generation. mavx512f Target Report Mask(ISA_AVX512F) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F built-in functions and code generation. mavx512pf Target Report Mask(ISA_AVX512PF) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512PF built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512PF built-in functions and code generation. mavx512er Target Report Mask(ISA_AVX512ER) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512ER built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512ER built-in functions and code generation. mavx512cd Target Report Mask(ISA_AVX512CD) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512CD built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512CD built-in functions and code generation. mavx512dq Target Report Mask(ISA_AVX512DQ) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512DQ built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512DQ built-in functions and code generation. mavx512bw Target Report Mask(ISA_AVX512BW) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512BW built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512BW built-in functions and code generation. mavx512vl Target Report Mask(ISA_AVX512VL) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VL built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VL built-in functions and code generation. mavx512ifma Target Report Mask(ISA_AVX512IFMA) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512IFMA built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512IFMA built-in functions and code generation. mavx512vbmi Target Report Mask(ISA_AVX512VBMI) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VBMI built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VBMI built-in functions and code generation. mavx5124fmaps Target Report Mask(ISA_AVX5124FMAPS) Var(ix86_isa_flags2) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX5124FMAPS built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX5124FMAPS built-in functions and code generation. mavx5124vnniw Target Report Mask(ISA_AVX5124VNNIW) Var(ix86_isa_flags2) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX5124VNNIW built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX5124VNNIW built-in functions and code generation. mavx512vpopcntdq Target Report Mask(ISA_AVX512VPOPCNTDQ) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512VPOPCNTDQ built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512VPOPCNTDQ built-in functions and code generation. mavx512vbmi2 Target Report Mask(ISA_AVX512VBMI2) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512VBMI2 built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512VBMI2 built-in functions and code generation. mavx512vnni Target Report Mask(ISA_AVX512VNNI) Var(ix86_isa_flags) Save @@ -746,7 +746,7 @@ Support AVX512VNNI built-in functions an mavx512bitalg Target Report Mask(ISA_AVX512BITALG) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512BITALG built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512BITALG built-in functions and code generation. mavx512vp2intersect Target Report Mask(ISA_AVX512VP2INTERSECT) Var(ix86_isa_flags2) Save @@ -754,11 +754,11 @@ Support AVX512VP2INTERSECT built-in func mfma Target Report Mask(ISA_FMA) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in functions and code generation. +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in functions and code generation. msse4a Target Report Mask(ISA_SSE4A) Var(ix86_isa_flags) Save -Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code generation. +Support SSE, SSE2, SSE3 and SSE4A built-in functions and code generation. mfma4 Target Report Mask(ISA_FMA4) Var(ix86_isa_flags) Save @@ -1105,7 +1105,7 @@ Generate a __return_loc section pointing mavx512bf16 Target Report Mask(ISA_AVX512BF16) Var(ix86_isa_flags2) Save -Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and +Support SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512BF16 built-in functions and code generation. menqcmd Jakub