[llvm] 7b1dc00 - MustExecute.h - remove unnecessary includes. NFC.
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Mon May 25 07:42:13 PDT 2020
Author: Simon Pilgrim
Date: 2020-05-25T15:36:04+01:00
New Revision: 7b1dc0015aec39ad27619872f5debbd86f8f9a2c
URL: https://github.com/llvm/llvm-project/commit/7b1dc0015aec39ad27619872f5debbd86f8f9a2c
DIFF: https://github.com/llvm/llvm-project/commit/7b1dc0015aec39ad27619872f5debbd86f8f9a2c.diff
LOG: MustExecute.h - remove unnecessary includes. NFC.
Reduce to forward declarations and fix implicit LoopInfo.h dependency in Attributor.h
Added:
Modified:
llvm/include/llvm/Analysis/MustExecute.h
llvm/include/llvm/Transforms/IPO/Attributor.h
Removed:
################################################################################
diff --git a/llvm/include/llvm/Analysis/MustExecute.h b/llvm/include/llvm/Analysis/MustExecute.h
index 181fdacad233..093e56169040 100644
--- a/llvm/include/llvm/Analysis/MustExecute.h
+++ b/llvm/include/llvm/Analysis/MustExecute.h
@@ -24,11 +24,9 @@
#define LLVM_ANALYSIS_MUSTEXECUTE_H
#include "llvm/ADT/DenseMap.h"
+#include "llvm/ADT/DenseSet.h"
#include "llvm/Analysis/EHPersonalities.h"
#include "llvm/Analysis/InstructionPrecedenceTracking.h"
-#include "llvm/Analysis/LoopInfo.h"
-#include "llvm/IR/BasicBlock.h"
-#include "llvm/IR/Dominators.h"
#include "llvm/IR/Instruction.h"
namespace llvm {
@@ -37,15 +35,17 @@ namespace {
template <typename T> using GetterTy = std::function<T *(const Function &F)>;
}
-class Instruction;
+class BasicBlock;
class DominatorTree;
-class PostDominatorTree;
+class Instruction;
class Loop;
+class LoopInfo;
+class PostDominatorTree;
/// Captures loop safety information.
/// It keep information for loop blocks may throw exception or otherwise
-/// exit abnormaly on any iteration of the loop which might actually execute
-/// at runtime. The primary way to consume this infromation is via
+/// exit abnormally on any iteration of the loop which might actually execute
+/// at runtime. The primary way to consume this information is via
/// isGuaranteedToExecute below, but some callers bailout or fallback to
/// alternate reasoning if a loop contains any implicit control flow.
/// NOTE: LoopSafetyInfo contains cached information regarding loops and their
diff --git a/llvm/include/llvm/Transforms/IPO/Attributor.h b/llvm/include/llvm/Transforms/IPO/Attributor.h
index 6ec4c3feb28d..a5d504334745 100644
--- a/llvm/include/llvm/Transforms/IPO/Attributor.h
+++ b/llvm/include/llvm/Transforms/IPO/Attributor.h
@@ -107,6 +107,7 @@
#include "llvm/Analysis/CallGraph.h"
#include "llvm/Analysis/InlineCost.h"
#include "llvm/Analysis/LazyCallGraph.h"
+#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/MustExecute.h"
#include "llvm/Analysis/PostDominators.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
More information about the llvm-commits
mailing list