49 FunctionLiteral* lit,
Zone* zone);
197 virtual bool Equals(
int index1,
int index2) = 0;
208 virtual void AddChunk(
int pos1,
int pos2,
int len1,
int len2) = 0;
216 Output* result_writer);
234 JSArray* array = JSArray::cast(
object);
236 return S(array_handle);
247 return array_->GetIsolate();
353 if (!element->IsJSValue())
return false;
virtual void AddChunk(int pos1, int pos2, int len1, int len2)=0
static void CalculateDifference(Input *input, Output *result_writer)
static const int kParamNumOffset_
static const int kParentIndexOffset_
static const int kSlotNumOffset_
static const int kFunctionScopeInfoOffset_
static const int kSharedFunctionInfoOffset_
Handle< Object > GetCodeScopeInfo()
static const int kFunctionNameOffset_
static const int kCodeOffset_
static const int kStartPositionOffset_
void SetInitialProperties(Handle< String > name, int start_position, int end_position, int param_num, int literal_count, int slot_count, int parent_index)
void SetSharedFunctionInfo(Handle< SharedFunctionInfo > info)
static const int kCodeScopeInfoOffset_
static const int kLiteralNumOffset_
void SetFunctionScopeInfo(Handle< Object > scope_info_array)
Handle< TypeFeedbackVector > GetFeedbackVector()
void SetFunctionCode(Handle< Code > function_code, Handle< HeapObject > code_scope_info)
static const int kEndPositionOffset_
Handle< Code > GetFunctionCode()
FunctionInfoWrapper(Handle< JSArray > array)
static Handle< T > cast(Handle< S > that)
static S cast(Object *object)
void SetField(int field_position, Handle< Object > value)
int GetSmiValueField(int field_position)
JSArrayBasedStruct(Handle< JSArray > array)
Isolate * isolate() const
static S Create(Isolate *isolate)
void SetSmiValueField(int field_position, int value)
Handle< JSArray > GetJSArray()
Handle< Object > GetField(int field_position)
static MUST_USE_RESULT MaybeHandle< Object > SetElement(Handle< JSObject > object, uint32_t index, Handle< Object > value, PropertyAttributes attributes, StrictMode strict_mode, bool check_prototype=true, SetPropertyMode set_mode=SET_PROPERTY)
LiveEditFunctionTracker(Isolate *isolate, FunctionLiteral *fun)
void RecordRootFunctionInfo(Handle< Code > code)
static bool IsActive(Isolate *isolate)
void RecordFunctionInfo(Handle< SharedFunctionInfo > info, FunctionLiteral *lit, Zone *zone)
~LiveEditFunctionTracker()
static const int kFramePaddingValue
static const bool kFrameDropperSupported
FunctionPatchabilityStatus
@ FUNCTION_REPLACED_ON_ACTIVE_STACK
@ FUNCTION_BLOCKED_UNDER_NATIVE_CODE
@ FUNCTION_AVAILABLE_FOR_PATCH
@ FUNCTION_BLOCKED_UNDER_GENERATOR
@ FUNCTION_BLOCKED_ON_OTHER_STACK
@ FUNCTION_BLOCKED_ACTIVE_GENERATOR
@ FUNCTION_BLOCKED_ON_ACTIVE_STACK
static const char * RestartFrame(JavaScriptFrame *frame)
static bool FindActiveGenerators(Handle< FixedArray > shared_info_array, Handle< FixedArray > result, int len)
static Handle< JSArray > CheckAndDropActivations(Handle< JSArray > shared_info_array, bool do_drop)
static MUST_USE_RESULT MaybeHandle< JSArray > GatherCompileInfo(Handle< Script > script, Handle< String > source)
static void ReplaceRefToNestedFunction(Handle< JSValue > parent_function_shared, Handle< JSValue > orig_function_shared, Handle< JSValue > subst_function_shared)
static void ReplaceFunctionCode(Handle< JSArray > new_compile_info_array, Handle< JSArray > shared_info_array)
@ FRAME_DROPPED_IN_RETURN_CALL
@ FRAME_DROPPED_IN_IC_CALL
@ FRAME_DROPPED_IN_DEBUG_SLOT_CALL
@ FRAME_DROPPED_IN_DIRECT_CALL
static bool SetAfterBreakTarget(Debug *debug)
static Handle< Object > ChangeScriptSource(Handle< Script > original_script, Handle< String > new_source, Handle< Object > old_script_name)
static void InitializeThreadLocal(Debug *debug)
static void WrapSharedFunctionInfos(Handle< JSArray > array)
static void PatchFunctionPositions(Handle< JSArray > shared_info_array, Handle< JSArray > position_change_array)
static void FunctionSourceUpdated(Handle< JSArray > shared_info_array)
static const int kFramePaddingInitialSize
static Handle< JSArray > CompareStrings(Handle< String > s1, Handle< String > s2)
static void SetFunctionScript(Handle< JSValue > function_wrapper, Handle< Object > script_handle)
static const int kFrameDropperFrameSize
Defines layout of a stack frame that supports padding.
static MUST_USE_RESULT MaybeHandle< Object > GetElement(Isolate *isolate, Handle< Object > object, uint32_t index)
SharedInfoWrapper(Handle< JSArray > array)
static bool IsInstance(Handle< JSArray > array)
Handle< SharedFunctionInfo > GetInfo()
static const int kEndPositionOffset_
static const int kFunctionNameOffset_
static const int kSharedInfoOffset_
void SetProperties(Handle< String > name, int start_position, int end_position, Handle< SharedFunctionInfo > info)
static const int kStartPositionOffset_
static Smi * FromInt(int value)
enable harmony numeric enable harmony object literal extensions Optimize object Array DOM strings and string trace pretenuring decisions of HAllocate instructions Enables optimizations which favor memory size over execution speed maximum source size in bytes considered for a single inlining maximum cumulative number of AST nodes considered for inlining trace the tracking of allocation sites deoptimize every n garbage collections perform array bounds checks elimination analyze liveness of environment slots and zap dead values flushes the cache of optimized code for closures on every GC allow uint32 values on optimize frames if they are used only in safe operations track concurrent recompilation artificial compilation delay in ms do not emit check maps for constant values that have a leaf deoptimize the optimized code if the layout of the maps changes enable context specialization in TurboFan execution budget before interrupt is triggered max percentage of megamorphic generic ICs to allow optimization enable use of SAHF instruction if enable use of VFP3 instructions if available enable use of NEON instructions if enable use of SDIV and UDIV instructions if enable use of MLS instructions if enable loading bit constant by means of movw movt instruction enable unaligned accesses for enable use of d16 d31 registers on ARM this requires VFP3 force all emitted branches to be in long enable alignment of csp to bytes on platforms which prefer the register to always be expose gc extension under the specified name show built in functions in stack traces use random jit cookie to mask large constants minimum length for automatic enable preparsing CPU profiler sampling interval in microseconds trace out of bounds accesses to external arrays default size of stack region v8 is allowed to maximum length of function source code printed in a stack trace min size of a semi the new space consists of two semi spaces print one trace line following each garbage collection do not print trace line after scavenger collection print cumulative GC statistics in name
Debugger support for the V8 JavaScript engine.