This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [PATCH 1/6] Enable Intel AVX512_VBMI2 instructions
- From: "Tsimbalist, Igor V" <igor dot v dot tsimbalist at intel dot com>
- To: Christophe Lyon <christophe dot lyon at linaro dot org>
- Cc: "binutils at sourceware dot org" <binutils at sourceware dot org>, "Lu, Hongjiu" <hongjiu dot lu at intel dot com>, "Tsimbalist, Igor V" <igor dot v dot tsimbalist at intel dot com>
- Date: Mon, 23 Oct 2017 17:09:08 +0000
- Subject: RE: [PATCH 1/6] Enable Intel AVX512_VBMI2 instructions
- Authentication-results: sourceware.org; auth=none
- Dlp-product: dlpe-windows
- Dlp-reaction: no-action
- Dlp-version: 11.0.0.116
- References: <D511F25789BA7F4EBA64C8A63891A00291F4626C@IRSMSX102.ger.corp.intel.com> <D511F25789BA7F4EBA64C8A63891A00291F4646B@IRSMSX102.ger.corp.intel.com> <CAKdteOYHtGcv2LKttMBA5kThaxsUH7OpYpEbuoV=oe=am=20AA@mail.gmail.com>
Fixed and committed. Thanks for the notification.
Igor
> -----Original Message-----
> From: binutils-owner@sourceware.org [mailto:binutils-
> owner@sourceware.org] On Behalf Of Christophe Lyon
> Sent: Monday, October 23, 2017 5:31 PM
> To: Tsimbalist, Igor V <igor.v.tsimbalist@intel.com>
> Cc: binutils@sourceware.org; Lu, Hongjiu <hongjiu.lu@intel.com>
> Subject: Re: [PATCH 1/6] Enable Intel AVX512_VBMI2 instructions
>
> On 21 October 2017 at 11:15, Tsimbalist, Igor V
> <igor.v.tsimbalist@intel.com> wrote:
> > Resending the patch after regenerated files removal (mailer-daemon
> > complained about the size of the patch).
> >
> > Igor
> >
> >
>
> Hi,
>
> After this patch series, I'm seeing build errors under Ubuntu Trusty
> (targets x86_64 and arm-none-nacl, other arm and aarch64 unaffected)
>
> There are loads of:
> libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../../opcodes -I.
> -I../../opcodes -I../bfd -I../../opcodes/../include
> -I../../opcodes/../bfd -W -Wall -Wstrict-prototypes
> -Wmissing-prototypes -Wshadow -Werror -g -O2 -MT dis-init.lo -MD -MP
> -MF .deps/dis-init.Tpo -c ../../opcodes/dis-init.c -o dis-init.o
> In file included from ../../opcodes/i386-opc.c:24:0:
> ../../opcodes/i386-tbl.h:30:9: error: missing initializer for field
> 'cpu64' of 'struct <anonymous>' [-Werror=missing-field-initializers]
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 } },
> ^
> In file included from ../../opcodes/i386-opc.c:23:0:
> ../../opcodes/i386-opc.h:358:20: note: 'cpu64' declared here
> unsigned int cpu64:1;
> ^
>
> Can you check/fix?
>
> Thanks
>
> Christophe
>
> >> -----Original Message-----
> >> From: Tsimbalist, Igor V
> >> Sent: Saturday, October 21, 2017 10:51 AM
> >> To: binutils@sourceware.org
> >> Cc: Lu, Hongjiu <hongjiu.lu@intel.com>; Tsimbalist, Igor V
> >> <igor.v.tsimbalist@intel.com>
> >> Subject: [PATCH 1/6] Enable Intel AVX512_VBMI2 instructions
> >>
> >> Intel has disclosed a set of new instructions. The spec is
> >>
> https://software.intel.com/sites/default/files/managed/c5/15/architecture-
> >> instruction-set-extensions-programming-reference.pdf
> >>
> >> gas/
> >>
> >> * config/tc-i386.c (cpu_arch): Add .avx512_vbmi2.
> >> (cpu_noarch): noavx512_vbmi2.
> >> * doc/c-i386.texi: Document .avx512_vbmi2, noavx512_vbmi2.
> >> * testsuite/gas/i386/i386.exp: Add AVX512_VBMI2 tests.
> >> * testsuite/gas/i386/avx512vbmi2-intel.d: New test.
> >> * testsuite/gas/i386/avx512vbmi2.d: Likewise.
> >> * testsuite/gas/i386/avx512vbmi2.s: Likewise.
> >> * testsuite/gas/i386/avx512vbmi2_vl-intel.d: Likewise.
> >> * testsuite/gas/i386/avx512vbmi2_vl.d: Likewise.
> >> * testsuite/gas/i386/avx512vbmi2_vl.s: Likewise.
> >> * testsuite/gas/i386/x86-64-avx512vbmi2-intel.d: Likewise.
> >> * testsuite/gas/i386/x86-64-avx512vbmi2.d: Likewise.
> >> * testsuite/gas/i386/x86-64-avx512vbmi2.s: Likewise.
> >> * testsuite/gas/i386/x86-64-avx512vbmi2_vl-intel.d: Likewise.
> >> * testsuite/gas/i386/x86-64-avx512vbmi2_vl.d: Likewise.
> >> * testsuite/gas/i386/x86-64-avx512vbmi2_vl.s: Likewise.
> >>
> >> opcodes/
> >>
> >> * i386-dis.c (enum): Add b_scalar_mode, w_scalar_mode.
> >> Define EXbScalar and EXwScalar for OP_EX.
> >> (enum): Add PREFIX_EVEX_0F3862, PREFIX_EVEX_0F3863,
> >> PREFIX_EVEX_0F3870, PREFIX_EVEX_0F3871, PREFIX_EVEX_0F3872,
> >> PREFIX_EVEX_0F3873, PREFIX_EVEX_0F3A70, PREFIX_EVEX_0F3A71,
> >> PREFIX_EVEX_0F3A72, PREFIX_EVEX_0F3A73.
> >> (enum): Add EVEX_W_0F3862_P_2, EVEX_W_0F3863_P_2,
> >> EVEX_W_0F3870_P_2, EVEX_W_0F3871_P_2, EVEX_W_0F3872_P_2,
> >> EVEX_W_0F3873_P_2, EVEX_W_0F3A70_P_2, EVEX_W_0F3A71_P_2,
> >> EVEX_W_0F3A72_P_2, EVEX_W_0F3A73_P_2.
> >> (intel_operand_size): Handle b_scalar_mode and w_scalar_mode.
> >> (OP_E_memory): Likewise.
> >> * i386-dis-evex.h: Updated.
> >> * i386-gen.c (cpu_flag_init): Add CPU_AVX512_VBMI2,
> >> CPU_ANY_AVX512_VBMI2_FLAGS. Update
> >> CPU_ANY_AVX512F_FLAGS.
> >> (cpu_flags): Add CpuAVX512_VBMI2.
> >> * i386-opc.h (enum): Add CpuAVX512_VBMI2.
> >> (i386_cpu_flags): Add cpuavx512_vbmi2.
> >> * i386-opc.tbl: Add Intel AVX512_VBMI2 instructions.
> >> * i386-init.h: Regenerate.
> >> * i386-tbl.h: Likewise.
> >>
> >> Ok for master?
> >