Add Cross Translation Unit support library


Add Cross Translation Unit support library

This patch introduces a class that can help to build tools that require cross
translation unit facilities. This class allows function definitions to be loaded
from external AST files based on an index. In order to use this functionality an
index is required. The index format is a flat text file but it might be
replaced with a different solution in the near future. USRs are used as names to
look up the functions definitions. This class also does caching to avoid
redundant loading of AST files.

Right now only function defnitions can be loaded using this API because this is
what the in progress cross translation unit feature of the Static Analyzer
requires. In to future this might be extended to classes, types etc.

Differential Revision:


xazaxSep 22 2017, 4:11 AM
Differential Revision
D34512: Add preliminary Cross Translation Unit support library
rL313974: [asan/lsan] Trying to fix PPC64 and x380x buildbots after r313966