diff options
author | Dan Gohman <gohman@apple.com> | 2008-05-31 02:11:25 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-05-31 02:11:25 +0000 |
commit | bd3390c73a17a99f8951b833b3b72b2228997380 (patch) | |
tree | 1526b06fe04248ab6c655c5d60c2ba6115c9a814 /llvm/utils/TableGen/CodeGenInstruction.cpp | |
parent | 9a19f338426df0c00fcba897c5b113a2517d804e (diff) | |
download | bcm5719-llvm-bd3390c73a17a99f8951b833b3b72b2228997380.tar.gz bcm5719-llvm-bd3390c73a17a99f8951b833b3b72b2228997380.zip |
Teach the DAGISelEmitter to not compute the variable_ops operand
index for the input pattern in terms of the output pattern. Instead
keep track of how many fixed operands the input pattern actually
has, and have the input matching code pass the output-emitting
function that index value. This simplifies the code, disentangles
variables_ops from the support for predication operations, and
makes variable_ops more robust.
llvm-svn: 51808
Diffstat (limited to 'llvm/utils/TableGen/CodeGenInstruction.cpp')
-rw-r--r-- | llvm/utils/TableGen/CodeGenInstruction.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/utils/TableGen/CodeGenInstruction.cpp b/llvm/utils/TableGen/CodeGenInstruction.cpp index d52037823f6..37c2069ec72 100644 --- a/llvm/utils/TableGen/CodeGenInstruction.cpp +++ b/llvm/utils/TableGen/CodeGenInstruction.cpp @@ -163,8 +163,7 @@ CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr) isVariadic = true; continue; } else if (!Rec->isSubClassOf("RegisterClass") && - Rec->getName() != "ptr_rc" && Rec->getName() != "unknown" && - Rec->getName() != "discard") + Rec->getName() != "ptr_rc" && Rec->getName() != "unknown") throw "Unknown operand class '" + Rec->getName() + "' in instruction '" + R->getName() + "' instruction!"; |