summaryrefslogtreecommitdiff
path: root/utils/TableGen/DAGISelEmitter.h
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2005-12-01 00:06:14 +0000
committerNate Begeman <natebegeman@mac.com>2005-12-01 00:06:14 +0000
commitddb395463c08b39090bbee4ed22433f5990a6331 (patch)
tree8cfd00e63c7f6da4106e04371999aaf5be111770 /utils/TableGen/DAGISelEmitter.h
parent8ef9d16d3913db11c89fc2d14899e153bdbdc91b (diff)
downloadllvm-ddb395463c08b39090bbee4ed22433f5990a6331.tar.gz
llvm-ddb395463c08b39090bbee4ed22433f5990a6331.tar.bz2
llvm-ddb395463c08b39090bbee4ed22433f5990a6331.tar.xz
Stop checking the ValueType of the CodeGenInstruction. Instead, use the
ValueType from the RegisterClass or Operands. This step is necessary to allow RegisterClasses to have multiple ValueTypes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24555 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/DAGISelEmitter.h')
-rw-r--r--utils/TableGen/DAGISelEmitter.h26
1 files changed, 13 insertions, 13 deletions
diff --git a/utils/TableGen/DAGISelEmitter.h b/utils/TableGen/DAGISelEmitter.h
index be307141d8..404b00b522 100644
--- a/utils/TableGen/DAGISelEmitter.h
+++ b/utils/TableGen/DAGISelEmitter.h
@@ -326,30 +326,30 @@ namespace llvm {
TreePattern *Pattern;
unsigned NumResults;
unsigned NumOperands;
- std::vector<MVT::ValueType> ResultTypes;
- std::vector<MVT::ValueType> OperandTypes;
+ std::vector<Record*> Results;
+ std::vector<Record*> Operands;
TreePatternNode *ResultPattern;
public:
DAGInstruction(TreePattern *TP,
- const std::vector<MVT::ValueType> &resultTypes,
- const std::vector<MVT::ValueType> &operandTypes)
- : Pattern(TP), ResultTypes(resultTypes), OperandTypes(operandTypes),
+ const std::vector<Record*> &results,
+ const std::vector<Record*> &operands)
+ : Pattern(TP), Results(results), Operands(operands),
ResultPattern(0) {}
TreePattern *getPattern() const { return Pattern; }
- unsigned getNumResults() const { return ResultTypes.size(); }
- unsigned getNumOperands() const { return OperandTypes.size(); }
+ unsigned getNumResults() const { return Results.size(); }
+ unsigned getNumOperands() const { return Operands.size(); }
void setResultPattern(TreePatternNode *R) { ResultPattern = R; }
- MVT::ValueType getResultType(unsigned RN) const {
- assert(RN < ResultTypes.size());
- return ResultTypes[RN];
+ Record *getResult(unsigned RN) const {
+ assert(RN < Results.size());
+ return Results[RN];
}
- MVT::ValueType getOperandType(unsigned ON) const {
- assert(ON < OperandTypes.size());
- return OperandTypes[ON];
+ Record *getOperand(unsigned ON) const {
+ assert(ON < Operands.size());
+ return Operands[ON];
}
TreePatternNode *getResultPattern() const { return ResultPattern; }
};