mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 12:41:49 +01:00
Use 'override/final' instead of 'virtual' for overridden methods
The patch is generated using clang-tidy misc-use-override check. This command was used: tools/clang/tools/extra/clang-tidy/tool/run-clang-tidy.py \ -checks='-*,misc-use-override' -header-filter='llvm|clang' \ -j=32 -fix -format http://reviews.llvm.org/D8925 llvm-svn: 234679
This commit is contained in:
parent
c28a37b367
commit
71412ece39
@ -1573,7 +1573,7 @@ public:
|
||||
std::runtime_error::operator=(toCopy)));
|
||||
}
|
||||
|
||||
virtual ~OurCppRunException (void) throw () {}
|
||||
~OurCppRunException(void) throw() override {}
|
||||
};
|
||||
} // end anonymous namespace
|
||||
|
||||
|
@ -93,7 +93,7 @@ class NumberExprAST : public ExprAST {
|
||||
double Val;
|
||||
public:
|
||||
NumberExprAST(double val) : Val(val) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VariableExprAST - Expression class for referencing a variable, like "a".
|
||||
@ -101,7 +101,7 @@ class VariableExprAST : public ExprAST {
|
||||
std::string Name;
|
||||
public:
|
||||
VariableExprAST(const std::string &name) : Name(name) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// BinaryExprAST - Expression class for a binary operator.
|
||||
@ -111,7 +111,7 @@ class BinaryExprAST : public ExprAST {
|
||||
public:
|
||||
BinaryExprAST(char op, ExprAST *lhs, ExprAST *rhs)
|
||||
: Op(op), LHS(lhs), RHS(rhs) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// CallExprAST - Expression class for function calls.
|
||||
@ -121,7 +121,7 @@ class CallExprAST : public ExprAST {
|
||||
public:
|
||||
CallExprAST(const std::string &callee, std::vector<ExprAST*> &args)
|
||||
: Callee(callee), Args(args) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// PrototypeAST - This class represents the "prototype" for a function,
|
||||
|
@ -107,7 +107,7 @@ class NumberExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
NumberExprAST(double val) : Val(val) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VariableExprAST - Expression class for referencing a variable, like "a".
|
||||
@ -116,7 +116,7 @@ class VariableExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
VariableExprAST(const std::string &name) : Name(name) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// BinaryExprAST - Expression class for a binary operator.
|
||||
@ -127,7 +127,7 @@ class BinaryExprAST : public ExprAST {
|
||||
public:
|
||||
BinaryExprAST(char op, ExprAST *lhs, ExprAST *rhs)
|
||||
: Op(op), LHS(lhs), RHS(rhs) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// CallExprAST - Expression class for function calls.
|
||||
@ -138,7 +138,7 @@ class CallExprAST : public ExprAST {
|
||||
public:
|
||||
CallExprAST(const std::string &callee, std::vector<ExprAST *> &args)
|
||||
: Callee(callee), Args(args) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// PrototypeAST - This class represents the "prototype" for a function,
|
||||
@ -452,13 +452,13 @@ class HelpingMemoryManager : public SectionMemoryManager {
|
||||
|
||||
public:
|
||||
HelpingMemoryManager(MCJITHelper *Helper) : MasterHelper(Helper) {}
|
||||
virtual ~HelpingMemoryManager() {}
|
||||
~HelpingMemoryManager() override {}
|
||||
|
||||
/// This method returns the address of the specified symbol.
|
||||
/// Our implementation will attempt to find symbols in other
|
||||
/// modules associated with the MCJITHelper to cross link symbols
|
||||
/// from one generated module to another.
|
||||
virtual uint64_t getSymbolAddress(const std::string &Name) override;
|
||||
uint64_t getSymbolAddress(const std::string &Name) override;
|
||||
|
||||
private:
|
||||
MCJITHelper *MasterHelper;
|
||||
|
@ -125,7 +125,7 @@ class NumberExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
NumberExprAST(double val) : Val(val) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VariableExprAST - Expression class for referencing a variable, like "a".
|
||||
@ -134,7 +134,7 @@ class VariableExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
VariableExprAST(const std::string &name) : Name(name) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// BinaryExprAST - Expression class for a binary operator.
|
||||
@ -145,7 +145,7 @@ class BinaryExprAST : public ExprAST {
|
||||
public:
|
||||
BinaryExprAST(char op, ExprAST *lhs, ExprAST *rhs)
|
||||
: Op(op), LHS(lhs), RHS(rhs) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// CallExprAST - Expression class for function calls.
|
||||
@ -156,7 +156,7 @@ class CallExprAST : public ExprAST {
|
||||
public:
|
||||
CallExprAST(const std::string &callee, std::vector<ExprAST *> &args)
|
||||
: Callee(callee), Args(args) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// IfExprAST - Expression class for if/then/else.
|
||||
@ -166,7 +166,7 @@ class IfExprAST : public ExprAST {
|
||||
public:
|
||||
IfExprAST(ExprAST *cond, ExprAST *then, ExprAST *_else)
|
||||
: Cond(cond), Then(then), Else(_else) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// ForExprAST - Expression class for for/in.
|
||||
@ -178,7 +178,7 @@ public:
|
||||
ForExprAST(const std::string &varname, ExprAST *start, ExprAST *end,
|
||||
ExprAST *step, ExprAST *body)
|
||||
: VarName(varname), Start(start), End(end), Step(step), Body(body) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// PrototypeAST - This class represents the "prototype" for a function,
|
||||
|
@ -133,7 +133,7 @@ class NumberExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
NumberExprAST(double val) : Val(val) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VariableExprAST - Expression class for referencing a variable, like "a".
|
||||
@ -142,7 +142,7 @@ class VariableExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
VariableExprAST(const std::string &name) : Name(name) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// UnaryExprAST - Expression class for a unary operator.
|
||||
@ -153,7 +153,7 @@ class UnaryExprAST : public ExprAST {
|
||||
public:
|
||||
UnaryExprAST(char opcode, ExprAST *operand)
|
||||
: Opcode(opcode), Operand(operand) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// BinaryExprAST - Expression class for a binary operator.
|
||||
@ -164,7 +164,7 @@ class BinaryExprAST : public ExprAST {
|
||||
public:
|
||||
BinaryExprAST(char op, ExprAST *lhs, ExprAST *rhs)
|
||||
: Op(op), LHS(lhs), RHS(rhs) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// CallExprAST - Expression class for function calls.
|
||||
@ -175,7 +175,7 @@ class CallExprAST : public ExprAST {
|
||||
public:
|
||||
CallExprAST(const std::string &callee, std::vector<ExprAST *> &args)
|
||||
: Callee(callee), Args(args) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// IfExprAST - Expression class for if/then/else.
|
||||
@ -185,7 +185,7 @@ class IfExprAST : public ExprAST {
|
||||
public:
|
||||
IfExprAST(ExprAST *cond, ExprAST *then, ExprAST *_else)
|
||||
: Cond(cond), Then(then), Else(_else) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// ForExprAST - Expression class for for/in.
|
||||
@ -197,7 +197,7 @@ public:
|
||||
ForExprAST(const std::string &varname, ExprAST *start, ExprAST *end,
|
||||
ExprAST *step, ExprAST *body)
|
||||
: VarName(varname), Start(start), End(end), Step(step), Body(body) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// PrototypeAST - This class represents the "prototype" for a function,
|
||||
|
@ -138,7 +138,7 @@ class NumberExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
NumberExprAST(double val) : Val(val) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VariableExprAST - Expression class for referencing a variable, like "a".
|
||||
@ -148,7 +148,7 @@ class VariableExprAST : public ExprAST {
|
||||
public:
|
||||
VariableExprAST(const std::string &name) : Name(name) {}
|
||||
const std::string &getName() const { return Name; }
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// UnaryExprAST - Expression class for a unary operator.
|
||||
@ -159,7 +159,7 @@ class UnaryExprAST : public ExprAST {
|
||||
public:
|
||||
UnaryExprAST(char opcode, ExprAST *operand)
|
||||
: Opcode(opcode), Operand(operand) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// BinaryExprAST - Expression class for a binary operator.
|
||||
@ -170,7 +170,7 @@ class BinaryExprAST : public ExprAST {
|
||||
public:
|
||||
BinaryExprAST(char op, ExprAST *lhs, ExprAST *rhs)
|
||||
: Op(op), LHS(lhs), RHS(rhs) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// CallExprAST - Expression class for function calls.
|
||||
@ -181,7 +181,7 @@ class CallExprAST : public ExprAST {
|
||||
public:
|
||||
CallExprAST(const std::string &callee, std::vector<ExprAST *> &args)
|
||||
: Callee(callee), Args(args) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// IfExprAST - Expression class for if/then/else.
|
||||
@ -191,7 +191,7 @@ class IfExprAST : public ExprAST {
|
||||
public:
|
||||
IfExprAST(ExprAST *cond, ExprAST *then, ExprAST *_else)
|
||||
: Cond(cond), Then(then), Else(_else) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// ForExprAST - Expression class for for/in.
|
||||
@ -203,7 +203,7 @@ public:
|
||||
ForExprAST(const std::string &varname, ExprAST *start, ExprAST *end,
|
||||
ExprAST *step, ExprAST *body)
|
||||
: VarName(varname), Start(start), End(end), Step(step), Body(body) {}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VarExprAST - Expression class for var/in
|
||||
@ -216,7 +216,7 @@ public:
|
||||
ExprAST *body)
|
||||
: VarNames(varnames), Body(body) {}
|
||||
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// PrototypeAST - This class represents the "prototype" for a function,
|
||||
|
@ -221,10 +221,10 @@ class NumberExprAST : public ExprAST {
|
||||
|
||||
public:
|
||||
NumberExprAST(double val) : Val(val) {}
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
return ExprAST::dump(out << Val, ind);
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VariableExprAST - Expression class for referencing a variable, like "a".
|
||||
@ -235,10 +235,10 @@ public:
|
||||
VariableExprAST(SourceLocation Loc, const std::string &name)
|
||||
: ExprAST(Loc), Name(name) {}
|
||||
const std::string &getName() const { return Name; }
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
return ExprAST::dump(out << Name, ind);
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// UnaryExprAST - Expression class for a unary operator.
|
||||
@ -249,12 +249,12 @@ class UnaryExprAST : public ExprAST {
|
||||
public:
|
||||
UnaryExprAST(char opcode, ExprAST *operand)
|
||||
: Opcode(opcode), Operand(operand) {}
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
ExprAST::dump(out << "unary" << Opcode, ind);
|
||||
Operand->dump(out, ind + 1);
|
||||
return out;
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// BinaryExprAST - Expression class for a binary operator.
|
||||
@ -265,13 +265,13 @@ class BinaryExprAST : public ExprAST {
|
||||
public:
|
||||
BinaryExprAST(SourceLocation Loc, char op, ExprAST *lhs, ExprAST *rhs)
|
||||
: ExprAST(Loc), Op(op), LHS(lhs), RHS(rhs) {}
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
ExprAST::dump(out << "binary" << Op, ind);
|
||||
LHS->dump(indent(out, ind) << "LHS:", ind + 1);
|
||||
RHS->dump(indent(out, ind) << "RHS:", ind + 1);
|
||||
return out;
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// CallExprAST - Expression class for function calls.
|
||||
@ -283,13 +283,13 @@ public:
|
||||
CallExprAST(SourceLocation Loc, const std::string &callee,
|
||||
std::vector<ExprAST *> &args)
|
||||
: ExprAST(Loc), Callee(callee), Args(args) {}
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
ExprAST::dump(out << "call " << Callee, ind);
|
||||
for (ExprAST *Arg : Args)
|
||||
Arg->dump(indent(out, ind + 1), ind + 1);
|
||||
return out;
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// IfExprAST - Expression class for if/then/else.
|
||||
@ -299,14 +299,14 @@ class IfExprAST : public ExprAST {
|
||||
public:
|
||||
IfExprAST(SourceLocation Loc, ExprAST *cond, ExprAST *then, ExprAST *_else)
|
||||
: ExprAST(Loc), Cond(cond), Then(then), Else(_else) {}
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
ExprAST::dump(out << "if", ind);
|
||||
Cond->dump(indent(out, ind) << "Cond:", ind + 1);
|
||||
Then->dump(indent(out, ind) << "Then:", ind + 1);
|
||||
Else->dump(indent(out, ind) << "Else:", ind + 1);
|
||||
return out;
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// ForExprAST - Expression class for for/in.
|
||||
@ -318,7 +318,7 @@ public:
|
||||
ForExprAST(const std::string &varname, ExprAST *start, ExprAST *end,
|
||||
ExprAST *step, ExprAST *body)
|
||||
: VarName(varname), Start(start), End(end), Step(step), Body(body) {}
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
ExprAST::dump(out << "for", ind);
|
||||
Start->dump(indent(out, ind) << "Cond:", ind + 1);
|
||||
End->dump(indent(out, ind) << "End:", ind + 1);
|
||||
@ -326,7 +326,7 @@ public:
|
||||
Body->dump(indent(out, ind) << "Body:", ind + 1);
|
||||
return out;
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// VarExprAST - Expression class for var/in
|
||||
@ -339,14 +339,14 @@ public:
|
||||
ExprAST *body)
|
||||
: VarNames(varnames), Body(body) {}
|
||||
|
||||
virtual std::ostream &dump(std::ostream &out, int ind) {
|
||||
std::ostream &dump(std::ostream &out, int ind) override {
|
||||
ExprAST::dump(out << "var", ind);
|
||||
for (const auto &NamedVar : VarNames)
|
||||
NamedVar.second->dump(indent(out, ind) << NamedVar.first << ':', ind + 1);
|
||||
Body->dump(indent(out, ind) << "Body:", ind + 1);
|
||||
return out;
|
||||
}
|
||||
virtual Value *Codegen();
|
||||
Value *Codegen() override;
|
||||
};
|
||||
|
||||
/// PrototypeAST - This class represents the "prototype" for a function,
|
||||
|
@ -165,7 +165,7 @@ public:
|
||||
AssumptionCache &getAssumptionCache(Function &F);
|
||||
|
||||
AssumptionCacheTracker();
|
||||
~AssumptionCacheTracker();
|
||||
~AssumptionCacheTracker() override;
|
||||
|
||||
void releaseMemory() override { AssumptionCaches.shrink_and_clear(); }
|
||||
|
||||
|
@ -34,7 +34,7 @@ public:
|
||||
|
||||
BlockFrequencyInfo();
|
||||
|
||||
~BlockFrequencyInfo();
|
||||
~BlockFrequencyInfo() override;
|
||||
|
||||
void getAnalysisUsage(AnalysisUsage &AU) const override;
|
||||
|
||||
|
@ -318,7 +318,7 @@ public:
|
||||
static char ID; // Class identification, replacement for typeinfo
|
||||
|
||||
CallGraphWrapperPass();
|
||||
virtual ~CallGraphWrapperPass();
|
||||
~CallGraphWrapperPass() override;
|
||||
|
||||
/// \brief The internal \c CallGraph around which the rest of this interface
|
||||
/// is wrapped.
|
||||
|
@ -219,7 +219,7 @@ namespace llvm {
|
||||
public:
|
||||
FullDependence(Instruction *Src, Instruction *Dst, bool LoopIndependent,
|
||||
unsigned Levels);
|
||||
~FullDependence() { delete[] DV; }
|
||||
~FullDependence() override { delete[] DV; }
|
||||
|
||||
/// isLoopIndependent - Returns true if this is a loop-independent
|
||||
/// dependence.
|
||||
|
@ -107,7 +107,7 @@ public:
|
||||
static char ID;
|
||||
|
||||
InlineCostAnalysis();
|
||||
~InlineCostAnalysis();
|
||||
~InlineCostAnalysis() override;
|
||||
|
||||
// Pass interface implementation.
|
||||
void getAnalysisUsage(AnalysisUsage &AU) const override;
|
||||
|
@ -39,7 +39,7 @@ public:
|
||||
/// The default byte alignment for jump tables is 16, which is large but
|
||||
/// usually safe.
|
||||
JumpInstrTableInfo(uint64_t ByteAlign = 16);
|
||||
virtual ~JumpInstrTableInfo();
|
||||
~JumpInstrTableInfo() override;
|
||||
const char *getPassName() const override {
|
||||
return "Jump-Instruction Table Info";
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ public:
|
||||
LazyValueInfo() : FunctionPass(ID), PImpl(nullptr) {
|
||||
initializeLazyValueInfoPass(*PassRegistry::getPassRegistry());
|
||||
}
|
||||
~LazyValueInfo() { assert(!PImpl && "releaseMemory not called"); }
|
||||
~LazyValueInfo() override { assert(!PImpl && "releaseMemory not called"); }
|
||||
|
||||
/// This is used to return true/false/dunno results.
|
||||
enum Tristate {
|
||||
|
@ -36,8 +36,8 @@ namespace llvm {
|
||||
: FunctionPass(ID), LCI(LC) {
|
||||
initializeLibCallAliasAnalysisPass(*PassRegistry::getPassRegistry());
|
||||
}
|
||||
~LibCallAliasAnalysis();
|
||||
|
||||
~LibCallAliasAnalysis() override;
|
||||
|
||||
ModRefResult getModRefInfo(ImmutableCallSite CS,
|
||||
const Location &Loc) override;
|
||||
|
||||
|
@ -329,7 +329,7 @@ namespace llvm {
|
||||
|
||||
public:
|
||||
MemoryDependenceAnalysis();
|
||||
~MemoryDependenceAnalysis();
|
||||
~MemoryDependenceAnalysis() override;
|
||||
static char ID;
|
||||
|
||||
/// Pass Implementation stuff. This doesn't do any analysis eagerly.
|
||||
|
@ -30,7 +30,7 @@ struct PostDominatorTree : public FunctionPass {
|
||||
DT = new DominatorTreeBase<BasicBlock>(true);
|
||||
}
|
||||
|
||||
~PostDominatorTree();
|
||||
~PostDominatorTree() override;
|
||||
|
||||
bool runOnFunction(Function &F) override;
|
||||
|
||||
|
@ -842,7 +842,7 @@ class RegionInfo : public RegionInfoBase<RegionTraits<Function>> {
|
||||
public:
|
||||
explicit RegionInfo();
|
||||
|
||||
virtual ~RegionInfo();
|
||||
~RegionInfo() override;
|
||||
|
||||
// updateStatistics - Update statistic about created regions.
|
||||
void updateStatistics(Region *R) final;
|
||||
@ -858,7 +858,7 @@ public:
|
||||
static char ID;
|
||||
explicit RegionInfoPass();
|
||||
|
||||
~RegionInfoPass();
|
||||
~RegionInfoPass() override;
|
||||
|
||||
RegionInfo &getRegionInfo() { return RI; }
|
||||
|
||||
|
@ -140,7 +140,7 @@ protected:
|
||||
explicit AsmPrinter(TargetMachine &TM, std::unique_ptr<MCStreamer> Streamer);
|
||||
|
||||
public:
|
||||
virtual ~AsmPrinter();
|
||||
~AsmPrinter() override;
|
||||
|
||||
DwarfDebug *getDwarfDebug() { return DD; }
|
||||
DwarfDebug *getDwarfDebug() const { return DD; }
|
||||
|
@ -100,7 +100,7 @@ extern cl::opt<bool> UseSegmentSetForPhysRegs;
|
||||
public:
|
||||
static char ID; // Pass identification, replacement for typeid
|
||||
LiveIntervals();
|
||||
virtual ~LiveIntervals();
|
||||
~LiveIntervals() override;
|
||||
|
||||
// Calculate the spill weight to assign to a single instruction.
|
||||
static float getSpillWeight(bool isDef, bool isUse,
|
||||
|
@ -122,7 +122,7 @@ public:
|
||||
MRI.setDelegate(this);
|
||||
}
|
||||
|
||||
~LiveRangeEdit() { MRI.resetDelegate(this); }
|
||||
~LiveRangeEdit() override { MRI.resetDelegate(this); }
|
||||
|
||||
LiveInterval &getParent() const {
|
||||
assert(Parent && "No parent LiveInterval");
|
||||
|
@ -35,7 +35,7 @@ public:
|
||||
|
||||
MachineBlockFrequencyInfo();
|
||||
|
||||
~MachineBlockFrequencyInfo();
|
||||
~MachineBlockFrequencyInfo() override;
|
||||
|
||||
void getAnalysisUsage(AnalysisUsage &AU) const override;
|
||||
|
||||
|
@ -72,7 +72,7 @@ public:
|
||||
|
||||
MachineDominatorTree();
|
||||
|
||||
~MachineDominatorTree();
|
||||
~MachineDominatorTree() override;
|
||||
|
||||
DominatorTreeBase<MachineBasicBlock> &getBase() {
|
||||
applySplitCriticalEdges();
|
||||
|
@ -31,7 +31,7 @@ private:
|
||||
public:
|
||||
static char ID;
|
||||
explicit MachineFunctionAnalysis(const TargetMachine &tm);
|
||||
~MachineFunctionAnalysis();
|
||||
~MachineFunctionAnalysis() override;
|
||||
|
||||
MachineFunction &getMF() const { return *MF; }
|
||||
|
||||
|
@ -199,7 +199,7 @@ public:
|
||||
// Real constructor.
|
||||
MachineModuleInfo(const MCAsmInfo &MAI, const MCRegisterInfo &MRI,
|
||||
const MCObjectFileInfo *MOFI);
|
||||
~MachineModuleInfo();
|
||||
~MachineModuleInfo() override;
|
||||
|
||||
// Initialization and Finalization
|
||||
bool doInitialization(Module &) override;
|
||||
|
@ -124,7 +124,7 @@ class RegisterPassParser : public MachinePassRegistryListener,
|
||||
public:
|
||||
RegisterPassParser(cl::Option &O)
|
||||
: cl::parser<typename RegistryClass::FunctionPassCtor>(O) {}
|
||||
~RegisterPassParser() { RegistryClass::setListener(nullptr); }
|
||||
~RegisterPassParser() override { RegistryClass::setListener(nullptr); }
|
||||
|
||||
void initialize() {
|
||||
cl::parser<typename RegistryClass::FunctionPassCtor>::initialize();
|
||||
|
@ -33,7 +33,7 @@ public:
|
||||
|
||||
MachinePostDominatorTree();
|
||||
|
||||
~MachinePostDominatorTree();
|
||||
~MachinePostDominatorTree() override;
|
||||
|
||||
FunctionPass *createMachinePostDominatorTreePass();
|
||||
|
||||
|
@ -80,7 +80,7 @@ class MachineRegionInfo : public RegionInfoBase<RegionTraits<MachineFunction>> {
|
||||
public:
|
||||
explicit MachineRegionInfo();
|
||||
|
||||
virtual ~MachineRegionInfo();
|
||||
~MachineRegionInfo() override;
|
||||
|
||||
// updateStatistics - Update statistic about created regions.
|
||||
void updateStatistics(MachineRegion *R) final;
|
||||
@ -98,7 +98,7 @@ public:
|
||||
static char ID;
|
||||
explicit MachineRegionInfoPass();
|
||||
|
||||
~MachineRegionInfoPass();
|
||||
~MachineRegionInfoPass() override;
|
||||
|
||||
MachineRegionInfo &getRegionInfo() {
|
||||
return RI;
|
||||
|
@ -385,7 +385,7 @@ public:
|
||||
ShouldTrackPressure(false), RPTracker(RegPressure),
|
||||
TopRPTracker(TopPressure), BotRPTracker(BotPressure) {}
|
||||
|
||||
virtual ~ScheduleDAGMILive();
|
||||
~ScheduleDAGMILive() override;
|
||||
|
||||
/// Return true if this DAG supports VReg liveness and RegPressure.
|
||||
bool hasVRegLiveness() const override { return true; }
|
||||
@ -909,7 +909,7 @@ public:
|
||||
PostGenericScheduler(const MachineSchedContext *C):
|
||||
GenericSchedulerBase(C), Top(SchedBoundary::TopQID, "TopQ") {}
|
||||
|
||||
virtual ~PostGenericScheduler() {}
|
||||
~PostGenericScheduler() override {}
|
||||
|
||||
void initPolicy(MachineBasicBlock::iterator Begin,
|
||||
MachineBasicBlock::iterator End,
|
||||
|
@ -125,7 +125,7 @@ public:
|
||||
// Dummy constructor.
|
||||
TargetPassConfig();
|
||||
|
||||
virtual ~TargetPassConfig();
|
||||
~TargetPassConfig() override;
|
||||
|
||||
static char ID;
|
||||
|
||||
|
@ -158,7 +158,7 @@ namespace llvm {
|
||||
bool RemoveKillFlags = false,
|
||||
LiveIntervals *LIS = nullptr);
|
||||
|
||||
virtual ~ScheduleDAGInstrs() {}
|
||||
~ScheduleDAGInstrs() override {}
|
||||
|
||||
bool isPostRA() const { return IsPostRA; }
|
||||
|
||||
|
@ -58,7 +58,7 @@ public:
|
||||
|
||||
explicit SelectionDAGISel(TargetMachine &tm,
|
||||
CodeGenOpt::Level OL = CodeGenOpt::Default);
|
||||
virtual ~SelectionDAGISel();
|
||||
~SelectionDAGISel() override;
|
||||
|
||||
const TargetLowering *getTargetLowering() const { return TLI; }
|
||||
|
||||
|
@ -39,7 +39,7 @@ class TargetLoweringObjectFileELF : public TargetLoweringObjectFile {
|
||||
public:
|
||||
TargetLoweringObjectFileELF() : UseInitArray(false) {}
|
||||
|
||||
virtual ~TargetLoweringObjectFileELF() {}
|
||||
~TargetLoweringObjectFileELF() override {}
|
||||
|
||||
void emitPersonalityValue(MCStreamer &Streamer, const TargetMachine &TM,
|
||||
const MCSymbol *Sym) const override;
|
||||
@ -88,7 +88,7 @@ public:
|
||||
|
||||
class TargetLoweringObjectFileMachO : public TargetLoweringObjectFile {
|
||||
public:
|
||||
virtual ~TargetLoweringObjectFileMachO() {}
|
||||
~TargetLoweringObjectFileMachO() override {}
|
||||
TargetLoweringObjectFileMachO();
|
||||
|
||||
/// Extract the dependent library name from a linker option string. Returns
|
||||
@ -136,7 +136,7 @@ public:
|
||||
|
||||
class TargetLoweringObjectFileCOFF : public TargetLoweringObjectFile {
|
||||
public:
|
||||
virtual ~TargetLoweringObjectFileCOFF() {}
|
||||
~TargetLoweringObjectFileCOFF() override {}
|
||||
|
||||
const MCSection *
|
||||
getExplicitSectionGlobal(const GlobalValue *GV,
|
||||
|
@ -22,7 +22,7 @@ public:
|
||||
ConcreteSymbolEnumerator(std::unique_ptr<IPDBEnumSymbols> SymbolEnumerator)
|
||||
: Enumerator(std::move(SymbolEnumerator)) {}
|
||||
|
||||
virtual ~ConcreteSymbolEnumerator() {}
|
||||
~ConcreteSymbolEnumerator() override {}
|
||||
|
||||
uint32_t getChildCount() const override {
|
||||
return Enumerator->getChildCount();
|
||||
|
@ -56,7 +56,7 @@ class RTDyldMemoryManager : public MCJITMemoryManager,
|
||||
void operator=(const RTDyldMemoryManager&) = delete;
|
||||
public:
|
||||
RTDyldMemoryManager() {}
|
||||
virtual ~RTDyldMemoryManager();
|
||||
~RTDyldMemoryManager() override;
|
||||
|
||||
void registerEHFrames(uint8_t *Addr, uint64_t LoadAddr, size_t Size) override;
|
||||
void deregisterEHFrames(uint8_t *Addr, uint64_t LoadAddr, size_t Size) override;
|
||||
|
@ -40,7 +40,7 @@ class SectionMemoryManager : public RTDyldMemoryManager {
|
||||
|
||||
public:
|
||||
SectionMemoryManager() { }
|
||||
virtual ~SectionMemoryManager();
|
||||
~SectionMemoryManager() override;
|
||||
|
||||
/// \brief Allocates a memory block of (at least) the given size suitable for
|
||||
/// executable code.
|
||||
|
@ -105,7 +105,7 @@ public:
|
||||
BasicBlock *InsertBefore = nullptr) {
|
||||
return new BasicBlock(Context, Name, Parent, InsertBefore);
|
||||
}
|
||||
~BasicBlock();
|
||||
~BasicBlock() override;
|
||||
|
||||
/// \brief Return the enclosing method, or null if none.
|
||||
const Function *getParent() const { return Parent; }
|
||||
|
@ -547,7 +547,7 @@ class ConstantDataSequential : public Constant {
|
||||
protected:
|
||||
explicit ConstantDataSequential(Type *ty, ValueTy VT, const char *Data)
|
||||
: Constant(ty, VT, nullptr, 0), DataElements(Data), Next(nullptr) {}
|
||||
~ConstantDataSequential() { delete Next; }
|
||||
~ConstantDataSequential() override { delete Next; }
|
||||
|
||||
static Constant *getImpl(StringRef Bytes, Type *Ty);
|
||||
|
||||
|
@ -114,7 +114,7 @@ public:
|
||||
return new(0) Function(Ty, Linkage, N, M);
|
||||
}
|
||||
|
||||
~Function();
|
||||
~Function() override;
|
||||
|
||||
Type *getReturnType() const; // Return the type of the ret val
|
||||
FunctionType *getFunctionType() const; // Return the FunctionType for me
|
||||
|
@ -104,7 +104,7 @@ public:
|
||||
LocalExecTLSModel
|
||||
};
|
||||
|
||||
~GlobalValue() {
|
||||
~GlobalValue() override {
|
||||
removeDeadConstantUsers(); // remove any dead constants using this.
|
||||
}
|
||||
|
||||
|
@ -66,7 +66,7 @@ public:
|
||||
ThreadLocalMode = NotThreadLocal, unsigned AddressSpace = 0,
|
||||
bool isExternallyInitialized = false);
|
||||
|
||||
~GlobalVariable() {
|
||||
~GlobalVariable() override {
|
||||
NumOperands = 1; // FIXME: needed by operator delete
|
||||
}
|
||||
|
||||
|
@ -51,7 +51,7 @@ private:
|
||||
InlineAsm(PointerType *Ty, const std::string &AsmString,
|
||||
const std::string &Constraints, bool hasSideEffects,
|
||||
bool isAlignStack, AsmDialect asmDialect);
|
||||
virtual ~InlineAsm();
|
||||
~InlineAsm() override;
|
||||
|
||||
/// When the ConstantUniqueMap merges two types and makes two InlineAsms
|
||||
/// identical, it destroys one of them with this method.
|
||||
|
@ -44,7 +44,7 @@ protected:
|
||||
: Instruction(Ty, iType, Ops, NumOps, InsertAtEnd) {}
|
||||
|
||||
// Out of line virtual method, so the vtable, etc has a home.
|
||||
~TerminatorInst();
|
||||
~TerminatorInst() override;
|
||||
|
||||
/// Virtual methods - Terminators should overload these and provide inline
|
||||
/// overrides of non-V methods.
|
||||
@ -102,7 +102,7 @@ public:
|
||||
}
|
||||
|
||||
// Out of line virtual method, so the vtable, etc has a home.
|
||||
~UnaryInstruction();
|
||||
~UnaryInstruction() override;
|
||||
|
||||
/// Transparently provide more efficient getOperand methods.
|
||||
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Value);
|
||||
|
@ -62,7 +62,7 @@ class Instruction : public User, public ilist_node<Instruction> {
|
||||
};
|
||||
public:
|
||||
// Out of line virtual method, so the vtable, etc has a home.
|
||||
~Instruction();
|
||||
~Instruction() override;
|
||||
|
||||
/// user_back - Specialize the methods defined in Value, as we know that an
|
||||
/// instruction can only be used by other instructions.
|
||||
|
@ -91,7 +91,7 @@ public:
|
||||
const Twine &Name, BasicBlock *InsertAtEnd);
|
||||
|
||||
// Out of line virtual method, so the vtable, etc. has a home.
|
||||
virtual ~AllocaInst();
|
||||
~AllocaInst() override;
|
||||
|
||||
/// isArrayAllocation - Return true if there is an allocation size parameter
|
||||
/// to the allocation instruction that is not 1.
|
||||
@ -1335,7 +1335,7 @@ public:
|
||||
static Instruction* CreateFree(Value* Source, Instruction *InsertBefore);
|
||||
static Instruction* CreateFree(Value* Source, BasicBlock *InsertAtEnd);
|
||||
|
||||
~CallInst();
|
||||
~CallInst() override;
|
||||
|
||||
// Note that 'musttail' implies 'tail'.
|
||||
enum TailCallKind { TCK_None = 0, TCK_Tail = 1, TCK_MustTail = 2 };
|
||||
@ -2175,7 +2175,7 @@ public:
|
||||
const Twine &NameStr, BasicBlock *InsertAtEnd) {
|
||||
return new PHINode(Ty, NumReservedValues, NameStr, InsertAtEnd);
|
||||
}
|
||||
~PHINode();
|
||||
~PHINode() override;
|
||||
|
||||
/// Provide fast operand accessors
|
||||
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Value);
|
||||
@ -2366,7 +2366,7 @@ public:
|
||||
static LandingPadInst *Create(Type *RetTy, Value *PersonalityFn,
|
||||
unsigned NumReservedClauses,
|
||||
const Twine &NameStr, BasicBlock *InsertAtEnd);
|
||||
~LandingPadInst();
|
||||
~LandingPadInst() override;
|
||||
|
||||
/// Provide fast operand accessors
|
||||
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Value);
|
||||
@ -2468,7 +2468,7 @@ public:
|
||||
static ReturnInst* Create(LLVMContext &C, BasicBlock *InsertAtEnd) {
|
||||
return new(0) ReturnInst(C, InsertAtEnd);
|
||||
}
|
||||
virtual ~ReturnInst();
|
||||
~ReturnInst() override;
|
||||
|
||||
/// Provide fast operand accessors
|
||||
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Value);
|
||||
@ -2765,7 +2765,7 @@ public:
|
||||
return new SwitchInst(Value, Default, NumCases, InsertAtEnd);
|
||||
}
|
||||
|
||||
~SwitchInst();
|
||||
~SwitchInst() override;
|
||||
|
||||
/// Provide fast operand accessors
|
||||
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Value);
|
||||
@ -2951,7 +2951,7 @@ public:
|
||||
BasicBlock *InsertAtEnd) {
|
||||
return new IndirectBrInst(Address, NumDests, InsertAtEnd);
|
||||
}
|
||||
~IndirectBrInst();
|
||||
~IndirectBrInst() override;
|
||||
|
||||
/// Provide fast operand accessors.
|
||||
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Value);
|
||||
|
@ -50,7 +50,7 @@ class PassManager : public PassManagerBase {
|
||||
public:
|
||||
|
||||
PassManager();
|
||||
~PassManager();
|
||||
~PassManager() override;
|
||||
|
||||
void add(Pass *P) override;
|
||||
|
||||
@ -70,7 +70,7 @@ public:
|
||||
/// FunctionPassManager ctor - This initializes the pass manager. It needs,
|
||||
/// but does not take ownership of, the specified Module.
|
||||
explicit FunctionPassManager(Module *M);
|
||||
~FunctionPassManager();
|
||||
~FunctionPassManager() override;
|
||||
|
||||
void add(Pass *P) override;
|
||||
|
||||
|
@ -43,7 +43,7 @@ class PassNameParser : public PassRegistrationListener,
|
||||
public cl::parser<const PassInfo*> {
|
||||
public:
|
||||
PassNameParser(cl::Option &O);
|
||||
virtual ~PassNameParser();
|
||||
~PassNameParser() override;
|
||||
|
||||
void initialize() {
|
||||
cl::parser<const PassInfo*>::initialize();
|
||||
|
@ -164,7 +164,7 @@ class MetadataAsValue : public Value {
|
||||
Metadata *MD;
|
||||
|
||||
MetadataAsValue(Type *Ty, Metadata *MD);
|
||||
~MetadataAsValue();
|
||||
~MetadataAsValue() override;
|
||||
|
||||
/// \brief Drop use of metadata (during teardown).
|
||||
void dropUse() { MD = nullptr; }
|
||||
|
@ -42,7 +42,7 @@ protected:
|
||||
// NOTE: Cannot use = delete because it's not legal to delete
|
||||
// an overridden method that's not deleted in the base class. Cannot leave
|
||||
// this unimplemented because that leads to an ODR-violation.
|
||||
~Operator();
|
||||
~Operator() override;
|
||||
|
||||
public:
|
||||
/// Return the opcode for this Instruction or ConstantExpr.
|
||||
|
@ -60,9 +60,7 @@ protected:
|
||||
NumOperands = 0;
|
||||
}
|
||||
public:
|
||||
~User() {
|
||||
Use::zap(OperandList, OperandList + NumOperands);
|
||||
}
|
||||
~User() override { Use::zap(OperandList, OperandList + NumOperands); }
|
||||
/// \brief Free memory allocated for User and Use objects.
|
||||
void operator delete(void *Usr);
|
||||
/// \brief Placement delete - required by std, but never called.
|
||||
|
@ -119,7 +119,7 @@ private:
|
||||
};
|
||||
|
||||
struct ListCompleterConcept : CompleterConcept {
|
||||
~ListCompleterConcept();
|
||||
~ListCompleterConcept() override;
|
||||
CompletionAction complete(StringRef Buffer, size_t Pos) const override;
|
||||
static std::string getCommonPrefix(const std::vector<Completion> &Comps);
|
||||
virtual std::vector<Completion> getCompletions(StringRef Buffer,
|
||||
|
@ -15,8 +15,7 @@
|
||||
namespace llvm {
|
||||
class MCAsmInfoELF : public MCAsmInfo {
|
||||
virtual void anchor();
|
||||
const MCSection *
|
||||
getNonexecutableStackSection(MCContext &Ctx) const override final;
|
||||
const MCSection *getNonexecutableStackSection(MCContext &Ctx) const final;
|
||||
|
||||
protected:
|
||||
MCAsmInfoELF();
|
||||
|
@ -143,7 +143,7 @@ public:
|
||||
: MCFragment(FType, SD), BundlePadding(0)
|
||||
{
|
||||
}
|
||||
virtual ~MCEncodedFragment();
|
||||
~MCEncodedFragment() override;
|
||||
|
||||
virtual SmallVectorImpl<char> &getContents() = 0;
|
||||
virtual const SmallVectorImpl<char> &getContents() const = 0;
|
||||
@ -182,7 +182,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
virtual ~MCEncodedFragmentWithFixups();
|
||||
~MCEncodedFragmentWithFixups() override;
|
||||
|
||||
typedef SmallVectorImpl<MCFixup>::const_iterator const_fixup_iterator;
|
||||
typedef SmallVectorImpl<MCFixup>::iterator fixup_iterator;
|
||||
|
@ -34,7 +34,7 @@ public:
|
||||
: MCObjectStreamer(Context, TAB, OS, Emitter),
|
||||
SeenIdent(false) {}
|
||||
|
||||
virtual ~MCELFStreamer();
|
||||
~MCELFStreamer() override;
|
||||
|
||||
/// state management
|
||||
void reset() override {
|
||||
|
@ -141,7 +141,7 @@ public:
|
||||
|
||||
public:
|
||||
raw_counting_ostream() : Count(0) {}
|
||||
~raw_counting_ostream() { flush(); }
|
||||
~raw_counting_ostream() override { flush(); }
|
||||
};
|
||||
|
||||
raw_counting_ostream OutStream;
|
||||
|
@ -51,7 +51,7 @@ class MCObjectStreamer : public MCStreamer {
|
||||
protected:
|
||||
MCObjectStreamer(MCContext &Context, MCAsmBackend &TAB, raw_ostream &OS,
|
||||
MCCodeEmitter *Emitter);
|
||||
~MCObjectStreamer();
|
||||
~MCObjectStreamer() override;
|
||||
|
||||
public:
|
||||
/// state management
|
||||
|
@ -40,7 +40,7 @@ protected:
|
||||
|
||||
public:
|
||||
AsmLexer(const MCAsmInfo &MAI);
|
||||
~AsmLexer();
|
||||
~AsmLexer() override;
|
||||
|
||||
void setBuffer(StringRef Buf, const char *ptr = nullptr);
|
||||
|
||||
|
@ -53,7 +53,7 @@ class MCSymbol;
|
||||
assert ((Characteristics & 0x00F00000) == 0 &&
|
||||
"alignment must not be set upon section creation");
|
||||
}
|
||||
~MCSectionCOFF();
|
||||
~MCSectionCOFF() override;
|
||||
|
||||
public:
|
||||
/// ShouldOmitSectionDirective - Decides whether a '.section' directive
|
||||
|
@ -59,7 +59,7 @@ private:
|
||||
: MCSection(SV_ELF, K, Begin), SectionName(Section), Type(type),
|
||||
Flags(flags), UniqueID(UniqueID), EntrySize(entrySize), Group(group),
|
||||
Associated(Associated) {}
|
||||
~MCSectionELF();
|
||||
~MCSectionELF() override;
|
||||
|
||||
void setSectionName(StringRef Name) { SectionName = Name; }
|
||||
|
||||
|
@ -90,7 +90,7 @@ public:
|
||||
class AArch64TargetStreamer : public MCTargetStreamer {
|
||||
public:
|
||||
AArch64TargetStreamer(MCStreamer &S);
|
||||
~AArch64TargetStreamer();
|
||||
~AArch64TargetStreamer() override;
|
||||
|
||||
void finish() override;
|
||||
|
||||
@ -115,7 +115,7 @@ private:
|
||||
class ARMTargetStreamer : public MCTargetStreamer {
|
||||
public:
|
||||
ARMTargetStreamer(MCStreamer &S);
|
||||
~ARMTargetStreamer();
|
||||
~ARMTargetStreamer() override;
|
||||
|
||||
virtual void emitFnStart();
|
||||
virtual void emitFnEnd();
|
||||
|
@ -110,7 +110,7 @@ protected: // Can only create subclasses.
|
||||
MCTargetOptions MCOptions;
|
||||
|
||||
public:
|
||||
virtual ~MCTargetAsmParser();
|
||||
~MCTargetAsmParser() override;
|
||||
|
||||
uint64_t getAvailableFeatures() const { return AvailableFeatures; }
|
||||
void setAvailableFeatures(uint64_t Value) { AvailableFeatures = Value; }
|
||||
|
@ -31,7 +31,7 @@ class IRObjectFile : public SymbolicFile {
|
||||
|
||||
public:
|
||||
IRObjectFile(MemoryBufferRef Object, std::unique_ptr<Module> M);
|
||||
~IRObjectFile();
|
||||
~IRObjectFile() override;
|
||||
void moveSymbolNext(DataRefImpl &Symb) const override;
|
||||
std::error_code printSymbolName(raw_ostream &OS,
|
||||
DataRefImpl Symb) const override;
|
||||
|
@ -118,7 +118,7 @@ const uint64_t UnknownAddressOrSize = ~0ULL;
|
||||
|
||||
class SymbolicFile : public Binary {
|
||||
public:
|
||||
virtual ~SymbolicFile();
|
||||
~SymbolicFile() override;
|
||||
SymbolicFile(unsigned int Type, MemoryBufferRef Source);
|
||||
|
||||
// virtual interface.
|
||||
|
@ -320,7 +320,7 @@ private:
|
||||
|
||||
public:
|
||||
InputArgList(const char* const *ArgBegin, const char* const *ArgEnd);
|
||||
~InputArgList();
|
||||
~InputArgList() override;
|
||||
|
||||
const char *getArgString(unsigned Index) const override {
|
||||
return ArgStrings[Index];
|
||||
@ -355,7 +355,7 @@ class DerivedArgList : public ArgList {
|
||||
public:
|
||||
/// Construct a new derived arg list from \p BaseArgs.
|
||||
DerivedArgList(const InputArgList &BaseArgs);
|
||||
~DerivedArgList();
|
||||
~DerivedArgList() override;
|
||||
|
||||
const char *getArgString(unsigned Index) const override {
|
||||
return BaseArgs.getArgString(Index);
|
||||
|
@ -250,7 +250,7 @@ public:
|
||||
|
||||
explicit ModulePass(char &pid) : Pass(PT_Module, pid) {}
|
||||
// Force out-of-line virtual method.
|
||||
virtual ~ModulePass();
|
||||
~ModulePass() override;
|
||||
};
|
||||
|
||||
|
||||
@ -279,7 +279,7 @@ public:
|
||||
: ModulePass(pid) {}
|
||||
|
||||
// Force out-of-line virtual method.
|
||||
virtual ~ImmutablePass();
|
||||
~ImmutablePass() override;
|
||||
};
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
@ -94,7 +94,7 @@ public:
|
||||
Scanned = nullptr;
|
||||
}
|
||||
|
||||
~formatted_raw_ostream() {
|
||||
~formatted_raw_ostream() override {
|
||||
flush();
|
||||
releaseStream();
|
||||
}
|
||||
|
@ -888,7 +888,7 @@ public:
|
||||
void *Ctxt = nullptr,
|
||||
SourceMgr::DiagHandlerTy DiagHandler = nullptr,
|
||||
void *DiagHandlerCtxt = nullptr);
|
||||
~Input();
|
||||
~Input() override;
|
||||
|
||||
// Check if there was an syntax or semantic error during parsing.
|
||||
std::error_code error();
|
||||
@ -955,7 +955,7 @@ private:
|
||||
};
|
||||
|
||||
class MapHNode : public HNode {
|
||||
virtual void anchor();
|
||||
void anchor() override;
|
||||
|
||||
public:
|
||||
MapHNode(Node *n) : HNode(n) { }
|
||||
@ -974,7 +974,7 @@ private:
|
||||
};
|
||||
|
||||
class SequenceHNode : public HNode {
|
||||
virtual void anchor();
|
||||
void anchor() override;
|
||||
|
||||
public:
|
||||
SequenceHNode(Node *n) : HNode(n) { }
|
||||
@ -1020,7 +1020,7 @@ private:
|
||||
class Output : public IO {
|
||||
public:
|
||||
Output(llvm::raw_ostream &, void *Ctxt=nullptr);
|
||||
virtual ~Output();
|
||||
~Output() override;
|
||||
|
||||
bool outputting() override;
|
||||
bool mapTag(StringRef, bool) override;
|
||||
|
@ -117,7 +117,7 @@ namespace llvm
|
||||
setStream(Stream, Owns);
|
||||
}
|
||||
|
||||
~circular_raw_ostream() {
|
||||
~circular_raw_ostream() override {
|
||||
flush();
|
||||
flushBufferWithBanner();
|
||||
releaseStream();
|
||||
|
@ -34,7 +34,7 @@ class raw_os_ostream : public raw_ostream {
|
||||
|
||||
public:
|
||||
raw_os_ostream(std::ostream &O) : OS(O) {}
|
||||
~raw_os_ostream();
|
||||
~raw_os_ostream() override;
|
||||
};
|
||||
|
||||
} // end llvm namespace
|
||||
|
@ -366,7 +366,7 @@ public:
|
||||
/// this closes the file when the stream is destroyed.
|
||||
raw_fd_ostream(int fd, bool shouldClose, bool unbuffered=false);
|
||||
|
||||
~raw_fd_ostream();
|
||||
~raw_fd_ostream() override;
|
||||
|
||||
/// Manually flush the stream and close the file. Note that this does not call
|
||||
/// fsync.
|
||||
@ -448,7 +448,7 @@ class raw_string_ostream : public raw_ostream {
|
||||
uint64_t current_pos() const override { return OS.size(); }
|
||||
public:
|
||||
explicit raw_string_ostream(std::string &O) : OS(O) {}
|
||||
~raw_string_ostream();
|
||||
~raw_string_ostream() override;
|
||||
|
||||
/// Flushes the stream contents to the target string and returns the string's
|
||||
/// reference.
|
||||
@ -475,7 +475,7 @@ public:
|
||||
/// \param O The vector to write to; this should generally have at least 128
|
||||
/// bytes free to avoid any extraneous memory overhead.
|
||||
explicit raw_svector_ostream(SmallVectorImpl<char> &O);
|
||||
~raw_svector_ostream();
|
||||
~raw_svector_ostream() override;
|
||||
|
||||
/// This is called when the SmallVector we're appending to is changed outside
|
||||
/// of the raw_svector_ostream's control. It is only safe to do this if the
|
||||
@ -498,7 +498,7 @@ class raw_null_ostream : public raw_ostream {
|
||||
|
||||
public:
|
||||
explicit raw_null_ostream() {}
|
||||
~raw_null_ostream();
|
||||
~raw_null_ostream() override;
|
||||
};
|
||||
|
||||
} // end llvm namespace
|
||||
|
@ -44,7 +44,7 @@ namespace {
|
||||
errs() << " " << Val << " " << Desc << " responses ("
|
||||
<< Val*100/Sum << "%)\n";
|
||||
}
|
||||
~AliasAnalysisCounter() {
|
||||
~AliasAnalysisCounter() override {
|
||||
unsigned AASum = No+May+Partial+Must;
|
||||
unsigned MRSum = NoMR+JustRef+JustMod+MR;
|
||||
if (AASum + MRSum) { // Print a report if any counted queries occurred...
|
||||
|
@ -161,7 +161,7 @@ struct FunctionHandle : public CallbackVH {
|
||||
assert(CFLAA != nullptr);
|
||||
}
|
||||
|
||||
virtual ~FunctionHandle() {}
|
||||
~FunctionHandle() override {}
|
||||
|
||||
void deleted() override { removeSelfFromCache(); }
|
||||
void allUsesReplacedWith(Value *) override { removeSelfFromCache(); }
|
||||
@ -189,7 +189,7 @@ public:
|
||||
initializeCFLAliasAnalysisPass(*PassRegistry::getPassRegistry());
|
||||
}
|
||||
|
||||
virtual ~CFLAliasAnalysis() {}
|
||||
~CFLAliasAnalysis() override {}
|
||||
|
||||
void getAnalysisUsage(AnalysisUsage &AU) const override {
|
||||
AliasAnalysis::getAnalysisUsage(AU);
|
||||
|
@ -230,7 +230,7 @@ public:
|
||||
DiagnosticHandlerFunction DiagnosticHandler);
|
||||
explicit BitcodeReader(DataStreamer *streamer, LLVMContext &C,
|
||||
DiagnosticHandlerFunction DiagnosticHandler);
|
||||
~BitcodeReader() { FreeState(); }
|
||||
~BitcodeReader() override { FreeState(); }
|
||||
|
||||
std::error_code materializeForwardReferencedFunctions();
|
||||
|
||||
|
@ -127,7 +127,7 @@ class RegisterClassInfo;
|
||||
AggressiveAntiDepBreaker(MachineFunction& MFi,
|
||||
const RegisterClassInfo &RCI,
|
||||
TargetSubtargetInfo::RegClassVector& CriticalPathRCs);
|
||||
~AggressiveAntiDepBreaker();
|
||||
~AggressiveAntiDepBreaker() override;
|
||||
|
||||
/// Initialize anti-dep breaking for a new basic block.
|
||||
void StartBlock(MachineBasicBlock *BB) override;
|
||||
|
@ -48,7 +48,7 @@ public:
|
||||
// Main entry points.
|
||||
//
|
||||
DwarfCFIException(AsmPrinter *A);
|
||||
virtual ~DwarfCFIException();
|
||||
~DwarfCFIException() override;
|
||||
|
||||
/// Emit all exception information that should come after the content.
|
||||
void endModule() override;
|
||||
@ -70,7 +70,7 @@ public:
|
||||
// Main entry points.
|
||||
//
|
||||
ARMException(AsmPrinter *A);
|
||||
virtual ~ARMException();
|
||||
~ARMException() override;
|
||||
|
||||
/// Emit all exception information that should come after the content.
|
||||
void endModule() override;
|
||||
|
@ -125,7 +125,7 @@ protected:
|
||||
|
||||
public:
|
||||
EHStreamer(AsmPrinter *A);
|
||||
virtual ~EHStreamer();
|
||||
~EHStreamer() override;
|
||||
|
||||
// Unused.
|
||||
void setSymbolSize(const MCSymbol *Sym, uint64_t Size) override {}
|
||||
|
@ -43,7 +43,7 @@ public:
|
||||
// Main entry points.
|
||||
//
|
||||
Win64Exception(AsmPrinter *A);
|
||||
virtual ~Win64Exception();
|
||||
~Win64Exception() override;
|
||||
|
||||
/// Emit all exception information that should come after the content.
|
||||
void endModule() override;
|
||||
|
@ -114,7 +114,7 @@ class WinCodeViewLineTables : public AsmPrinterHandler {
|
||||
public:
|
||||
WinCodeViewLineTables(AsmPrinter *Asm);
|
||||
|
||||
~WinCodeViewLineTables() {
|
||||
~WinCodeViewLineTables() override {
|
||||
for (DirAndFilenameToFilepathMapTy::iterator
|
||||
I = DirAndFilenameToFilepathMap.begin(),
|
||||
E = DirAndFilenameToFilepathMap.end();
|
||||
|
@ -1902,7 +1902,7 @@ class TypePromotionTransaction {
|
||||
Inst->removeFromParent();
|
||||
}
|
||||
|
||||
~InstructionRemover() { delete Replacer; }
|
||||
~InstructionRemover() override { delete Replacer; }
|
||||
|
||||
/// \brief Really remove the instruction.
|
||||
void commit() override { delete Inst; }
|
||||
|
@ -69,7 +69,7 @@ class TargetRegisterInfo;
|
||||
|
||||
public:
|
||||
CriticalAntiDepBreaker(MachineFunction& MFi, const RegisterClassInfo&);
|
||||
~CriticalAntiDepBreaker();
|
||||
~CriticalAntiDepBreaker() override;
|
||||
|
||||
/// Initialize anti-dep breaking for a new basic block.
|
||||
void StartBlock(MachineBasicBlock *BB) override;
|
||||
|
@ -135,7 +135,7 @@ private:
|
||||
// Dead defs generated during spilling.
|
||||
SmallVector<MachineInstr*, 8> DeadDefs;
|
||||
|
||||
~InlineSpiller() {}
|
||||
~InlineSpiller() override {}
|
||||
|
||||
public:
|
||||
InlineSpiller(MachineFunctionPass &pass, MachineFunction &mf, VirtRegMap &vrm)
|
||||
|
@ -38,7 +38,7 @@ public:
|
||||
static char ID; // Pass identification, replacement for typeid
|
||||
|
||||
LiveDebugVariables();
|
||||
~LiveDebugVariables();
|
||||
~LiveDebugVariables() override;
|
||||
|
||||
/// renameRegister - Move any user variables in OldReg to NewReg:SubIdx.
|
||||
/// @param OldReg Old virtual register that is going away.
|
||||
|
@ -141,7 +141,7 @@ namespace {
|
||||
TargetSubtargetInfo::AntiDepBreakMode AntiDepMode,
|
||||
SmallVectorImpl<const TargetRegisterClass *> &CriticalPathRCs);
|
||||
|
||||
~SchedulePostRATDList();
|
||||
~SchedulePostRATDList() override;
|
||||
|
||||
/// startBlock - Initialize register live-range state for scheduling in
|
||||
/// this block.
|
||||
|
@ -173,7 +173,7 @@ public:
|
||||
HazardRec = STI.getInstrInfo()->CreateTargetHazardRecognizer(&STI, this);
|
||||
}
|
||||
|
||||
~ScheduleDAGRRList() {
|
||||
~ScheduleDAGRRList() override {
|
||||
delete HazardRec;
|
||||
delete AvailableQueue;
|
||||
}
|
||||
|
@ -44,7 +44,7 @@ namespace llvm {
|
||||
|
||||
explicit ScheduleDAGSDNodes(MachineFunction &mf);
|
||||
|
||||
virtual ~ScheduleDAGSDNodes() {}
|
||||
~ScheduleDAGSDNodes() override {}
|
||||
|
||||
/// Run - perform scheduling.
|
||||
///
|
||||
|
@ -76,7 +76,7 @@ public:
|
||||
HazardRec = STI.getInstrInfo()->CreateTargetHazardRecognizer(&STI, this);
|
||||
}
|
||||
|
||||
~ScheduleDAGVLIW() {
|
||||
~ScheduleDAGVLIW() override {
|
||||
delete HazardRec;
|
||||
delete AvailableQueue;
|
||||
}
|
||||
|
@ -2560,7 +2560,7 @@ public:
|
||||
SelectionDAG::DAGUpdateListener(DAG),
|
||||
RecordedNodes(RN), MatchScopes(MS) { }
|
||||
|
||||
void NodeDeleted(SDNode *N, SDNode *E) {
|
||||
void NodeDeleted(SDNode *N, SDNode *E) override {
|
||||
// Some early-returns here to avoid the search if we deleted the node or
|
||||
// if the update comes from MorphNodeTo (MorphNodeTo is the last thing we
|
||||
// do, so it's unnecessary to update matching state at that point).
|
||||
|
@ -70,7 +70,7 @@ public:
|
||||
static char ID; // Pass identification, replacement for typeid.
|
||||
|
||||
SpillPlacement() : MachineFunctionPass(ID), nodes(nullptr) {}
|
||||
~SpillPlacement() { releaseMemory(); }
|
||||
~SpillPlacement() override { releaseMemory(); }
|
||||
|
||||
/// BorderConstraint - A basic block has separate constraints for entry and
|
||||
/// exit.
|
||||
|
@ -136,9 +136,9 @@ class WinEHFrameVariableMaterializer : public ValueMaterializer {
|
||||
public:
|
||||
WinEHFrameVariableMaterializer(Function *OutlinedFn,
|
||||
FrameVarInfoMap &FrameVarInfo);
|
||||
~WinEHFrameVariableMaterializer() {}
|
||||
~WinEHFrameVariableMaterializer() override {}
|
||||
|
||||
virtual Value *materializeValueFor(Value *V) override;
|
||||
Value *materializeValueFor(Value *V) override;
|
||||
|
||||
void escapeCatchObject(Value *V);
|
||||
|
||||
|
@ -197,8 +197,7 @@ public:
|
||||
DataAlignmentFactor(DataAlignmentFactor),
|
||||
ReturnAddressRegister(ReturnAddressRegister) {}
|
||||
|
||||
~CIE() {
|
||||
}
|
||||
~CIE() override {}
|
||||
|
||||
uint64_t getCodeAlignmentFactor() const { return CodeAlignmentFactor; }
|
||||
int64_t getDataAlignmentFactor() const { return DataAlignmentFactor; }
|
||||
@ -245,8 +244,7 @@ public:
|
||||
InitialLocation(InitialLocation), AddressRange(AddressRange),
|
||||
LinkedCIE(Cie) {}
|
||||
|
||||
~FDE() {
|
||||
}
|
||||
~FDE() override {}
|
||||
|
||||
CIE *getLinkedCIE() const { return LinkedCIE; }
|
||||
|
||||
|
@ -48,9 +48,10 @@ public:
|
||||
reset();
|
||||
}
|
||||
|
||||
uint32_t getChildCount() const { return Args.size(); }
|
||||
uint32_t getChildCount() const override { return Args.size(); }
|
||||
|
||||
std::unique_ptr<PDBSymbolData> getChildAtIndex(uint32_t Index) const {
|
||||
std::unique_ptr<PDBSymbolData>
|
||||
getChildAtIndex(uint32_t Index) const override {
|
||||
if (Index >= Args.size())
|
||||
return nullptr;
|
||||
|
||||
@ -58,7 +59,7 @@ public:
|
||||
Args[Index]->getSymIndexId());
|
||||
}
|
||||
|
||||
std::unique_ptr<PDBSymbolData> getNext() {
|
||||
std::unique_ptr<PDBSymbolData> getNext() override {
|
||||
if (CurIter == Args.end())
|
||||
return nullptr;
|
||||
const auto &Result = **CurIter;
|
||||
@ -66,9 +67,9 @@ public:
|
||||
return Session.getConcreteSymbolById<PDBSymbolData>(Result.getSymIndexId());
|
||||
}
|
||||
|
||||
void reset() { CurIter = Args.empty() ? Args.end() : Args.begin(); }
|
||||
void reset() override { CurIter = Args.empty() ? Args.end() : Args.begin(); }
|
||||
|
||||
FunctionArgEnumerator *clone() const {
|
||||
FunctionArgEnumerator *clone() const override {
|
||||
return new FunctionArgEnumerator(Session, Func);
|
||||
}
|
||||
|
||||
|
@ -34,25 +34,27 @@ public:
|
||||
std::unique_ptr<ArgEnumeratorType> ArgEnumerator)
|
||||
: Session(PDBSession), Enumerator(std::move(ArgEnumerator)) {}
|
||||
|
||||
uint32_t getChildCount() const { return Enumerator->getChildCount(); }
|
||||
uint32_t getChildCount() const override {
|
||||
return Enumerator->getChildCount();
|
||||
}
|
||||
|
||||
std::unique_ptr<PDBSymbol> getChildAtIndex(uint32_t Index) const {
|
||||
std::unique_ptr<PDBSymbol> getChildAtIndex(uint32_t Index) const override {
|
||||
auto FunctionArgSymbol = Enumerator->getChildAtIndex(Index);
|
||||
if (!FunctionArgSymbol)
|
||||
return nullptr;
|
||||
return Session.getSymbolById(FunctionArgSymbol->getTypeId());
|
||||
}
|
||||
|
||||
std::unique_ptr<PDBSymbol> getNext() {
|
||||
std::unique_ptr<PDBSymbol> getNext() override {
|
||||
auto FunctionArgSymbol = Enumerator->getNext();
|
||||
if (!FunctionArgSymbol)
|
||||
return nullptr;
|
||||
return Session.getSymbolById(FunctionArgSymbol->getTypeId());
|
||||
}
|
||||
|
||||
void reset() { Enumerator->reset(); }
|
||||
void reset() override { Enumerator->reset(); }
|
||||
|
||||
MyType *clone() const {
|
||||
MyType *clone() const override {
|
||||
std::unique_ptr<ArgEnumeratorType> Clone(Enumerator->clone());
|
||||
return new FunctionArgEnumerator(Session, std::move(Clone));
|
||||
}
|
||||
|
@ -351,7 +351,7 @@ class SimpleBindingMemoryManager : public RTDyldMemoryManager {
|
||||
public:
|
||||
SimpleBindingMemoryManager(const SimpleBindingMMFunctions& Functions,
|
||||
void *Opaque);
|
||||
virtual ~SimpleBindingMemoryManager();
|
||||
~SimpleBindingMemoryManager() override;
|
||||
|
||||
uint8_t *allocateCodeSection(uintptr_t Size, unsigned Alignment,
|
||||
unsigned SectionID,
|
||||
|
@ -103,7 +103,7 @@ public:
|
||||
|
||||
/// Unregisters each object that was previously registered and releases all
|
||||
/// internal resources.
|
||||
virtual ~GDBJITRegistrationListener();
|
||||
~GDBJITRegistrationListener() override;
|
||||
|
||||
/// Creates an entry in the JIT registry for the buffer @p Object,
|
||||
/// which must contain an object file in executable memory with any
|
||||
|
@ -108,7 +108,7 @@ class Interpreter : public ExecutionEngine, public InstVisitor<Interpreter> {
|
||||
|
||||
public:
|
||||
explicit Interpreter(std::unique_ptr<Module> M);
|
||||
~Interpreter();
|
||||
~Interpreter() override;
|
||||
|
||||
/// runAtExitHandlers - Run any functions registered by the program's calls to
|
||||
/// atexit(3), which we intercept and store in AtExitHandlers.
|
||||
|
@ -205,7 +205,7 @@ class MCJIT : public ExecutionEngine {
|
||||
ModulePtrSet::iterator E);
|
||||
|
||||
public:
|
||||
~MCJIT();
|
||||
~MCJIT() override;
|
||||
|
||||
/// @name ExecutionEngine interface implementation
|
||||
/// @{
|
||||
|
@ -107,11 +107,12 @@ class OrcMCJITReplacement : public ExecutionEngine {
|
||||
public:
|
||||
LinkingResolver(OrcMCJITReplacement &M) : M(M) {}
|
||||
|
||||
RuntimeDyld::SymbolInfo findSymbol(const std::string &Name) {
|
||||
RuntimeDyld::SymbolInfo findSymbol(const std::string &Name) override {
|
||||
return M.findMangledSymbol(Name);
|
||||
}
|
||||
|
||||
RuntimeDyld::SymbolInfo findSymbolInLogicalDylib(const std::string &Name) {
|
||||
RuntimeDyld::SymbolInfo
|
||||
findSymbolInLogicalDylib(const std::string &Name) override {
|
||||
return M.ClientResolver->findSymbolInLogicalDylib(Name);
|
||||
}
|
||||
|
||||
|
@ -100,7 +100,7 @@ class RuntimeDyldELF : public RuntimeDyldImpl {
|
||||
public:
|
||||
RuntimeDyldELF(RuntimeDyld::MemoryManager &MemMgr,
|
||||
RuntimeDyld::SymbolResolver &Resolver);
|
||||
virtual ~RuntimeDyldELF();
|
||||
~RuntimeDyldELF() override;
|
||||
|
||||
std::unique_ptr<RuntimeDyld::LoadedObjectInfo>
|
||||
loadObject(const object::ObjectFile &O) override;
|
||||
|
@ -293,7 +293,7 @@ public:
|
||||
Pass(PT_PassManager, ID), PMDataManager() { }
|
||||
|
||||
// Delete on the fly managers.
|
||||
virtual ~MPPassManager() {
|
||||
~MPPassManager() override {
|
||||
for (std::map<Pass *, FunctionPassManagerImpl *>::iterator
|
||||
I = OnTheFlyManagers.begin(), E = OnTheFlyManagers.end();
|
||||
I != E; ++I) {
|
||||
|
@ -198,7 +198,7 @@ class ELFObjectWriter : public MCObjectWriter {
|
||||
MCObjectWriter::reset();
|
||||
}
|
||||
|
||||
virtual ~ELFObjectWriter();
|
||||
~ELFObjectWriter() override;
|
||||
|
||||
void WriteWord(uint64_t W) {
|
||||
if (is64Bit())
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user