This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] x86: fold several AVX512VL templates


On Wed, Mar 7, 2018 at 9:02 AM, Jan Beulich <JBeulich@suse.com> wrote:
> The differences between some of the register and memory forms of the
> same insn often don't really require the templates to be separate. For
> example, Disp8MemShift is simply irrelevant to register forms. Fold
> these as far as possible, and also fold register-only forms. Further
> folding is possible, but needs other prereq work done first.
>
> A note regarding EVEXDYN: This is intended to be used only when no other
> properties of the template would make is_evex_encoding() return true. In
> all "normal" cases I think it is preferable to omit this indicator, to
> keep the table half way readable.
>
> gas/
> 2018-03-07  Jan Beulich  <jbeulich@suse.com>
>
>         * config/tc-i386.c (is_evex_encoding): New.
>         (optimize_encoding, md_assemble, md_assemble,
>         VEX_check_operands, build_modrm_byte): Use is_evex_encoding.
>         (build_evex_prefix): Derive EVEX length field from actual
>         operands if the template allows multiple ones.
>
> opcodes/
> 2018-03-07  Jan Beulich  <jbeulich@suse.com>
>
>         * i386-opc.h (EVEXDYN): New.
>         * i386-opc.tbl: Fold various AVX512VL templates.
>         * i386-tlb.h: Re-generate.
>

OK.

Thanks.

-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]