Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(146)

Side by Side Diff: src/full-codegen/full-codegen.cc

Issue 2023503002: Reland Implement .eh_frame writer and disassembler. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@eh-frame-base
Patch Set: if => ifdef Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/full-codegen/full-codegen.h" 5 #include "src/full-codegen/full-codegen.h"
6 6
7 #include "src/ast/ast-numbering.h" 7 #include "src/ast/ast-numbering.h"
8 #include "src/ast/ast.h" 8 #include "src/ast/ast.h"
9 #include "src/ast/prettyprinter.h" 9 #include "src/ast/prettyprinter.h"
10 #include "src/ast/scopeinfo.h" 10 #include "src/ast/scopeinfo.h"
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 FullCodeGenerator cgen(&masm, info); 48 FullCodeGenerator cgen(&masm, info);
49 LOG_CODE_EVENT(isolate, CodeStartLinePosInfoRecordEvent( 49 LOG_CODE_EVENT(isolate, CodeStartLinePosInfoRecordEvent(
50 &cgen.source_position_table_builder_)); 50 &cgen.source_position_table_builder_));
51 cgen.Generate(); 51 cgen.Generate();
52 if (cgen.HasStackOverflow()) { 52 if (cgen.HasStackOverflow()) {
53 DCHECK(!isolate->has_pending_exception()); 53 DCHECK(!isolate->has_pending_exception());
54 return false; 54 return false;
55 } 55 }
56 unsigned table_offset = cgen.EmitBackEdgeTable(); 56 unsigned table_offset = cgen.EmitBackEdgeTable();
57 57
58 Handle<Code> code = CodeGenerator::MakeCodeEpilogue(&masm, info); 58 Handle<Code> code = CodeGenerator::MakeCodeEpilogue(&masm, nullptr, info);
59 cgen.PopulateDeoptimizationData(code); 59 cgen.PopulateDeoptimizationData(code);
60 cgen.PopulateTypeFeedbackInfo(code); 60 cgen.PopulateTypeFeedbackInfo(code);
61 cgen.PopulateHandlerTable(code); 61 cgen.PopulateHandlerTable(code);
62 code->set_has_deoptimization_support(info->HasDeoptimizationSupport()); 62 code->set_has_deoptimization_support(info->HasDeoptimizationSupport());
63 code->set_has_reloc_info_for_serialization(info->will_serialize()); 63 code->set_has_reloc_info_for_serialization(info->will_serialize());
64 code->set_allow_osr_at_loop_nesting_level(0); 64 code->set_allow_osr_at_loop_nesting_level(0);
65 code->set_profiler_ticks(0); 65 code->set_profiler_ticks(0);
66 code->set_back_edge_table_offset(table_offset); 66 code->set_back_edge_table_offset(table_offset);
67 Handle<ByteArray> source_positions = 67 Handle<ByteArray> source_positions =
68 cgen.source_position_table_builder_.ToSourcePositionTable(); 68 cgen.source_position_table_builder_.ToSourcePositionTable();
(...skipping 1901 matching lines...) Expand 10 before | Expand all | Expand 10 after
1970 return var->scope()->is_nonlinear() || 1970 return var->scope()->is_nonlinear() ||
1971 var->initializer_position() >= proxy->position(); 1971 var->initializer_position() >= proxy->position();
1972 } 1972 }
1973 1973
1974 1974
1975 #undef __ 1975 #undef __
1976 1976
1977 1977
1978 } // namespace internal 1978 } // namespace internal
1979 } // namespace v8 1979 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698