OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 if (eager_deoptimization_entry_code_ != NULL) { | 55 if (eager_deoptimization_entry_code_ != NULL) { |
56 Isolate::Current()->memory_allocator()->Free( | 56 Isolate::Current()->memory_allocator()->Free( |
57 eager_deoptimization_entry_code_); | 57 eager_deoptimization_entry_code_); |
58 eager_deoptimization_entry_code_ = NULL; | 58 eager_deoptimization_entry_code_ = NULL; |
59 } | 59 } |
60 if (lazy_deoptimization_entry_code_ != NULL) { | 60 if (lazy_deoptimization_entry_code_ != NULL) { |
61 Isolate::Current()->memory_allocator()->Free( | 61 Isolate::Current()->memory_allocator()->Free( |
62 lazy_deoptimization_entry_code_); | 62 lazy_deoptimization_entry_code_); |
63 lazy_deoptimization_entry_code_ = NULL; | 63 lazy_deoptimization_entry_code_ = NULL; |
64 } | 64 } |
| 65 DeoptimizingCodeListNode* current = deoptimizing_code_list_; |
| 66 while (current != NULL) { |
| 67 DeoptimizingCodeListNode* prev = current; |
| 68 current = current->next(); |
| 69 delete prev; |
| 70 } |
| 71 deoptimizing_code_list_ = NULL; |
65 } | 72 } |
66 | 73 |
67 | 74 |
68 #ifdef ENABLE_DEBUGGER_SUPPORT | 75 #ifdef ENABLE_DEBUGGER_SUPPORT |
69 void DeoptimizerData::Iterate(ObjectVisitor* v) { | 76 void DeoptimizerData::Iterate(ObjectVisitor* v) { |
70 if (deoptimized_frame_info_ != NULL) { | 77 if (deoptimized_frame_info_ != NULL) { |
71 deoptimized_frame_info_->Iterate(v); | 78 deoptimized_frame_info_->Iterate(v); |
72 } | 79 } |
73 } | 80 } |
74 #endif | 81 #endif |
(...skipping 1914 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1989 | 1996 |
1990 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { | 1997 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { |
1991 v->VisitPointer(BitCast<Object**>(&function_)); | 1998 v->VisitPointer(BitCast<Object**>(&function_)); |
1992 v->VisitPointers(parameters_, parameters_ + parameters_count_); | 1999 v->VisitPointers(parameters_, parameters_ + parameters_count_); |
1993 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); | 2000 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); |
1994 } | 2001 } |
1995 | 2002 |
1996 #endif // ENABLE_DEBUGGER_SUPPORT | 2003 #endif // ENABLE_DEBUGGER_SUPPORT |
1997 | 2004 |
1998 } } // namespace v8::internal | 2005 } } // namespace v8::internal |
OLD | NEW |