Skip to content

Commit c22af0c

Browse files
committed
8358205: Remove unused JFR array allocation code
Reviewed-by: kbarrett, mgronlun
1 parent 83cb0c6 commit c22af0c

File tree

5 files changed

+5
-50
lines changed

5 files changed

+5
-50
lines changed

src/hotspot/share/jfr/jni/jfrJavaCall.cpp

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -179,16 +179,15 @@ void JfrJavaArguments::Parameters::copy(JavaCallArguments& args, TRAPS) const {
179179
}
180180
}
181181

182-
JfrJavaArguments::JfrJavaArguments(JavaValue* result) : _result(result), _klass(nullptr), _name(nullptr), _signature(nullptr), _array_length(-1) {
182+
JfrJavaArguments::JfrJavaArguments(JavaValue* result) : _result(result), _klass(nullptr), _name(nullptr), _signature(nullptr) {
183183
assert(result != nullptr, "invariant");
184184
}
185185

186186
JfrJavaArguments::JfrJavaArguments(JavaValue* result, const char* klass_name, const char* name, const char* signature, TRAPS) :
187187
_result(result),
188188
_klass(nullptr),
189189
_name(nullptr),
190-
_signature(nullptr),
191-
_array_length(-1) {
190+
_signature(nullptr) {
192191
assert(result != nullptr, "invariant");
193192
if (klass_name != nullptr) {
194193
set_klass(klass_name, CHECK);
@@ -204,8 +203,7 @@ JfrJavaArguments::JfrJavaArguments(JavaValue* result, const char* klass_name, co
204203
JfrJavaArguments::JfrJavaArguments(JavaValue* result, const Klass* klass, const Symbol* name, const Symbol* signature) : _result(result),
205204
_klass(nullptr),
206205
_name(nullptr),
207-
_signature(nullptr),
208-
_array_length(-1) {
206+
_signature(nullptr) {
209207
assert(result != nullptr, "invariant");
210208
if (klass != nullptr) {
211209
set_klass(klass);
@@ -268,15 +266,6 @@ void JfrJavaArguments::set_signature(const Symbol* signature) {
268266
_signature = signature;
269267
}
270268

271-
int JfrJavaArguments::array_length() const {
272-
return _array_length;
273-
}
274-
275-
void JfrJavaArguments::set_array_length(int length) {
276-
assert(length >= 0, "invariant");
277-
_array_length = length;
278-
}
279-
280269
JavaValue* JfrJavaArguments::result() const {
281270
assert(_result != nullptr, "invariant");
282271
return const_cast<JavaValue*>(_result);

src/hotspot/share/jfr/jni/jfrJavaCall.hpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2017, 2025, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -55,9 +55,6 @@ class JfrJavaArguments : public StackObj {
5555
void set_signature(const char* signature);
5656
void set_signature(const Symbol* signature);
5757

58-
int array_length() const;
59-
void set_array_length(int length);
60-
6158
JavaValue* result() const;
6259

6360
bool has_receiver() const;
@@ -117,7 +114,6 @@ class JfrJavaArguments : public StackObj {
117114
const Klass* _klass;
118115
const Symbol* _name;
119116
const Symbol* _signature;
120-
int _array_length;
121117

122118
int java_call_arg_slots() const;
123119
void copy(JavaCallArguments& args, TRAPS);

src/hotspot/share/jfr/jni/jfrJavaSupport.cpp

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -178,19 +178,6 @@ static void object_construction(JfrJavaArguments* args, JavaValue* result, Insta
178178
result->set_oop(h_obj());
179179
}
180180

181-
static void array_construction(JfrJavaArguments* args, JavaValue* result, InstanceKlass* klass, int array_length, TRAPS) {
182-
assert(args != nullptr, "invariant");
183-
assert(result != nullptr, "invariant");
184-
assert(klass != nullptr, "invariant");
185-
assert(klass->is_initialized(), "invariant");
186-
187-
Klass* const ak = klass->array_klass(THREAD);
188-
ObjArrayKlass::cast(ak)->initialize(THREAD);
189-
HandleMark hm(THREAD);
190-
objArrayOop arr = ObjArrayKlass::cast(ak)->allocate(array_length, CHECK);
191-
result->set_oop(arr);
192-
}
193-
194181
static void create_object(JfrJavaArguments* args, JavaValue* result, TRAPS) {
195182
assert(args != nullptr, "invariant");
196183
assert(result != nullptr, "invariant");
@@ -200,13 +187,7 @@ static void create_object(JfrJavaArguments* args, JavaValue* result, TRAPS) {
200187
InstanceKlass* const klass = static_cast<InstanceKlass*>(args->klass());
201188
klass->initialize(CHECK);
202189

203-
const int array_length = args->array_length();
204-
205-
if (array_length >= 0) {
206-
array_construction(args, result, klass, array_length, CHECK);
207-
} else {
208-
object_construction(args, result, klass, THREAD);
209-
}
190+
object_construction(args, result, klass, THREAD);
210191
}
211192

212193
static void handle_result(JavaValue* result, bool global_ref, JavaThread* t) {
@@ -252,15 +233,6 @@ jstring JfrJavaSupport::new_string(const char* c_str, TRAPS) {
252233
return (jstring)local_jni_handle(result, THREAD);
253234
}
254235

255-
jobjectArray JfrJavaSupport::new_string_array(int length, TRAPS) {
256-
DEBUG_ONLY(check_java_thread_in_vm(THREAD));
257-
JavaValue result(T_OBJECT);
258-
JfrJavaArguments args(&result, "java/lang/String", "<init>", "()V", CHECK_NULL);
259-
args.set_array_length(length);
260-
new_object_local_ref(&args, THREAD);
261-
return (jobjectArray)args.result()->get_jobject();
262-
}
263-
264236
jobject JfrJavaSupport::new_java_lang_Boolean(bool value, TRAPS) {
265237
DEBUG_ONLY(check_java_thread_in_vm(THREAD));
266238
JavaValue result(T_OBJECT);

src/hotspot/share/jfr/jni/jfrJavaSupport.hpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ class JfrJavaSupport : public AllStatic {
6969
static void get_field_local_ref(JfrJavaArguments* args, TRAPS);
7070

7171
static jstring new_string(const char* c_str, TRAPS);
72-
static jobjectArray new_string_array(int length, TRAPS);
7372

7473
static jobject new_java_lang_Boolean(bool value, TRAPS);
7574
static jobject new_java_lang_Integer(jint value, TRAPS);

src/hotspot/share/memory/oopFactory.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,6 @@ typeArrayOop oopFactory::new_typeArray_nozero(BasicType type, int length, TRAPS)
107107

108108

109109
objArrayOop oopFactory::new_objArray(Klass* klass, int length, TRAPS) {
110-
assert(klass->is_klass(), "must be instance class");
111110
if (klass->is_array_klass()) {
112111
return ArrayKlass::cast(klass)->allocate_arrayArray(1, length, THREAD);
113112
} else {

0 commit comments

Comments
 (0)