Initial support for multi-result patterns:
authorEvan Cheng <evan.cheng@apple.com>
Wed, 12 Sep 2007 23:30:14 +0000 (23:30 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Wed, 12 Sep 2007 23:30:14 +0000 (23:30 +0000)
commit85dbe1a1d287864ca0d9482e3f4530929bf81511
tree5d7dd7ea210e85caa046eba5331fd00c554f4041
parent0d8d31674f3cc95f5bba1174a0e8d54d5b9c210a
Initial support for multi-result patterns:
1.
[(set GR32:$dst, (add GR32:$src1, GR32:$src2)),
 (modify EFLAGS)]
This indicates the source pattern expects the instruction would produce 2 values. The first is the result of the addition. The second is an implicit definition in register EFLAGS.
2.
def : Pat<(parallel (addc GR32:$src1, GR32:$src2), (modify EFLAGS)), ()>
Similar to #1 except this is used for def : Pat patterns.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41897 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/TargetSelectionDAG.td
utils/TableGen/DAGISelEmitter.cpp
utils/TableGen/DAGISelEmitter.h