Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mobile
Path: blob/master/src/hotspot/os/aix/globals_aix.hpp
40930 views
1
/*
2
* Copyright (c) 2005, 2020, Oracle and/or its affiliates. All rights reserved.
3
* Copyright (c) 2012, 2018 SAP SE. All rights reserved.
4
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5
*
6
* This code is free software; you can redistribute it and/or modify it
7
* under the terms of the GNU General Public License version 2 only, as
8
* published by the Free Software Foundation.
9
*
10
* This code is distributed in the hope that it will be useful, but WITHOUT
11
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13
* version 2 for more details (a copy is included in the LICENSE file that
14
* accompanied this code).
15
*
16
* You should have received a copy of the GNU General Public License version
17
* 2 along with this work; if not, write to the Free Software Foundation,
18
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19
*
20
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21
* or visit www.oracle.com if you need additional information or have any
22
* questions.
23
*
24
*/
25
26
#ifndef OS_AIX_GLOBALS_AIX_HPP
27
#define OS_AIX_GLOBALS_AIX_HPP
28
29
//
30
// Declare Aix specific flags. They are not available on other platforms.
31
//
32
// (Please keep the switches sorted alphabetically.)
33
#define RUNTIME_OS_FLAGS(develop, \
34
develop_pd, \
35
product, \
36
product_pd, \
37
notproduct, \
38
range, \
39
constraint) \
40
\
41
/* Whether to allow the VM to run if EXTSHM=ON. EXTSHM is an environment */ \
42
/* variable used on AIX to activate certain hacks which allow more shm segments */\
43
/* for 32bit processes. For 64bit processes, it is pointless and may have */ \
44
/* harmful side effects (e.g. for some reasonn prevents allocation of 64k pages */\
45
/* via shmctl). */ \
46
/* Per default we quit with an error if that variable is found; for certain */ \
47
/* customer scenarios, we may want to be able to run despite that variable. */ \
48
product(bool, AllowExtshm, false, \
49
"Allow VM to run with EXTSHM=ON.") \
50
\
51
/* Maximum expected size of the data segment. That correlates with the */ \
52
/* to the maximum C Heap consumption we expect. */ \
53
/* We need to know this because we need to leave "breathing space" for the */ \
54
/* data segment when placing the java heap. If that space is too small, we */ \
55
/* reduce our chance of getting a low heap address (needed for compressed */ \
56
/* Oops). */ \
57
product(uintx, MaxExpectedDataSegmentSize, 8*G, \
58
"Maximum expected Data Segment Size.") \
59
\
60
/* Use optimized addresses for the polling page. */ \
61
product(bool, OptimizePollingPageLocation, true, \
62
"Optimize the location of the polling page used for Safepoints") \
63
\
64
/* Use 64K pages for virtual memory (shmat). */ \
65
product(bool, Use64KPages, true, \
66
"Use 64K pages if available.") \
67
\
68
/* If VM uses 64K paged memory (shmat) for virtual memory: threshold below */ \
69
/* which virtual memory allocations are done with 4K memory (mmap). This is */ \
70
/* mainly for test purposes. */ \
71
develop(uintx, Use64KPagesThreshold, 0, \
72
"4K/64K page allocation threshold.") \
73
\
74
/* Normally AIX commits memory on touch, but sometimes it is helpful to have */ \
75
/* explicit commit behaviour. This flag, if true, causes the VM to touch */ \
76
/* memory on os::commit_memory() (which normally is a noop). */ \
77
product(bool, UseExplicitCommit, false, \
78
"Explicit commit for virtual memory.")
79
80
// end of RUNTIME_OS_FLAGS
81
82
//
83
// Defines Aix-specific default values. The flags are available on all
84
// platforms, but they may have different default values on other platforms.
85
//
86
87
// UseLargePages means nothing, for now, on AIX.
88
// Use Use64KPages or Use16MPages instead.
89
define_pd_global(size_t, PreTouchParallelChunkSize, 1 * G);
90
define_pd_global(bool, UseLargePages, false);
91
define_pd_global(bool, UseLargePagesIndividualAllocation, false);
92
define_pd_global(bool, UseThreadPriorities, true) ;
93
94
#endif // OS_AIX_GLOBALS_AIX_HPP
95
96