1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00
llvm-mirror/include/llvm/Transforms/IPO
Joseph Huber 4f1fd1c209 [Attributor] Change function internalization to not replace uses in internalized callers
The current implementation of function internalization creats a copy of each
function and replaces every use. This has the downside that the external
versions of the functions will call into the internalized versions of the
functions. This prevents them from being fully independent of eachother. This
patch replaces the current internalization scheme with a method that creates
all the copies of the functions intended to be internalized first and then
replaces the uses as long as their caller is not already internalized.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D106931

(cherry picked from commit adbaa39dfce7a8361d89b6a3b382fd8f50b94727)
2021-08-04 16:35:01 -07:00
..
AlwaysInliner.h
Annotation2Metadata.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
ArgumentPromotion.h
Attributor.h [Attributor] Change function internalization to not replace uses in internalized callers 2021-08-04 16:35:01 -07:00
BlockExtractor.h
CalledValuePropagation.h
ConstantMerge.h
CrossDSOCFI.h
DeadArgumentElimination.h
ElimAvailExtern.h
ForceFunctionAttrs.h
FunctionAttrs.h
FunctionImport.h [ThinLTO] Add Visibility bits to GlobalValueSummary::GVFlags 2021-01-27 10:43:51 -08:00
GlobalDCE.h
GlobalOpt.h
GlobalSplit.h
HotColdSplitting.h
InferFunctionAttrs.h
Inliner.h [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
Internalize.h [Internalize] Simplify comdat renaming with noduplicates after D103043 2021-05-28 16:58:38 -07:00
IROutliner.h Fix uninitialized variable warnings. NFCI. 2021-06-06 11:09:55 +01:00
LoopExtractor.h
LowerTypeTests.h
MergeFunctions.h
OpenMPOpt.h [OpenMP] Change OpenMPOpt to check openmp metadata 2021-06-25 16:34:22 -04:00
PartialInlining.h
PassManagerBuilder.h [NFC][PassBuilder] addVectorPasses(): clarify that 'IsLTO' is actually 'IsFullLTO' 2021-07-01 10:09:24 +03:00
ProfiledCallGraph.h ProfiledCallGraph.h - remove unused <string> include. NFCI. 2021-06-13 15:19:25 +01:00
SampleContextTracker.h [CSSPGO] Top-down processing order based on full profile. 2021-03-30 10:42:22 -07:00
SampleProfile.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
SampleProfileProbe.h [CSSPGO] Update pseudo probe distribution factor based on inline context. 2021-05-16 23:11:36 -07:00
SCCP.h Function Specialization Pass 2021-06-11 09:11:29 +01:00
StripDeadPrototypes.h
StripSymbols.h
SyntheticCountsPropagation.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
ThinLTOBitcodeWriter.h
WholeProgramDevirt.h [LTO] Prevent devirtualization for symbols dynamically exported 2021-01-27 15:54:13 -08:00