2
* Copyright (c) 2002, 2023, Oracle and/or its affiliates. All rights reserved.
3
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
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.
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).
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.
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
25
#include "precompiled.hpp"
26
#include "gc/shared/gcCause.hpp"
28
const char* GCCause::to_string(GCCause::Cause cause) {
30
case _java_lang_system_gc:
37
return "ScavengeAlot";
39
case _allocation_profiler:
40
return "Allocation Profiler";
43
return "JvmtiEnv ForceGarbageCollection";
46
return "GCLocker Initiated GC";
48
case _heap_inspection:
49
return "Heap Inspection Initiated GC";
52
return "Heap Dump Initiated GC";
55
return "WhiteBox Initiated Young GC";
58
return "WhiteBox Initiated Full GC";
61
return "WhiteBox Initiated Run to Breakpoint";
66
case _allocation_failure:
67
return "Allocation Failure";
69
case _codecache_GC_threshold:
70
return "CodeCache GC Threshold";
72
case _codecache_GC_aggressive:
73
return "CodeCache GC Aggressive";
75
case _metadata_GC_threshold:
76
return "Metadata GC Threshold";
78
case _metadata_GC_clear_soft_refs:
79
return "Metadata GC Clear Soft References";
81
case _adaptive_size_policy:
84
case _g1_inc_collection_pause:
85
return "G1 Evacuation Pause";
87
case _g1_compaction_pause:
88
return "G1 Compaction Pause";
90
case _g1_humongous_allocation:
91
return "G1 Humongous Allocation";
93
case _g1_periodic_collection:
94
return "G1 Periodic Collection";
97
return "Diagnostic Command";
99
case _shenandoah_allocation_failure_evac:
100
return "Allocation Failure During Evacuation";
102
case _shenandoah_stop_vm:
103
return "Stopping VM";
105
case _shenandoah_concurrent_gc:
106
return "Concurrent GC";
108
case _shenandoah_upgrade_to_full_gc:
109
return "Upgrade To Full GC";
117
case _z_allocation_rate:
118
return "Allocation Rate";
120
case _z_allocation_stall:
121
return "Allocation Stall";
130
return "ILLEGAL VALUE - last gc cause - ILLEGAL VALUE";
133
return "unknown GCCause";
135
ShouldNotReachHere();