diff options
| author | 2023-11-09 18:07:24 +0100 | |
|---|---|---|
| committer | 2023-11-20 10:38:07 +0000 | |
| commit | 4f2fcccce50f229cb2b00cc07c040473a59c120b (patch) | |
| tree | 2f5a6d61b796b95ea63e60bea47cbf6d9be2c482 /compiler/optimizing/code_sinking.cc | |
| parent | 58310a99bcda9a45bc1e07f8d36f4c847f345457 (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/code_sinking.cc')
0 files changed, 0 insertions, 0 deletions