OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/crankshaft/lithium-codegen.h" | 5 #include "src/crankshaft/lithium-codegen.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 | 8 |
9 #if V8_TARGET_ARCH_IA32 | 9 #if V8_TARGET_ARCH_IA32 |
10 #include "src/crankshaft/ia32/lithium-ia32.h" // NOLINT | 10 #include "src/crankshaft/ia32/lithium-ia32.h" // NOLINT |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 instructions_(chunk->instructions()), | 59 instructions_(chunk->instructions()), |
60 deoptimizations_(4, info->zone()), | 60 deoptimizations_(4, info->zone()), |
61 deoptimization_literals_(8, info->zone()), | 61 deoptimization_literals_(8, info->zone()), |
62 translations_(info->zone()), | 62 translations_(info->zone()), |
63 inlined_function_count_(0), | 63 inlined_function_count_(0), |
64 last_lazy_deopt_pc_(0), | 64 last_lazy_deopt_pc_(0), |
65 osr_pc_offset_(-1), | 65 osr_pc_offset_(-1), |
66 source_position_table_builder_(info->zone(), | 66 source_position_table_builder_(info->zone(), |
67 info->SourcePositionRecordingMode()) {} | 67 info->SourcePositionRecordingMode()) {} |
68 | 68 |
| 69 Isolate* LCodeGenBase::isolate() const { return info_->isolate(); } |
| 70 |
69 bool LCodeGenBase::GenerateBody() { | 71 bool LCodeGenBase::GenerateBody() { |
70 DCHECK(is_generating()); | 72 DCHECK(is_generating()); |
71 bool emit_instructions = true; | 73 bool emit_instructions = true; |
72 LCodeGen* codegen = static_cast<LCodeGen*>(this); | 74 LCodeGen* codegen = static_cast<LCodeGen*>(this); |
73 for (current_instruction_ = 0; | 75 for (current_instruction_ = 0; |
74 !is_aborted() && current_instruction_ < instructions_->length(); | 76 !is_aborted() && current_instruction_ < instructions_->length(); |
75 current_instruction_++) { | 77 current_instruction_++) { |
76 LInstruction* instr = instructions_->at(current_instruction_); | 78 LInstruction* instr = instructions_->at(current_instruction_); |
77 | 79 |
78 // Don't emit code for basic blocks with a replacement. | 80 // Don't emit code for basic blocks with a replacement. |
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
373 | 375 |
374 Deoptimizer::DeoptInfo LCodeGenBase::MakeDeoptInfo( | 376 Deoptimizer::DeoptInfo LCodeGenBase::MakeDeoptInfo( |
375 LInstruction* instr, DeoptimizeReason deopt_reason, int deopt_id) { | 377 LInstruction* instr, DeoptimizeReason deopt_reason, int deopt_id) { |
376 Deoptimizer::DeoptInfo deopt_info(instr->hydrogen_value()->position(), | 378 Deoptimizer::DeoptInfo deopt_info(instr->hydrogen_value()->position(), |
377 deopt_reason, deopt_id); | 379 deopt_reason, deopt_id); |
378 return deopt_info; | 380 return deopt_info; |
379 } | 381 } |
380 | 382 |
381 } // namespace internal | 383 } // namespace internal |
382 } // namespace v8 | 384 } // namespace v8 |
OLD | NEW |