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/g1/g1HeapRegionTraceType.hpp"
27 #include "gc/g1/heapRegionType.hpp"
28
29 bool HeapRegionType::is_valid(Tag tag) {
30 switch (tag) {
31 case FreeTag:
32 case EdenTag:
33 case SurvTag:
34 case StartsHumongousTag:
35 case ContinuesHumongousTag:
36 case OldTag:
37 case OpenArchiveTag:
38 case ClosedArchiveTag:
39 return true;
40 default:
41 return false;
42 }
43 }
44
45 const char* HeapRegionType::get_str() const {
46 hrt_assert_is_valid(_tag);
47 switch (_tag) {
48 case FreeTag: return "FREE";
49 case EdenTag: return "EDEN";
50 case SurvTag: return "SURV";
51 case StartsHumongousTag: return "HUMS";
52 case ContinuesHumongousTag: return "HUMC";
53 case OldTag: return "OLD";
54 case OpenArchiveTag: return "OARC";
55 case ClosedArchiveTag: return "CARC";
56 default:
57 ShouldNotReachHere();
58 return NULL; // keep some compilers happy
59 }
60 }
61
62 const char* HeapRegionType::get_short_str() const {
63 hrt_assert_is_valid(_tag);
64 switch (_tag) {
65 case FreeTag: return "F";
66 case EdenTag: return "E";
67 case SurvTag: return "S";
68 case StartsHumongousTag: return "HS";
69 case ContinuesHumongousTag: return "HC";
70 case OldTag: return "O";
71 case OpenArchiveTag: return "OA";
72 case ClosedArchiveTag: return "CA";
73 default:
74 ShouldNotReachHere();
75 return NULL; // keep some compilers happy
76 }
77 }
78
79 G1HeapRegionTraceType::Type HeapRegionType::get_trace_type() {
80 hrt_assert_is_valid(_tag);
81 switch (_tag) {
82 case FreeTag: return G1HeapRegionTraceType::Free;
83 case EdenTag: return G1HeapRegionTraceType::Eden;
84 case SurvTag: return G1HeapRegionTraceType::Survivor;
85 case StartsHumongousTag: return G1HeapRegionTraceType::StartsHumongous;
86 case ContinuesHumongousTag: return G1HeapRegionTraceType::ContinuesHumongous;
87 case OldTag: return G1HeapRegionTraceType::Old;
88 case OpenArchiveTag: return G1HeapRegionTraceType::OpenArchive;
89 case ClosedArchiveTag: return G1HeapRegionTraceType::ClosedArchive;
90 default:
91 ShouldNotReachHere();
92 return G1HeapRegionTraceType::Free; // keep some compilers happy
93 }
94 }
|
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/g1/g1HeapRegionTraceType.hpp"
27 #include "gc/g1/heapRegionType.hpp"
28
29 bool HeapRegionType::is_valid(Tag tag) {
30 switch (tag) {
31 case FreeTag:
32 case EdenTag:
33 case SurvTag:
34 case StartsHumongousTag:
35 case ContinuesHumongousTag:
36 case OldTag:
37 case PreMatureOldTag:
38 case OpenArchiveTag:
39 case ClosedArchiveTag:
40 return true;
41 default:
42 return false;
43 }
44 }
45
46 const char* HeapRegionType::get_str() const {
47 hrt_assert_is_valid(_tag);
48 switch (_tag) {
49 case FreeTag: return "FREE";
50 case EdenTag: return "EDEN";
51 case SurvTag: return "SURV";
52 case StartsHumongousTag: return "HUMS";
53 case ContinuesHumongousTag: return "HUMC";
54 case OldTag: return "OLD";
55 case PreMatureOldTag: return "PMOLD";
56 case OpenArchiveTag: return "OARC";
57 case ClosedArchiveTag: return "CARC";
58 default:
59 ShouldNotReachHere();
60 return NULL; // keep some compilers happy
61 }
62 }
63
64 const char* HeapRegionType::get_short_str() const {
65 hrt_assert_is_valid(_tag);
66 switch (_tag) {
67 case FreeTag: return "F";
68 case EdenTag: return "E";
69 case SurvTag: return "S";
70 case StartsHumongousTag: return "HS";
71 case ContinuesHumongousTag: return "HC";
72 case OldTag: return "O";
73 case PreMatureOldTag: return "PO";
74 case OpenArchiveTag: return "OA";
75 case ClosedArchiveTag: return "CA";
76 default:
77 ShouldNotReachHere();
78 return NULL; // keep some compilers happy
79 }
80 }
81
82 G1HeapRegionTraceType::Type HeapRegionType::get_trace_type() {
83 hrt_assert_is_valid(_tag);
84 switch (_tag) {
85 case FreeTag: return G1HeapRegionTraceType::Free;
86 case EdenTag: return G1HeapRegionTraceType::Eden;
87 case SurvTag: return G1HeapRegionTraceType::Survivor;
88 case StartsHumongousTag: return G1HeapRegionTraceType::StartsHumongous;
89 case ContinuesHumongousTag: return G1HeapRegionTraceType::ContinuesHumongous;
90 case OldTag: return G1HeapRegionTraceType::Old;
91 case PreMatureOldTag: return G1HeapRegionTraceType::PreMatureOld;
92 case OpenArchiveTag: return G1HeapRegionTraceType::OpenArchive;
93 case ClosedArchiveTag: return G1HeapRegionTraceType::ClosedArchive;
94 default:
95 ShouldNotReachHere();
96 return G1HeapRegionTraceType::Free; // keep some compilers happy
97 }
98 }
|