1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-18 18:42:46 +02: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
AliasAnalysisEvaluator.h
AliasSetTracker.h
AssumeBundleQueries.h
AssumptionCache.h
BasicAliasAnalysis.h
BlockFrequencyInfo.h
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
CallGraphSCCPass.h
CallPrinter.h
CaptureTracking.h
CFG.h [Analysis] Remove unused declaration isPotentiallyReachableFromMany (NFC) 2021-07-11 07:10:11 -07:00
CFGPrinter.h
CFLAliasAnalysisUtils.h
CFLAndersAliasAnalysis.h
CFLSteensAliasAnalysis.h
CGSCCPassManager.h [NewPM] Fix wrong perfect forwardings 2021-07-19 17:21:32 +01:00
CmpInstAnalysis.h
CodeMetrics.h
ConstantFolding.h
ConstraintSystem.h
DDG.h
DDGPrinter.h
Delinearization.h
DemandedBits.h
DependenceAnalysis.h
DependenceGraphBuilder.h
DivergenceAnalysis.h [Analysis] Remove isJoinDivergent (NFC) 2021-07-16 18:23:17 -07:00
DominanceFrontier.h
DominanceFrontierImpl.h
DomPrinter.h
DomTreeUpdater.h
DOTGraphTraitsPass.h
EHPersonalities.h
FunctionPropertiesAnalysis.h
GlobalsModRef.h
GuardUtils.h
HeatUtils.h
IndirectCallPromotionAnalysis.h
IndirectCallVisitor.h
InlineAdvisor.h
InlineCost.h [Inliner] Make the CallPenalty configurable 2021-07-26 12:07:49 +01:00
InlineModelFeatureMaps.h
InlineSizeEstimatorAnalysis.h
InstCount.h
InstructionPrecedenceTracking.h
InstructionSimplify.h [InstSimplify] Expose generic interface for replaced operand simplification 2021-07-27 00:56:12 -05:00
Interval.h
IntervalIterator.h
IntervalPartition.h
IRSimilarityIdentifier.h
IteratedDominanceFrontier.h
IVDescriptors.h
IVUsers.h
LazyBlockFrequencyInfo.h
LazyBranchProbabilityInfo.h
LazyCallGraph.h Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
LazyValueInfo.h
LegacyDivergenceAnalysis.h
Lint.h
Loads.h
LoopAccessAnalysis.h [LAA] Remove RuntimeCheckingPtrGroup::RtCheck member (NFC). 2021-07-26 17:38:10 +01:00
LoopAnalysisManager.h
LoopCacheAnalysis.h
LoopInfo.h Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
LoopInfoImpl.h
LoopIterator.h
LoopNestAnalysis.h Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
LoopPass.h
LoopUnrollAnalyzer.h
MemDerefPrinter.h
MemoryBuiltins.h
MemoryDependenceAnalysis.h
MemoryLocation.h
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
MLModelRunner.h
ModuleDebugInfoPrinter.h
ModuleSummaryAnalysis.h
MustExecute.h
ObjCARCAliasAnalysis.h
ObjCARCAnalysisUtils.h
ObjCARCInstKind.h
ObjCARCUtil.h
OptimizationRemarkEmitter.h
OverflowInstAnalysis.h
Passes.h
PHITransAddr.h
PhiValues.h
PostDominators.h
ProfileSummaryInfo.h
PtrUseVisitor.h
RegionInfo.h
RegionInfoImpl.h
RegionIterator.h
RegionPass.h
RegionPrinter.h
ReplayInlineAdvisor.h
ScalarEvolution.h [ScalarEvolution] Fix overflow in computeBECount. 2021-07-16 16:15:18 -07:00
ScalarEvolutionAliasAnalysis.h
ScalarEvolutionDivision.h
ScalarEvolutionExpressions.h
ScalarEvolutionNormalization.h
ScopedNoAliasAA.h
SparsePropagation.h
StackLifetime.h
StackSafetyAnalysis.h
SyncDependenceAnalysis.h
SyntheticCountsUtils.h
TargetFolder.h
TargetLibraryInfo.def [OpenMP] Change __kmpc_free_shared to include the paired allocation size 2021-07-21 20:56:21 -04:00
TargetLibraryInfo.h
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
TypeMetadataUtils.h
ValueLattice.h
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