diff options
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r-- | compiler/optimizing/optimizing_compiler.cc | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index 898b656b80..8e48f6dd1e 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -558,15 +558,14 @@ CompiledMethod* OptimizingCompiler::CompileOptimized(HGraph* graph, ArenaAllocator* arena = graph->GetArena(); CodeVectorAllocator allocator(arena); + DefaultSrcMap src_mapping_table; + codegen->SetSrcMap(compiler_driver->GetCompilerOptions().GetGenerateDebugInfo() + ? &src_mapping_table + : nullptr); codegen->CompileOptimized(&allocator); ArenaVector<LinkerPatch> linker_patches = EmitAndSortLinkerPatches(codegen); - DefaultSrcMap src_mapping_table; - if (compiler_driver->GetCompilerOptions().GetGenerateDebugInfo()) { - codegen->BuildSourceMap(&src_mapping_table); - } - ArenaVector<uint8_t> stack_map(arena->Adapter(kArenaAllocStackMaps)); codegen->BuildStackMaps(&stack_map); @@ -601,16 +600,16 @@ CompiledMethod* OptimizingCompiler::CompileBaseline( PassObserver* pass_observer) const { ArenaAllocator* arena = codegen->GetGraph()->GetArena(); CodeVectorAllocator allocator(arena); + DefaultSrcMap src_mapping_table; + codegen->SetSrcMap(compiler_driver->GetCompilerOptions().GetGenerateDebugInfo() + ? &src_mapping_table + : nullptr); codegen->CompileBaseline(&allocator); ArenaVector<LinkerPatch> linker_patches = EmitAndSortLinkerPatches(codegen); ArenaVector<uint8_t> mapping_table(arena->Adapter(kArenaAllocBaselineMaps)); codegen->BuildMappingTable(&mapping_table); - DefaultSrcMap src_mapping_table; - if (compiler_driver->GetCompilerOptions().GetGenerateDebugInfo()) { - codegen->BuildSourceMap(&src_mapping_table); - } ArenaVector<uint8_t> vmap_table(arena->Adapter(kArenaAllocBaselineMaps)); codegen->BuildVMapTable(&vmap_table); ArenaVector<uint8_t> gc_map(arena->Adapter(kArenaAllocBaselineMaps)); |