equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2002, 2017, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2002, 2018, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
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 |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
24 |
24 |
25 #include "precompiled.hpp" |
25 #include "precompiled.hpp" |
26 #include "aot/aotLoader.hpp" |
26 #include "aot/aotLoader.hpp" |
27 #include "classfile/systemDictionary.hpp" |
27 #include "classfile/systemDictionary.hpp" |
28 #include "code/codeCache.hpp" |
28 #include "code/codeCache.hpp" |
29 #include "gc/parallel/cardTableExtension.hpp" |
|
30 #include "gc/parallel/gcTaskManager.hpp" |
29 #include "gc/parallel/gcTaskManager.hpp" |
31 #include "gc/parallel/psMarkSweep.hpp" |
30 #include "gc/parallel/psMarkSweep.hpp" |
|
31 #include "gc/parallel/psCardTable.hpp" |
32 #include "gc/parallel/psPromotionManager.hpp" |
32 #include "gc/parallel/psPromotionManager.hpp" |
33 #include "gc/parallel/psPromotionManager.inline.hpp" |
33 #include "gc/parallel/psPromotionManager.inline.hpp" |
34 #include "gc/parallel/psScavenge.inline.hpp" |
34 #include "gc/parallel/psScavenge.inline.hpp" |
35 #include "gc/parallel/psTasks.hpp" |
35 #include "gc/parallel/psTasks.hpp" |
36 #include "gc/shared/taskqueue.inline.hpp" |
36 #include "gc/shared/taskqueue.inline.hpp" |
174 assert(_old_gen->object_space()->contains(_gen_top) || _gen_top == _old_gen->object_space()->top(), "Sanity"); |
174 assert(_old_gen->object_space()->contains(_gen_top) || _gen_top == _old_gen->object_space()->top(), "Sanity"); |
175 assert(_stripe_number < ParallelGCThreads, "Sanity"); |
175 assert(_stripe_number < ParallelGCThreads, "Sanity"); |
176 |
176 |
177 { |
177 { |
178 PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which); |
178 PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which); |
179 CardTableExtension* card_table = |
179 PSCardTable* card_table = ParallelScavengeHeap::heap()->card_table(); |
180 barrier_set_cast<CardTableExtension>(ParallelScavengeHeap::heap()->barrier_set()); |
|
181 |
180 |
182 card_table->scavenge_contents_parallel(_old_gen->start_array(), |
181 card_table->scavenge_contents_parallel(_old_gen->start_array(), |
183 _old_gen->object_space(), |
182 _old_gen->object_space(), |
184 _gen_top, |
183 _gen_top, |
185 pm, |
184 pm, |