summaryrefslogtreecommitdiff
path: root/compiler/optimizing/instruction_builder.h
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2020-05-12 13:58:51 +0100
committerVladimir Marko <vmarko@google.com>2020-05-13 08:00:22 +0000
commit02ca05a5a6e3f5028c6c2987a81be481d07bc617 (patch)
treea364c4a46c573fdfddf607b0e78e5fd3f455c17f /compiler/optimizing/instruction_builder.h
parent5868adaefe72cc8bcdcd8325c40f712375a506d1 (diff)
Move HandleCache to HGraph.
This avoids passing the `VariableSizedHandleScope*` argument around and eliminates HGraph::inexact_object_rti_ and its initialization. The latter shall allow running Optimizing gtests that do not require type information without creating a Runtime in future. (To be implemented in a separate CL.) Test: m test-art-host-gtest Test: testrunner.py --host --optmizing Test: aosp_taimen-userdebug boots. Change-Id: I36fe9bc556c6d610d644c8c14cc74c9985a14d64
Diffstat (limited to 'compiler/optimizing/instruction_builder.h')
-rw-r--r--compiler/optimizing/instruction_builder.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/compiler/optimizing/instruction_builder.h b/compiler/optimizing/instruction_builder.h
index 95d331558f..04f2a22301 100644
--- a/compiler/optimizing/instruction_builder.h
+++ b/compiler/optimizing/instruction_builder.h
@@ -41,7 +41,6 @@ class InstructionOperands;
class OptimizingCompilerStats;
class ScopedObjectAccess;
class SsaBuilder;
-class VariableSizedHandleScope;
namespace mirror {
class Class;
@@ -61,7 +60,6 @@ class HInstructionBuilder : public ValueObject {
CodeGenerator* code_generator,
ArrayRef<const uint8_t> interpreter_metadata,
OptimizingCompilerStats* compiler_stats,
- VariableSizedHandleScope* handles,
ScopedArenaAllocator* local_allocator);
bool Build();
@@ -301,7 +299,6 @@ class HInstructionBuilder : public ValueObject {
ArenaAllocator* const allocator_;
HGraph* const graph_;
- VariableSizedHandleScope* const handles_;
// The dex file where the method being compiled is, and the bytecode data.
const DexFile* const dex_file_;
@@ -343,7 +340,7 @@ class HInstructionBuilder : public ValueObject {
ScopedArenaVector<HBasicBlock*> loop_headers_;
// Cached resolved types for the current compilation unit's DexFile.
- // Handle<>s reference entries in the `handles_`.
+ // Handle<>s reference entries in the `graph_->GetHandleCache()`.
ScopedArenaSafeMap<dex::TypeIndex, Handle<mirror::Class>> class_cache_;
static constexpr int kDefaultNumberOfLoops = 2;