llvm-project/clang/lib/Frontend
Artem Belevich 5d40ae3a46 Allow linking multiple bitcode files.
Linking options for particular file depend on the option that specifies the file.
Currently there are two:

* -mlink-bitcode-file links in complete content of the specified file.
* -mlink-cuda-bitcode links in only the symbols needed by current TU.
   Linked symbols are internalized. This bitcode linking mode is used to
   link device-specific bitcode provided by CUDA.

Files are linked in order they are specified on command line.

-mlink-cuda-bitcode replaces -fcuda-uses-libdevice flag.

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

llvm-svn: 251427
2015-10-27 17:56:59 +00:00
..
Rewrite Fix a couple places where InsertText was being called with a pointer and size when it really expects a StringRef and a normally optional bool argument. 2015-10-22 03:13:10 +00:00
ASTConsumers.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00
ASTMerge.cpp Initialize the AST consumer as soon as we have both an ASTConsumer and an 2015-08-18 20:39:29 +00:00
ASTUnit.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
CMakeLists.txt Introduce a PCHContainerOperations interface (NFC). 2015-06-20 18:53:08 +00:00
CacheTokens.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
ChainedDiagnosticConsumer.cpp Remove spurious mode marker from .cpp file. 2012-10-29 06:05:01 +00:00
ChainedIncludesSource.cpp Rename the non-coding style conformant functions in namespace Builtins 2015-08-06 01:01:12 +00:00
CodeGenOptions.cpp [cleanup] Re-sort *all* #include lines with llvm/utils/sort_includes.py 2015-01-14 11:29:14 +00:00
CompilerInstance.cpp [modules] Allow the error when explicitly loading an incompatible module file 2015-10-16 23:20:19 +00:00
CompilerInvocation.cpp Allow linking multiple bitcode files. 2015-10-27 17:56:59 +00:00
CreateInvocationFromCommandLine.cpp [cuda] Driver changes to compile and stitch together host and device-side CUDA code. 2015-07-13 23:27:56 +00:00
DependencyFile.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
DependencyGraph.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00
DiagnosticRenderer.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
FrontendAction.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
FrontendActions.cpp Further simplify the interface of PCHContainerGenerator 2015-09-19 21:42:52 +00:00
FrontendOptions.cpp Ensure that we still parse preprocessed CUDA files as CUDA when we use 2015-03-19 17:32:06 +00:00
HeaderIncludeGen.cpp Add sanitizer blacklists to the rules generated with -M/-MM/-MD/-MMD. 2015-08-13 04:04:37 +00:00
InitHeaderSearch.cpp Bring back r250262: PS4 toolchain 2015-10-14 12:25:43 +00:00
InitPreprocessor.cpp Define weak and __weak to mean ARC-style weak references, even in MRC. 2015-10-22 18:38:17 +00:00
LangStandards.cpp [C++11] Use 'nullptr'. Frontend edition. 2014-05-22 04:46:25 +00:00
LayoutOverrideSource.cpp Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h. 2013-02-08 22:30:41 +00:00
LogDiagnosticPrinter.cpp Replace double negation of !FileID.isInvalid() with FileID.isValid(). 2015-10-03 10:46:20 +00:00
Makefile Make clang's rewrite engine a core feature 2014-07-16 16:48:33 +00:00
ModuleDependencyCollector.cpp [modules] Change the way we deal with .d output for explicitly-specified module 2015-08-13 17:57:10 +00:00
MultiplexConsumer.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
PCHContainerOperations.cpp Further simplify the interface of PCHContainerGenerator 2015-09-19 21:42:52 +00:00
PrintPreprocessedOutput.cpp According to the OpenMP spec, all the preprocessor macros should be 2015-06-15 23:44:27 +00:00
SerializedDiagnosticPrinter.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
SerializedDiagnosticReader.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00
TextDiagnostic.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
TextDiagnosticBuffer.cpp Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:42:19 +00:00
TextDiagnosticPrinter.cpp Remove uses of the redundant ".reset(nullptr)" of unique_ptr, in favor of ".reset()" 2014-07-19 01:06:45 +00:00
VerifyDiagnosticConsumer.cpp Revert r240270 ("Fixed/added namespace ending comments using clang-tidy"). 2015-06-22 23:07:51 +00:00