diff options
author | Chris Lattner <sabre@nondot.org> | 2001-06-27 23:28:50 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2001-06-27 23:28:50 +0000 |
commit | 8c2076b84e6ab914128bea4780a6337d4fe3268b (patch) | |
tree | c27a19e21eea99f7eb08ffe1da5dc88c7d9fe56d | |
parent | 223796ccf22352176ec04d264112b9c1c642f52b (diff) | |
download | bcm5719-llvm-8c2076b84e6ab914128bea4780a6337d4fe3268b.tar.gz bcm5719-llvm-8c2076b84e6ab914128bea4780a6337d4fe3268b.zip |
Make a new GenericBinaryInst class, instead of providing lots of silly
little classes.
llvm-svn: 82
-rw-r--r-- | llvm/include/llvm/iOperators.h | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/llvm/include/llvm/iOperators.h b/llvm/include/llvm/iOperators.h index 5a31b711427..99e4bf33bac 100644 --- a/llvm/include/llvm/iOperators.h +++ b/llvm/include/llvm/iOperators.h @@ -16,26 +16,18 @@ // All of these classes are subclasses of the BinaryOperator class... // -class AddInst : public BinaryOperator { +class GenericBinaryInst : public BinaryOperator { + const char *OpcodeString; public: - AddInst(Value *S1, Value *S2, const string &Name = "") - : BinaryOperator(Instruction::Add, S1, S2, Name) { + GenericBinaryInst(unsigned Opcode, Value *S1, Value *S2, + const char *OpcodeStr, const string &Name = "") + : BinaryOperator(Opcode, S1, S2, Name) { + OpcodeString = OpcodeStr; } - virtual string getOpcode() const { return "add"; } + virtual string getOpcode() const { return OpcodeString; } }; - -class SubInst : public BinaryOperator { -public: - SubInst(Value *S1, Value *S2, const string &Name = "") - : BinaryOperator(Instruction::Sub, S1, S2, Name) { - } - - virtual string getOpcode() const { return "sub"; } -}; - - class SetCondInst : public BinaryOperator { BinaryOps OpType; public: |