aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/Bytecode/Reader.h
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2004-11-06 08:54:47 +0000
committerReid Spencer <rspencer@reidspencer.com>2004-11-06 08:54:47 +0000
commit2394fa99bd8eb05b6b46882c7b18db452bf4a50d (patch)
treee0fc7bab6d005e3c40838d227fb0568a12138a7e /include/llvm/Bytecode/Reader.h
parentc3c55214242d9392d5dc63b66863f6a9dd1c4e41 (diff)
Provide an interface for getting just the external symbols from a
Bytecode file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17502 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Bytecode/Reader.h')
-rw-r--r--include/llvm/Bytecode/Reader.h10
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