aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2001-06-27 23:28:50 +0000
committerChris Lattner <sabre@nondot.org>2001-06-27 23:28:50 +0000
commit9af81a685e627783b65a9346fa02270a5b59b304 (patch)
tree4a78a413048c45b1d4007b70a007f6ee41c4c746
parent17262f77842ed4b8d53efed79aa6947c87a56b06 (diff)
Make a new GenericBinaryInst class, instead of providing lots of silly
little classes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/iOperators.h22
1 files changed, 7 insertions, 15 deletions
diff --git a/include/llvm/iOperators.h b/include/llvm/iOperators.h
index 5a31b71142..99e4bf33ba 100644
--- a/include/llvm/iOperators.h
+++ b/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: