mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-25 10:27:04 +00:00
code cleanups only.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130414 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -66,24 +66,22 @@ namespace {
|
||||
const Type *type;
|
||||
SmallVector<uint32_t, 4> varargs;
|
||||
|
||||
Expression() { }
|
||||
Expression(uint32_t o) : opcode(o) { }
|
||||
Expression(uint32_t o = ~2U) : opcode(o) { }
|
||||
|
||||
bool operator==(const Expression &other) const {
|
||||
if (opcode != other.opcode)
|
||||
return false;
|
||||
else if (opcode == ~0U || opcode == ~1U)
|
||||
if (opcode == ~0U || opcode == ~1U)
|
||||
return true;
|
||||
else if (type != other.type)
|
||||
if (type != other.type)
|
||||
return false;
|
||||
else if (varargs != other.varargs)
|
||||
if (varargs != other.varargs)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
class ValueTable {
|
||||
private:
|
||||
DenseMap<Value*, uint32_t> valueNumbering;
|
||||
DenseMap<Expression, uint32_t> expressionNumbering;
|
||||
AliasAnalysis *AA;
|
||||
@@ -364,14 +362,14 @@ uint32_t ValueTable::lookup(Value *V) const {
|
||||
return VI->second;
|
||||
}
|
||||
|
||||
/// clear - Remove all entries from the ValueTable
|
||||
/// clear - Remove all entries from the ValueTable.
|
||||
void ValueTable::clear() {
|
||||
valueNumbering.clear();
|
||||
expressionNumbering.clear();
|
||||
nextValueNumber = 1;
|
||||
}
|
||||
|
||||
/// erase - Remove a value from the value numbering
|
||||
/// erase - Remove a value from the value numbering.
|
||||
void ValueTable::erase(Value *V) {
|
||||
valueNumbering.erase(V);
|
||||
}
|
||||
@@ -393,9 +391,7 @@ namespace {
|
||||
|
||||
class GVN : public FunctionPass {
|
||||
bool NoLoads;
|
||||
public:
|
||||
MemoryDependenceAnalysis *MD;
|
||||
private:
|
||||
DominatorTree *DT;
|
||||
const TargetData *TD;
|
||||
|
||||
@@ -431,6 +427,7 @@ namespace {
|
||||
const TargetData *getTargetData() const { return TD; }
|
||||
DominatorTree &getDominatorTree() const { return *DT; }
|
||||
AliasAnalysis *getAliasAnalysis() const { return VN.getAliasAnalysis(); }
|
||||
MemoryDependenceAnalysis &getMemDep() const { return *MD; }
|
||||
private:
|
||||
/// addToLeaderTable - Push a new Value to the LeaderTable onto the list for
|
||||
/// its value number.
|
||||
@@ -969,8 +966,7 @@ static Value *GetLoadValueForLoad(LoadInst *SrcVal, unsigned Offset,
|
||||
NewLoadSize*8-SrcVal->getType()->getPrimitiveSizeInBits());
|
||||
RV = Builder.CreateTrunc(RV, SrcVal->getType());
|
||||
SrcVal->replaceAllUsesWith(RV);
|
||||
gvn.MD->removeInstruction(SrcVal);
|
||||
//gvn.markInstructionForDeletion(SrcVal);
|
||||
gvn.getMemDep().removeInstruction(SrcVal);
|
||||
SrcVal = NewLoad;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user