mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
MemoryBuffer: Don't use mmap when FileSize is multiple of 4k on Cygwin.
On Cygwin, getpagesize() returns 64k(AllocationGranularity). In r214580, the size of X86GenInstrInfo.inc became 1499136. FIXME: We should reorganize again getPageSize() on Win32. MapFile allocates address along AllocationGranularity but view is mapped by physical page. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214681 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
73100d8f33
commit
499befab31
@ -305,6 +305,14 @@ static bool shouldUseMmap(int FD,
|
||||
if ((FileSize & (PageSize -1)) == 0)
|
||||
return false;
|
||||
|
||||
#if defined(__CYGWIN__)
|
||||
// Don't try to map files that are exactly a multiple of the physical page size
|
||||
// if we need a null terminator.
|
||||
// FIXME: We should reorganize again getPageSize() on Win32.
|
||||
if ((FileSize & (4096 - 1)) == 0)
|
||||
return false;
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user