modernc.org/cc@v1.0.1/v2/headers/linux_386/usr/include/i386-linux-gnu/bits/mman.h (about)

     1  /* Definitions for POSIX memory map interface.  Linux/x86_64 version.
     2     Copyright (C) 2001-2018 Free Software Foundation, Inc.
     3     This file is part of the GNU C Library.
     4  
     5     The GNU C Library is free software; you can redistribute it and/or
     6     modify it under the terms of the GNU Lesser General Public
     7     License as published by the Free Software Foundation; either
     8     version 2.1 of the License, or (at your option) any later version.
     9  
    10     The GNU C Library is distributed in the hope that it will be useful,
    11     but WITHOUT ANY WARRANTY; without even the implied warranty of
    12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    13     Lesser General Public License for more details.
    14  
    15     You should have received a copy of the GNU Lesser General Public
    16     License along with the GNU C Library; if not, see
    17     <http://www.gnu.org/licenses/>.  */
    18  
    19  #ifndef _SYS_MMAN_H
    20  # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead."
    21  #endif
    22  
    23  /* The following definitions basically come from the kernel headers.
    24     But the kernel header is not namespace clean.  */
    25  
    26  /* Other flags.  */
    27  #ifdef __USE_MISC
    28  # define MAP_32BIT	0x40	/* Only give out 32-bit addresses.  */
    29  #endif
    30  
    31  /* These are Linux-specific.  */
    32  #ifdef __USE_MISC
    33  # define MAP_GROWSDOWN	0x00100	/* Stack-like segment.  */
    34  # define MAP_DENYWRITE	0x00800	/* ETXTBSY */
    35  # define MAP_EXECUTABLE	0x01000	/* Mark it as an executable.  */
    36  # define MAP_LOCKED	0x02000	/* Lock the mapping.  */
    37  # define MAP_NORESERVE	0x04000	/* Don't check for reservations.  */
    38  # define MAP_POPULATE	0x08000	/* Populate (prefault) pagetables.  */
    39  # define MAP_NONBLOCK	0x10000	/* Do not block on IO.  */
    40  # define MAP_STACK	0x20000	/* Allocation is for a stack.  */
    41  # define MAP_HUGETLB	0x40000	/* Create huge page mapping.  */
    42  #endif
    43  
    44  /* Include generic Linux declarations.  */
    45  #include <bits/mman-linux.h>