From 3e75615ad25b6af1842b194e78b429b0f585b46a Mon Sep 17 00:00:00 2001 From: Vladimir Marko Date: Thu, 8 Aug 2024 15:33:56 +0000 Subject: Calculate the number of out vregs. Determine the number of out vregs needed by invokes that actually make a call, and by `HStringBuilderAppend`s. This can yield smaller frame sizes of compiled methods when some calls are inlined or fully intrinsified. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Bug: 358519867 Change-Id: I4930a9bd811b1de14658f5ef44e65eadea6a7961 --- compiler/optimizing/builder.cc | 2 -- 1 file changed, 2 deletions(-) (limited to 'compiler/optimizing/builder.cc') diff --git a/compiler/optimizing/builder.cc b/compiler/optimizing/builder.cc index 1dea39626c..a1318c917a 100644 --- a/compiler/optimizing/builder.cc +++ b/compiler/optimizing/builder.cc @@ -93,7 +93,6 @@ GraphAnalysisResult HGraphBuilder::BuildGraph() { graph_->SetNumberOfVRegs(code_item_accessor_.RegistersSize()); graph_->SetNumberOfInVRegs(code_item_accessor_.InsSize()); - graph_->SetMaximumNumberOfOutVRegs(code_item_accessor_.OutsSize()); // Use ScopedArenaAllocator for all local allocations. ScopedArenaAllocator local_allocator(graph_->GetArenaStack()); @@ -157,7 +156,6 @@ void HGraphBuilder::BuildIntrinsicGraph(ArtMethod* method) { size_t return_vregs = 2u; graph_->SetNumberOfVRegs(return_vregs + num_arg_vregs); graph_->SetNumberOfInVRegs(num_arg_vregs); - graph_->SetMaximumNumberOfOutVRegs(num_arg_vregs); // Use ScopedArenaAllocator for all local allocations. ScopedArenaAllocator local_allocator(graph_->GetArenaStack()); -- cgit v1.2.3-59-g8ed1b