32 #define STR(a) #a |
32 #define STR(a) #a |
33 |
33 |
34 // Makes a string of the macro expansion of a |
34 // Makes a string of the macro expansion of a |
35 #define XSTR(a) STR(a) |
35 #define XSTR(a) STR(a) |
36 |
36 |
37 // KERNEL variant |
37 // -DINCLUDE_<something>=0 | 1 can be specified on the command line to include |
38 #ifdef KERNEL |
38 // or exclude functionality. |
39 #define COMPILER1 |
39 |
40 #define SERIALGC |
40 #ifndef INCLUDE_JVMTI |
41 |
41 #define INCLUDE_JVMTI 1 |
42 #define JVMTI_KERNEL |
42 #endif // INCLUDE_JVMTI |
43 #define FPROF_KERNEL |
43 |
44 #define VM_STRUCTS_KERNEL |
44 #if INCLUDE_JVMTI |
45 #define JNICHECK_KERNEL |
45 #define JVMTI_ONLY(x) x |
46 #define SERVICES_KERNEL |
46 #define NOT_JVMTI(x) |
47 |
47 #define NOT_JVMTI_RETURN |
48 #define KERNEL_RETURN {} |
48 #define NOT_JVMTI_RETURN_(code) /* next token must be ; */ |
49 #define KERNEL_RETURN_(code) { return code; } |
49 #else |
50 |
50 #define JVMTI_ONLY(x) |
51 #else // KERNEL |
51 #define NOT_JVMTI(x) x |
52 |
52 #define NOT_JVMTI_RETURN { return; } |
53 #define KERNEL_RETURN /* next token must be ; */ |
53 #define NOT_JVMTI_RETURN_(code) { return code; } |
54 #define KERNEL_RETURN_(code) /* next token must be ; */ |
54 #endif // INCLUDE_JVMTI |
55 |
55 |
56 #endif // KERNEL |
56 #ifndef INCLUDE_FPROF |
|
57 #define INCLUDE_FPROF 1 |
|
58 #endif |
|
59 |
|
60 #if INCLUDE_FPROF |
|
61 #define NOT_FPROF_RETURN /* next token must be ; */ |
|
62 #define NOT_FPROF_RETURN_(code) /* next token must be ; */ |
|
63 #else |
|
64 #define NOT_FPROF_RETURN {} |
|
65 #define NOT_FPROF_RETURN_(code) { return code; } |
|
66 #endif // INCLUDE_FPROF |
|
67 |
|
68 #ifndef INCLUDE_VM_STRUCTS |
|
69 #define INCLUDE_VM_STRUCTS 1 |
|
70 #endif |
|
71 |
|
72 #if INCLUDE_VM_STRUCTS |
|
73 #define NOT_VM_STRUCTS_RETURN /* next token must be ; */ |
|
74 #define NOT_VM_STRUCTS_RETURN_(code) /* next token must be ; */ |
|
75 #else |
|
76 #define NOT_VM_STRUCTS_RETURN {} |
|
77 #define NOT_VM_STRUCTS_RETURN_(code) { return code; } |
|
78 #endif // INCLUDE_VM_STRUCTS |
|
79 |
|
80 #ifndef INCLUDE_JNI_CHECK |
|
81 #define INCLUDE_JNI_CHECK 1 |
|
82 #endif |
|
83 |
|
84 #if INCLUDE_JNI_CHECK |
|
85 #define NOT_JNI_CHECK_RETURN /* next token must be ; */ |
|
86 #define NOT_JNI_CHECK_RETURN_(code) /* next token must be ; */ |
|
87 #else |
|
88 #define NOT_JNI_CHECK_RETURN {} |
|
89 #define NOT_JNI_CHECK_RETURN_(code) { return code; } |
|
90 #endif // INCLUDE_JNI_CHECK |
|
91 |
|
92 #ifndef INCLUDE_SERVICES |
|
93 #define INCLUDE_SERVICES 1 |
|
94 #endif |
|
95 |
|
96 #if INCLUDE_SERVICES |
|
97 #define NOT_SERVICES_RETURN /* next token must be ; */ |
|
98 #define NOT_SERVICES_RETURN_(code) /* next token must be ; */ |
|
99 #else |
|
100 #define NOT_SERVICES_RETURN {} |
|
101 #define NOT_SERVICES_RETURN_(code) { return code; } |
|
102 #endif // INCLUDE_SERVICES |
|
103 |
|
104 #ifndef INCLUDE_CDS |
|
105 #define INCLUDE_CDS 1 |
|
106 #endif |
|
107 |
|
108 #if INCLUDE_CDS |
|
109 #define CDS_ONLY(x) x |
|
110 #define NOT_CDS(x) |
|
111 #define NOT_CDS_RETURN /* next token must be ; */ |
|
112 #define NOT_CDS_RETURN_(code) /* next token must be ; */ |
|
113 #else |
|
114 #define CDS_ONLY(x) |
|
115 #define NOT_CDS(x) x |
|
116 #define NOT_CDS_RETURN {} |
|
117 #define NOT_CDS_RETURN_(code) { return code; } |
|
118 #endif // INCLUDE_CDS |
|
119 |
|
120 #ifndef INCLUDE_MANAGEMENT |
|
121 #define INCLUDE_MANAGEMENT 1 |
|
122 #endif // INCLUDE_MANAGEMENT |
|
123 |
|
124 #if INCLUDE_MANAGEMENT |
|
125 #define NOT_MANAGEMENT_RETURN /* next token must be ; */ |
|
126 #define NOT_MANAGEMENT_RETURN_(code) /* next token must be ; */ |
|
127 #else |
|
128 #define NOT_MANAGEMENT_RETURN {} |
|
129 #define NOT_MANAGEMENT_RETURN_(code) { return code; } |
|
130 #endif // INCLUDE_MANAGEMENT |
|
131 |
|
132 /* |
|
133 * When INCLUDE_ALTERNATE_GCS is false the only garbage collectors |
|
134 * included in the JVM are defaultNewGeneration and markCompact. |
|
135 * |
|
136 * When INCLUDE_ALTERNATE_GCS is true all garbage collectors are |
|
137 * included in the JVM. |
|
138 */ |
|
139 #ifndef INCLUDE_ALTERNATE_GCS |
|
140 #define INCLUDE_ALTERNATE_GCS 1 |
|
141 #endif // INCLUDE_ALTERNATE_GCS |
|
142 |
|
143 #if INCLUDE_ALTERNATE_GCS |
|
144 #define NOT_ALTERNATE_GCS_RETURN /* next token must be ; */ |
|
145 #define NOT_ALTERNATE_GCS_RETURN_(code) /* next token must be ; */ |
|
146 #else |
|
147 #define NOT_ALTERNATE_GCS_RETURN {} |
|
148 #define NOT_ALTERNATE_GCS_RETURN_(code) { return code; } |
|
149 #endif // INCLUDE_ALTERNATE_GCS |
|
150 |
|
151 #ifndef INCLUDE_NMT |
|
152 #define INCLUDE_NMT 1 |
|
153 #endif // INCLUDE_NMT |
|
154 |
|
155 #if INCLUDE_NMT |
|
156 #define NOT_NMT_RETURN /* next token must be ; */ |
|
157 #define NOT_NMT_RETURN_(code) /* next token must be ; */ |
|
158 #else |
|
159 #define NOT_NMT_RETURN {} |
|
160 #define NOT_NMT_RETURN_(code) { return code; } |
|
161 #endif // INCLUDE_NMT |
57 |
162 |
58 // COMPILER1 variant |
163 // COMPILER1 variant |
59 #ifdef COMPILER1 |
164 #ifdef COMPILER1 |
60 #ifdef COMPILER2 |
165 #ifdef COMPILER2 |
61 #define TIERED |
166 #define TIERED |