This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [committed, PATCH] x86: Don't disable SSE4a when disabling SSE4
On Sun, Feb 16, 2020 at 5:06 PM Alan Modra <amodra@gmail.com> wrote:
>
> On Sun, Feb 16, 2020 at 08:47:56AM -0800, H.J. Lu wrote:
> > commit 7deea9aad8 changed nosse4 to include CpuSSE4a. But AMD SSE4a is
> > a superset of SSE3 and Intel SSE4 is a superset of SSSE3. Disable Intel
> > SSE4 shouldn't disable AMD SSE4a. This patch restores nosse4. It also
> > adds .sse4a and nosse4a.
>
> diff --git a/opcodes/i386-gen.c b/opcodes/i386-gen.c
> index 79f4cc9d25..45106bcf6d 100644
> --- a/opcodes/i386-gen.c
> +++ b/opcodes/i386-gen.c
> @@ -326,6 +326,8 @@ static initializer cpu_flag_init[] =
> { "CPU_ANY_SSE2_FLAGS",
> "CPU_ANY_SSE3_FLAGS|CpuSSE2" },
> { "CPU_ANY_SSE3_FLAGS",
> + { "CPU_ANY_SSE4A_FLAGS",
> + "CPU_ANY_SSE3_FLAGS|CpuSSE4a" },
> "CPU_ANY_SSSE3_FLAGS|CpuSSE3|CpuSSE4a" },
> { "CPU_ANY_SSSE3_FLAGS",
> "CPU_ANY_SSE4_1_FLAGS|CpuSSSE3" },
> @@ -333,8 +335,6 @@ static initializer cpu_flag_init[] =
> "CPU_ANY_SSE4_2_FLAGS|CpuSSE4_1" },
> { "CPU_ANY_SSE4_2_FLAGS",
> "CpuSSE4_2" },
> - { "CPU_ANY_SSE4_FLAGS",
> - "CPU_ANY_SSE4_1_FLAGS|CpuSSE4a" },
> { "CPU_ANY_AVX_FLAGS",
> "CPU_ANY_AVX2_FLAGS|CpuF16C|CpuFMA|CpuFMA4|CpuXOP|CpuAVX" },
> { "CPU_ANY_AVX2_FLAGS",
>
> Merge error?
Is there anything wrong?
--
H.J.