1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 12:12:47 +01:00
llvm-mirror/include/llvm
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
..
ADT Add llvm::equal convenient wrapper for ranges around std::equal 2021-07-28 00:10:22 +00:00
Analysis [InstSimplify] Expose generic interface for replaced operand simplification 2021-07-27 00:56:12 -05:00
AsmParser [AsmParser] Remove MDRef (NFC) 2021-07-26 08:29:33 -07:00
BinaryFormat Reland: "[WebAssembly] Deduplicate imports of the same module name, field name, and type" 2021-07-22 14:16:05 -07:00
Bitcode [IR] Add elementtype attribute 2021-07-15 18:04:26 +02:00
Bitstream BitstreamWriter.h - add missing implicit MathExtras.h header dependency. NFCI. 2021-06-05 19:20:14 +01:00
CodeGen [AArch64] Legalize MVT::i64x8 in DAG isel lowering 2021-08-02 15:45:58 +01:00
Config Move the definition of LLVM_SUPPORT_XCODE_SIGNPOSTS into llvm-config.h 2021-06-16 14:40:37 -07:00
DebugInfo [Debug-Info][llvm-dwarfdump] Don't try to dump location 2021-07-27 07:28:59 +00:00
Demangle [demangler] Fix demangling of 'half' 2021-07-19 21:21:34 +01:00
DWARFLinker [dsymutil] Add flag to force a static variable to keep its enclosing function 2021-04-28 11:33:04 -07:00
DWP [DWP] Refactoring llvm-dwp in to a library part 2 2021-07-22 14:23:29 -07:00
ExecutionEngine [ORC] Require ExecutorProcessControl when constructing an ExecutionSession. 2021-07-27 16:53:49 +10:00
FileCheck
Frontend [mlir][openacc] Initial translation for DataOp to LLVM IR 2021-07-27 22:04:04 -04:00
FuzzMutate
InterfaceStub [ifs][elfabi] Merge llvm-ifs/elfabi tools 2021-07-19 11:23:19 -07:00
IR [WebAssembly] Codegen for extmul SIMD instructions 2021-07-27 08:41:30 -07:00
IRReader
LineEditor
Linker
LTO [LTO] Add SelectionKind to IRSymtab and use it in ld.lld/LLVMgold 2021-07-20 13:22:00 -07:00
MC [SystemZ][z/OS] Initial code to generate assembly files on z/OS 2021-07-27 11:29:15 -04:00
MCA [MCA] Anchoring the vtable of CustomBehaviour 2021-06-16 12:43:58 -07:00
Object [LTO] Add SelectionKind to IRSymtab and use it in ld.lld/LLVMgold 2021-07-20 13:22:00 -07:00
ObjectYAML [yaml2obj][MachO] Rename PayloadString to Content 2021-07-26 09:04:51 -07:00
Option [OptTable] Rename PrintHelp to printHelp 2021-06-24 14:47:03 -07:00
Passes [NewPM] Print pre-transformation IR name in --print-after-all 2021-07-20 10:20:10 -07:00
ProfileData [profile] Add binary id into profiles 2021-07-23 00:19:12 +00:00
Remarks
Support [AArch64] Add a Machine Value Type for 8 consecutive registers 2021-08-02 15:45:58 +01:00
TableGen [TableGen] Fix two bugs in 'defm' when complex 'assert' is involved. 2021-04-30 11:31:06 -04:00
Target [GlobalISel] Add a constant folding combine. 2021-07-26 14:53:33 -07:00
Testing/Support added some example code for llvm::Expected<T> 2021-07-01 09:57:20 +00:00
TextAPI [TextAPI] add symbol name prefixes to central location, NFC 2021-06-23 11:21:00 -07:00
ToolDrivers
Transforms [Attributor] Change function internalization to not replace uses in internalized callers 2021-08-04 16:35:01 -07:00
WindowsManifest
WindowsResource
XRay
CMakeLists.txt
InitializePasses.h Add jump-threading optimization for deterministic finite automata 2021-07-27 14:34:04 -04:00
LinkAllIR.h
LinkAllPasses.h Add jump-threading optimization for deterministic finite automata 2021-07-27 14:34:04 -04:00
module.extern.modulemap
module.install.modulemap
module.modulemap
module.modulemap.build
Pass.h
PassAnalysisSupport.h
PassInfo.h
PassRegistry.h
PassSupport.h