[all-commits] [llvm/llvm-project] 9611ee: [X86] Teach the assembler parser to handle a '*' b...
topperc via All-commits
all-commits at lists.llvm.org
Wed Jul 29 22:00:56 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 9611ee5f40ea0b0878725dd06657e55363b4065f
https://github.com/llvm/llvm-project/commit/9611ee5f40ea0b0878725dd06657e55363b4065f
Author: Craig Topper <craig.topper at intel.com>
Date: 2020-07-29 (Wed, 29 Jul 2020)
Changed paths:
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/test/MC/X86/x86-32.s
M llvm/test/MC/X86/x86-64.s
Log Message:
-----------
[X86] Teach the assembler parser to handle a '*' between segment register and base/index/displacement part of an address
A '*' after the segment is equivalent to a '*' before the segment register. To make the AsmMatcher table work we need to place the '*' token into the operand vector before the full memory operand. To accomplish this I've modified some portions of operand parsing to expose the operand vector to ParseATTOperand so that the token can be pushed to the vector after parsing the segment register and before creating the memory operand using that segment register.
Fixes PR46879
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D84895
More information about the All-commits
mailing list