Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mobile
Path: blob/master/test/hotspot/jtreg/vmTestbase/nsk/share/JVMDITools.cpp
40948 views
1
/*
2
* Copyright (c) 2001, 2018, 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
#include "jvmdi.h"
25
#include "JVMDITools.h"
26
27
extern "C" {
28
29
char const *TranslateEvent(jint kind) {
30
switch (kind) {
31
case JVMDI_EVENT_SINGLE_STEP:
32
return ("JVMDI_EVENT_SINGLE_STEP");
33
case JVMDI_EVENT_BREAKPOINT:
34
return ("JVMDI_EVENT_BREAKPOINT");
35
case JVMDI_EVENT_FRAME_POP:
36
return ("JVMDI_EVENT_FRAME_POP");
37
case JVMDI_EVENT_EXCEPTION:
38
return ("JVMDI_EVENT_EXCEPTION");
39
case JVMDI_EVENT_USER_DEFINED:
40
return ("JVMDI_EVENT_USER_DEFINED");
41
case JVMDI_EVENT_THREAD_START:
42
return ("JVMDI_EVENT_THREAD_START");
43
case JVMDI_EVENT_THREAD_END:
44
return ("JVMDI_EVENT_THREAD_END");
45
case JVMDI_EVENT_CLASS_PREPARE:
46
return ("JVMDI_EVENT_CLASS_PREPARE");
47
case JVMDI_EVENT_CLASS_UNLOAD:
48
return ("JVMDI_EVENT_CLASS_UNLOAD");
49
case JVMDI_EVENT_CLASS_LOAD:
50
return ("JVMDI_EVENT_CLASS_LOAD");
51
case JVMDI_EVENT_FIELD_ACCESS:
52
return ("JVMDI_EVENT_FIELD_ACCESS");
53
case JVMDI_EVENT_FIELD_MODIFICATION:
54
return ("JVMDI_EVENT_FIELD_MODIFICATION");
55
case JVMDI_EVENT_EXCEPTION_CATCH:
56
return ("JVMDI_EVENT_EXCEPTION_CATCH");
57
case JVMDI_EVENT_METHOD_ENTRY:
58
return ("JVMDI_EVENT_METHOD_ENTRY");
59
case JVMDI_EVENT_METHOD_EXIT:
60
return ("JVMDI_EVENT_METHOD_EXIT");
61
case JVMDI_EVENT_VM_INIT:
62
return ("JVMDI_EVENT_VM_INIT");
63
case JVMDI_EVENT_VM_DEATH:
64
return ("JVMDI_EVENT_VM_DEATH");
65
default:
66
return ("<Unknown Event>");
67
}
68
}
69
70
char const *TranslateError(jvmdiError err) {
71
switch (err) {
72
case JVMDI_ERROR_NONE:
73
return ("JVMDI_ERROR_NONE");
74
case JVMDI_ERROR_OUT_OF_MEMORY:
75
return ("JVMDI_ERROR_OUT_OF_MEMORY");
76
case JVMDI_ERROR_ACCESS_DENIED:
77
return ("JVMDI_ERROR_ACCESS_DENIED");
78
case JVMDI_ERROR_UNATTACHED_THREAD:
79
return ("JVMDI_ERROR_UNATTACHED_THREAD");
80
case JVMDI_ERROR_VM_DEAD:
81
return ("JVMDI_ERROR_VM_DEAD");
82
case JVMDI_ERROR_INTERNAL:
83
return ("JVMDI_ERROR_INTERNAL");
84
case JVMDI_ERROR_INVALID_THREAD:
85
return ("JVMDI_ERROR_INVALID_THREAD");
86
case JVMDI_ERROR_INVALID_FIELDID:
87
return ("JVMDI_ERROR_INVALID_FIELDID");
88
case JVMDI_ERROR_INVALID_METHODID:
89
return ("JVMDI_ERROR_INVALID_METHODID");
90
case JVMDI_ERROR_INVALID_LOCATION:
91
return ("JVMDI_ERROR_INVALID_LOCATION");
92
case JVMDI_ERROR_INVALID_FRAMEID:
93
return ("JVMDI_ERROR_INVALID_FRAMEID");
94
case JVMDI_ERROR_NO_MORE_FRAMES:
95
return ("JVMDI_ERROR_NO_MORE_FRAMES");
96
case JVMDI_ERROR_OPAQUE_FRAME:
97
return ("JVMDI_ERROR_OPAQUE_FRAME");
98
case JVMDI_ERROR_NOT_CURRENT_FRAME:
99
return ("JVMDI_ERROR_NOT_CURRENT_FRAME");
100
case JVMDI_ERROR_TYPE_MISMATCH:
101
return ("JVMDI_ERROR_TYPE_MISMATCH");
102
case JVMDI_ERROR_INVALID_SLOT:
103
return ("JVMDI_ERROR_INVALID_SLOT");
104
case JVMDI_ERROR_DUPLICATE:
105
return ("JVMDI_ERROR_DUPLICATE");
106
case JVMDI_ERROR_THREAD_NOT_SUSPENDED:
107
return ("JVMDI_ERROR_THREAD_NOT_SUSPENDED");
108
case JVMDI_ERROR_THREAD_SUSPENDED:
109
return ("JVMDI_ERROR_THREAD_SUSPENDED");
110
case JVMDI_ERROR_INVALID_OBJECT:
111
return ("JVMDI_ERROR_INVALID_OBJECT");
112
case JVMDI_ERROR_INVALID_CLASS:
113
return ("JVMDI_ERROR_INVALID_CLASS");
114
case JVMDI_ERROR_CLASS_NOT_PREPARED:
115
return ("JVMDI_ERROR_CLASS_NOT_PREPARED");
116
case JVMDI_ERROR_NULL_POINTER:
117
return ("JVMDI_ERROR_NULL_POINTER");
118
case JVMDI_ERROR_ABSENT_INFORMATION:
119
return ("JVMDI_ERROR_ABSENT_INFORMATION");
120
case JVMDI_ERROR_INVALID_EVENT_TYPE:
121
return ("JVMDI_ERROR_INVALID_EVENT_TYPE");
122
case JVMDI_ERROR_NOT_IMPLEMENTED:
123
return ("JVMDI_ERROR_NOT_IMPLEMENTED");
124
case JVMDI_ERROR_INVALID_THREAD_GROUP:
125
return ("JVMDI_ERROR_INVALID_THREAD_GROUP");
126
case JVMDI_ERROR_INVALID_PRIORITY:
127
return ("JVMDI_ERROR_INVALID_PRIORITY");
128
case JVMDI_ERROR_NOT_FOUND:
129
return ("JVMDI_ERROR_NOT_FOUND");
130
case JVMDI_ERROR_INVALID_MONITOR:
131
return ("JVMDI_ERROR_INVALID_MONITOR");
132
case JVMDI_ERROR_ILLEGAL_ARGUMENT:
133
return ("JVMDI_ERROR_ILLEGAL_ARGUMENT");
134
case JVMDI_ERROR_NOT_MONITOR_OWNER:
135
return ("JVMDI_ERROR_NOT_MONITOR_OWNER");
136
case JVMDI_ERROR_INTERRUPT:
137
return ("JVMDI_ERROR_INTERRUPT");
138
case JVMDI_ERROR_INVALID_TYPESTATE:
139
return ("JVMDI_ERROR_INVALID_TYPESTATE");
140
case JVMDI_ERROR_INVALID_CLASS_FORMAT:
141
return ("JVMDI_ERROR_INVALID_CLASS_FORMAT");
142
case JVMDI_ERROR_CIRCULAR_CLASS_DEFINITION:
143
return ("JVMDI_ERROR_CIRCULAR_CLASS_DEFINITION");
144
case JVMDI_ERROR_ADD_METHOD_NOT_IMPLEMENTED:
145
return ("JVMDI_ERROR_ADD_METHOD_NOT_IMPLEMENTED");
146
case JVMDI_ERROR_SCHEMA_CHANGE_NOT_IMPLEMENTED:
147
return ("JVMDI_ERROR_SCHEMA_CHANGE_NOT_IMPLEMENTED");
148
case JVMDI_ERROR_FAILS_VERIFICATION:
149
return ("JVMDI_ERROR_FAILS_VERIFICATION");
150
#ifdef JVMDI_VERSION_1_2
151
case JVMDI_ERROR_UNSUPPORTED_VERSION:
152
return ("JVMDI_ERROR_UNSUPPORTED_VERSION");
153
case JVMDI_ERROR_HIERARCHY_CHANGE_NOT_IMPLEMENTED:
154
return ("JVMDI_ERROR_HIERARCHY_CHANGE_NOT_IMPLEMENTED");
155
case JVMDI_ERROR_DELETE_METHOD_NOT_IMPLEMENTED:
156
return ("JVMDI_ERROR_DELETE_METHOD_NOT_IMPLEMENTED");
157
case JVMDI_ERROR_NAMES_DONT_MATCH:
158
return ("JVMDI_ERROR_NAMES_DONT_MATCH");
159
case JVMDI_ERROR_CLASS_MODIFIERS_CHANGE_NOT_IMPLEMENTED:
160
return ("JVMDI_ERROR_CLASS_MODIFIERS_CHANGE_NOT_IMPLEMENTED");
161
case JVMDI_ERROR_METHOD_MODIFIERS_CHANGE_NOT_IMPLEMENTED:
162
return ("JVMDI_ERROR_METHOD_MODIFIERS_CHANGE_NOT_IMPLEMENTED");
163
#endif
164
default:
165
return ("<Unknown Error>");
166
}
167
}
168
169
}
170
171