v8-profiler.h | v8-profiler.h | |||
---|---|---|---|---|
skipping to change at line 255 | skipping to change at line 255 | |||
enum Type { | enum Type { | |||
kHidden = 0, // Hidden node, may be filtered when shown to user. | kHidden = 0, // Hidden node, may be filtered when shown to user. | |||
kArray = 1, // An array of elements. | kArray = 1, // An array of elements. | |||
kString = 2, // A string. | kString = 2, // A string. | |||
kObject = 3, // A JS object (except for arrays and strings). | kObject = 3, // A JS object (except for arrays and strings). | |||
kCode = 4, // Compiled code. | kCode = 4, // Compiled code. | |||
kClosure = 5, // Function closure. | kClosure = 5, // Function closure. | |||
kRegExp = 6, // RegExp. | kRegExp = 6, // RegExp. | |||
kHeapNumber = 7, // Number stored in the heap. | kHeapNumber = 7, // Number stored in the heap. | |||
kNative = 8, // Native object (not from V8 heap). | kNative = 8, // Native object (not from V8 heap). | |||
kSynthetic = 9 // Synthetic object, usualy used for grouping | kSynthetic = 9, // Synthetic object, usualy used for grouping | |||
// snapshot items together. | // snapshot items together. | |||
kContext = 10 // Context | ||||
}; | }; | |||
/** Returns node type (see HeapGraphNode::Type). */ | /** Returns node type (see HeapGraphNode::Type). */ | |||
Type GetType() const; | Type GetType() const; | |||
/** | /** | |||
* Returns node name. Depending on node's type this can be the name | * Returns node name. Depending on node's type this can be the name | |||
* of the constructor (for objects), the name of the function (for | * of the constructor (for objects), the name of the function (for | |||
* closures), string value, or an empty string (for compiled code). | * closures), string value, or an empty string (for compiled code). | |||
*/ | */ | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
v8.h | v8.h | |||
---|---|---|---|---|
skipping to change at line 41 | skipping to change at line 41 | |||
* | * | |||
* This set of documents provides reference material generated from the | * This set of documents provides reference material generated from the | |||
* V8 header file, include/v8.h. | * V8 header file, include/v8.h. | |||
* | * | |||
* For other documentation see http://code.google.com/apis/v8/ | * For other documentation see http://code.google.com/apis/v8/ | |||
*/ | */ | |||
#ifndef V8_H_ | #ifndef V8_H_ | |||
#define V8_H_ | #define V8_H_ | |||
// TODO(dcarney): Remove once Latin-1 transitions in WebKit has stuck. | ||||
#define V8_ONE_BYTE_STRINGS_ENABLED 1 | ||||
#include "v8stdint.h" | #include "v8stdint.h" | |||
#ifdef _WIN32 | #ifdef _WIN32 | |||
// Setup for Windows DLL export/import. When building the V8 DLL the | // Setup for Windows DLL export/import. When building the V8 DLL the | |||
// BUILDING_V8_SHARED needs to be defined. When building a program which us es | // BUILDING_V8_SHARED needs to be defined. When building a program which us es | |||
// the V8 DLL USING_V8_SHARED needs to be defined. When either building the V8 | // the V8 DLL USING_V8_SHARED needs to be defined. When either building the V8 | |||
// static library or building a program which uses the V8 static library ne ither | // static library or building a program which uses the V8 static library ne ither | |||
// BUILDING_V8_SHARED nor USING_V8_SHARED should be defined. | // BUILDING_V8_SHARED nor USING_V8_SHARED should be defined. | |||
#if defined(BUILDING_V8_SHARED) && defined(USING_V8_SHARED) | #if defined(BUILDING_V8_SHARED) && defined(USING_V8_SHARED) | |||
skipping to change at line 515 | skipping to change at line 512 | |||
* place in the new handle scope until it is deleted. After that, | * place in the new handle scope until it is deleted. After that, | |||
* new handles will again be allocated in the original handle scope. | * new handles will again be allocated in the original handle scope. | |||
* | * | |||
* After the handle scope of a local handle has been deleted the | * After the handle scope of a local handle has been deleted the | |||
* garbage collector will no longer track the object stored in the | * garbage collector will no longer track the object stored in the | |||
* handle and may deallocate it. The behavior of accessing a handle | * handle and may deallocate it. The behavior of accessing a handle | |||
* for which the handle scope has been deleted is undefined. | * for which the handle scope has been deleted is undefined. | |||
*/ | */ | |||
class V8EXPORT HandleScope { | class V8EXPORT HandleScope { | |||
public: | public: | |||
// TODO(svenpanne) Deprecate me when Chrome is fixed! | ||||
HandleScope(); | HandleScope(); | |||
HandleScope(Isolate* isolate); | ||||
~HandleScope(); | ~HandleScope(); | |||
/** | /** | |||
* Closes the handle scope and returns the value as a handle in the | * Closes the handle scope and returns the value as a handle in the | |||
* previous scope, which is the new current scope after the call. | * previous scope, which is the new current scope after the call. | |||
*/ | */ | |||
template <class T> Local<T> Close(Handle<T> value); | template <class T> Local<T> Close(Handle<T> value); | |||
/** | /** | |||
* Counts the number of allocated handles. | * Counts the number of allocated handles. | |||
skipping to change at line 560 | skipping to change at line 560 | |||
public: | public: | |||
internal::Object** next; | internal::Object** next; | |||
internal::Object** limit; | internal::Object** limit; | |||
int level; | int level; | |||
V8_INLINE(void Initialize()) { | V8_INLINE(void Initialize()) { | |||
next = limit = NULL; | next = limit = NULL; | |||
level = 0; | level = 0; | |||
} | } | |||
}; | }; | |||
void Initialize(Isolate* isolate); | ||||
void Leave(); | void Leave(); | |||
internal::Isolate* isolate_; | internal::Isolate* isolate_; | |||
internal::Object** prev_next_; | internal::Object** prev_next_; | |||
internal::Object** prev_limit_; | internal::Object** prev_limit_; | |||
// Allow for the active closing of HandleScopes which allows to pass a ha ndle | // Allow for the active closing of HandleScopes which allows to pass a ha ndle | |||
// from the HandleScope being closed to the next top most HandleScope. | // from the HandleScope being closed to the next top most HandleScope. | |||
bool is_closed_; | bool is_closed_; | |||
internal::Object** RawClose(internal::Object** value); | internal::Object** RawClose(internal::Object** value); | |||
skipping to change at line 2940 | skipping to change at line 2941 | |||
* Retrieve embedder-specific data from the isolate. | * Retrieve embedder-specific data from the isolate. | |||
* Returns NULL if SetData has never been called. | * Returns NULL if SetData has never been called. | |||
*/ | */ | |||
V8_INLINE(void* GetData()); | V8_INLINE(void* GetData()); | |||
/** | /** | |||
* Get statistics about the heap memory usage. | * Get statistics about the heap memory usage. | |||
*/ | */ | |||
void GetHeapStatistics(HeapStatistics* heap_statistics); | void GetHeapStatistics(HeapStatistics* heap_statistics); | |||
/** | ||||
* Adjusts the amount of registered external memory. Used to give V8 an | ||||
* indication of the amount of externally allocated memory that is kept a | ||||
live | ||||
* by JavaScript objects. V8 uses this to decide when to perform global | ||||
* garbage collections. Registering externally allocated memory will trig | ||||
ger | ||||
* global garbage collections more often than it would otherwise in an at | ||||
tempt | ||||
* to garbage collect the JavaScript objects that keep the externally | ||||
* allocated memory alive. | ||||
* | ||||
* \param change_in_bytes the change in externally allocated memory that | ||||
is | ||||
* kept alive by JavaScript objects. | ||||
* \returns the adjusted value. | ||||
*/ | ||||
intptr_t AdjustAmountOfExternalAllocatedMemory(intptr_t change_in_bytes); | ||||
private: | private: | |||
Isolate(); | Isolate(); | |||
Isolate(const Isolate&); | Isolate(const Isolate&); | |||
~Isolate(); | ~Isolate(); | |||
Isolate& operator=(const Isolate&); | Isolate& operator=(const Isolate&); | |||
void* operator new(size_t size); | void* operator new(size_t size); | |||
void operator delete(void*, size_t); | void operator delete(void*, size_t); | |||
}; | }; | |||
class V8EXPORT StartupData { | class V8EXPORT StartupData { | |||
skipping to change at line 3410 | skipping to change at line 3426 | |||
* are not guaranteed to live past each call. The \p event_handler mu st | * are not guaranteed to live past each call. The \p event_handler mu st | |||
* copy strings and other parameters it needs to keep around. | * copy strings and other parameters it needs to keep around. | |||
* \note the set of events declared in JitCodeEvent::EventType is expecte d to | * \note the set of events declared in JitCodeEvent::EventType is expecte d to | |||
* grow over time, and the JitCodeEvent structure is expected to accr ue | * grow over time, and the JitCodeEvent structure is expected to accr ue | |||
* new members. The \p event_handler function must ignore event codes | * new members. The \p event_handler function must ignore event codes | |||
* it does not recognize to maintain future compatibility. | * it does not recognize to maintain future compatibility. | |||
*/ | */ | |||
static void SetJitCodeEventHandler(JitCodeEventOptions options, | static void SetJitCodeEventHandler(JitCodeEventOptions options, | |||
JitCodeEventHandler event_handler); | JitCodeEventHandler event_handler); | |||
/** | // TODO(svenpanne) Really deprecate me when Chrome is fixed. | |||
* Adjusts the amount of registered external memory. Used to give | /** Deprecated. Use Isolate::AdjustAmountOfExternalAllocatedMemory instea | |||
* V8 an indication of the amount of externally allocated memory | d. */ | |||
* that is kept alive by JavaScript objects. V8 uses this to decide | ||||
* when to perform global garbage collections. Registering | ||||
* externally allocated memory will trigger global garbage | ||||
* collections more often than otherwise in an attempt to garbage | ||||
* collect the JavaScript objects keeping the externally allocated | ||||
* memory alive. | ||||
* | ||||
* \param change_in_bytes the change in externally allocated memory | ||||
* that is kept alive by JavaScript objects. | ||||
* \returns the adjusted value. | ||||
*/ | ||||
static intptr_t AdjustAmountOfExternalAllocatedMemory( | static intptr_t AdjustAmountOfExternalAllocatedMemory( | |||
intptr_t change_in_bytes); | intptr_t change_in_bytes); | |||
/** | /** | |||
* Suspends recording of tick samples in the profiler. | * Suspends recording of tick samples in the profiler. | |||
* When the V8 profiling mode is enabled (usually via command line | * When the V8 profiling mode is enabled (usually via command line | |||
* switches) this function suspends recording of tick samples. | * switches) this function suspends recording of tick samples. | |||
* Profiling ticks are discarded until ResumeProfiler() is called. | * Profiling ticks are discarded until ResumeProfiler() is called. | |||
* | * | |||
* See also the --prof and --prof_auto command line switches to | * See also the --prof and --prof_auto command line switches to | |||
End of changes. 6 change blocks. | ||||
17 lines changed or deleted | 26 lines changed or added | |||