From dd411969bb486c36081926d61dbcc0bfbc8066a5 Mon Sep 17 00:00:00 2001 From: Orion Hodson Date: Fri, 25 Jun 2021 08:55:22 +0100 Subject: VarHandle: add StaticFieldVarHandle class Add StaticFieldVarHandle class to keep a live reference to the declaring class for the target field of VarHandle's targeting static fields. Bug: 191980149 Test: art/test.py --host -r -g Change-Id: I3a1cada6591d146b8f9fc9066105e3b617290185 --- runtime/class_root.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'runtime/class_root.h') diff --git a/runtime/class_root.h b/runtime/class_root.h index 85e074cc47..baa21286a8 100644 --- a/runtime/class_root.h +++ b/runtime/class_root.h @@ -50,6 +50,7 @@ class Proxy; template class PrimitiveArray; class Reference; class StackTraceElement; +class StaticFieldVarHandle; class String; class Throwable; class VarHandle; @@ -78,6 +79,7 @@ class VarHandle; M(kJavaLangInvokeMethodType, "Ljava/lang/invoke/MethodType;", mirror::MethodType) \ M(kJavaLangInvokeVarHandle, "Ljava/lang/invoke/VarHandle;", mirror::VarHandle) \ M(kJavaLangInvokeFieldVarHandle, "Ljava/lang/invoke/FieldVarHandle;", mirror::FieldVarHandle) \ + M(kJavaLangInvokeStaticFieldVarHandle, "Ljava/lang/invoke/StaticFieldVarHandle;", mirror::StaticFieldVarHandle) \ M(kJavaLangInvokeArrayElementVarHandle, "Ljava/lang/invoke/ArrayElementVarHandle;", mirror::ArrayElementVarHandle) \ M(kJavaLangInvokeByteArrayViewVarHandle, "Ljava/lang/invoke/ByteArrayViewVarHandle;", mirror::ByteArrayViewVarHandle) \ M(kJavaLangInvokeByteBufferViewVarHandle, "Ljava/lang/invoke/ByteBufferViewVarHandle;", mirror::ByteBufferViewVarHandle) \ -- cgit v1.2.3-59-g8ed1b