Large core files causing issues in LLDB

In LLDB we try to mmap any object file we load including core files. Recently I received a 468GB core file. mmap fails in LLVM and then it will fall back to trying to allocate a memory buffer that large and reading a file into it.

The failing call occurs in:

DataBufferSP ObjectFile::MapFileData(const FileSpec &file, uint64_t Size,
                                     uint64_t Offset) {
  return DataBufferLLVM::CreateSliceFromPath(file.GetPath(), Size, Offset);
}

Does LLVM have any class that could help deal with really large files and randomly accessing data within it?