diff options
author | Chris Lattner <sabre@nondot.org> | 2001-07-07 20:17:23 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2001-07-07 20:17:23 +0000 |
commit | 9f3d27654a9c60104c93cacc869709d5d30e5367 (patch) | |
tree | c5ab02c551a01ea9c993456aa1229bfb9a06a7f4 /include | |
parent | a41f50dea8573e4a610b5aa5e45b5c368559b084 (diff) | |
download | external_llvm-9f3d27654a9c60104c93cacc869709d5d30e5367.zip external_llvm-9f3d27654a9c60104c93cacc869709d5d30e5367.tar.gz external_llvm-9f3d27654a9c60104c93cacc869709d5d30e5367.tar.bz2 |
Convert BinaryOperand and UnaryOperator to only take instruction types of
the appropriate enum
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/InstrTypes.h | 16 | ||||
-rw-r--r-- | include/llvm/iOperators.h | 2 |
2 files changed, 13 insertions, 5 deletions
diff --git a/include/llvm/InstrTypes.h b/include/llvm/InstrTypes.h index 105775f..fa0ce87 100644 --- a/include/llvm/InstrTypes.h +++ b/include/llvm/InstrTypes.h @@ -55,14 +55,18 @@ public: // create() - Construct a unary instruction, given the opcode // and its operand. // - static UnaryOperator *create(unsigned Op, Value *Source); + static UnaryOperator *create(UnaryOps Op, Value *Source); - UnaryOperator(Value *S, unsigned iType, const string &Name = "") + UnaryOperator(Value *S, UnaryOps iType, const string &Name = "") : Instruction(S->getType(), iType, Name) { Operands.reserve(1); Operands.push_back(Use(S, this)); } + inline UnaryOps getOpcode() const { + return (UnaryOps)Instruction::getOpcode(); + } + virtual Instruction *clone() const { return create(getOpcode(), Operands[0]); } @@ -82,10 +86,10 @@ public: // create() - Construct a binary instruction, given the opcode // and the two operands. // - static BinaryOperator *create(unsigned Op, Value *S1, Value *S2, + static BinaryOperator *create(BinaryOps Op, Value *S1, Value *S2, const string &Name = ""); - BinaryOperator(unsigned iType, Value *S1, Value *S2, + BinaryOperator(BinaryOps iType, Value *S1, Value *S2, const string &Name = "") : Instruction(S1->getType(), iType, Name) { Operands.reserve(2); @@ -95,6 +99,10 @@ public: Operands[0]->getType() == Operands[1]->getType()); } + inline BinaryOps getOpcode() const { + return (BinaryOps)Instruction::getOpcode(); + } + virtual Instruction *clone() const { return create(getOpcode(), Operands[0], Operands[1]); } diff --git a/include/llvm/iOperators.h b/include/llvm/iOperators.h index 76e4e39..4b6109a 100644 --- a/include/llvm/iOperators.h +++ b/include/llvm/iOperators.h @@ -18,7 +18,7 @@ class GenericBinaryInst : public BinaryOperator { public: - GenericBinaryInst(unsigned Opcode, Value *S1, Value *S2, + GenericBinaryInst(BinaryOps Opcode, Value *S1, Value *S2, const string &Name = "") : BinaryOperator(Opcode, S1, S2, Name) { } |