mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-17 04:24:00 +00:00
Switch the bitcode reader interface to take a MemoryBuffer instead of knowing
anything about disk I/O itself. This greatly simplifies its interface - eliminating the need for the ReaderWrappers.cpp file. This adds a new option to llvm-dis (-bitcode) which instructs it to read the input file as bitcode. Until/unless the bytecode reader is taught to read from MemoryBuffer, there is no way to handle stdin reading without it. I don't plan to switch the bytecode reader over, I'd rather delete it :), so the option will stay around temporarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36554 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -20,15 +20,20 @@
|
||||
namespace llvm {
|
||||
class Module;
|
||||
class ModuleProvider;
|
||||
class MemoryBuffer;
|
||||
|
||||
ModuleProvider *getBitcodeModuleProvider(const std::string &Filename,
|
||||
/// getBitcodeModuleProvider - Read the header of the specified bitcode buffer
|
||||
/// and prepare for lazy deserialization of function bodies. If successful,
|
||||
/// this takes ownership of 'buffer' and returns a non-null pointer. On
|
||||
/// error, this returns null, *does not* take ownership of Buffer, and fills
|
||||
/// in *ErrMsg with an error description if ErrMsg is non-null.
|
||||
ModuleProvider *getBitcodeModuleProvider(MemoryBuffer *Buffer,
|
||||
std::string *ErrMsg = 0);
|
||||
|
||||
|
||||
/// ParseBitcodeFile - Read the specified bitcode file, returning the module.
|
||||
/// If an error occurs, return null and fill in *ErrMsg if non-null.
|
||||
Module *ParseBitcodeFile(const std::string &Filename,
|
||||
std::string *ErrMsg = 0);
|
||||
/// If an error occurs, this returns null and fills in *ErrMsg if it is
|
||||
/// non-null. This method *never* takes ownership of Buffer.
|
||||
Module *ParseBitcodeFile(MemoryBuffer *Buffer, std::string *ErrMsg = 0);
|
||||
|
||||
/// WriteBitcodeToFile - Write the specified module to the specified output
|
||||
/// stream.
|
||||
|
Reference in New Issue
Block a user