summaryrefslogtreecommitdiff
path: root/compiler/optimizing/intrinsic_objects.h
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2023-11-09 18:07:24 +0100
committer VladimĂ­r Marko <vmarko@google.com> 2023-11-20 10:38:07 +0000
commit4f2fcccce50f229cb2b00cc07c040473a59c120b (patch)
tree2f5a6d61b796b95ea63e60bea47cbf6d9be2c482 /compiler/optimizing/intrinsic_objects.h
parent58310a99bcda9a45bc1e07f8d36f4c847f345457 (diff)
Do not create `MethodType` during early init...
... when interpreting `VarHandle` invoke-polymorphic. Use `VariableSizedHandleScope` as a raw method type that can be converted to the managed `MethodType` when desires but can also be used directly without the conversion. Add helper templates that facilitate using either the raw method type or the managed `MethodType` easily by templated code. Change `VarHandleInvokeAccessorWithConversions()` to avoid allocating the `MethodType` (avoid unnecessary work). Change `VarHandle` invokes in the interpreter to avoid allocating the `MethodType` when the `ThreadLocalRandom` is not initialized. This can avoid circular initialization when we reland https://android-review.googlesource.com/2769639 . Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Bug: 297147201 Change-Id: I6a9372543a547366b28e5bf49d15d6140a75f770
Diffstat (limited to 'compiler/optimizing/intrinsic_objects.h')
0 files changed, 0 insertions, 0 deletions