[M68k][AsmParser] Support parsing register masks & fix printing them
authorRicky Taylor <rickytaylor26@gmail.com>
Mon, 23 Aug 2021 22:49:52 +0000 (23:49 +0100)
committerRicky Taylor <rickytaylor26@gmail.com>
Tue, 24 Aug 2021 09:40:02 +0000 (10:40 +0100)
commit47f52f989b06192d3eef9891250e1db7533c8410
tree1d5e8c76557b5db3b807548900b284e8995d1f2a
parent992e21eeeef101b4fd68053d5f6a19d21b655288
[M68k][AsmParser] Support parsing register masks & fix printing them

Fixes PR51580.

Register masks will now be printed as 'movem.l (%sp), %a0-%a5/%d5'
for example and can now be parsed in the same format.

Previously the printed syntax was 'movem.l (%sp), %a0-%a5,%d', which
didn't match prior art and was too ambiguous to easily parse.

Differential Revision: https://reviews.llvm.org/D108597
llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
llvm/lib/Target/M68k/M68kInstrInfo.td
llvm/lib/Target/M68k/MCTargetDesc/M68kInstPrinter.cpp
llvm/test/CodeGen/M68k/CollapseMOVEM.mir
llvm/test/MC/M68k/instructions.s