1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-21 18:22:53 +01:00
llvm-mirror/include/llvm/Analysis
serge-sans-paille 601c2dd9dd Fine grain control over some symbol visibility
Setting -fvisibility=hidden when compiling Target libs has the advantage of
not being intrusive on the codebase, but it also sets the visibility of all
functions within header-only component like ADT. In the end, we end up with
some symbols with hidden visibility within llvm dylib (through the target libs),
and some with external visibility (through other libs). This paves the way for
subtle bugs like https://reviews.llvm.org/D101972

This patch explicitly set the visibility of some classes to `default` so that
`llvm::Any` related symbols keep a `default` visibility. Indeed a template
function with `default` visibility parametrized by a type with `hidden`
visibility is granted `hidden` visibility, and we don't want this for the
uniqueness of `llvm::Any::TypeId`.

Differential Revision: https://reviews.llvm.org/D108943
2021-09-08 21:06:19 -07:00
..
Utils [NFC][MLGO] Just use the underlying protobuf object for logging 2021-07-23 10:56:48 -07:00
AliasAnalysis.h [AA] Support callCapturesBefore() on BatchAA (NFCI) 2021-05-14 21:48:08 +02:00
AliasAnalysisEvaluator.h
AliasSetTracker.h Replace uses of std::iterator with explicit using 2021-04-12 10:47:14 -07:00
AssumeBundleQueries.h Plumb AssumeInst through operand bundle apis [nfc] 2021-04-06 12:53:53 -07:00
AssumptionCache.h Add a subclass of IntrinsicInst for llvm.assume [nfc] 2021-04-06 11:16:22 -07:00
BasicAliasAnalysis.h [BasicAA] Be more careful with modulo ops on VariableGEPIndex. 2021-06-29 09:22:36 +01:00
BlockFrequencyInfo.h [BFI][CGP] Add limited support for detecting missed BFI updates and fix one in CodeGenPrepare. 2020-05-07 11:58:00 -07:00
BlockFrequencyInfoImpl.h [Analysis] Remove getLoopPackage (NFC) 2021-07-18 08:16:29 -07:00
BranchProbabilityInfo.h [Analaysis, CodeGen] Remove getHotSucc (NFC) 2021-07-17 07:31:36 -07:00
CallGraph.h [Analysis] Remove spliceFunction (NFC) 2020-12-23 21:57:25 -08:00
CallGraphSCCPass.h [CallGraphUpdater] Remove nodes from their SCC (old PM) 2020-04-15 18:38:50 -05:00
CallPrinter.h
CaptureTracking.h [NFC][CaptureTracking] Move static function isNonEscapingLocalObject to llvm namespace 2020-10-15 18:37:29 +00:00
CFG.h [Analysis] Remove unused declaration isPotentiallyReachableFromMany (NFC) 2021-07-11 07:10:11 -07:00
CFGPrinter.h NFC. Mark DOTFuncInfo getters as const 2021-06-03 11:27:06 -07:00
CFLAliasAnalysisUtils.h
CFLAndersAliasAnalysis.h
CFLSteensAliasAnalysis.h [NFC][AA] Prepare to convert AliasResult to class with PartialAlias offset. 2021-04-09 12:54:22 +03:00
CGSCCPassManager.h [NewPM] Fix wrong perfect forwardings 2021-07-19 17:21:32 +01:00
CmpInstAnalysis.h
CodeMetrics.h [LoopRotate] Add PrepareForLTO stage, avoid rotating with inline cands. 2021-01-19 10:15:29 +00:00
ConstantFolding.h Explicitly pass type to cast load constant folding result 2021-04-20 00:53:21 -07:00
ConstraintSystem.h [ConstraintElimination] Add nicer way to dump constraints (NFC). 2021-02-02 16:36:45 +00:00
DDG.h [Analysis] Drop unnecessary const from return types (NFC) 2021-02-13 20:41:38 -08:00
DDGPrinter.h [DDG] Data Dependence Graph - DOT printer - recommit 2020-12-16 12:37:36 -05:00
Delinearization.h [Delinearization][NewPM] Port delinearization to NPM 2020-09-21 17:59:08 -07:00
DemandedBits.h Add getDemandedBits for uses. 2021-06-02 10:07:40 -04:00
DependenceAnalysis.h DependenceAnalysis.h - reduce AliasAnalysis.h include to forward declaration. NFC. 2020-06-07 12:47:37 +01:00
DependenceGraphBuilder.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
DivergenceAnalysis.h [Analysis] Remove isJoinDivergent (NFC) 2021-07-16 18:23:17 -07:00
DominanceFrontier.h DominanceFrontier - remove unused <vector> includes 2020-11-21 17:11:26 +00:00
DominanceFrontierImpl.h
DomPrinter.h
DomTreeUpdater.h Unbreak the build 2020-06-07 18:17:21 +02:00
DOTGraphTraitsPass.h [SystemZ][z/OS][Windows] Add new OF_TextWithCRLF flag and use this flag instead of OF_Text 2021-04-06 07:23:31 -04:00
EHPersonalities.h [XCOFF][AIX] Generate LSDA data and compact unwind section on AIX 2020-12-02 18:42:44 +00:00
FunctionPropertiesAnalysis.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
GlobalsModRef.h GlobalsModRef.h - reduce CallGraph.h include to forward declarations. NFC. 2020-06-25 16:00:43 +01:00
GuardUtils.h
HeatUtils.h [CallPrinter] Adding heat coloring to CallPrinter 2020-06-16 21:15:29 +00:00
IndirectCallPromotionAnalysis.h
IndirectCallVisitor.h [llvm][NFC] Refactor APIs operating on CallBase 2020-04-28 13:23:47 -07:00
InlineAdvisor.h [NFC] clang-format on InlineCost.cpp and InlineAdvisor.h. 2021-06-29 18:15:27 +00:00
InlineCost.h [Inliner] Make the CallPenalty configurable 2021-07-26 12:07:49 +01:00
InlineModelFeatureMaps.h Unpack the CostEstimate feature in ML inlining models. 2021-07-02 16:57:16 +00:00
InlineSizeEstimatorAnalysis.h [llvm] Ensure newlines at the end of files (NFC) 2021-01-10 09:24:57 -08:00
InstCount.h [NFC] Port InstCount pass to new pass manager 2020-08-21 12:39:42 +03:00
InstructionPrecedenceTracking.h [GVN] Properly invalidate ICF cache when we simplify a value 2021-04-08 14:01:57 -07:00
InstructionSimplify.h [InstSimplify] Expose generic interface for replaced operand simplification 2021-07-27 00:56:12 -05:00
Interval.h [Analysis/Interval] Remove isLoop (NFC) 2020-12-12 10:09:35 -08:00
IntervalIterator.h [Analysis] Use llvm::append_range (NFC) 2020-12-29 19:23:21 -08:00
IntervalPartition.h
IRSimilarityIdentifier.h [IRSim] Strip out the findSimilarity call from the constructor 2021-06-11 18:41:28 -05:00
IteratedDominanceFrontier.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
IVDescriptors.h [LV] Try to sink users recursively for first-order recurrences. 2021-05-31 19:55:33 +01:00
IVUsers.h
LazyBlockFrequencyInfo.h
LazyBranchProbabilityInfo.h [BPI] Improve static heuristics for "cold" paths. 2020-12-23 22:47:36 +07:00
LazyCallGraph.h Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
LazyValueInfo.h [CVP] @llvm.[us]{min,max}() intrinsics handling 2021-04-11 00:33:47 +03:00
LegacyDivergenceAnalysis.h [NewPM] Introduce (GPU)DivergenceAnalysis in the new pass manager 2021-02-16 10:26:45 +05:30
Lint.h [NewPM][Lint] Port -lint to NewPM 2020-09-03 13:03:44 -07:00
Loads.h Make FindAvailableLoadedValue TBAA aware 2021-03-24 17:20:26 +00:00
LoopAccessAnalysis.h [LAA] Remove RuntimeCheckingPtrGroup::RtCheck member (NFC). 2021-07-26 17:38:10 +01:00
LoopAnalysisManager.h [NFC] Remove redundant word in comment 2021-02-21 18:04:20 +00:00
LoopCacheAnalysis.h [llvm] Drop unnecessary const from return types (NFC) 2021-01-31 10:23:43 -08:00
LoopInfo.h Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
LoopInfoImpl.h [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
LoopIterator.h
LoopNestAnalysis.h Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
LoopPass.h LoopPass.h - remove unnecessary PMStack forward declaration. NFC. 2020-05-10 14:03:27 +01:00
LoopUnrollAnalyzer.h [unroll] Use value domain for symbolic execution based cost model 2021-05-26 08:41:25 -07:00
MemDerefPrinter.h Port -print-memderefs to NPM 2020-11-23 11:56:22 -08:00
MemoryBuiltins.h Update basic deref API to account for possiblity of free [NFC] 2021-03-19 11:17:19 -07:00
MemoryDependenceAnalysis.h [NFC] MemoryDependenceAnalysis cleanup. 2021-05-31 18:07:55 +03:00
MemoryLocation.h [AA] Split up LocationSize::unknown() 2020-11-26 18:39:55 +01:00
MemorySSA.h [IR] Added operator delete to subclasses of User to avoid UB 2021-07-08 11:59:22 +02:00
MemorySSAUpdater.h [Analysis] Remove changeCondBranchToUnconditionalTo (NFC) 2021-07-10 17:31:43 -07:00
MLInlineAdvisor.h Reland "[NPM][Inliner] Factor ImportedFunctionStats in the InlineAdvisor" 2021-01-20 13:33:43 -08:00
MLModelRunner.h [llvm] Release-mode ML InlineAdvisor 2020-06-24 08:18:42 -07:00
ModuleDebugInfoPrinter.h [NPM] Port module-debuginfo pass to the new pass manager 2020-10-19 14:31:17 -07:00
ModuleSummaryAnalysis.h [StackSafety] Pass summary into codegen 2020-06-10 21:02:54 -07:00
MustExecute.h Port print-must-be-executed-contexts and print-mustexecute to NPM 2020-11-03 21:06:46 -08:00
ObjCARCAliasAnalysis.h
ObjCARCAnalysisUtils.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
ObjCARCInstKind.h ObjCARCInstKind.h - remove unused includes. NFC. 2020-05-27 14:02:14 +01:00
ObjCARCUtil.h [ObjC][ARC] Ignore operand bundle "clang.arc.attachedcall" on a call if 2021-06-28 11:02:30 -07:00
OptimizationRemarkEmitter.h [Remarks] Add analysis remarks for memset/memcpy/memmove lengths 2021-05-24 10:10:44 -07:00
OverflowInstAnalysis.h [InstCombine] Fold overflow bit of [u|s]mul.with.overflow in a poison-safe way 2021-05-02 11:54:12 +09:00
Passes.h Passes.h - remove unused llvm::LoopPass/Pass/PassInfo forward declarations. NFC. 2020-04-11 12:21:03 +01:00
PHITransAddr.h
PhiValues.h [PhiValues] Use SetVector to avoid non-determinism 2020-10-23 20:14:02 +02:00
PostDominators.h DomTree: Remove the releaseMemory() method 2020-07-06 21:58:11 +02:00
ProfileSummaryInfo.h [CSSPGO][llvm-profdata] Support trimming cold context when merging profiles 2021-04-22 00:42:37 -07:00
PtrUseVisitor.h [CallSite removal] Remove unneeded includes of CallSite.h. NFC 2020-04-22 00:07:13 -07:00
RegionInfo.h RegionInfo.cpp - remove duplicate includes that already exist in RegionInfo.h. NFC. 2020-07-23 17:50:22 +01:00
RegionInfoImpl.h [llvm] Use pop_back_val (NFC) 2021-01-24 12:18:57 -08:00
RegionIterator.h Replace uses of std::iterator with explicit using 2021-04-12 10:47:14 -07:00
RegionPass.h [NFC] Clean up always false variables 2020-10-21 10:54:55 -07:00
RegionPrinter.h
ReplayInlineAdvisor.h [InlineAdvisor] Allow replay of inline decisions for the CGSCC inliner from optimization remarks 2021-01-25 15:38:57 -08:00
ScalarEvolution.h [ScalarEvolution] Fix overflow in computeBECount. 2021-07-16 16:15:18 -07:00
ScalarEvolutionAliasAnalysis.h [NewPM] Don't mark AA analyses as preserved 2021-05-18 13:49:03 -07:00
ScalarEvolutionDivision.h [SCEV] Introduce SCEVPtrToIntExpr (PR46786) 2020-10-30 11:13:35 +03:00
ScalarEvolutionExpressions.h [NFC][ScalarEvolution] Fix SCEVNAryExpr::getType(). 2021-06-23 12:55:59 -07:00
ScalarEvolutionNormalization.h ScalarEvolutionNormalization.h - reduce ScalarEvolutionExpressions.h include to forward declaration. NFC. 2020-06-05 17:40:33 +01:00
ScopedNoAliasAA.h [Metadata] Fix layer violation in D91576 2020-12-03 10:58:46 -08:00
SparsePropagation.h [llvm] Use pop_back_val (NFC) 2021-02-01 20:55:05 -08:00
StackLifetime.h [StackSafety] Use ListSeparator (NFC) 2021-01-25 19:23:59 -08:00
StackSafetyAnalysis.h [StackSafety] Use ValueInfo in ParamAccess::Call 2020-08-14 12:42:44 -07:00
SyncDependenceAnalysis.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
SyntheticCountsUtils.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
TargetFolder.h Remove "mask" operand from shufflevector. 2020-03-31 13:08:59 -07:00
TargetLibraryInfo.def [OpenMP] Change __kmpc_free_shared to include the paired allocation size 2021-07-21 20:56:21 -04:00
TargetLibraryInfo.h [SimplifyLibCalls] Take size of int into consideration when emitting ldexp/ldexpf 2021-06-02 11:40:34 +02:00
TargetTransformInfo.h Revert "[HardwareLoops] Change order of SCEV expression construction for InitLoopCount." 2021-09-08 20:46:17 -07:00
TargetTransformInfoImpl.h [Analysis] Add simple cost model for strict (in-order) reductions 2021-07-26 10:26:06 +01:00
Trace.h
TypeBasedAliasAnalysis.h Remove orphan TypeBasedAAResult::PathAliases declaration. NFC. 2020-06-25 16:00:44 +01:00
TypeMetadataUtils.h TypeMetadataUtils.h - reduce Instructions.h include to forward declaration. NFC. 2020-06-05 17:40:33 +01:00
ValueLattice.h [NFC][ConstantRange] Add 'icmp' helper method 2021-04-10 19:38:55 +03:00
ValueLatticeUtils.h
ValueTracking.h [InstSimplify] fold min/max with limit constant 2021-08-16 11:35:29 -07:00
VecFuncs.def [PowerPC] Add pwr7 and pwr10 support to IBM MASSV pass on AIX 2021-07-26 23:21:38 +00:00
VectorUtils.h [NFC] Change VFShape so it contains an ElementCount rather than seperate VF and IsScalable properties. 2021-07-26 12:25:46 +01:00