[PATCH] D59266: [X86] Add support for {vex2}, {vex3}, and {evex} to the assembler to match gas. Use {evex} to improve the one our 32-bit AVX512 tests.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 12 10:34:43 PDT 2019


craig.topper created this revision.
craig.topper added reviewers: RKSimon, spatel.

These can be used to force the encoding used for instructions.

{vex2} will fail if the instruction is not VEX encoded, but otherwise won't do anything since we prefer vex2 when possible. Might need to skip use of the _REV MOV instructions for this too, but I haven't done that yet.

{vex3} will force the instruction to use the 3 byte VEX encoding or fail if there is no VEX form.

{evex} will force the instruction to use the EVEX version or fail if there is no EVEX version.


https://reviews.llvm.org/D59266

Files:
  lib/Target/X86/AsmParser/X86AsmParser.cpp
  lib/Target/X86/MCTargetDesc/X86BaseInfo.h
  lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
  test/MC/X86/AVX-32.s
  test/MC/X86/AVX512F_SCALAR-32.s
  test/MC/X86/x86_errors.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D59266.190291.patch
Type: text/x-patch
Size: 152284 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190312/e98efe88/attachment-0001.bin>


More information about the llvm-commits mailing list