Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(288)

Side by Side Diff: include/v8-profiler.h

Issue 39973003: Merge bleeding_edge. (Closed) Base URL: https://v8.googlecode.com/svn/branches/experimental/parser
Patch Set: again Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « include/v8.h ('k') | src/OWNERS » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2010 the V8 project authors. All rights reserved. 1 // Copyright 2010 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 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 50
51 /** Returns resource name for script from where the function originates. */ 51 /** Returns resource name for script from where the function originates. */
52 Handle<String> GetScriptResourceName() const; 52 Handle<String> GetScriptResourceName() const;
53 53
54 /** 54 /**
55 * Returns the number, 1-based, of the line where the function originates. 55 * Returns the number, 1-based, of the line where the function originates.
56 * kNoLineNumberInfo if no line number information is available. 56 * kNoLineNumberInfo if no line number information is available.
57 */ 57 */
58 int GetLineNumber() const; 58 int GetLineNumber() const;
59 59
60 /**
61 * Returns 1-based number of the column where the function originates.
62 * kNoColumnNumberInfo if no column number information is available.
63 */
64 int GetColumnNumber() const;
65
60 /** Returns bailout reason for the function 66 /** Returns bailout reason for the function
61 * if the optimization was disabled for it. 67 * if the optimization was disabled for it.
62 */ 68 */
63 const char* GetBailoutReason() const; 69 const char* GetBailoutReason() const;
64 70
65 /** 71 /**
66 * Returns the count of samples where the function was currently executing. 72 * Returns the count of samples where the function was currently executing.
67 */ 73 */
68 unsigned GetHitCount() const; 74 unsigned GetHitCount() const;
69 75
70 /** Returns function entry UID. */ 76 /** Returns function entry UID. */
71 unsigned GetCallUid() const; 77 unsigned GetCallUid() const;
72 78
73 /** Returns id of the node. The id is unique within the tree */ 79 /** Returns id of the node. The id is unique within the tree */
74 unsigned GetNodeId() const; 80 unsigned GetNodeId() const;
75 81
76 /** Returns child nodes count of the node. */ 82 /** Returns child nodes count of the node. */
77 int GetChildrenCount() const; 83 int GetChildrenCount() const;
78 84
79 /** Retrieves a child node by index. */ 85 /** Retrieves a child node by index. */
80 const CpuProfileNode* GetChild(int index) const; 86 const CpuProfileNode* GetChild(int index) const;
81 87
82 static const int kNoLineNumberInfo = Message::kNoLineNumberInfo; 88 static const int kNoLineNumberInfo = Message::kNoLineNumberInfo;
89 static const int kNoColumnNumberInfo = Message::kNoColumnInfo;
83 }; 90 };
84 91
85 92
86 /** 93 /**
87 * CpuProfile contains a CPU profile in a form of top-down call tree 94 * CpuProfile contains a CPU profile in a form of top-down call tree
88 * (from main() down to functions that do all the work). 95 * (from main() down to functions that do all the work).
89 */ 96 */
90 class V8_EXPORT CpuProfile { 97 class V8_EXPORT CpuProfile {
91 public: 98 public:
92 /** Returns CPU profile UID (assigned by the profiler.) */ 99 /** Returns CPU profile UID (assigned by the profiler.) */
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
461 static const uint16_t kPersistentHandleNoClassId = 0; 468 static const uint16_t kPersistentHandleNoClassId = 0;
462 469
463 /** Returns memory used for profiler internal data and snapshots. */ 470 /** Returns memory used for profiler internal data and snapshots. */
464 size_t GetProfilerMemorySize(); 471 size_t GetProfilerMemorySize();
465 472
466 /** 473 /**
467 * Sets a RetainedObjectInfo for an object group (see V8::SetObjectGroupId). 474 * Sets a RetainedObjectInfo for an object group (see V8::SetObjectGroupId).
468 */ 475 */
469 void SetRetainedObjectInfo(UniqueId id, RetainedObjectInfo* info); 476 void SetRetainedObjectInfo(UniqueId id, RetainedObjectInfo* info);
470 477
478 /**
479 * Starts recording JS allocations immediately as they arrive and tracking of
480 * heap objects population statistics.
481 */
482 void StartRecordingHeapAllocations();
483
484 /**
485 * Stops recording JS allocations and tracking of heap objects population
486 * statistics, cleans all collected heap objects population statistics data.
487 */
488 void StopRecordingHeapAllocations();
489
490
471 private: 491 private:
472 HeapProfiler(); 492 HeapProfiler();
473 ~HeapProfiler(); 493 ~HeapProfiler();
474 HeapProfiler(const HeapProfiler&); 494 HeapProfiler(const HeapProfiler&);
475 HeapProfiler& operator=(const HeapProfiler&); 495 HeapProfiler& operator=(const HeapProfiler&);
476 }; 496 };
477 497
478 498
479 /** 499 /**
480 * Interface for providing information about embedder's objects 500 * Interface for providing information about embedder's objects
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
560 uint32_t index; // Index of the time interval that was changed. 580 uint32_t index; // Index of the time interval that was changed.
561 uint32_t count; // New value of count field for the interval with this index. 581 uint32_t count; // New value of count field for the interval with this index.
562 uint32_t size; // New value of size field for the interval with this index. 582 uint32_t size; // New value of size field for the interval with this index.
563 }; 583 };
564 584
565 585
566 } // namespace v8 586 } // namespace v8
567 587
568 588
569 #endif // V8_V8_PROFILER_H_ 589 #endif // V8_V8_PROFILER_H_
OLDNEW
« no previous file with comments | « include/v8.h ('k') | src/OWNERS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698