| 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/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/accessors.h" | 7 #include "src/accessors.h" |
| 8 #include "src/codegen.h" | 8 #include "src/codegen.h" |
| 9 #include "src/deoptimizer.h" | 9 #include "src/deoptimizer.h" |
| 10 #include "src/disasm.h" | 10 #include "src/disasm.h" |
| (...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 360 if (topmost_optimized_code == NULL) { | 360 if (topmost_optimized_code == NULL) { |
| 361 topmost_optimized_code = code; | 361 topmost_optimized_code = code; |
| 362 safe_to_deopt_topmost_optimized_code = safe_to_deopt; | 362 safe_to_deopt_topmost_optimized_code = safe_to_deopt; |
| 363 } | 363 } |
| 364 } | 364 } |
| 365 } | 365 } |
| 366 #endif | 366 #endif |
| 367 | 367 |
| 368 // Move marked code from the optimized code list to the deoptimized | 368 // Move marked code from the optimized code list to the deoptimized |
| 369 // code list, collecting them into a ZoneList. | 369 // code list, collecting them into a ZoneList. |
| 370 Zone zone(isolate); | 370 Zone zone; |
| 371 ZoneList<Code*> codes(10, &zone); | 371 ZoneList<Code*> codes(10, &zone); |
| 372 | 372 |
| 373 // Walk over all optimized code objects in this native context. | 373 // Walk over all optimized code objects in this native context. |
| 374 Code* prev = NULL; | 374 Code* prev = NULL; |
| 375 Object* element = context->OptimizedCodeListHead(); | 375 Object* element = context->OptimizedCodeListHead(); |
| 376 while (!element->IsUndefined()) { | 376 while (!element->IsUndefined()) { |
| 377 Code* code = Code::cast(element); | 377 Code* code = Code::cast(element); |
| 378 CHECK_EQ(code->kind(), Code::OPTIMIZED_FUNCTION); | 378 CHECK_EQ(code->kind(), Code::OPTIMIZED_FUNCTION); |
| 379 Object* next = code->next_code_link(); | 379 Object* next = code->next_code_link(); |
| 380 | 380 |
| (...skipping 3241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3622 | 3622 |
| 3623 | 3623 |
| 3624 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { | 3624 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { |
| 3625 v->VisitPointer(bit_cast<Object**>(&function_)); | 3625 v->VisitPointer(bit_cast<Object**>(&function_)); |
| 3626 v->VisitPointer(&context_); | 3626 v->VisitPointer(&context_); |
| 3627 v->VisitPointers(parameters_, parameters_ + parameters_count_); | 3627 v->VisitPointers(parameters_, parameters_ + parameters_count_); |
| 3628 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); | 3628 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); |
| 3629 } | 3629 } |
| 3630 | 3630 |
| 3631 } } // namespace v8::internal | 3631 } } // namespace v8::internal |
| OLD | NEW |