diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2011-03-10 16:10:30 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2011-03-10 16:10:30 +0000 |
| commit | ea5a137e558f36602616268ede35dcfeb92aa3e3 (patch) | |
| tree | c9baf798df1270ee2597254689071e0213ade11d /llvm/lib/Support/Unix/Path.inc | |
| parent | dd63436808d8d6dfee54e6d0bfaf60889b0015e2 (diff) | |
| download | llvm-ea5a137e558f36602616268ede35dcfeb92aa3e3.zip llvm-ea5a137e558f36602616268ede35dcfeb92aa3e3.tar.gz llvm-ea5a137e558f36602616268ede35dcfeb92aa3e3.tar.bz2 | |
Add support for MemoryBuffers that are not null terminated and add
support for creating buffers that cover only a part of a file.
llvm-svn: 127409
Diffstat (limited to 'llvm/lib/Support/Unix/Path.inc')
| -rw-r--r-- | llvm/lib/Support/Unix/Path.inc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Support/Unix/Path.inc b/llvm/lib/Support/Unix/Path.inc index 0f6e800..430cf2e 100644 --- a/llvm/lib/Support/Unix/Path.inc +++ b/llvm/lib/Support/Unix/Path.inc @@ -869,18 +869,18 @@ Path::makeUnique(bool reuse_current, std::string* ErrMsg) { return false; } -const char *Path::MapInFilePages(int FD, uint64_t FileSize) { +const char *Path::MapInFilePages(int FD, size_t FileSize, off_t Offset) { int Flags = MAP_PRIVATE; #ifdef MAP_FILE Flags |= MAP_FILE; #endif - void *BasePtr = ::mmap(0, FileSize, PROT_READ, Flags, FD, 0); + void *BasePtr = ::mmap(0, FileSize, PROT_READ, Flags, FD, Offset); if (BasePtr == MAP_FAILED) return 0; return (const char*)BasePtr; } -void Path::UnMapFilePages(const char *BasePtr, uint64_t FileSize) { +void Path::UnMapFilePages(const char *BasePtr, size_t FileSize) { ::munmap((void*)BasePtr, FileSize); } |
