32 #include "memory/memRegion.hpp" |
32 #include "memory/memRegion.hpp" |
33 #include "memory/watermark.hpp" |
33 #include "memory/watermark.hpp" |
34 #include "oops/markOop.hpp" |
34 #include "oops/markOop.hpp" |
35 #include "runtime/mutexLocker.hpp" |
35 #include "runtime/mutexLocker.hpp" |
36 #include "runtime/prefetch.hpp" |
36 #include "runtime/prefetch.hpp" |
|
37 #include "utilities/macros.hpp" |
37 #include "utilities/workgroup.hpp" |
38 #include "utilities/workgroup.hpp" |
38 #ifdef TARGET_OS_FAMILY_linux |
39 #ifdef TARGET_OS_FAMILY_linux |
39 # include "os_linux.inline.hpp" |
40 # include "os_linux.inline.hpp" |
40 #endif |
41 #endif |
41 #ifdef TARGET_OS_FAMILY_solaris |
42 #ifdef TARGET_OS_FAMILY_solaris |
882 assert(new_limit <= top(), "uninitialized objects in the safe range"); |
883 assert(new_limit <= top(), "uninitialized objects in the safe range"); |
883 _concurrent_iteration_safe_limit = new_limit; |
884 _concurrent_iteration_safe_limit = new_limit; |
884 } |
885 } |
885 |
886 |
886 |
887 |
887 #ifndef SERIALGC |
888 #if INCLUDE_ALL_GCS |
888 // In support of parallel oop_iterate. |
889 // In support of parallel oop_iterate. |
889 #define ContigSpace_PAR_OOP_ITERATE_DECL(OopClosureType, nv_suffix) \ |
890 #define ContigSpace_PAR_OOP_ITERATE_DECL(OopClosureType, nv_suffix) \ |
890 void par_oop_iterate(MemRegion mr, OopClosureType* blk); |
891 void par_oop_iterate(MemRegion mr, OopClosureType* blk); |
891 |
892 |
892 ALL_PAR_OOP_ITERATE_CLOSURES(ContigSpace_PAR_OOP_ITERATE_DECL) |
893 ALL_PAR_OOP_ITERATE_CLOSURES(ContigSpace_PAR_OOP_ITERATE_DECL) |
893 #undef ContigSpace_PAR_OOP_ITERATE_DECL |
894 #undef ContigSpace_PAR_OOP_ITERATE_DECL |
894 #endif // SERIALGC |
895 #endif // INCLUDE_ALL_GCS |
895 |
896 |
896 // Compaction support |
897 // Compaction support |
897 virtual void reset_after_compaction() { |
898 virtual void reset_after_compaction() { |
898 assert(compaction_top() >= bottom() && compaction_top() <= end(), "should point inside space"); |
899 assert(compaction_top() >= bottom() && compaction_top() <= end(), "should point inside space"); |
899 set_top(compaction_top()); |
900 set_top(compaction_top()); |