forked from OSchip/llvm-project
Constify the Optnone checks in IR passes.
llvm-svn: 202213
This commit is contained in:
parent
e359d0168f
commit
0c12b1d23c
|
@ -85,7 +85,7 @@ public:
|
|||
protected:
|
||||
/// skipOptnoneFunction - Containing function has Attribute::OptimizeNone
|
||||
/// and most transformation passes should skip it.
|
||||
bool skipOptnoneFunction(Loop *L) const;
|
||||
bool skipOptnoneFunction(const Loop *L) const;
|
||||
};
|
||||
|
||||
class LPPassManager : public FunctionPass, public PMDataManager {
|
||||
|
|
|
@ -311,7 +311,7 @@ public:
|
|||
protected:
|
||||
/// skipOptnoneFunction - This function has Attribute::OptimizeNone
|
||||
/// and most transformation passes should skip it.
|
||||
bool skipOptnoneFunction(Function &F) const;
|
||||
bool skipOptnoneFunction(const Function &F) const;
|
||||
};
|
||||
|
||||
|
||||
|
@ -360,7 +360,7 @@ public:
|
|||
protected:
|
||||
/// skipOptnoneFunction - Containing function has Attribute::OptimizeNone
|
||||
/// and most transformation passes should skip it.
|
||||
bool skipOptnoneFunction(BasicBlock &BB) const;
|
||||
bool skipOptnoneFunction(const BasicBlock &BB) const;
|
||||
};
|
||||
|
||||
/// If the user specifies the -time-passes argument on an LLVM tool command line
|
||||
|
|
|
@ -368,8 +368,8 @@ void LoopPass::assignPassManager(PMStack &PMS,
|
|||
|
||||
// Containing function has Attribute::OptimizeNone and transformation
|
||||
// passes should skip it.
|
||||
bool LoopPass::skipOptnoneFunction(Loop *L) const {
|
||||
Function *F = L->getHeader()->getParent();
|
||||
bool LoopPass::skipOptnoneFunction(const Loop *L) const {
|
||||
const Function *F = L->getHeader()->getParent();
|
||||
if (F && F->hasFnAttribute(Attribute::OptimizeNone)) {
|
||||
// FIXME: Report this to dbgs() only once per function.
|
||||
DEBUG(dbgs() << "Skipping pass '" << getPassName()
|
||||
|
|
|
@ -138,7 +138,7 @@ PassManagerType FunctionPass::getPotentialPassManagerType() const {
|
|||
return PMT_FunctionPassManager;
|
||||
}
|
||||
|
||||
bool FunctionPass::skipOptnoneFunction(Function &F) const {
|
||||
bool FunctionPass::skipOptnoneFunction(const Function &F) const {
|
||||
if (F.hasFnAttribute(Attribute::OptimizeNone)) {
|
||||
DEBUG(dbgs() << "Skipping pass '" << getPassName()
|
||||
<< "' on function " << F.getName() << "\n");
|
||||
|
@ -166,8 +166,8 @@ bool BasicBlockPass::doFinalization(Function &) {
|
|||
return false;
|
||||
}
|
||||
|
||||
bool BasicBlockPass::skipOptnoneFunction(BasicBlock &BB) const {
|
||||
Function *F = BB.getParent();
|
||||
bool BasicBlockPass::skipOptnoneFunction(const BasicBlock &BB) const {
|
||||
const Function *F = BB.getParent();
|
||||
if (F && F->hasFnAttribute(Attribute::OptimizeNone)) {
|
||||
// Report this only once per function.
|
||||
if (&BB == &F->getEntryBlock())
|
||||
|
|
Loading…
Reference in New Issue