HomePhabricator

[TableGen][AsmMatcherEmitter] Allow tied operands of different classes in…

Authored by sdesmalen on Jun 18 2018, 6:39 AM.

Description

[TableGen][AsmMatcherEmitter] Allow tied operands of different classes in aliases.

Allow a tied operand of a different operand class in InstAliases,
so that the operand can be printed (and added to the MC instruction)
as the appropriate register. For example, 'GPR64as32', which would
be printed/parsed as a 32bit register and should match a tied 64bit
register operand, where the former is a sub-register of the latter.

This patch also generalizes the constraint checking to an overrideable
method in MCTargetAsmParser, so that target asmparsers can specify
whether a given operand satisfies the tied register constraint.

Reviewers: olista01, rengolin, fhahn, SjoerdMeijer, samparker, dsanders, craig.topper

Reviewed By: fhahn

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

llvm-svn: 334942

Details

Committed
sdesmalenJun 18 2018, 6:39 AM
Reviewer
fhahn
Differential Revision
D47714: [TableGen][AsmMatcherEmitter] Allow tied operands of different classes in aliases.
Parents
rG67dc08bd4c58: Adjust for clang-format changes
Branches
Unknown
Tags
Unknown