[PATCH] D111576: [X86] WIP Prefer VEX encoding in X86 assembler.
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 11 13:25:03 PDT 2021
craig.topper created this revision.
craig.topper added reviewers: LuoYuanke, pengfei, RKSimon.
Herald added a subscriber: hiraditya.
craig.topper requested review of this revision.
Herald added a project: LLVM.
An alternative version of D111538 <https://reviews.llvm.org/D111538> and D111505 <https://reviews.llvm.org/D111505>. Attempting to create different operands for the VEX and EVEX instructions so that the AsmMatcher will infer an order for them. This is similar to how we normally prefer VEX over EVEX. The VEX register classes are smaller so they get ordered before the EVEX register classes.
Naming of the new operand types isn't great. Patch needs more comments. Had to make a hack to the EVEX2VEX emitter. Not sure if that's the best fix for it.
Maybe we should change the operands for the EVEX instructions instead of the VEX instructions.
Mainly posting this as inspiration for Yuanke. I don't know if I have time to finish this myself
https://reviews.llvm.org/D111576
Files:
llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
llvm/lib/Target/X86/AsmParser/X86Operand.h
llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
llvm/lib/Target/X86/X86InstrInfo.td
llvm/lib/Target/X86/X86InstrSSE.td
llvm/utils/TableGen/X86EVEX2VEXTablesEmitter.cpp
llvm/utils/TableGen/X86RecognizableInstr.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D111576.378778.patch
Type: text/x-patch
Size: 11046 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211011/d0535fdc/attachment.bin>
More information about the llvm-commits
mailing list