about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/mips/mmap_info.h
blob: 07c9e3a0443b8f8cc9cde7847c05d71b8d284ef9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
/* mips64n32 uses __NR_mmap for mmap64 while still having sizeof (off_t)
   smaller than sizeof (off64_t).  So it allows mapping large offsets
   using mmap64 than 32-bit archs which uses __NR_mmap2.  */

static inline uint64_t
mmap64_maximum_offset (long int page_shift)
{
#if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64
  return UINT64_MAX;
#else
  return (UINT64_C(1) << (page_shift + (8 * sizeof (off_t)))) - 1;
#endif
}