llvm-project/llvm/lib/Transforms
Teresa Johnson cb397461e1 [ThinLTO] Split NotEligibleToImport into legality and inlinability flags
Summary:
The NotEligibleToImport flag on the GlobalValueSummary was set if it
isn't legal to import (e.g. because it references unpromotable locals)
and when it can't be inlined (in which case importing is pointless).

I split out the inlinable piece into a separate flag on the
FunctionSummary (doesn't make sense for aliases or global variables),
because in the future we may want to import for reasons other than
inlining.

Reviewers: davidxl

Subscribers: mehdi_amini, inglorion, eraman, steven_wu, dexonsmith, arphaman, llvm-commits

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

llvm-svn: 346261
2018-11-06 19:41:35 +00:00
..
AggressiveInstCombine [Aggressive InstCombine] Move C bindings to their own header file. 2018-09-05 11:41:12 +00:00
Coroutines [TI removal] Make `getTerminator()` return a generic `Instruction`. 2018-10-15 10:42:50 +00:00
Hello
IPO [ThinLTO] Split NotEligibleToImport into legality and inlinability flags 2018-11-06 19:41:35 +00:00
InstCombine [InstCombine] allow vector types for fcmp+fpext fold 2018-11-06 17:20:20 +00:00
Instrumentation [MSan] another take at instrumenting inline assembly - now with calls 2018-10-31 09:32:47 +00:00
ObjCARC [TI removal] Switch ObjCARC code to directly use the nice range-based 2018-10-18 00:38:34 +00:00
Scalar [LICM] Remove too conservative IsMustExecute variable 2018-11-06 04:17:40 +00:00
Utils [CodeExtractor] Do not extract calls to eh_typeid_for (PR39545) 2018-11-06 19:06:08 +00:00
Vectorize [LV] Avoid vectorizing loops under opt for size that involve SCEV checks 2018-11-02 09:16:12 +00:00
CMakeLists.txt Another try to commit 323321 (aggressive instruction combine). 2018-01-25 12:06:32 +00:00
LLVMBuild.txt Another try to commit 323321 (aggressive instruction combine). 2018-01-25 12:06:32 +00:00