diff options
Diffstat (limited to 'include/llvm/Bytecode/Reader.h')
-rw-r--r-- | include/llvm/Bytecode/Reader.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/llvm/Bytecode/Reader.h b/include/llvm/Bytecode/Reader.h index 4b9f802d38..a71700123f 100644 --- a/include/llvm/Bytecode/Reader.h +++ b/include/llvm/Bytecode/Reader.h @@ -19,6 +19,7 @@ #ifndef LLVM_BYTECODE_READER_H #define LLVM_BYTECODE_READER_H +#include "llvm/System/Path.h" #include "llvm/ModuleProvider.h" #include "llvm/Module.h" #include <string> @@ -62,6 +63,15 @@ Module* ParseBytecodeBuffer(const unsigned char *Buffer, bool GetBytecodeDependentLibraries(const std::string &fileName, Module::LibraryListType& deplibs); +/// This function will read only the necessary parts of a bytecode file in order +/// to obtain a list of externally visible global symbols that the bytecode +/// module defines. This is used for archiving and linking when only the list +/// of symbols the module defines is needed. +/// @returns true on success, false otherwise +/// @brief Get a bytecode file's externally visibile defined global symbols. +bool GetBytecodeSymbols(const sys::Path& fileName, + std::vector<std::string>& syms); + /// Read bytecode files from the specfied archive (.a) file, convert them /// to Module* and provide them in the \p Objects argument. If an error /// occurs, ErrorStr (if non-null) will be set to a string explaining |