OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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/log.h" | 5 #include "src/log.h" |
6 | 6 |
7 #include <cstdarg> | 7 #include <cstdarg> |
8 #include <sstream> | 8 #include <sstream> |
9 | 9 |
10 #include "src/bailout-reason.h" | 10 #include "src/bailout-reason.h" |
(...skipping 1731 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1742 } | 1742 } |
1743 | 1743 |
1744 | 1744 |
1745 void Logger::LogAccessorCallbacks() { | 1745 void Logger::LogAccessorCallbacks() { |
1746 Heap* heap = isolate_->heap(); | 1746 Heap* heap = isolate_->heap(); |
1747 heap->CollectAllGarbage(Heap::kMakeHeapIterableMask, | 1747 heap->CollectAllGarbage(Heap::kMakeHeapIterableMask, |
1748 "Logger::LogAccessorCallbacks"); | 1748 "Logger::LogAccessorCallbacks"); |
1749 HeapIterator iterator(heap); | 1749 HeapIterator iterator(heap); |
1750 DisallowHeapAllocation no_gc; | 1750 DisallowHeapAllocation no_gc; |
1751 for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) { | 1751 for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) { |
1752 if (!obj->IsExecutableAccessorInfo()) continue; | 1752 if (!obj->IsAccessorInfo()) continue; |
1753 ExecutableAccessorInfo* ai = ExecutableAccessorInfo::cast(obj); | 1753 AccessorInfo* ai = AccessorInfo::cast(obj); |
1754 if (!ai->name()->IsName()) continue; | 1754 if (!ai->name()->IsName()) continue; |
1755 Address getter_entry = v8::ToCData<Address>(ai->getter()); | 1755 Address getter_entry = v8::ToCData<Address>(ai->getter()); |
1756 Name* name = Name::cast(ai->name()); | 1756 Name* name = Name::cast(ai->name()); |
1757 if (getter_entry != 0) { | 1757 if (getter_entry != 0) { |
1758 PROFILE(isolate_, GetterCallbackEvent(name, getter_entry)); | 1758 PROFILE(isolate_, GetterCallbackEvent(name, getter_entry)); |
1759 } | 1759 } |
1760 Address setter_entry = v8::ToCData<Address>(ai->setter()); | 1760 Address setter_entry = v8::ToCData<Address>(ai->setter()); |
1761 if (setter_entry != 0) { | 1761 if (setter_entry != 0) { |
1762 PROFILE(isolate_, SetterCallbackEvent(name, setter_entry)); | 1762 PROFILE(isolate_, SetterCallbackEvent(name, setter_entry)); |
1763 } | 1763 } |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1913 removeCodeEventListener(jit_logger_); | 1913 removeCodeEventListener(jit_logger_); |
1914 delete jit_logger_; | 1914 delete jit_logger_; |
1915 jit_logger_ = NULL; | 1915 jit_logger_ = NULL; |
1916 } | 1916 } |
1917 | 1917 |
1918 return log_->Close(); | 1918 return log_->Close(); |
1919 } | 1919 } |
1920 | 1920 |
1921 } // namespace internal | 1921 } // namespace internal |
1922 } // namespace v8 | 1922 } // namespace v8 |
OLD | NEW |