mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-01 13:17:01 +00:00
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
This commit is contained in:
@@ -16,26 +16,18 @@
|
|||||||
// All of these classes are subclasses of the BinaryOperator class...
|
// All of these classes are subclasses of the BinaryOperator class...
|
||||||
//
|
//
|
||||||
|
|
||||||
class AddInst : public BinaryOperator {
|
class GenericBinaryInst : public BinaryOperator {
|
||||||
|
const char *OpcodeString;
|
||||||
public:
|
public:
|
||||||
AddInst(Value *S1, Value *S2, const string &Name = "")
|
GenericBinaryInst(unsigned Opcode, Value *S1, Value *S2,
|
||||||
: BinaryOperator(Instruction::Add, S1, S2, Name) {
|
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 {
|
class SetCondInst : public BinaryOperator {
|
||||||
BinaryOps OpType;
|
BinaryOps OpType;
|
||||||
public:
|
public:
|
||||||
|
Reference in New Issue
Block a user