[C++11] Add 'override' keyword to virtual methods that override their base class.

llvm-svn: 203339
This commit is contained in:
Craig Topper 2014-03-08 06:31:39 +00:00
parent cece9ccaf1
commit 7b883b314c
19 changed files with 115 additions and 114 deletions

View File

@ -81,17 +81,17 @@ namespace llvm {
delete ResourcesModel;
}
bool isBottomUp() const { return false; }
bool isBottomUp() const override { return false; }
void initNodes(std::vector<SUnit> &sunits);
void initNodes(std::vector<SUnit> &sunits) override;
void addNode(const SUnit *SU) {
void addNode(const SUnit *SU) override {
NumNodesSolelyBlocking.resize(SUnits->size(), 0);
}
void updateNode(const SUnit *SU) {}
void updateNode(const SUnit *SU) override {}
void releaseState() {
void releaseState() override {
SUnits = 0;
}
@ -116,18 +116,18 @@ namespace llvm {
signed regPressureDelta(SUnit *SU, bool RawPressure = false);
signed rawRegPressureDelta (SUnit *SU, unsigned RCId);
bool empty() const { return Queue.empty(); }
bool empty() const override { return Queue.empty(); }
virtual void push(SUnit *U);
void push(SUnit *U) override;
virtual SUnit *pop();
SUnit *pop() override;
virtual void remove(SUnit *SU);
void remove(SUnit *SU) override;
virtual void dump(ScheduleDAG* DAG) const;
void dump(ScheduleDAG* DAG) const override;
/// scheduledNode - Main resource tracking point.
void scheduledNode(SUnit *Node);
void scheduledNode(SUnit *Node) override;
bool isResourceAvailable(SUnit *SU);
void reserveResources(SUnit *SU);

View File

@ -60,9 +60,9 @@ public:
return TM.getTargetLowering();
}
virtual void getAnalysisUsage(AnalysisUsage &AU) const;
void getAnalysisUsage(AnalysisUsage &AU) const override;
virtual bool runOnMachineFunction(MachineFunction &MF);
bool runOnMachineFunction(MachineFunction &MF) override;
virtual void EmitFunctionEntryCode() {}

View File

@ -36,7 +36,7 @@ class AsmLexer : public MCAsmLexer {
protected:
/// LexToken - Read the next token and return its code.
virtual AsmToken LexToken();
AsmToken LexToken() override;
public:
AsmLexer(const MCAsmInfo &MAI);
@ -44,10 +44,10 @@ public:
void setBuffer(const MemoryBuffer *buf, const char *ptr = NULL);
virtual StringRef LexUntilEndOfStatement();
StringRef LexUntilEndOfStatement() override;
StringRef LexUntilEndOfLine();
virtual const AsmToken peekTok(bool ShouldSkipSpace = true);
const AsmToken peekTok(bool ShouldSkipSpace = true) override;
bool isAtStartOfComment(char Char);
bool isAtStatementSeparator(const char *Ptr);

View File

@ -37,15 +37,15 @@ private:
public:
APByteStreamer(AsmPrinter &Asm) : AP(Asm) {}
void EmitInt8(uint8_t Byte, const Twine &Comment) {
void EmitInt8(uint8_t Byte, const Twine &Comment) override {
AP.OutStreamer.AddComment(Comment);
AP.EmitInt8(Byte);
}
void EmitSLEB128(uint64_t DWord, const Twine &Comment) {
void EmitSLEB128(uint64_t DWord, const Twine &Comment) override {
AP.OutStreamer.AddComment(Comment);
AP.EmitSLEB128(DWord);
}
void EmitULEB128(uint64_t DWord, const Twine &Comment) {
void EmitULEB128(uint64_t DWord, const Twine &Comment) override {
AP.OutStreamer.AddComment(Comment);
AP.EmitULEB128(DWord);
}
@ -56,13 +56,13 @@ class HashingByteStreamer : public ByteStreamer {
DIEHash &Hash;
public:
HashingByteStreamer(DIEHash &H) : Hash(H) {}
void EmitInt8(uint8_t Byte, const Twine &Comment) {
void EmitInt8(uint8_t Byte, const Twine &Comment) override {
Hash.update(Byte);
}
void EmitSLEB128(uint64_t DWord, const Twine &Comment) {
void EmitSLEB128(uint64_t DWord, const Twine &Comment) override {
Hash.addSLEB128(DWord);
}
void EmitULEB128(uint64_t DWord, const Twine &Comment) {
void EmitULEB128(uint64_t DWord, const Twine &Comment) override {
Hash.addULEB128(DWord);
}
};

View File

@ -265,19 +265,19 @@ public:
/// EmitValue - Emit integer of appropriate size.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
uint64_t getValue() const { return Integer; }
/// SizeOf - Determine size of integer value in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *I) { return I->getType() == isInteger; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -292,7 +292,7 @@ public:
/// EmitValue - Emit expression value.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// getValue - Get MCExpr.
///
@ -300,13 +300,13 @@ public:
/// SizeOf - Determine size of expression value in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *E) { return E->getType() == isExpr; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -321,7 +321,7 @@ public:
/// EmitValue - Emit label value.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// getValue - Get MCSymbol.
///
@ -329,13 +329,13 @@ public:
/// SizeOf - Determine size of label value in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *L) { return L->getType() == isLabel; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -352,17 +352,17 @@ public:
/// EmitValue - Emit delta value.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// SizeOf - Determine size of delta value in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *D) { return D->getType() == isDelta; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -382,17 +382,17 @@ public:
/// EmitValue - Emit delta value.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// SizeOf - Determine size of delta value in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *D) { return D->getType() == isString; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -412,11 +412,11 @@ public:
/// EmitValue - Emit debug information entry offset.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// SizeOf - Determine size of debug information entry in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const {
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override {
return Form == dwarf::DW_FORM_ref_addr ? getRefAddrSize(AP)
: sizeof(int32_t);
}
@ -428,7 +428,7 @@ public:
static bool classof(const DIEValue *E) { return E->getType() == isEntry; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -442,10 +442,10 @@ public:
: DIEValue(isTypeSignature), Unit(Unit) {}
/// \brief Emit type unit signature.
virtual void EmitValue(AsmPrinter *Asm, dwarf::Form Form) const;
void EmitValue(AsmPrinter *Asm, dwarf::Form Form) const override;
/// Returns size of a ref_sig8 entry.
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const {
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override {
assert(Form == dwarf::DW_FORM_ref_sig8);
return 8;
}
@ -455,7 +455,7 @@ public:
return E->getType() == isTypeSignature;
}
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
void dump() const;
#endif
};
@ -489,17 +489,17 @@ public:
/// EmitValue - Emit location data.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// SizeOf - Determine size of location data in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *E) { return E->getType() == isLoc; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -529,17 +529,17 @@ public:
/// EmitValue - Emit location data.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// SizeOf - Determine size of location data in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *E) { return E->getType() == isBlock; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};
@ -559,17 +559,17 @@ public:
/// EmitValue - Emit location data.
///
virtual void EmitValue(AsmPrinter *AP, dwarf::Form Form) const;
void EmitValue(AsmPrinter *AP, dwarf::Form Form) const override;
/// SizeOf - Determine size of location data in bytes.
///
virtual unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const;
unsigned SizeOf(AsmPrinter *AP, dwarf::Form Form) const override;
// Implement isa/cast/dyncast.
static bool classof(const DIEValue *E) { return E->getType() == isLocList; }
#ifndef NDEBUG
virtual void print(raw_ostream &O) const;
void print(raw_ostream &O) const override;
#endif
};

View File

@ -702,19 +702,19 @@ public:
void beginModule();
/// \brief Emit all Dwarf sections that should come after the content.
void endModule();
void endModule() override;
/// \brief Gather pre-function debug information.
void beginFunction(const MachineFunction *MF);
void beginFunction(const MachineFunction *MF) override;
/// \brief Gather and emit post-function debug information.
void endFunction(const MachineFunction *MF);
void endFunction(const MachineFunction *MF) override;
/// \brief Process beginning of an instruction.
void beginInstruction(const MachineInstr *MI);
void beginInstruction(const MachineInstr *MI) override;
/// \brief Process end of an instruction.
void endInstruction();
void endInstruction() override;
/// \brief Add a DIE to the set of types that we're going to pull into
/// type units.
@ -726,7 +726,7 @@ public:
/// \brief For symbols that have a size designated (e.g. common symbols),
/// this tracks that size.
void setSymbolSize(const MCSymbol *Sym, uint64_t Size) {
void setSymbolSize(const MCSymbol *Sym, uint64_t Size) override {
SymSize[Sym] = Size;
}

View File

@ -130,19 +130,19 @@ public:
/// endModule - Emit all exception information that should come after the
/// content.
virtual void endModule();
void endModule() override;
/// beginFunction - Gather pre-function exception information. Assumes being
/// emitted immediately after the function entry point.
virtual void beginFunction(const MachineFunction *MF);
void beginFunction(const MachineFunction *MF) override;
/// endFunction - Gather and emit post-function exception information.
virtual void endFunction(const MachineFunction *);
void endFunction(const MachineFunction *) override;
// We don't need these.
virtual void setSymbolSize(const MCSymbol *Sym, uint64_t Size) {}
virtual void beginInstruction(const MachineInstr *MI) {}
virtual void endInstruction() {}
void setSymbolSize(const MCSymbol *Sym, uint64_t Size) override {}
void beginInstruction(const MachineInstr *MI) override {}
void endInstruction() override {}
};
class DwarfCFIException : public DwarfException {
@ -169,18 +169,18 @@ public:
/// endModule - Emit all exception information that should come after the
/// content.
virtual void endModule();
void endModule() override;
/// beginFunction - Gather pre-function exception information. Assumes being
/// emitted immediately after the function entry point.
virtual void beginFunction(const MachineFunction *MF);
void beginFunction(const MachineFunction *MF) override;
/// endFunction - Gather and emit post-function exception information.
virtual void endFunction(const MachineFunction *);
void endFunction(const MachineFunction *) override;
};
class ARMException : public DwarfException {
void EmitTypeInfos(unsigned TTypeEncoding);
void EmitTypeInfos(unsigned TTypeEncoding) override;
ARMTargetStreamer &getTargetStreamer();
/// shouldEmitCFI - Per-function flag to indicate if frame CFI info
@ -196,14 +196,14 @@ public:
/// endModule - Emit all exception information that should come after the
/// content.
virtual void endModule();
void endModule() override;
/// beginFunction - Gather pre-function exception information. Assumes being
/// emitted immediately after the function entry point.
virtual void beginFunction(const MachineFunction *MF);
void beginFunction(const MachineFunction *MF) override;
/// endFunction - Gather and emit post-function exception information.
virtual void endFunction(const MachineFunction *);
void endFunction(const MachineFunction *) override;
};
class Win64Exception : public DwarfException {
@ -228,14 +228,14 @@ public:
/// endModule - Emit all exception information that should come after the
/// content.
virtual void endModule();
void endModule() override;
/// beginFunction - Gather pre-function exception information. Assumes being
/// emitted immediately after the function entry point.
virtual void beginFunction(const MachineFunction *MF);
void beginFunction(const MachineFunction *MF) override;
/// endFunction - Gather and emit post-function exception information.
virtual void endFunction(const MachineFunction *);
void endFunction(const MachineFunction *) override;
};
} // End of namespace llvm

View File

@ -35,8 +35,8 @@ namespace {
class ErlangGCPrinter : public GCMetadataPrinter {
public:
void beginAssembly(AsmPrinter &AP);
void finishAssembly(AsmPrinter &AP);
void beginAssembly(AsmPrinter &AP) override;
void finishAssembly(AsmPrinter &AP) override;
};
}

View File

@ -33,8 +33,8 @@ namespace {
class OcamlGCMetadataPrinter : public GCMetadataPrinter {
public:
void beginAssembly(AsmPrinter &AP);
void finishAssembly(AsmPrinter &AP);
void beginAssembly(AsmPrinter &AP) override;
void finishAssembly(AsmPrinter &AP) override;
};
}

View File

@ -122,22 +122,22 @@ public:
free(I->second);
}
virtual void setSymbolSize(const llvm::MCSymbol *, uint64_t) {}
void setSymbolSize(const llvm::MCSymbol *, uint64_t) override {}
/// \brief Emit the COFF section that holds the line table information.
virtual void endModule();
void endModule() override;
/// \brief Gather pre-function debug information.
virtual void beginFunction(const MachineFunction *MF);
void beginFunction(const MachineFunction *MF) override;
/// \brief Gather post-function debug information.
virtual void endFunction(const MachineFunction *);
void endFunction(const MachineFunction *) override;
/// \brief Process beginning of an instruction.
virtual void beginInstruction(const MachineInstr *MI);
void beginInstruction(const MachineInstr *MI) override;
/// \brief Process end of an instruction.
virtual void endInstruction() {}
void endInstruction() override {}
};
} // End of namespace llvm

View File

@ -409,7 +409,7 @@ public:
explicit WorkListRemover(DAGCombiner &dc)
: SelectionDAG::DAGUpdateListener(dc.getDAG()), DC(dc) {}
virtual void NodeDeleted(SDNode *N, SDNode *E) {
void NodeDeleted(SDNode *N, SDNode *E) override {
DC.removeFromWorkList(N);
}
};

View File

@ -152,10 +152,10 @@ private:
public:
// DAGUpdateListener implementation.
virtual void NodeDeleted(SDNode *N, SDNode *E) {
void NodeDeleted(SDNode *N, SDNode *E) override {
ForgetNode(N);
}
virtual void NodeUpdated(SDNode *N) {}
void NodeUpdated(SDNode *N) override {}
// Node replacement helpers
void ReplacedNode(SDNode *N) {

View File

@ -634,7 +634,7 @@ namespace {
: SelectionDAG::DAGUpdateListener(dtl.getDAG()),
DTL(dtl), NodesToAnalyze(nta) {}
virtual void NodeDeleted(SDNode *N, SDNode *E) {
void NodeDeleted(SDNode *N, SDNode *E) override {
assert(N->getNodeId() != DAGTypeLegalizer::ReadyToProcess &&
N->getNodeId() != DAGTypeLegalizer::Processed &&
"Invalid node ID for RAUW deletion!");
@ -655,7 +655,7 @@ namespace {
NodesToAnalyze.insert(E);
}
virtual void NodeUpdated(SDNode *N) {
void NodeUpdated(SDNode *N) override {
// Node updates can mean pretty much anything. It is possible that an
// operand was set to something already processed (f.e.) in which case
// this node could become ready. Recompute its flags.

View File

@ -80,7 +80,7 @@ public:
ScheduleDAGFast(MachineFunction &mf)
: ScheduleDAGSDNodes(mf) {}
void Schedule();
void Schedule() override;
/// AddPred - adds a predecessor edge to SUnit SU.
/// This returns true if this is a new predecessor.
@ -107,7 +107,7 @@ private:
void ListScheduleBottomUp();
/// forceUnitLatencies - The fast scheduler doesn't care about real latencies.
bool forceUnitLatencies() const { return true; }
bool forceUnitLatencies() const override { return true; }
};
} // end anonymous namespace
@ -646,9 +646,10 @@ class ScheduleDAGLinearize : public ScheduleDAGSDNodes {
public:
ScheduleDAGLinearize(MachineFunction &mf) : ScheduleDAGSDNodes(mf) {}
void Schedule();
void Schedule() override;
MachineBasicBlock *EmitSchedule(MachineBasicBlock::iterator &InsertPos);
MachineBasicBlock *
EmitSchedule(MachineBasicBlock::iterator &InsertPos) override;
private:
std::vector<SDNode*> Sequence;

View File

@ -177,7 +177,7 @@ public:
delete AvailableQueue;
}
void Schedule();
void Schedule() override;
ScheduleHazardRecognizer *getHazardRec() { return HazardRec; }
@ -261,7 +261,7 @@ private:
/// forceUnitLatencies - Register-pressure-reducing scheduling doesn't
/// need actual latency information but the hybrid scheduler does.
bool forceUnitLatencies() const {
bool forceUnitLatencies() const override {
return !NeedLatency;
}
};
@ -1675,13 +1675,13 @@ public:
return scheduleDAG->getHazardRec();
}
void initNodes(std::vector<SUnit> &sunits);
void initNodes(std::vector<SUnit> &sunits) override;
void addNode(const SUnit *SU);
void addNode(const SUnit *SU) override;
void updateNode(const SUnit *SU);
void updateNode(const SUnit *SU) override;
void releaseState() {
void releaseState() override {
SUnits = 0;
SethiUllmanNumbers.clear();
std::fill(RegPressure.begin(), RegPressure.end(), 0);
@ -1695,15 +1695,15 @@ public:
return SU->getNode()->getIROrder();
}
bool empty() const { return Queue.empty(); }
bool empty() const override { return Queue.empty(); }
void push(SUnit *U) {
void push(SUnit *U) override {
assert(!U->NodeQueueId && "Node in the queue already");
U->NodeQueueId = ++CurQueueId;
Queue.push_back(U);
}
void remove(SUnit *SU) {
void remove(SUnit *SU) override {
assert(!Queue.empty() && "Queue is empty!");
assert(SU->NodeQueueId != 0 && "Not in queue!");
std::vector<SUnit *>::iterator I = std::find(Queue.begin(), Queue.end(),
@ -1714,7 +1714,7 @@ public:
SU->NodeQueueId = 0;
}
bool tracksRegPressure() const { return TracksRegPressure; }
bool tracksRegPressure() const override { return TracksRegPressure; }
void dumpRegPressure() const;
@ -1724,9 +1724,9 @@ public:
int RegPressureDiff(SUnit *SU, unsigned &LiveUses) const;
void scheduledNode(SUnit *SU);
void scheduledNode(SUnit *SU) override;
void unscheduledNode(SUnit *SU);
void unscheduledNode(SUnit *SU) override;
protected:
bool canClobber(const SUnit *SU, const SUnit *Op);
@ -1776,13 +1776,13 @@ public:
tii, tri, tli),
Picker(this) {}
bool isBottomUp() const { return SF::IsBottomUp; }
bool isBottomUp() const override { return SF::IsBottomUp; }
bool isReady(SUnit *U) const {
bool isReady(SUnit *U) const override {
return Picker.HasReadyFilter && Picker.isReady(U, getCurCycle());
}
SUnit *pop() {
SUnit *pop() override {
if (Queue.empty()) return NULL;
SUnit *V = popFromQueue(Queue, Picker, scheduleDAG);

View File

@ -117,13 +117,13 @@ namespace llvm {
virtual MachineBasicBlock*
EmitSchedule(MachineBasicBlock::iterator &InsertPos);
virtual void dumpNode(const SUnit *SU) const;
void dumpNode(const SUnit *SU) const override;
void dumpSchedule() const;
virtual std::string getGraphNodeLabel(const SUnit *SU) const;
std::string getGraphNodeLabel(const SUnit *SU) const override;
virtual std::string getDAGName() const;
std::string getDAGName() const override;
virtual void getCustomGraphFeatures(GraphWriter<ScheduleDAG*> &GW) const;

View File

@ -80,7 +80,7 @@ public:
delete AvailableQueue;
}
void Schedule();
void Schedule() override;
private:
void releaseSucc(SUnit *SU, const SDep &D);

View File

@ -5674,7 +5674,7 @@ class RAUWUpdateListener : public SelectionDAG::DAGUpdateListener {
SDNode::use_iterator &UI;
SDNode::use_iterator &UE;
virtual void NodeDeleted(SDNode *N, SDNode *E) {
void NodeDeleted(SDNode *N, SDNode *E) override {
// Increment the iterator as needed.
while (UI != UE && N == *UI)
++UI;

View File

@ -803,7 +803,7 @@ public:
/// NodeDeleted - Handle nodes deleted from the graph. If the node being
/// deleted is the current ISelPosition node, update ISelPosition.
///
virtual void NodeDeleted(SDNode *N, SDNode *E) {
void NodeDeleted(SDNode *N, SDNode *E) override {
if (ISelPosition == SelectionDAG::allnodes_iterator(N))
++ISelPosition;
}