diff options
author | Tim Northover <tnorthover@apple.com> | 2014-05-20 11:52:46 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2014-05-20 11:52:46 +0000 |
commit | ee8d5c393ef04bbf19cb5aa9460ebb054e60fa3e (patch) | |
tree | c400e0f76859c04cf9c7af02d6b126bee1b8b59c /utils/sort_includes.py | |
parent | 57a98baa07ae4b4bd9d7702afc81f95b93abb48d (diff) | |
download | llvm-ee8d5c393ef04bbf19cb5aa9460ebb054e60fa3e.tar.gz llvm-ee8d5c393ef04bbf19cb5aa9460ebb054e60fa3e.tar.bz2 llvm-ee8d5c393ef04bbf19cb5aa9460ebb054e60fa3e.tar.xz |
TableGen: permit non-leaf ComplexPattern uses
This allows the results of a ComplexPattern check to be distributed to separate
named Operands, instead of the current system where all results must apply (and
match perfectly) with a single Operand.
For example, if "some_addrmode" is a ComplexPattern producing two results, you
can write:
def : Pat<(load (some_addrmode GPR64:$base, imm:$offset)),
(INST GPR64:$base, imm:$offset)>;
This should allow neater instruction definitions in TableGen that don't put all
possible aspects of addressing into a single operand, but are still usable with
relatively simple C++ CodeGen idioms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209206 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/sort_includes.py')
0 files changed, 0 insertions, 0 deletions