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/compiler/code-generator.h" | 5 #include "src/compiler/code-generator.h" |
6 | 6 |
7 #include "src/compiler/code-generator-impl.h" | 7 #include "src/compiler/code-generator-impl.h" |
8 #include "src/compiler/linkage.h" | 8 #include "src/compiler/linkage.h" |
9 #include "src/compiler/pipeline.h" | 9 #include "src/compiler/pipeline.h" |
10 | 10 |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
208 | 208 |
209 // No OSR in Turbofan yet... | 209 // No OSR in Turbofan yet... |
210 BailoutId osr_ast_id = BailoutId::None(); | 210 BailoutId osr_ast_id = BailoutId::None(); |
211 data->SetOsrAstId(Smi::FromInt(osr_ast_id.ToInt())); | 211 data->SetOsrAstId(Smi::FromInt(osr_ast_id.ToInt())); |
212 data->SetOsrPcOffset(Smi::FromInt(-1)); | 212 data->SetOsrPcOffset(Smi::FromInt(-1)); |
213 | 213 |
214 // Populate deoptimization entries. | 214 // Populate deoptimization entries. |
215 for (int i = 0; i < deopt_count; i++) { | 215 for (int i = 0; i < deopt_count; i++) { |
216 FrameStateDescriptor* descriptor = code()->GetDeoptimizationEntry(i); | 216 FrameStateDescriptor* descriptor = code()->GetDeoptimizationEntry(i); |
217 data->SetAstId(i, descriptor->bailout_id()); | 217 data->SetAstId(i, descriptor->bailout_id()); |
218 CHECK_NE(NULL, deoptimization_states_[i]); | 218 data->SetTranslationIndex(i, Smi::FromInt(0)); |
219 data->SetTranslationIndex( | |
220 i, Smi::FromInt(deoptimization_states_[i]->translation_id_)); | |
221 data->SetArgumentsStackHeight(i, Smi::FromInt(0)); | 219 data->SetArgumentsStackHeight(i, Smi::FromInt(0)); |
222 data->SetPc(i, Smi::FromInt(-1)); | 220 data->SetPc(i, Smi::FromInt(-1)); |
223 } | 221 } |
224 | 222 |
225 // Populate the return address patcher entries. | 223 // Populate the return address patcher entries. |
226 for (int i = 0; i < patch_count; ++i) { | 224 for (int i = 0; i < patch_count; ++i) { |
227 LazyDeoptimizationEntry entry = lazy_deoptimization_entries_[i]; | 225 LazyDeoptimizationEntry entry = lazy_deoptimization_entries_[i]; |
228 DCHECK(entry.position_after_call() == entry.continuation()->pos() || | 226 DCHECK(entry.position_after_call() == entry.continuation()->pos() || |
229 IsNopForSmiCodeInlining(code_object, entry.position_after_call(), | 227 IsNopForSmiCodeInlining(code_object, entry.position_after_call(), |
230 entry.continuation()->pos())); | 228 entry.continuation()->pos())); |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
372 UNIMPLEMENTED(); | 370 UNIMPLEMENTED(); |
373 return false; | 371 return false; |
374 } | 372 } |
375 #endif | 373 #endif |
376 | 374 |
377 #endif // !V8_TURBOFAN_BACKEND | 375 #endif // !V8_TURBOFAN_BACKEND |
378 | 376 |
379 } // namespace compiler | 377 } // namespace compiler |
380 } // namespace internal | 378 } // namespace internal |
381 } // namespace v8 | 379 } // namespace v8 |
OLD | NEW |