libLTO: add a ThinLTOCodeGenerator on the model of LTOCodeGenerator.

Description

libLTO: add a ThinLTOCodeGenerator on the model of LTOCodeGenerator.

This is intended to provide a parallel (threaded) ThinLTO scheme
for linker plugin use through the libLTO C API.

The intent of this patch is to provide a first implementation as a
proof-of-concept and allows linker to start supporting ThinLTO by
definiing the libLTO C API. Some part of the libLTO API are left
unimplemented yet. Following patches will add support for these.

The current implementation can link all clang/llvm binaries.

Differential Revision: http://reviews.llvm.org/D17066

From: Mehdi Amini <mehdi.amini@apple.com>

Details

Committed
mehdi_aminiMar 8 2016, 5:37 PM
Parents
rL262976: FunctionIndex is not optional for renameModuleForThinLTO(), make it a…
Branches
Unknown
Tags
Unknown