1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/lib/Transforms/IPO
Johannes Doerfert 10792b59c2 Enable IPConstantPropagation to work with abstract call sites
This modification of the currently unused inter-procedural constant
propagation pass (IPConstantPropagation) shows how abstract call sites
enable optimization of callback calls alongside direct and indirect
calls. Through minimal changes, mostly dealing with the partial mapping
of callbacks, inter-procedural constant propagation was enabled for
callbacks, e.g., OpenMP runtime calls or pthreads_create.

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

llvm-svn: 351628
2019-01-19 05:19:12 +00:00
..
AlwaysInliner.cpp Enrich inline messages 2018-08-05 14:53:08 +00:00
ArgumentPromotion.cpp Only promote args when function attributes are compatible 2019-01-16 05:15:31 +00:00
BarrierNoopPass.cpp Remove \brief commands from doxygen comments. 2018-05-01 15:54:18 +00:00
BlockExtractor.cpp Rename DEBUG macro to LLVM_DEBUG. 2018-05-14 12:53:11 +00:00
CalledValuePropagation.cpp [CVP] Handle instructions with no user. No need to create CVPLattice state. This handles terminator instructions and more. 2018-09-17 15:28:01 +00:00
CMakeLists.txt Hot cold splitting pass 2018-09-07 15:03:49 +00:00
ConstantMerge.cpp Re-commit "[NFC] More ConstantMerge refactoring" 2018-08-10 22:41:09 +00:00
CrossDSOCFI.cpp Don't call skipModule for CFI lowering passes. 2018-04-12 22:04:11 +00:00
DeadArgumentElimination.cpp [IPO][AVR] Create new Functions in the default address space specified in the data layout 2018-12-18 09:52:52 +00:00
ElimAvailExtern.cpp
ExtractGV.cpp [IPO][AVR] Create new Functions in the default address space specified in the data layout 2018-12-18 09:52:52 +00:00
ForceFunctionAttrs.cpp [x86/SLH] Add a real Clang flag and LLVM IR attribute for Speculative 2018-09-04 12:38:00 +00:00
FunctionAttrs.cpp [CallSite removal] Migrate all Alias Analysis APIs to use the newly 2019-01-07 05:42:51 +00:00
FunctionImport.cpp [ThinLTO] Scan all variants of vague symbol for reachability. 2019-01-02 23:18:20 +00:00
GlobalDCE.cpp GlobalDCE: Teach isEmptyFunction() to ignore debug intrinsics. 2018-11-16 17:47:21 +00:00
GlobalOpt.cpp [DebugInfo][GlobalOpt] Fix -debugify for globalopt shrinking globals to booleans. 2018-10-23 16:35:51 +00:00
GlobalSplit.cpp
HotColdSplitting.cpp [HotColdSplit] Mark inherently cold functions as such 2019-01-19 02:38:47 +00:00
InferFunctionAttrs.cpp [InstCombine] Cleanup libfunc attribute inferring 2018-10-16 21:18:31 +00:00
Inliner.cpp [Inliner] Optimize shouldBeDeferred 2019-01-05 02:26:29 +00:00
InlineSimple.cpp Remove \brief commands from doxygen comments. 2018-05-01 15:54:18 +00:00
Internalize.cpp Rename DEBUG macro to LLVM_DEBUG. 2018-05-14 12:53:11 +00:00
IPConstantPropagation.cpp Enable IPConstantPropagation to work with abstract call sites 2019-01-19 05:19:12 +00:00
IPO.cpp Hot cold splitting pass 2018-09-07 15:03:49 +00:00
LLVMBuild.txt
LoopExtractor.cpp [TI removal] Make variables declared as TerminatorInst and initialized 2018-10-15 10:04:59 +00:00
LowerTypeTests.cpp [LTO] Record whether LTOUnit splitting is enabled in index 2019-01-11 18:31:57 +00:00
MergeFunctions.cpp [MergeFunc] Allow merging identical vararg functions using aliases 2019-01-19 02:46:22 +00:00
PartialInlining.cpp [IR] Add Instruction::isLifetimeStartOrEnd, NFC 2018-12-21 21:49:40 +00:00
PassManagerBuilder.cpp [SampleFDO] Skip profile reading when flattened profile used in ThinLTO postlink 2019-01-17 20:48:34 +00:00
PruneEH.cpp [TI removal] Make variables declared as TerminatorInst and initialized 2018-10-15 10:04:59 +00:00
SampleProfile.cpp We can improve the performance (generally) by memo-izing the action to map a debug location to its function summary. 2019-01-15 17:45:54 +00:00
SCCP.cpp [IPSCCP,PM] Preserve PDT in the new pass manager. 2018-11-11 20:22:45 +00:00
StripDeadPrototypes.cpp
StripSymbols.cpp Move Analysis/Utils/Local.h back to Transforms 2018-06-04 21:23:21 +00:00
SyntheticCountsPropagation.cpp Refactor synthetic profile count computation. NFC. 2019-01-09 20:10:27 +00:00
ThinLTOBitcodeWriter.cpp Revert "[ThinLTO] Add summary entries for index-based WPD" 2019-01-17 16:05:04 +00:00
WholeProgramDevirt.cpp [LTO] Record whether LTOUnit splitting is enabled in index 2019-01-11 18:31:57 +00:00