1 /* Copyright (C) 2013-2023 Free Software Foundation, Inc.
3 This file is part of GCC.
5 modify it under the terms of the GNU Library General Public License
6 as published by the Free Software Foundation; either version 2, or
7 (at your option) any later version.
9 In addition to the permissions in the GNU Library General Public
10 License, the Free Software Foundation gives you unlimited
11 permission to link the compiled version of this file into
12 combinations with other programs, and to distribute those
13 combinations without any restriction coming from the use of this
14 file. (The Library Public License restrictions do apply in other
15 respects; for example, they cover modification of the file, and
16 distribution when not linked into a combined executable.)
18 This program is distributed in the hope that it will be useful, but
19 WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 Library General Public License for more details.
23 You should have received a copy of the GNU Library General Public
24 License along with this program; if not, write to the Free Software
25 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
32 /* We could have used an enumeration here but it just makes it more
33 difficult for the compiler to generate a call to this. These are
34 used as arguments to the function __VLTChangePermission, declared
36 #define __VLTP_READ_ONLY 0
37 #define __VLTP_READ_WRITE 1
40 extern "C" void __VLTChangePermission (int);
42 extern void __VLTChangePermission (int);
46 /* TODO - Replace '4096' below with correct big page size. */
47 #define VTV_PAGE_SIZE 4096
49 #if defined(__sun__) && defined(__svr4__) && defined(__sparc__)
50 #define VTV_PAGE_SIZE 8192
51 #elif defined(__loongarch_lp64)
52 /* The page size is configurable by the kernel to be 4, 16 or 64 KiB.
53 For now, only the default page size of 16KiB is supported. */
54 #define VTV_PAGE_SIZE 16384
56 #define VTV_PAGE_SIZE 4096
62 #endif /* __VTV_H__ */