mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 04:33:05 +00:00
Move init methods out of line to enable better assertions, contributed
by Vladimir Merzliakov! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14545 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
74f470b20c
commit
cf3290b04a
@ -175,14 +175,10 @@ public:
|
|||||||
class LoadInst : public Instruction {
|
class LoadInst : public Instruction {
|
||||||
LoadInst(const LoadInst &LI) : Instruction(LI.getType(), Load) {
|
LoadInst(const LoadInst &LI) : Instruction(LI.getType(), Load) {
|
||||||
Volatile = LI.isVolatile();
|
Volatile = LI.isVolatile();
|
||||||
Operands.reserve(1);
|
init(LI.Operands[0]);
|
||||||
Operands.push_back(Use(LI.Operands[0], this));
|
|
||||||
}
|
}
|
||||||
bool Volatile; // True if this is a volatile load
|
bool Volatile; // True if this is a volatile load
|
||||||
void init(Value *Ptr) {
|
void init(Value *Ptr);
|
||||||
Operands.reserve(1);
|
|
||||||
Operands.push_back(Use(Ptr, this));
|
|
||||||
}
|
|
||||||
public:
|
public:
|
||||||
LoadInst(Value *Ptr, const std::string &Name, Instruction *InsertBefore);
|
LoadInst(Value *Ptr, const std::string &Name, Instruction *InsertBefore);
|
||||||
LoadInst(Value *Ptr, const std::string &Name, BasicBlock *InsertAtEnd);
|
LoadInst(Value *Ptr, const std::string &Name, BasicBlock *InsertAtEnd);
|
||||||
@ -228,16 +224,10 @@ public:
|
|||||||
class StoreInst : public Instruction {
|
class StoreInst : public Instruction {
|
||||||
StoreInst(const StoreInst &SI) : Instruction(SI.getType(), Store) {
|
StoreInst(const StoreInst &SI) : Instruction(SI.getType(), Store) {
|
||||||
Volatile = SI.isVolatile();
|
Volatile = SI.isVolatile();
|
||||||
Operands.reserve(2);
|
init(SI.Operands[0], SI.Operands[1]);
|
||||||
Operands.push_back(Use(SI.Operands[0], this));
|
|
||||||
Operands.push_back(Use(SI.Operands[1], this));
|
|
||||||
}
|
}
|
||||||
bool Volatile; // True if this is a volatile store
|
bool Volatile; // True if this is a volatile store
|
||||||
void init(Value *Val, Value *Ptr) {
|
void init(Value *Val, Value *Ptr);
|
||||||
Operands.reserve(2);
|
|
||||||
Operands.push_back(Use(Val, this));
|
|
||||||
Operands.push_back(Use(Ptr, this));
|
|
||||||
}
|
|
||||||
public:
|
public:
|
||||||
StoreInst(Value *Val, Value *Ptr, Instruction *InsertBefore);
|
StoreInst(Value *Val, Value *Ptr, Instruction *InsertBefore);
|
||||||
StoreInst(Value *Val, Value *Ptr, BasicBlock *InsertAtEnd);
|
StoreInst(Value *Val, Value *Ptr, BasicBlock *InsertAtEnd);
|
||||||
|
Loading…
Reference in New Issue
Block a user