comparison src/share/vm/gc_implementation/g1/heapRegionType.cpp @ 20481:c02ec279b062

8057768: Make heap region region type in G1 HeapRegion explicit Reviewed-by: brutisso, tschatzl
author brutisso
date Tue, 16 Sep 2014 14:27:40 +0200
parents
children
comparison
equal deleted inserted replaced
20478:00448aa81791 20481:c02ec279b062
1 /*
2 * Copyright (c) 2014, Oracle and/or its affiliates. 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "gc_implementation/g1/heapRegionType.hpp"
27
28 bool HeapRegionType::is_valid(Tag tag) {
29 switch (tag) {
30 case FreeTag:
31 case EdenTag:
32 case SurvTag:
33 case HumStartsTag:
34 case HumContTag:
35 case OldTag:
36 return true;
37 }
38 return false;
39 }
40
41 const char* HeapRegionType::get_str() const {
42 hrt_assert_is_valid(_tag);
43 switch (_tag) {
44 case FreeTag: return "FREE";
45 case EdenTag: return "EDEN";
46 case SurvTag: return "SURV";
47 case HumStartsTag: return "HUMS";
48 case HumContTag: return "HUMC";
49 case OldTag: return "OLD";
50 }
51 ShouldNotReachHere();
52 // keep some compilers happy
53 return NULL;
54 }
55
56 const char* HeapRegionType::get_short_str() const {
57 hrt_assert_is_valid(_tag);
58 switch (_tag) {
59 case FreeTag: return "F";
60 case EdenTag: return "E";
61 case SurvTag: return "S";
62 case HumStartsTag: return "HS";
63 case HumContTag: return "HC";
64 case OldTag: return "O";
65 }
66 ShouldNotReachHere();
67 // keep some compilers happy
68 return NULL;
69 }