From 53ca944020bb86199f6f80d8594d5deb1b1d46dd Mon Sep 17 00:00:00 2001 From: Almaz Mingaleev Date: Tue, 30 Jan 2024 14:07:27 +0000 Subject: x86_64: Add JIT support for LoadMethodType. In aosp/2876518 JIT code made runtime calls. Bug: 297147201 Test: ./art/test/testrunner/testrunner.py --host --64 --jit -b Test: ./art/test/testrunner/testrunner.py --host --64 -b Test: ./art/test.py --host -b Change-Id: Ifdfd3ace9419b34f8079c9ec4b1b2de31cb50ef7 --- compiler/optimizing/code_generator.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'compiler/optimizing/code_generator.h') diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h index 94831cab9f..95e73d699f 100644 --- a/compiler/optimizing/code_generator.h +++ b/compiler/optimizing/code_generator.h @@ -29,10 +29,12 @@ #include "base/memory_region.h" #include "base/pointer_size.h" #include "class_root.h" +#include "dex/proto_reference.h" #include "dex/string_reference.h" #include "dex/type_reference.h" #include "graph_visualizer.h" #include "locations.h" +#include "mirror/method_type.h" #include "nodes.h" #include "oat/oat_quick_method_header.h" #include "optimizing_compiler_stats.h" @@ -832,6 +834,9 @@ class CodeGenerator : public DeletableArenaObject { uint64_t GetJitStringRootIndex(StringReference string_reference); void ReserveJitClassRoot(TypeReference type_reference, Handle klass); uint64_t GetJitClassRootIndex(TypeReference type_reference); + void ReserveJitMethodTypeRoot(ProtoReference proto_reference, + Handle method_type); + uint64_t GetJitMethodTypeRootIndex(ProtoReference proto_reference); // Emit the patches assocatied with JIT roots. Only applies to JIT compiled code. virtual void EmitJitRootPatches(uint8_t* code, const uint8_t* roots_data); -- cgit v1.2.3-59-g8ed1b