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 #ifndef V8_FRAMES_H_ | 5 #ifndef V8_FRAMES_H_ |
6 #define V8_FRAMES_H_ | 6 #define V8_FRAMES_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/handles.h" | 9 #include "src/handles.h" |
10 #include "src/safepoint-table.h" | 10 #include "src/safepoint-table.h" |
(...skipping 899 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
910 return static_cast<JavaScriptFrame*>(frame); | 910 return static_cast<JavaScriptFrame*>(frame); |
911 } | 911 } |
912 | 912 |
913 static void PrintFunctionAndOffset(JSFunction* function, AbstractCode* code, | 913 static void PrintFunctionAndOffset(JSFunction* function, AbstractCode* code, |
914 int code_offset, FILE* file, | 914 int code_offset, FILE* file, |
915 bool print_line_number); | 915 bool print_line_number); |
916 | 916 |
917 static void PrintTop(Isolate* isolate, FILE* file, bool print_args, | 917 static void PrintTop(Isolate* isolate, FILE* file, bool print_args, |
918 bool print_line_number); | 918 bool print_line_number); |
919 | 919 |
| 920 static void CollectFunctionAndOffsetForICStats(JSFunction* function, |
| 921 AbstractCode* code, |
| 922 int code_offset); |
| 923 static void CollectTopFrameForICStats(Isolate* isolate); |
| 924 |
920 protected: | 925 protected: |
921 inline explicit JavaScriptFrame(StackFrameIteratorBase* iterator); | 926 inline explicit JavaScriptFrame(StackFrameIteratorBase* iterator); |
922 | 927 |
923 Address GetCallerStackPointer() const override; | 928 Address GetCallerStackPointer() const override; |
924 | 929 |
925 virtual int GetNumberOfIncomingArguments() const; | 930 virtual int GetNumberOfIncomingArguments() const; |
926 | 931 |
927 // Garbage collection support. Iterates over incoming arguments, | 932 // Garbage collection support. Iterates over incoming arguments, |
928 // receiver, and any callee-saved registers. | 933 // receiver, and any callee-saved registers. |
929 void IterateArguments(ObjectVisitor* v) const; | 934 void IterateArguments(ObjectVisitor* v) const; |
(...skipping 438 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1368 | 1373 |
1369 | 1374 |
1370 // Reads all frames on the current stack and copies them into the current | 1375 // Reads all frames on the current stack and copies them into the current |
1371 // zone memory. | 1376 // zone memory. |
1372 Vector<StackFrame*> CreateStackMap(Isolate* isolate, Zone* zone); | 1377 Vector<StackFrame*> CreateStackMap(Isolate* isolate, Zone* zone); |
1373 | 1378 |
1374 } // namespace internal | 1379 } // namespace internal |
1375 } // namespace v8 | 1380 } // namespace v8 |
1376 | 1381 |
1377 #endif // V8_FRAMES_H_ | 1382 #endif // V8_FRAMES_H_ |
OLD | NEW |