Skip to content

Commit e54a0a4

Browse files
committed
[llvm] manual fix-ups to IDS codemod of Analysis library
1 parent f09470c commit e54a0a4

33 files changed

+94
-78
lines changed

llvm/include/llvm/Analysis/AliasAnalysis.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -956,7 +956,7 @@ class AAManager : public AnalysisInfoMixin<AAManager> {
956956
private:
957957
friend AnalysisInfoMixin<AAManager>;
958958

959-
static AnalysisKey Key;
959+
LLVM_ABI static AnalysisKey Key;
960960

961961
SmallVector<void (*)(Function &F, FunctionAnalysisManager &AM,
962962
AAResults &AAResults),

llvm/include/llvm/Analysis/AssumptionCache.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ class AssumptionCache {
174174
class AssumptionAnalysis : public AnalysisInfoMixin<AssumptionAnalysis> {
175175
friend AnalysisInfoMixin<AssumptionAnalysis>;
176176

177-
static AnalysisKey Key;
177+
LLVM_ABI static AnalysisKey Key;
178178

179179
public:
180180
using Result = AssumptionCache;

llvm/include/llvm/Analysis/BlockFrequencyInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ class BlockFrequencyAnalysis
115115
: public AnalysisInfoMixin<BlockFrequencyAnalysis> {
116116
friend AnalysisInfoMixin<BlockFrequencyAnalysis>;
117117

118-
static AnalysisKey Key;
118+
LLVM_ABI static AnalysisKey Key;
119119

120120
public:
121121
/// Provide the result type for this analysis pass.

llvm/include/llvm/Analysis/BranchProbabilityInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -426,7 +426,7 @@ class BranchProbabilityAnalysis
426426
: public AnalysisInfoMixin<BranchProbabilityAnalysis> {
427427
friend AnalysisInfoMixin<BranchProbabilityAnalysis>;
428428

429-
static AnalysisKey Key;
429+
LLVM_ABI static AnalysisKey Key;
430430

431431
public:
432432
/// Provide the result type for this analysis pass.

llvm/include/llvm/Analysis/CGSCCPassManager.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,9 @@ class Module;
109109
#define DEBUG_TYPE "cgscc"
110110

111111
/// Extern template declaration for the analysis set for this IR unit.
112-
extern template class AllAnalysesOn<LazyCallGraph::SCC>;
112+
extern template class LLVM_TEMPLATE_ABI AllAnalysesOn<LazyCallGraph::SCC>;
113113

114-
extern template class AnalysisManager<LazyCallGraph::SCC, LazyCallGraph &>;
114+
extern template class LLVM_TEMPLATE_ABI AnalysisManager<LazyCallGraph::SCC, LazyCallGraph &>;
115115

116116
/// The CGSCC analysis manager.
117117
///
@@ -204,9 +204,9 @@ CGSCCAnalysisManagerModuleProxy::run(Module &M, ModuleAnalysisManager &AM);
204204

205205
// Ensure the \c CGSCCAnalysisManagerModuleProxy is provided as an extern
206206
// template.
207-
extern template class InnerAnalysisManagerProxy<CGSCCAnalysisManager, Module>;
207+
extern template class LLVM_TEMPLATE_ABI InnerAnalysisManagerProxy<CGSCCAnalysisManager, Module>;
208208

209-
extern template class OuterAnalysisManagerProxy<
209+
extern template class LLVM_TEMPLATE_ABI OuterAnalysisManagerProxy<
210210
ModuleAnalysisManager, LazyCallGraph::SCC, LazyCallGraph &>;
211211

212212
/// A proxy from a \c ModuleAnalysisManager to an \c SCC.
@@ -402,10 +402,10 @@ class FunctionAnalysisManagerCGSCCProxy
402402
private:
403403
friend AnalysisInfoMixin<FunctionAnalysisManagerCGSCCProxy>;
404404

405-
static AnalysisKey Key;
405+
LLVM_ABI static AnalysisKey Key;
406406
};
407407

408-
extern template class OuterAnalysisManagerProxy<CGSCCAnalysisManager, Function>;
408+
extern template class LLVM_TEMPLATE_ABI OuterAnalysisManagerProxy<CGSCCAnalysisManager, Function>;
409409

410410
/// A proxy from a \c CGSCCAnalysisManager to a \c Function.
411411
using CGSCCAnalysisManagerFunctionProxy =

llvm/include/llvm/Analysis/DomTreeUpdater.h

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,12 @@
2323

2424
namespace llvm {
2525

26+
class DomTreeUpdater;
2627
class PostDominatorTree;
2728

29+
extern template class LLVM_TEMPLATE_ABI GenericDomTreeUpdater<DomTreeUpdater, DominatorTree,
30+
PostDominatorTree>;
31+
2832
class DomTreeUpdater
2933
: public GenericDomTreeUpdater<DomTreeUpdater, DominatorTree,
3034
PostDominatorTree> {
@@ -114,17 +118,14 @@ class DomTreeUpdater
114118
bool forceFlushDeletedBB();
115119
};
116120

117-
extern template class GenericDomTreeUpdater<DomTreeUpdater, DominatorTree,
118-
PostDominatorTree>;
119-
120-
extern template void
121+
extern template LLVM_TEMPLATE_ABI void
121122
GenericDomTreeUpdater<DomTreeUpdater, DominatorTree,
122123
PostDominatorTree>::recalculate(Function &F);
123124

124-
extern template void
125+
extern template LLVM_TEMPLATE_ABI void
125126
GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>::
126127
applyUpdatesImpl</*IsForward=*/true>();
127-
extern template void
128+
extern template LLVM_TEMPLATE_ABI void
128129
GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>::
129130
applyUpdatesImpl</*IsForward=*/false>();
130131
} // namespace llvm

llvm/include/llvm/Analysis/GlobalsModRef.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ class GlobalsAAResult : public AAResultBase {
128128
/// Analysis pass providing a never-invalidated alias analysis result.
129129
class GlobalsAA : public AnalysisInfoMixin<GlobalsAA> {
130130
friend AnalysisInfoMixin<GlobalsAA>;
131-
static AnalysisKey Key;
131+
LLVM_ABI static AnalysisKey Key;
132132

133133
public:
134134
typedef GlobalsAAResult Result;

llvm/include/llvm/Analysis/LastRunTrackingAnalysis.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ class LastRunTrackingInfo {
9191
class LastRunTrackingAnalysis final
9292
: public AnalysisInfoMixin<LastRunTrackingAnalysis> {
9393
friend AnalysisInfoMixin<LastRunTrackingAnalysis>;
94-
static AnalysisKey Key;
94+
LLVM_ABI static AnalysisKey Key;
9595

9696
public:
9797
using Result = LastRunTrackingInfo;

llvm/include/llvm/Analysis/LazyCallGraph.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1260,7 +1260,7 @@ template <> struct GraphTraits<LazyCallGraph *> {
12601260
class LazyCallGraphAnalysis : public AnalysisInfoMixin<LazyCallGraphAnalysis> {
12611261
friend AnalysisInfoMixin<LazyCallGraphAnalysis>;
12621262

1263-
static AnalysisKey Key;
1263+
LLVM_ABI static AnalysisKey Key;
12641264

12651265
public:
12661266
/// Inform generic clients of the result type.

llvm/include/llvm/Analysis/LoopAnalysisManager.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,9 @@ struct LoopStandardAnalysisResults {
6565
};
6666

6767
/// Extern template declaration for the analysis set for this IR unit.
68-
extern template class AllAnalysesOn<Loop>;
68+
extern template class LLVM_TEMPLATE_ABI AllAnalysesOn<Loop>;
6969

70-
extern template class AnalysisManager<Loop, LoopStandardAnalysisResults &>;
70+
extern template class LLVM_TEMPLATE_ABI AnalysisManager<Loop, LoopStandardAnalysisResults &>;
7171
/// The loop analysis manager.
7272
///
7373
/// See the documentation for the AnalysisManager template for detail
@@ -149,9 +149,9 @@ LoopAnalysisManagerFunctionProxy::run(Function &F, FunctionAnalysisManager &AM);
149149

150150
// Ensure the \c LoopAnalysisManagerFunctionProxy is provided as an extern
151151
// template.
152-
extern template class InnerAnalysisManagerProxy<LoopAnalysisManager, Function>;
152+
extern template class LLVM_TEMPLATE_ABI InnerAnalysisManagerProxy<LoopAnalysisManager, Function>;
153153

154-
extern template class OuterAnalysisManagerProxy<FunctionAnalysisManager, Loop,
154+
extern template class LLVM_TEMPLATE_ABI OuterAnalysisManagerProxy<FunctionAnalysisManager, Loop,
155155
LoopStandardAnalysisResults &>;
156156
/// A proxy from a \c FunctionAnalysisManager to a \c Loop.
157157
typedef OuterAnalysisManagerProxy<FunctionAnalysisManager, Loop,

llvm/include/llvm/Analysis/LoopInfo.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class ScalarEvolution;
3333
class raw_ostream;
3434

3535
// Implementation in Support/GenericLoopInfoImpl.h
36-
extern template class LoopBase<BasicBlock, Loop>;
36+
extern template class LLVM_TEMPLATE_ABI LoopBase<BasicBlock, Loop>;
3737

3838
/// Represents a single loop in the control flow graph. Note that not all SCCs
3939
/// in the CFG are necessarily loops.
@@ -403,7 +403,7 @@ class LLVM_ABI Loop : public LoopBase<BasicBlock, Loop> {
403403
};
404404

405405
// Implementation in Support/GenericLoopInfoImpl.h
406-
extern template class LoopInfoBase<BasicBlock, Loop>;
406+
extern template class LLVM_TEMPLATE_ABI LoopInfoBase<BasicBlock, Loop>;
407407

408408
class LoopInfo : public LoopInfoBase<BasicBlock, Loop> {
409409
typedef LoopInfoBase<BasicBlock, Loop> BaseT;
@@ -566,7 +566,7 @@ template <> struct GraphTraits<Loop *> {
566566
/// Analysis pass that exposes the \c LoopInfo for a function.
567567
class LoopAnalysis : public AnalysisInfoMixin<LoopAnalysis> {
568568
friend AnalysisInfoMixin<LoopAnalysis>;
569-
static AnalysisKey Key;
569+
LLVM_ABI static AnalysisKey Key;
570570

571571
public:
572572
typedef LoopInfo Result;

llvm/include/llvm/Analysis/LoopUnrollAnalyzer.h

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#include "llvm/ADT/DenseMap.h"
2020
#include "llvm/Analysis/ScalarEvolution.h"
2121
#include "llvm/IR/InstVisitor.h"
22+
#include "llvm/Support/Compiler.h"
2223

2324
// This class is used to get an estimate of the optimization effects that we
2425
// could get from complete loop unrolling. It comes from the fact that some
@@ -83,12 +84,12 @@ class UnrolledInstAnalyzer : private InstVisitor<UnrolledInstAnalyzer, bool> {
8384

8485
bool simplifyInstWithSCEV(Instruction *I);
8586

86-
bool visitInstruction(Instruction &I);
87-
bool visitBinaryOperator(BinaryOperator &I);
88-
bool visitLoad(LoadInst &I);
89-
bool visitCastInst(CastInst &I);
90-
bool visitCmpInst(CmpInst &I);
91-
bool visitPHINode(PHINode &PN);
87+
LLVM_ABI bool visitInstruction(Instruction &I);
88+
LLVM_ABI bool visitBinaryOperator(BinaryOperator &I);
89+
LLVM_ABI bool visitLoad(LoadInst &I);
90+
LLVM_ABI bool visitCastInst(CastInst &I);
91+
LLVM_ABI bool visitCmpInst(CmpInst &I);
92+
LLVM_ABI bool visitPHINode(PHINode &PN);
9293
};
9394
}
9495
#endif

llvm/include/llvm/Analysis/MemorySSA.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -929,7 +929,7 @@ class MemorySSAUtil {
929929
class MemorySSAAnalysis : public AnalysisInfoMixin<MemorySSAAnalysis> {
930930
friend AnalysisInfoMixin<MemorySSAAnalysis>;
931931

932-
static AnalysisKey Key;
932+
LLVM_ABI static AnalysisKey Key;
933933

934934
public:
935935
// Wrap MemorySSA result to ensure address stability of internal MemorySSA

llvm/include/llvm/Analysis/PostDominators.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class PostDominatorTreeAnalysis
4949
: public AnalysisInfoMixin<PostDominatorTreeAnalysis> {
5050
friend AnalysisInfoMixin<PostDominatorTreeAnalysis>;
5151

52-
static AnalysisKey Key;
52+
LLVM_ABI static AnalysisKey Key;
5353

5454
public:
5555
/// Provide the result type for this analysis pass.

llvm/include/llvm/Analysis/ScalarEvolution.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1973,15 +1973,15 @@ class ScalarEvolution {
19731973
/// whenever the given FoundCondValue value evaluates to true in given
19741974
/// Context. If Context is nullptr, then the found predicate is true
19751975
/// everywhere. LHS and FoundLHS may have different type width.
1976-
bool isImpliedCond(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS,
1976+
LLVM_ABI bool isImpliedCond(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS,
19771977
const Value *FoundCondValue, bool Inverse,
19781978
const Instruction *Context = nullptr);
19791979

19801980
/// Test whether the condition described by Pred, LHS, and RHS is true
19811981
/// whenever the given FoundCondValue value evaluates to true in given
19821982
/// Context. If Context is nullptr, then the found predicate is true
19831983
/// everywhere. LHS and FoundLHS must have same type width.
1984-
bool isImpliedCondBalancedTypes(CmpPredicate Pred, const SCEV *LHS,
1984+
LLVM_ABI bool isImpliedCondBalancedTypes(CmpPredicate Pred, const SCEV *LHS,
19851985
const SCEV *RHS, CmpPredicate FoundPred,
19861986
const SCEV *FoundLHS, const SCEV *FoundRHS,
19871987
const Instruction *CtxI);
@@ -1990,7 +1990,7 @@ class ScalarEvolution {
19901990
/// whenever the condition described by FoundPred, FoundLHS, FoundRHS is
19911991
/// true in given Context. If Context is nullptr, then the found predicate is
19921992
/// true everywhere.
1993-
bool isImpliedCond(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS,
1993+
LLVM_ABI bool isImpliedCond(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS,
19941994
CmpPredicate FoundPred, const SCEV *FoundLHS,
19951995
const SCEV *FoundRHS,
19961996
const Instruction *Context = nullptr);
@@ -2271,7 +2271,7 @@ class ScalarEvolution {
22712271

22722272
/// Try to match the pattern generated by getURemExpr(A, B). If successful,
22732273
/// Assign A and B to LHS and RHS, respectively.
2274-
bool matchURem(const SCEV *Expr, const SCEV *&LHS, const SCEV *&RHS);
2274+
LLVM_ABI bool matchURem(const SCEV *Expr, const SCEV *&LHS, const SCEV *&RHS);
22752275

22762276
/// Look for a SCEV expression with type `SCEVType` and operands `Ops` in
22772277
/// `UniqueSCEVs`. Return if found, else nullptr.
@@ -2319,7 +2319,7 @@ class ScalarEvolutionAnalysis
23192319
: public AnalysisInfoMixin<ScalarEvolutionAnalysis> {
23202320
friend AnalysisInfoMixin<ScalarEvolutionAnalysis>;
23212321

2322-
static AnalysisKey Key;
2322+
LLVM_ABI static AnalysisKey Key;
23232323

23242324
public:
23252325
using Result = ScalarEvolution;

llvm/include/llvm/Analysis/TargetLibraryInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -635,7 +635,7 @@ class TargetLibraryAnalysis : public AnalysisInfoMixin<TargetLibraryAnalysis> {
635635

636636
private:
637637
friend AnalysisInfoMixin<TargetLibraryAnalysis>;
638-
static AnalysisKey Key;
638+
LLVM_ABI static AnalysisKey Key;
639639

640640
std::optional<TargetLibraryInfoImpl> BaselineInfoImpl;
641641
};

llvm/include/llvm/Analysis/TargetTransformInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1968,7 +1968,7 @@ class TargetIRAnalysis : public AnalysisInfoMixin<TargetIRAnalysis> {
19681968

19691969
private:
19701970
friend AnalysisInfoMixin<TargetIRAnalysis>;
1971-
static AnalysisKey Key;
1971+
LLVM_ABI static AnalysisKey Key;
19721972

19731973
/// The callback used to produce a result.
19741974
///

llvm/include/llvm/Analysis/TensorSpec.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ LLVM_ABI std::optional<TensorSpec> getTensorSpecFromJSON(LLVMContext &Ctx,
126126
const json::Value &Value);
127127

128128
#define TFUTILS_GETDATATYPE_DEF(T, Name) \
129-
template <> TensorType TensorSpec::getDataType<T>();
129+
template <> LLVM_ABI TensorType TensorSpec::getDataType<T>();
130130
SUPPORTED_TENSOR_TYPES(TFUTILS_GETDATATYPE_DEF)
131131

132132
#undef TFUTILS_GETDATATYPE_DEF

llvm/include/llvm/Analysis/Utils/Local.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
#ifndef LLVM_ANALYSIS_UTILS_LOCAL_H
1515
#define LLVM_ANALYSIS_UTILS_LOCAL_H
1616

17+
#include "llvm/Support/Compiler.h"
18+
1719
namespace llvm {
1820

1921
class DataLayout;

llvm/include/llvm/Analysis/ValueTracking.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ LLVM_ABI KnownBits computeKnownBits(const Value *V, const APInt &DemandedElts,
7777
LLVM_ABI KnownBits computeKnownBits(const Value *V, const APInt &DemandedElts,
7878
unsigned Depth, const SimplifyQuery &Q);
7979

80-
KnownBits computeKnownBits(const Value *V, unsigned Depth,
80+
LLVM_ABI KnownBits computeKnownBits(const Value *V, unsigned Depth,
8181
const SimplifyQuery &Q);
8282

8383
LLVM_ABI void computeKnownBits(const Value *V, KnownBits &Known, unsigned Depth,

llvm/lib/Analysis/CGSCCPassManager.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
#include "llvm/IR/ValueHandle.h"
2525
#include "llvm/Support/Casting.h"
2626
#include "llvm/Support/CommandLine.h"
27+
#include "llvm/Support/Compiler.h"
2728
#include "llvm/Support/Debug.h"
2829
#include "llvm/Support/ErrorHandling.h"
2930
#include "llvm/Support/raw_ostream.h"
@@ -47,14 +48,14 @@ static cl::opt<bool> AbortOnMaxDevirtIterationsReached(
4748
AnalysisKey ShouldNotRunFunctionPassesAnalysis::Key;
4849

4950
// Explicit instantiations for the core proxy templates.
50-
template class AllAnalysesOn<LazyCallGraph::SCC>;
51-
template class AnalysisManager<LazyCallGraph::SCC, LazyCallGraph &>;
51+
template class LLVM_EXPORT_TEMPLATE AllAnalysesOn<LazyCallGraph::SCC>;
52+
template class LLVM_EXPORT_TEMPLATE AnalysisManager<LazyCallGraph::SCC, LazyCallGraph &>;
5253
template class PassManager<LazyCallGraph::SCC, CGSCCAnalysisManager,
5354
LazyCallGraph &, CGSCCUpdateResult &>;
54-
template class InnerAnalysisManagerProxy<CGSCCAnalysisManager, Module>;
55-
template class OuterAnalysisManagerProxy<ModuleAnalysisManager,
55+
template class LLVM_EXPORT_TEMPLATE InnerAnalysisManagerProxy<CGSCCAnalysisManager, Module>;
56+
template class LLVM_EXPORT_TEMPLATE OuterAnalysisManagerProxy<ModuleAnalysisManager,
5657
LazyCallGraph::SCC, LazyCallGraph &>;
57-
template class OuterAnalysisManagerProxy<CGSCCAnalysisManager, Function>;
58+
template class LLVM_EXPORT_TEMPLATE OuterAnalysisManagerProxy<CGSCCAnalysisManager, Function>;
5859

5960
/// Explicitly specialize the pass manager run method to handle call graph
6061
/// updates.

llvm/lib/Analysis/DomTreeUpdater.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,23 @@
1616
#include "llvm/Analysis/PostDominators.h"
1717
#include "llvm/IR/Constants.h"
1818
#include "llvm/IR/Instructions.h"
19+
#include "llvm/Support/Compiler.h"
1920
#include "llvm/Support/GenericDomTree.h"
2021
#include <functional>
2122

2223
namespace llvm {
2324

24-
template class GenericDomTreeUpdater<DomTreeUpdater, DominatorTree,
25+
template class LLVM_EXPORT_TEMPLATE GenericDomTreeUpdater<DomTreeUpdater, DominatorTree,
2526
PostDominatorTree>;
2627

27-
template void
28+
template LLVM_EXPORT_TEMPLATE void
2829
GenericDomTreeUpdater<DomTreeUpdater, DominatorTree,
2930
PostDominatorTree>::recalculate(Function &F);
3031

31-
template void
32+
template LLVM_EXPORT_TEMPLATE void
3233
GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>::
3334
applyUpdatesImpl</*IsForward=*/true>();
34-
template void
35+
template LLVM_EXPORT_TEMPLATE void
3536
GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>::
3637
applyUpdatesImpl</*IsForward=*/false>();
3738

llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,13 @@
2121
#include "llvm/IR/Instructions.h"
2222
#include "llvm/IR/IntrinsicInst.h"
2323
#include "llvm/Support/CommandLine.h"
24+
#include "llvm/Support/Compiler.h"
2425
#include <deque>
2526

2627
using namespace llvm;
2728

2829
namespace llvm {
29-
cl::opt<bool> EnableDetailedFunctionProperties(
30+
LLVM_ABI cl::opt<bool> EnableDetailedFunctionProperties(
3031
"enable-detailed-function-properties", cl::Hidden, cl::init(false),
3132
cl::desc("Whether or not to compute detailed function properties."));
3233

0 commit comments

Comments
 (0)