[AArch64][AsmParser] Unify code for parsing Neon/SVE vectors.
authorSander de Smalen <sander.desmalen@arm.com>
Wed, 11 Apr 2018 07:36:10 +0000 (07:36 +0000)
committerSander de Smalen <sander.desmalen@arm.com>
Wed, 11 Apr 2018 07:36:10 +0000 (07:36 +0000)
commit73937b7c9de865eaec7f708f643b6ff9aa800448
tree22c486120ef4976a9e639d8db91090007b98d0c3
parent23db1744f11677370d51f04d938b7d19d4daade7
[AArch64][AsmParser] Unify code for parsing Neon/SVE vectors.

Summary:
Merged 'tryMatchVectorRegister' (specific to Neon) and
'tryParseSVERegister' into a single 'tryParseVectorRegister' function, and
created a generic 'parseVectorKind()' function that returns the #Elements
and ElementWidth of a vector suffix. This reduces the duplication of
this functionality between two the vector implementations.

This is patch [1/6] in a series to add assembler/disassembler support for
SVE's contiguous ST1 (scalar+imm) instructions.

Reviewers: fhahn, rengolin, javed.absar, huntergr, SjoerdMeijer, t.p.northover, echristo, evandro

Reviewed By: fhahn

Subscribers: tschuett, llvm-commits, kristof.beyls

Differential Revision: https://reviews.llvm.org/D45427

llvm-svn: 329782
llvm/lib/Target/AArch64/AArch64RegisterInfo.td
llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
llvm/test/MC/AArch64/SVE/add-diagnostics.s
llvm/test/MC/AArch64/SVE/sub-diagnostics.s
llvm/test/MC/AArch64/SVE/zip1-diagnostics.s
llvm/test/MC/AArch64/SVE/zip2-diagnostics.s