llvm-project/llvm/lib
Teresa Johnson 1958083d35 [ThinLTO] For SamplePGO, need to handle ICP targets consistently in thin link
Summary:
SamplePGO indirect call profiles record the target as the original GUID
for statics. The importer had special handling to map to the normal GUID
in that case. The dead global analysis needs the same treatment or
inconsistencies arise, resulting in linker unsats due to some dead
symbols being exported and kept, leaving in references to other dead
symbols that are removed.

This can happen when a SamplePGO profile collected by one binary is used
for a different binary, so the indirect call profiles may not accurately
reflect live targets.

Reviewers: danielcdh

Subscribers: mehdi_amini, inglorion, llvm-commits, eraman

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

llvm-svn: 313151
2017-09-13 15:16:38 +00:00
..
Analysis [LAA] Allow more run-time alias checks by coercing pointer expressions to AddRecExprs 2017-09-12 07:48:22 +00:00
AsmParser IR: Represent -ggnu-pubnames with a flag on the DICompileUnit. 2017-09-12 21:50:41 +00:00
BinaryFormat [BinaryFormat] Fix out of bounds read. 2017-08-31 12:50:42 +00:00
Bitcode IR: Represent -ggnu-pubnames with a flag on the DICompileUnit. 2017-09-12 21:50:41 +00:00
CodeGen [MachineScheduler] Put SchedRegion in an anonymous namespace. 2017-09-13 14:07:47 +00:00
DebugInfo [dwarfdump] Rename Brief to Verbose in DIDumpOptions 2017-09-13 09:43:05 +00:00
Demangle [ItaniumDemangle] Fix a exponential string copying bug 2017-05-28 23:24:52 +00:00
ExecutionEngine [ORC] Add a pair of ORC layers that forward object-layer operations via RPC. 2017-09-05 03:34:09 +00:00
FuzzMutate Move some CLI utils out of llvm-isel-fuzzer and into the library 2017-09-02 23:43:04 +00:00
Fuzzer Moving libFuzzer from LLVM to compiler-rt. 2017-08-21 23:25:12 +00:00
IR [X86] [PATCH] [intrinsics] Lowering X86 ABS intrinsics to IR. (llvm) 2017-09-13 09:02:36 +00:00
IRReader
LTO LowerTypeTests: Add import/export support for targets without absolute symbol constants. 2017-09-11 22:49:10 +00:00
LineEditor
Linker Linker: Create a function declaration when moving a non-prevailing alias of function type. 2017-08-10 01:07:44 +00:00
MC [WebAssembly] Remove flags from MCSectionWasm 2017-09-12 18:31:24 +00:00
Object [MachO] Prevent heap overflow when load command extends past EOF 2017-09-13 13:43:01 +00:00
ObjectYAML [ARC] Prepare the implementation of relocation for LLD 2017-09-13 01:49:49 +00:00
Option Revert "Revert r311552: [Bash-autocompletion] Add support for static analyzer flags" 2017-08-29 00:09:31 +00:00
Passes [DivRempairs] add a pass to optimize div/rem pairs (PR31028) 2017-09-09 13:38:18 +00:00
ProfileData [Coverage] Build sorted and unique segments 2017-09-08 18:44:50 +00:00
Support Don't call exit from cl::PrintHelpMessage. 2017-09-07 23:30:48 +00:00
TableGen Untabify. 2017-08-28 06:47:47 +00:00
Target [mips] correct operand range for DINSM instruction 2017-09-13 14:09:13 +00:00
Testing Mark LLVMTestingSupport as not installed in LLVMBuild. 2017-06-19 22:01:50 +00:00
ToolDrivers [llvm-dlltool] Mention arm64 in the lists of architecture alternatives 2017-09-08 06:49:46 +00:00
Transforms [ThinLTO] For SamplePGO, need to handle ICP targets consistently in thin link 2017-09-13 15:16:38 +00:00
WindowsManifest Fix crbug 759265 by suppressing llvm mt warnings. 2017-09-06 01:50:36 +00:00
XRay [XRay][tools] Support new kinds of instrumentation map entries 2017-08-21 00:14:06 +00:00
CMakeLists.txt Moving libFuzzer from LLVM to compiler-rt. 2017-08-21 23:25:12 +00:00
LLVMBuild.txt Re-apply "Introduce FuzzMutate library" 2017-08-21 22:57:06 +00:00