Path: blob/aarch64-shenandoah-jdk8u272-b10/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp
38920 views
/*1* Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.2* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.3*4* This code is free software; you can redistribute it and/or modify it5* under the terms of the GNU General Public License version 2 only, as6* published by the Free Software Foundation.7*8* This code is distributed in the hope that it will be useful, but WITHOUT9* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or10* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License11* version 2 for more details (a copy is included in the LICENSE file that12* accompanied this code).13*14* You should have received a copy of the GNU General Public License version15* 2 along with this work; if not, write to the Free Software Foundation,16* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.17*18* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA19* or visit www.oracle.com if you need additional information or have any20* questions.21*22*/2324#ifndef SHARE_VM_GC_IMPLEMENTATION_CONCURRENTMARKSWEEP_VMSTRUCTS_CMS_HPP25#define SHARE_VM_GC_IMPLEMENTATION_CONCURRENTMARKSWEEP_VMSTRUCTS_CMS_HPP2627#define VM_STRUCTS_CMS(nonstatic_field, \28volatile_nonstatic_field, \29static_field) \30nonstatic_field(CompactibleFreeListSpace, _collector, CMSCollector*) \31nonstatic_field(CompactibleFreeListSpace, _bt, BlockOffsetArrayNonContigSpace) \32\33nonstatic_field(CMSBitMap, _bmWordSize, size_t) \34nonstatic_field(CMSBitMap, _shifter, const int) \35nonstatic_field(CMSBitMap, _bm, BitMap) \36nonstatic_field(CMSBitMap, _virtual_space, VirtualSpace) \37nonstatic_field(CMSCollector, _markBitMap, CMSBitMap) \38nonstatic_field(ConcurrentMarkSweepGeneration, _cmsSpace, CompactibleFreeListSpace*) \39static_field(ConcurrentMarkSweepThread, _collector, CMSCollector*) \40nonstatic_field(LinearAllocBlock, _word_size, size_t) \41nonstatic_field(AFLBinaryTreeDictionary, _total_size, size_t) \42nonstatic_field(CompactibleFreeListSpace, _dictionary, AFLBinaryTreeDictionary*) \43nonstatic_field(CompactibleFreeListSpace, _indexedFreeList[0], AdaptiveFreeList<FreeChunk>) \44nonstatic_field(CompactibleFreeListSpace, _smallLinearAllocBlock, LinearAllocBlock)454647#define VM_TYPES_CMS(declare_type, \48declare_toplevel_type) \49\50declare_type(ConcurrentMarkSweepGeneration,CardGeneration) \51declare_type(CompactibleFreeListSpace, CompactibleSpace) \52declare_type(ConcurrentMarkSweepThread, NamedThread) \53declare_type(SurrogateLockerThread, JavaThread) \54declare_toplevel_type(CMSCollector) \55declare_toplevel_type(CMSBitMap) \56declare_toplevel_type(FreeChunk) \57declare_toplevel_type(Metablock) \58declare_toplevel_type(ConcurrentMarkSweepThread*) \59declare_toplevel_type(ConcurrentMarkSweepGeneration*) \60declare_toplevel_type(SurrogateLockerThread*) \61declare_toplevel_type(CompactibleFreeListSpace*) \62declare_toplevel_type(CMSCollector*) \63declare_toplevel_type(AFLBinaryTreeDictionary) \64declare_toplevel_type(LinearAllocBlock) \65declare_toplevel_type(FreeBlockDictionary<FreeChunk>)6667#define VM_INT_CONSTANTS_CMS(declare_constant) \68declare_constant(Generation::ConcurrentMarkSweep) \6970#endif // SHARE_VM_GC_IMPLEMENTATION_CONCURRENTMARKSWEEP_VMSTRUCTS_CMS_HPP717273