Tue, 15 Sep 2009 21:53:47 -0700
6863023: need non-perm oops in code cache for JSR 292
Summary: Make a special root-list for those few nmethods which might contain non-perm oops.
Reviewed-by: twisti, kvn, never, jmasa, ysr
1 //
2 // Copyright 2001-2009 Sun Microsystems, Inc. All Rights Reserved.
3 // DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 //
5 // This code is free software; you can redistribute it and/or modify it
6 // under the terms of the GNU General Public License version 2 only, as
7 // published by the Free Software Foundation.
8 //
9 // This code is distributed in the hope that it will be useful, but WITHOUT
10 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 // version 2 for more details (a copy is included in the LICENSE file that
13 // accompanied this code).
14 //
15 // You should have received a copy of the GNU General Public License version
16 // 2 along with this work; if not, write to the Free Software Foundation,
17 // Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 //
19 // Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
20 // CA 95054 USA or visit www.sun.com if you need additional information or
21 // have any questions.
22 //
23 //
25 // NOTE: DO NOT CHANGE THIS COPYRIGHT TO NEW STYLE - IT WILL BREAK makeDeps!
28 adjoiningGenerations.hpp adjoiningVirtualSpaces.hpp
29 adjoiningGenerations.hpp asPSOldGen.hpp
30 adjoiningGenerations.hpp asPSYoungGen.hpp
31 adjoiningGenerations.hpp psPermGen.hpp
33 adjoiningGenerations.cpp adjoiningGenerations.hpp
34 adjoiningGenerations.cpp adjoiningVirtualSpaces.hpp
35 adjoiningGenerations.cpp parallelScavengeHeap.hpp
36 adjoiningGenerations.cpp psPermGen.hpp
38 adjoiningVirtualSpaces.hpp psVirtualspace.hpp
40 adjoiningVirtualSpaces.cpp java.hpp
41 adjoiningVirtualSpaces.cpp adjoiningVirtualSpaces.hpp
43 asPSOldGen.hpp generationCounters.hpp
44 asPSOldGen.hpp mutableSpace.hpp
45 asPSOldGen.hpp objectStartArray.hpp
46 asPSOldGen.hpp psVirtualspace.hpp
47 asPSOldGen.hpp spaceCounters.hpp
48 asPSOldGen.hpp psOldGen.hpp
50 asPSOldGen.cpp psAdaptiveSizePolicy.hpp
51 asPSOldGen.cpp cardTableModRefBS.hpp
52 asPSOldGen.cpp java.hpp
53 asPSOldGen.cpp oop.inline.hpp
54 asPSOldGen.cpp parallelScavengeHeap.hpp
55 asPSOldGen.cpp psMarkSweepDecorator.hpp
56 asPSOldGen.cpp asPSOldGen.hpp
58 asPSYoungGen.hpp generationCounters.hpp
59 asPSYoungGen.hpp mutableSpace.hpp
60 asPSYoungGen.hpp objectStartArray.hpp
61 asPSYoungGen.hpp spaceCounters.hpp
62 asPSYoungGen.hpp psVirtualspace.hpp
63 asPSYoungGen.hpp psYoungGen.hpp
64 asPSYoungGen.hpp spaceDecorator.hpp
66 asPSYoungGen.cpp gcUtil.hpp
67 asPSYoungGen.cpp java.hpp
68 asPSYoungGen.cpp oop.inline.hpp
69 asPSYoungGen.cpp parallelScavengeHeap.hpp
70 asPSYoungGen.cpp psMarkSweepDecorator.hpp
71 asPSYoungGen.cpp psScavenge.hpp
72 asPSYoungGen.cpp asPSYoungGen.hpp
73 asPSYoungGen.cpp psYoungGen.hpp
74 asPSYoungGen.cpp spaceDecorator.hpp
76 cardTableExtension.cpp cardTableExtension.hpp
77 cardTableExtension.cpp gcTaskManager.hpp
78 cardTableExtension.cpp oop.inline.hpp
79 cardTableExtension.cpp oop.psgc.inline.hpp
80 cardTableExtension.cpp parallelScavengeHeap.hpp
81 cardTableExtension.cpp psTasks.hpp
82 cardTableExtension.cpp psYoungGen.hpp
84 cardTableExtension.hpp cardTableModRefBS.hpp
86 gcTaskManager.hpp mutex.hpp
87 gcTaskManager.hpp growableArray.hpp
89 gcTaskManager.cpp allocation.hpp
90 gcTaskManager.cpp allocation.inline.hpp
91 gcTaskManager.cpp gcTaskManager.hpp
92 gcTaskManager.cpp gcTaskThread.hpp
93 gcTaskManager.cpp mutex.hpp
94 gcTaskManager.cpp mutexLocker.hpp
96 gcTaskThread.hpp thread.hpp
98 gcTaskThread.cpp allocation.hpp
99 gcTaskThread.cpp allocation.inline.hpp
100 gcTaskThread.cpp gcTaskManager.hpp
101 gcTaskThread.cpp gcTaskThread.hpp
102 gcTaskThread.cpp handles.hpp
103 gcTaskThread.cpp handles.inline.hpp
104 gcTaskThread.cpp os.hpp
105 gcTaskThread.cpp resourceArea.hpp
106 gcTaskThread.cpp thread.hpp
108 generationSizer.hpp collectorPolicy.hpp
110 objectStartArray.cpp allocation.inline.hpp
111 objectStartArray.cpp cardTableModRefBS.hpp
112 objectStartArray.cpp java.hpp
113 objectStartArray.cpp objectStartArray.hpp
114 objectStartArray.cpp oop.inline.hpp
116 objectStartArray.hpp allocation.hpp
117 objectStartArray.hpp memRegion.hpp
118 objectStartArray.hpp oop.hpp
119 objectStartArray.hpp psVirtualspace.hpp
121 parallelScavengeHeap.cpp adjoiningGenerations.hpp
122 parallelScavengeHeap.cpp adjoiningVirtualSpaces.hpp
123 parallelScavengeHeap.cpp cardTableExtension.hpp
124 parallelScavengeHeap.cpp gcLocker.inline.hpp
125 parallelScavengeHeap.cpp gcTaskManager.hpp
126 parallelScavengeHeap.cpp generationSizer.hpp
127 parallelScavengeHeap.cpp handles.inline.hpp
128 parallelScavengeHeap.cpp java.hpp
129 parallelScavengeHeap.cpp oop.inline.hpp
130 parallelScavengeHeap.cpp parallelScavengeHeap.inline.hpp
131 parallelScavengeHeap.cpp psAdaptiveSizePolicy.hpp
132 parallelScavengeHeap.cpp psMarkSweep.hpp
133 parallelScavengeHeap.cpp psParallelCompact.hpp
134 parallelScavengeHeap.cpp psPromotionManager.hpp
135 parallelScavengeHeap.cpp psScavenge.hpp
136 parallelScavengeHeap.cpp vmThread.hpp
137 parallelScavengeHeap.cpp vmPSOperations.hpp
139 parallelScavengeHeap.inline.hpp parallelScavengeHeap.hpp
140 parallelScavengeHeap.inline.hpp psMarkSweep.hpp
141 parallelScavengeHeap.inline.hpp psParallelCompact.hpp
142 parallelScavengeHeap.inline.hpp psScavenge.hpp
144 parallelScavengeHeap.hpp collectedHeap.inline.hpp
145 parallelScavengeHeap.hpp objectStartArray.hpp
146 parallelScavengeHeap.hpp gcPolicyCounters.hpp
147 parallelScavengeHeap.hpp psGCAdaptivePolicyCounters.hpp
148 parallelScavengeHeap.hpp psOldGen.hpp
149 parallelScavengeHeap.hpp psPermGen.hpp
150 parallelScavengeHeap.hpp psYoungGen.hpp
151 parallelScavengeHeap.hpp ostream.hpp
153 parMarkBitMap.cpp bitMap.inline.hpp
154 parMarkBitMap.cpp oop.inline.hpp
155 parMarkBitMap.cpp os.hpp
156 parMarkBitMap.cpp os_<os_family>.inline.hpp
157 parMarkBitMap.cpp parMarkBitMap.hpp
158 parMarkBitMap.cpp parMarkBitMap.inline.hpp
159 parMarkBitMap.cpp psParallelCompact.hpp
161 parMarkBitMap.hpp bitMap.inline.hpp
162 parMarkBitMap.hpp psVirtualspace.hpp
164 psAdaptiveSizePolicy.cpp gcPolicyCounters.hpp
165 psAdaptiveSizePolicy.cpp gcCause.hpp
166 psAdaptiveSizePolicy.cpp psAdaptiveSizePolicy.hpp
167 psAdaptiveSizePolicy.cpp psGCAdaptivePolicyCounters.hpp
168 psAdaptiveSizePolicy.cpp psScavenge.hpp
169 psAdaptiveSizePolicy.cpp timer.hpp
170 psAdaptiveSizePolicy.cpp top.hpp
172 psAdaptiveSizePolicy.hpp gcCause.hpp
173 psAdaptiveSizePolicy.hpp gcStats.hpp
174 psAdaptiveSizePolicy.hpp gcUtil.hpp
175 psAdaptiveSizePolicy.hpp adaptiveSizePolicy.hpp
177 psCompactionManager.cpp gcTaskManager.hpp
178 psCompactionManager.cpp objectStartArray.hpp
179 psCompactionManager.cpp oop.hpp
180 psCompactionManager.cpp oop.inline.hpp
181 psCompactionManager.cpp oop.pcgc.inline.hpp
182 psCompactionManager.cpp parallelScavengeHeap.hpp
183 psCompactionManager.cpp parMarkBitMap.hpp
184 psCompactionManager.cpp psParallelCompact.hpp
185 psCompactionManager.cpp psCompactionManager.hpp
186 psCompactionManager.cpp psOldGen.hpp
187 psCompactionManager.cpp systemDictionary.hpp
189 psCompactionManager.hpp allocation.hpp
190 psCompactionManager.hpp taskqueue.hpp
192 psGCAdaptivePolicyCounters.hpp gcAdaptivePolicyCounters.hpp
193 psGCAdaptivePolicyCounters.hpp gcPolicyCounters.hpp
194 psGCAdaptivePolicyCounters.hpp psAdaptiveSizePolicy.hpp
196 psGCAdaptivePolicyCounters.cpp arguments.hpp
197 psGCAdaptivePolicyCounters.cpp resourceArea.hpp
198 psGCAdaptivePolicyCounters.cpp psGCAdaptivePolicyCounters.hpp
200 psGenerationCounters.cpp psGenerationCounters.hpp
201 psGenerationCounters.cpp resourceArea.hpp
203 psGenerationCounters.hpp generationCounters.hpp
204 psGenerationCounters.hpp perfData.hpp
205 psGenerationCounters.hpp psVirtualspace.hpp
207 psMarkSweep.cpp psAdaptiveSizePolicy.hpp
208 psMarkSweep.cpp biasedLocking.hpp
209 psMarkSweep.cpp codeCache.hpp
210 psMarkSweep.cpp events.hpp
211 psMarkSweep.cpp fprofiler.hpp
212 psMarkSweep.cpp gcCause.hpp
213 psMarkSweep.cpp gcLocker.inline.hpp
214 psMarkSweep.cpp isGCActiveMark.hpp
215 psMarkSweep.cpp oop.inline.hpp
216 psMarkSweep.cpp memoryService.hpp
217 psMarkSweep.cpp management.hpp
218 psMarkSweep.cpp parallelScavengeHeap.hpp
219 psMarkSweep.cpp psMarkSweep.hpp
220 psMarkSweep.cpp psMarkSweepDecorator.hpp
221 psMarkSweep.cpp psOldGen.hpp
222 psMarkSweep.cpp psPermGen.hpp
223 psMarkSweep.cpp psScavenge.hpp
224 psMarkSweep.cpp psYoungGen.hpp
225 psMarkSweep.cpp referencePolicy.hpp
226 psMarkSweep.cpp referenceProcessor.hpp
227 psMarkSweep.cpp safepoint.hpp
228 psMarkSweep.cpp spaceDecorator.hpp
229 psMarkSweep.cpp symbolTable.hpp
230 psMarkSweep.cpp systemDictionary.hpp
231 psMarkSweep.cpp vmThread.hpp
233 psMarkSweep.hpp markSweep.inline.hpp
234 psMarkSweep.hpp collectorCounters.hpp
236 psMarkSweepDecorator.cpp liveRange.hpp
237 psMarkSweepDecorator.cpp markSweep.inline.hpp
238 psMarkSweepDecorator.cpp objectStartArray.hpp
239 psMarkSweepDecorator.cpp oop.inline.hpp
240 psMarkSweepDecorator.cpp parallelScavengeHeap.hpp
241 psMarkSweepDecorator.cpp psMarkSweep.hpp
242 psMarkSweepDecorator.cpp psMarkSweepDecorator.hpp
243 psMarkSweepDecorator.cpp spaceDecorator.hpp
244 psMarkSweepDecorator.cpp systemDictionary.hpp
246 psMarkSweepDecorator.hpp mutableSpace.hpp
248 psParallelCompact.cpp psAdaptiveSizePolicy.hpp
249 psParallelCompact.cpp codeCache.hpp
250 psParallelCompact.cpp events.hpp
251 psParallelCompact.cpp fprofiler.hpp
252 psParallelCompact.cpp gcCause.hpp
253 psParallelCompact.cpp gcLocker.inline.hpp
254 psParallelCompact.cpp gcTaskManager.hpp
255 psParallelCompact.cpp isGCActiveMark.hpp
256 psParallelCompact.cpp oop.inline.hpp
257 psParallelCompact.cpp oop.pcgc.inline.hpp
258 psParallelCompact.cpp memoryService.hpp
259 psParallelCompact.cpp management.hpp
260 psParallelCompact.cpp parallelScavengeHeap.inline.hpp
261 psParallelCompact.cpp pcTasks.hpp
262 psParallelCompact.cpp psMarkSweep.hpp
263 psParallelCompact.cpp psMarkSweepDecorator.hpp
264 psParallelCompact.cpp psCompactionManager.hpp
265 psParallelCompact.cpp psPromotionManager.inline.hpp
266 psParallelCompact.cpp psOldGen.hpp
267 psParallelCompact.cpp psParallelCompact.hpp
268 psParallelCompact.cpp psPermGen.hpp
269 psParallelCompact.cpp psScavenge.hpp
270 psParallelCompact.cpp psYoungGen.hpp
271 psParallelCompact.cpp referencePolicy.hpp
272 psParallelCompact.cpp referenceProcessor.hpp
273 psParallelCompact.cpp safepoint.hpp
274 psParallelCompact.cpp symbolTable.hpp
275 psParallelCompact.cpp systemDictionary.hpp
276 psParallelCompact.cpp vmThread.hpp
278 psParallelCompact.hpp collectorCounters.hpp
279 psParallelCompact.hpp markSweep.hpp
280 psParallelCompact.hpp mutableSpace.hpp
281 psParallelCompact.hpp objectStartArray.hpp
282 psParallelCompact.hpp oop.hpp
283 psParallelCompact.hpp parMarkBitMap.hpp
284 psParallelCompact.hpp psCompactionManager.hpp
285 psParallelCompact.hpp sharedHeap.hpp
287 psOldGen.cpp psAdaptiveSizePolicy.hpp
288 psOldGen.cpp cardTableModRefBS.hpp
289 psOldGen.cpp gcLocker.inline.hpp
290 psOldGen.cpp java.hpp
291 psOldGen.cpp oop.inline.hpp
292 psOldGen.cpp parallelScavengeHeap.hpp
293 psOldGen.cpp psMarkSweepDecorator.hpp
294 psOldGen.cpp psOldGen.hpp
295 psOldGen.cpp spaceDecorator.hpp
297 psOldGen.hpp psGenerationCounters.hpp
298 psOldGen.hpp mutableSpace.hpp
299 psOldGen.hpp objectStartArray.hpp
300 psOldGen.hpp psVirtualspace.hpp
301 psOldGen.hpp safepoint.hpp
302 psOldGen.hpp spaceCounters.hpp
304 psPermGen.cpp gcUtil.hpp
305 psPermGen.cpp markOop.inline.hpp
306 psPermGen.cpp markSweep.inline.hpp
307 psPermGen.cpp parallelScavengeHeap.hpp
308 psPermGen.cpp psMarkSweepDecorator.hpp
309 psPermGen.cpp psParallelCompact.hpp
310 psPermGen.cpp psPermGen.hpp
312 psPermGen.hpp psOldGen.hpp
314 psPromotionManager.cpp memRegion.hpp
315 psPromotionManager.cpp mutableSpace.hpp
316 psPromotionManager.cpp oop.inline.hpp
317 psPromotionManager.cpp oop.psgc.inline.hpp
318 psPromotionManager.cpp parallelScavengeHeap.hpp
319 psPromotionManager.cpp psOldGen.hpp
320 psPromotionManager.cpp psPromotionManager.inline.hpp
321 psPromotionManager.cpp psScavenge.inline.hpp
323 psPromotionManager.hpp allocation.hpp
324 psPromotionManager.hpp prefetchQueue.hpp
325 psPromotionManager.hpp psPromotionLAB.hpp
326 psPromotionManager.hpp taskqueue.hpp
328 psPromotionManager.inline.hpp psPromotionManager.hpp
329 psPromotionManager.inline.hpp psScavenge.hpp
331 psPromotionLAB.cpp mutableSpace.hpp
332 psPromotionLAB.cpp oop.inline.hpp
333 psPromotionLAB.cpp parallelScavengeHeap.hpp
334 psPromotionLAB.cpp psPromotionLAB.hpp
336 psPromotionLAB.hpp allocation.hpp
337 psPromotionLAB.hpp objectStartArray.hpp
339 psScavenge.cpp psAdaptiveSizePolicy.hpp
340 psScavenge.cpp biasedLocking.hpp
341 psScavenge.cpp cardTableExtension.hpp
342 psScavenge.cpp fprofiler.hpp
343 psScavenge.cpp gcCause.hpp
344 psScavenge.cpp gcLocker.inline.hpp
345 psScavenge.cpp gcTaskManager.hpp
346 psScavenge.cpp handles.inline.hpp
347 psScavenge.cpp isGCActiveMark.hpp
348 psScavenge.cpp oop.inline.hpp
349 psScavenge.cpp oop.psgc.inline.hpp
350 psScavenge.cpp memoryService.hpp
351 psScavenge.cpp parallelScavengeHeap.hpp
352 psScavenge.cpp psMarkSweep.hpp
353 psScavenge.cpp psParallelCompact.hpp
354 psScavenge.cpp psScavenge.inline.hpp
355 psScavenge.cpp psTasks.hpp
356 psScavenge.cpp referencePolicy.hpp
357 psScavenge.cpp referenceProcessor.hpp
358 psScavenge.cpp resourceArea.hpp
359 psScavenge.cpp spaceDecorator.hpp
360 psScavenge.cpp threadCritical.hpp
361 psScavenge.cpp vmThread.hpp
362 psScavenge.cpp vm_operations.hpp
364 psScavenge.hpp allocation.hpp
365 psScavenge.hpp cardTableExtension.hpp
366 psScavenge.hpp collectorCounters.hpp
367 psScavenge.hpp oop.hpp
368 psScavenge.hpp psVirtualspace.hpp
370 psScavenge.inline.hpp cardTableExtension.hpp
371 psScavenge.inline.hpp parallelScavengeHeap.hpp
372 psScavenge.inline.hpp psPromotionManager.hpp
373 psScavenge.inline.hpp psScavenge.hpp
375 pcTasks.cpp codeCache.hpp
376 pcTasks.cpp collectedHeap.hpp
377 pcTasks.cpp fprofiler.hpp
378 pcTasks.cpp jniHandles.hpp
379 pcTasks.cpp jvmtiExport.hpp
380 pcTasks.cpp management.hpp
381 pcTasks.cpp psParallelCompact.hpp
382 pcTasks.cpp pcTasks.hpp
383 pcTasks.cpp oop.inline.hpp
384 pcTasks.cpp oop.pcgc.inline.hpp
385 pcTasks.cpp systemDictionary.hpp
386 pcTasks.cpp taskqueue.hpp
387 pcTasks.cpp thread.hpp
388 pcTasks.cpp universe.hpp
389 pcTasks.cpp vmThread.hpp
391 pcTasks.hpp gcTaskManager.hpp
392 pcTasks.hpp psTasks.hpp
394 psTasks.cpp cardTableExtension.hpp
395 psTasks.cpp codeCache.hpp
396 psTasks.cpp fprofiler.hpp
397 psTasks.cpp gcTaskManager.hpp
398 psTasks.cpp iterator.hpp
399 psTasks.cpp management.hpp
400 psTasks.cpp oop.inline.hpp
401 psTasks.cpp oop.psgc.inline.hpp
402 psTasks.cpp psMarkSweep.hpp
403 psTasks.cpp psPromotionManager.hpp
404 psTasks.cpp psPromotionManager.inline.hpp
405 psTasks.cpp psScavenge.hpp
406 psTasks.cpp psTasks.hpp
407 psTasks.cpp systemDictionary.hpp
408 psTasks.cpp taskqueue.hpp
409 psTasks.cpp thread.hpp
410 psTasks.cpp universe.hpp
411 psTasks.cpp vmThread.hpp
413 psTasks.hpp allocation.hpp
414 psTasks.hpp growableArray.hpp
416 psVirtualspace.hpp virtualspace.hpp
418 psVirtualspace.cpp os.hpp
419 psVirtualspace.cpp os_<os_family>.inline.hpp
420 psVirtualspace.cpp psVirtualspace.hpp
421 psVirtualspace.cpp virtualspace.hpp
423 psYoungGen.cpp gcUtil.hpp
424 psYoungGen.cpp java.hpp
425 psYoungGen.cpp oop.inline.hpp
426 psYoungGen.cpp parallelScavengeHeap.hpp
427 psYoungGen.cpp psMarkSweepDecorator.hpp
428 psYoungGen.cpp psScavenge.hpp
429 psYoungGen.cpp psYoungGen.hpp
430 psYoungGen.cpp mutableNUMASpace.hpp
431 psYoungGen.cpp spaceDecorator.hpp
433 psYoungGen.hpp psGenerationCounters.hpp
434 psYoungGen.hpp mutableSpace.hpp
435 psYoungGen.hpp objectStartArray.hpp
436 psYoungGen.hpp spaceCounters.hpp
437 psYoungGen.hpp psVirtualspace.hpp
439 vmPSOperations.cpp dtrace.hpp
440 vmPSOperations.cpp parallelScavengeHeap.inline.hpp
441 vmPSOperations.cpp gcLocker.inline.hpp
442 vmPSOperations.cpp psMarkSweep.hpp
443 vmPSOperations.cpp psScavenge.hpp
444 vmPSOperations.cpp psScavenge.inline.hpp
445 vmPSOperations.cpp vmPSOperations.hpp
447 vmPSOperations.hpp gcCause.hpp
448 vmPSOperations.hpp parallelScavengeHeap.hpp
449 vmPSOperations.hpp vmGCOperations.hpp