OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "vm/isolate_reload.h" | 5 #include "vm/isolate_reload.h" |
6 | 6 |
7 #include "vm/become.h" | 7 #include "vm/become.h" |
8 #include "vm/bit_vector.h" | 8 #include "vm/bit_vector.h" |
9 #include "vm/code_generator.h" | 9 #include "vm/code_generator.h" |
10 #include "vm/compiler.h" | 10 #include "vm/compiler.h" |
(...skipping 1578 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1589 zone_(zone) {} | 1589 zone_(zone) {} |
1590 | 1590 |
1591 virtual void VisitObject(RawObject* obj) { | 1591 virtual void VisitObject(RawObject* obj) { |
1592 if (obj->IsPseudoObject()) { | 1592 if (obj->IsPseudoObject()) { |
1593 // Cannot even be wrapped in handles. | 1593 // Cannot even be wrapped in handles. |
1594 return; | 1594 return; |
1595 } | 1595 } |
1596 handle_ = obj; | 1596 handle_ = obj; |
1597 if (handle_.IsFunction()) { | 1597 if (handle_.IsFunction()) { |
1598 const Function& func = Function::Cast(handle_); | 1598 const Function& func = Function::Cast(handle_); |
1599 if (func.IsSignatureFunction()) { | |
1600 return; | |
1601 } | |
1602 | 1599 |
1603 // Switch to unoptimized code or the lazy compilation stub. | 1600 // Switch to unoptimized code or the lazy compilation stub. |
1604 func.SwitchToLazyCompiledUnoptimizedCode(); | 1601 func.SwitchToLazyCompiledUnoptimizedCode(); |
1605 | 1602 |
1606 // Grab the current code. | 1603 // Grab the current code. |
1607 code_ = func.CurrentCode(); | 1604 code_ = func.CurrentCode(); |
1608 ASSERT(!code_.IsNull()); | 1605 ASSERT(!code_.IsNull()); |
1609 const bool clear_code = IsFromDirtyLibrary(func); | 1606 const bool clear_code = IsFromDirtyLibrary(func); |
1610 const bool stub_code = code_.IsStubCode(); | 1607 const bool stub_code = code_.IsStubCode(); |
1611 | 1608 |
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1886 ASSERT(!super_cls.IsNull()); | 1883 ASSERT(!super_cls.IsNull()); |
1887 super_cls.AddDirectSubclass(cls); | 1884 super_cls.AddDirectSubclass(cls); |
1888 } | 1885 } |
1889 } | 1886 } |
1890 } | 1887 } |
1891 } | 1888 } |
1892 | 1889 |
1893 #endif // !PRODUCT | 1890 #endif // !PRODUCT |
1894 | 1891 |
1895 } // namespace dart | 1892 } // namespace dart |
OLD | NEW |