OSDN Git Service

Added field noResults to Instruction.
authorEvan Cheng <evan.cheng@apple.com>
Mon, 26 Dec 2005 09:11:45 +0000 (09:11 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Mon, 26 Dec 2005 09:11:45 +0000 (09:11 +0000)
commit2b4ea795a23ff9d900b9e1f26c92975ef78db1b6
tree52c90ee3d5cd8bdf1ccbb8308beced6df47f4140
parent2abbe867ab7a50e658712624b34c8957e9600674
Added field noResults to Instruction.
Currently tblgen cannot tell which operands in the operand list are results so
it assumes the first one is a result. This is bad. Ideally we would fix this
by separating results from inputs, e.g. (res R32:$dst),
(ops R32:$src1, R32:$src2). But that's a more distruptive change. Adding
'let noResults = 1' is the workaround to tell tblgen that the instruction does
not produces a result. It works for now since tblgen does not support
instructions which produce multiple results.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25017 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Alpha/AlphaInstrInfo.td
lib/Target/IA64/IA64InstrInfo.td
lib/Target/PowerPC/PPCInstrInfo.td
lib/Target/Sparc/SparcInstrInfo.td
lib/Target/SparcV8/SparcV8InstrInfo.td
lib/Target/Target.td
lib/Target/X86/X86InstrInfo.td
utils/TableGen/CodeGenInstruction.h
utils/TableGen/CodeGenTarget.cpp
utils/TableGen/DAGISelEmitter.cpp