OLD | NEW |
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/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/base/atomicops.h" | 7 #include "src/base/atomicops.h" |
8 #include "src/code-stubs.h" | 8 #include "src/code-stubs.h" |
9 #include "src/compilation-cache.h" | 9 #include "src/compilation-cache.h" |
10 #include "src/cpu-profiler.h" | 10 #include "src/cpu-profiler.h" |
(...skipping 2706 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2717 Object* head = entries->object_at(i); | 2717 Object* head = entries->object_at(i); |
2718 ClearDependentICList(head); | 2718 ClearDependentICList(head); |
2719 } | 2719 } |
2720 g = DependentCode::kWeakCodeGroup; | 2720 g = DependentCode::kWeakCodeGroup; |
2721 for (int i = starts.at(g); i < starts.at(g + 1); i++) { | 2721 for (int i = starts.at(g); i < starts.at(g + 1); i++) { |
2722 // If the entry is compilation info then the map must be alive, | 2722 // If the entry is compilation info then the map must be alive, |
2723 // and ClearDependentCode shouldn't be called. | 2723 // and ClearDependentCode shouldn't be called. |
2724 DCHECK(entries->is_code_at(i)); | 2724 DCHECK(entries->is_code_at(i)); |
2725 Code* code = entries->code_at(i); | 2725 Code* code = entries->code_at(i); |
2726 if (IsMarked(code) && !code->marked_for_deoptimization()) { | 2726 if (IsMarked(code) && !code->marked_for_deoptimization()) { |
2727 code->set_marked_for_deoptimization(true); | 2727 DependentCode::SetMarkedForDeoptimization( |
| 2728 code, static_cast<DependentCode::DependencyGroup>(g)); |
2728 code->InvalidateEmbeddedObjects(); | 2729 code->InvalidateEmbeddedObjects(); |
2729 have_code_to_deoptimize_ = true; | 2730 have_code_to_deoptimize_ = true; |
2730 } | 2731 } |
2731 } | 2732 } |
2732 for (int i = 0; i < number_of_entries; i++) { | 2733 for (int i = 0; i < number_of_entries; i++) { |
2733 entries->clear_at(i); | 2734 entries->clear_at(i); |
2734 } | 2735 } |
2735 } | 2736 } |
2736 | 2737 |
2737 | 2738 |
(...skipping 2039 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4777 SlotsBuffer* buffer = *buffer_address; | 4778 SlotsBuffer* buffer = *buffer_address; |
4778 while (buffer != NULL) { | 4779 while (buffer != NULL) { |
4779 SlotsBuffer* next_buffer = buffer->next(); | 4780 SlotsBuffer* next_buffer = buffer->next(); |
4780 DeallocateBuffer(buffer); | 4781 DeallocateBuffer(buffer); |
4781 buffer = next_buffer; | 4782 buffer = next_buffer; |
4782 } | 4783 } |
4783 *buffer_address = NULL; | 4784 *buffer_address = NULL; |
4784 } | 4785 } |
4785 } | 4786 } |
4786 } // namespace v8::internal | 4787 } // namespace v8::internal |
OLD | NEW |