therubyracer 0.7.4 → 0.7.5
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of therubyracer might be problematic. Click here for more details.
- data/History.txt +11 -0
- data/Rakefile +1 -1
- data/ext/v8/extconf.rb +0 -18
- data/ext/v8/rr.cpp +2 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/AUTHORS +1 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/ChangeLog +239 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/LICENSE +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/SConstruct +29 -17
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/include/v8-debug.h +61 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/include/v8-profiler.h +182 -5
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/include/v8.h +458 -257
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/SConscript +2 -5
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/accessors.cc +2 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/accessors.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/allocation.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/allocation.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/api.cc +574 -30
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/api.h +12 -10
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/apinatives.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/apiutils.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arguments.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/assembler-arm-inl.h +38 -15
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/assembler-arm.cc +646 -101
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/assembler-arm.h +174 -15
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/builtins-arm.cc +56 -47
- data/ext/v8/upstream/2.3.3/src/arm/codegen-arm-inl.h +48 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/codegen-arm.cc +2957 -1448
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/codegen-arm.h +230 -74
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/constants-arm.cc +25 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/constants-arm.h +16 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/cpu-arm.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/debug-arm.cc +76 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/disasm-arm.cc +168 -20
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/fast-codegen-arm.cc +5 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/frames-arm.cc +4 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/frames-arm.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/full-codegen-arm.cc +1558 -248
- data/ext/v8/upstream/2.3.3/src/arm/ic-arm.cc +2258 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/jump-target-arm.cc +55 -103
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/macro-assembler-arm.cc +358 -185
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/macro-assembler-arm.h +136 -41
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/regexp-macro-assembler-arm.cc +26 -5
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/regexp-macro-assembler-arm.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/register-allocator-arm-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/register-allocator-arm.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/register-allocator-arm.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/simulator-arm.cc +203 -22
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/simulator-arm.h +7 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/stub-cache-arm.cc +531 -324
- data/ext/v8/upstream/2.3.3/src/arm/virtual-frame-arm-inl.h +59 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/virtual-frame-arm.cc +247 -81
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/arm/virtual-frame-arm.h +99 -83
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/array.js +2 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/assembler.cc +6 -13
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/assembler.h +36 -10
- data/ext/v8/upstream/2.3.3/src/ast-inl.h +81 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ast.cc +14 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ast.h +20 -35
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/bootstrapper.cc +32 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/bootstrapper.h +0 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/builtins.cc +50 -33
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/builtins.h +2 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/bytecodes-irregexp.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/cached-powers.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/char-predicates-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/char-predicates.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/checks.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/checks.h +8 -6
- data/ext/v8/upstream/2.3.3/src/circular-queue-inl.h +53 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/circular-queue.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/circular-queue.h +0 -26
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/code-stubs.cc +2 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/code-stubs.h +1 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/code.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/codegen-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/codegen.cc +44 -13
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/codegen.h +310 -31
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/compilation-cache.cc +28 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/compilation-cache.h +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/compiler.cc +45 -14
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/compiler.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/contexts.cc +11 -11
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/contexts.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/conversions-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/conversions.cc +25 -11
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/conversions.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/counters.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/counters.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/cpu-profiler-inl.h +2 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/cpu-profiler.cc +68 -24
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/cpu-profiler.h +19 -11
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/cpu.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8-debug.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8-debug.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8-posix.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8-readline.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8-windows.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/d8.js +55 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/data-flow.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/data-flow.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/date.js +68 -137
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/dateparser-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/dateparser.cc +2 -8
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/dateparser.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/debug-agent.cc +3 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/debug-agent.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/debug-debugger.js +81 -23
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/debug.cc +275 -81
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/debug.h +85 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/disasm.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/disassembler.cc +1 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/disassembler.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/diy-fp.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/diy-fp.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/double.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/dtoa-config.c +0 -0
- data/ext/v8/upstream/2.3.3/src/dtoa.cc +77 -0
- data/ext/v8/upstream/2.3.3/src/dtoa.h +81 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/execution.cc +111 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/execution.h +12 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/factory.cc +25 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/factory.h +16 -9
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/fast-codegen.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/fast-codegen.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/fast-dtoa.cc +2 -9
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/fast-dtoa.h +1 -2
- data/ext/v8/upstream/2.3.3/src/fixed-dtoa.cc +405 -0
- data/ext/v8/upstream/{2.1.10/src/jump-target-light.cc → 2.3.3/src/fixed-dtoa.h} +22 -53
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/flag-definitions.h +14 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/flags.cc +5 -9
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/flags.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/flow-graph.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/flow-graph.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/frame-element.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/frame-element.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/frames-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/frames.cc +5 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/frames.h +1 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/full-codegen.cc +387 -20
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/full-codegen.h +102 -5
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/func-name-inferrer.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/func-name-inferrer.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/global-handles.cc +8 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/global-handles.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/globals.h +44 -7
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/handles-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/handles.cc +19 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/handles.h +8 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/hashmap.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/hashmap.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/heap-inl.h +56 -14
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/heap-profiler.cc +85 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/heap-profiler.h +45 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/heap.cc +994 -396
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/heap.h +220 -65
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/assembler-ia32-inl.h +41 -12
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/assembler-ia32.cc +94 -24
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/assembler-ia32.h +32 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/builtins-ia32.cc +42 -30
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/codegen-ia32-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/codegen-ia32.cc +1758 -916
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/codegen-ia32.h +67 -74
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/cpu-ia32.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/debug-ia32.cc +46 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/disasm-ia32.cc +37 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/fast-codegen-ia32.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/fast-codegen-ia32.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/frames-ia32.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/frames-ia32.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/full-codegen-ia32.cc +1465 -198
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/ic-ia32.cc +688 -367
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/jump-target-ia32.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/macro-assembler-ia32.cc +82 -180
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/macro-assembler-ia32.h +41 -25
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/regexp-macro-assembler-ia32.cc +68 -24
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/regexp-macro-assembler-ia32.h +1 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/register-allocator-ia32-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/register-allocator-ia32.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/register-allocator-ia32.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/simulator-ia32.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/simulator-ia32.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/stub-cache-ia32.cc +649 -302
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/virtual-frame-ia32.cc +23 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ia32/virtual-frame-ia32.h +18 -27
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ic-inl.h +30 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ic.cc +384 -66
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/ic.h +65 -24
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/interpreter-irregexp.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/interpreter-irregexp.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/json.js +3 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/jsregexp.cc +20 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/jsregexp.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/jump-target-heavy-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/jump-target-heavy.cc +79 -13
- data/ext/v8/upstream/{2.1.10/src/jump-target.h → 2.3.3/src/jump-target-heavy.h} +5 -47
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/jump-target-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/jump-target-light-inl.h +16 -2
- data/ext/v8/upstream/2.3.3/src/jump-target-light.cc +110 -0
- data/ext/v8/upstream/2.3.3/src/jump-target-light.h +192 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/jump-target.cc +0 -64
- data/ext/v8/upstream/2.3.3/src/jump-target.h +90 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/list-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/list.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/liveedit-debugger.js +141 -28
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/liveedit.cc +19 -7
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/liveedit.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/log-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/log-utils.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/log-utils.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/log.cc +12 -11
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/log.h +12 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/macro-assembler.h +0 -16
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/macros.py +21 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mark-compact.cc +120 -109
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mark-compact.h +25 -37
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/math.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/memory.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/messages.cc +8 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/messages.h +2 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/messages.js +15 -7
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/assembler-mips-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/assembler-mips.cc +12 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/assembler-mips.h +4 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/builtins-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/codegen-mips-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/codegen-mips.cc +9 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/codegen-mips.h +1 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/constants-mips.cc +5 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/constants-mips.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/cpu-mips.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/debug-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/disasm-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/fast-codegen-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/frames-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/frames-mips.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/full-codegen-mips.cc +5 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/ic-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/jump-target-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/macro-assembler-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/macro-assembler-mips.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/register-allocator-mips-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/register-allocator-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/register-allocator-mips.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/simulator-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/simulator-mips.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/stub-cache-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/virtual-frame-mips.cc +3 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mips/virtual-frame-mips.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mirror-debugger.js +46 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/mksnapshot.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/natives.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/objects-debug.cc +8 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/objects-inl.h +235 -62
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/objects.cc +497 -231
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/objects.h +355 -149
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/oprofile-agent.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/oprofile-agent.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/parser.cc +31 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/parser.h +1 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-freebsd.cc +9 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-linux.cc +26 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-macos.cc +11 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-nullos.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-openbsd.cc +6 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-posix.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-solaris.cc +69 -23
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform-win32.cc +15 -11
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/platform.h +10 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/powers-ten.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/prettyprinter.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/prettyprinter.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/profile-generator-inl.h +26 -2
- data/ext/v8/upstream/2.3.3/src/profile-generator.cc +1830 -0
- data/ext/v8/upstream/2.3.3/src/profile-generator.h +853 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/property.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/property.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-macro-assembler-irregexp-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-macro-assembler-irregexp.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-macro-assembler-irregexp.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-macro-assembler-tracer.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-macro-assembler-tracer.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-macro-assembler.cc +1 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-macro-assembler.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-stack.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp-stack.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/regexp.js +25 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/register-allocator-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/register-allocator.cc +4 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/register-allocator.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/rewriter.cc +85 -8
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/rewriter.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/runtime.cc +547 -221
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/runtime.h +5 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/runtime.js +23 -31
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/scanner.cc +12 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/scanner.h +60 -53
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/scopeinfo.cc +156 -168
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/scopeinfo.h +58 -62
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/scopes.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/scopes.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/serialize.cc +320 -242
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/serialize.h +81 -48
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/shell.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/simulator.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/smart-pointer.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/snapshot-common.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/snapshot-empty.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/snapshot.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/spaces-inl.h +177 -74
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/spaces.cc +138 -315
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/spaces.h +155 -124
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/splay-tree-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/splay-tree.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/string-stream.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/string-stream.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/string.js +113 -119
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/stub-cache.cc +242 -97
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/stub-cache.h +118 -55
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/third_party/dtoa/COPYING +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/third_party/dtoa/dtoa.c +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/third_party/valgrind/valgrind.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/token.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/token.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/top.cc +107 -26
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/top.h +9 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/type-info.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/type-info.h +2 -2
- data/ext/v8/upstream/2.3.3/src/unbound-queue-inl.h +95 -0
- data/ext/v8/upstream/2.3.3/src/unbound-queue.h +67 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/unicode-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/unicode.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/unicode.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/uri.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/utils.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/utils.h +83 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/v8-counters.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/v8-counters.h +20 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/v8.cc +5 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/v8.h +0 -0
- data/ext/v8/upstream/2.3.3/src/v8dll-main.cc +39 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/v8natives.js +210 -33
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/v8threads.cc +1 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/v8threads.h +1 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/variables.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/variables.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/version.cc +3 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/version.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/virtual-frame-heavy-inl.h +40 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/virtual-frame-heavy.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/virtual-frame-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/virtual-frame-light-inl.h +106 -5
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/virtual-frame-light.cc +4 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/virtual-frame.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/virtual-frame.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/vm-state-inl.h +6 -3
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/vm-state.cc +1 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/vm-state.h +6 -4
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/assembler-x64-inl.h +42 -5
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/assembler-x64.cc +285 -53
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/assembler-x64.h +54 -18
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/builtins-x64.cc +31 -33
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/codegen-x64-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/codegen-x64.cc +9787 -8722
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/codegen-x64.h +82 -47
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/cpu-x64.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/debug-x64.cc +55 -6
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/disasm-x64.cc +42 -19
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/fast-codegen-x64.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/frames-x64.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/frames-x64.h +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/full-codegen-x64.cc +1487 -210
- data/ext/v8/upstream/2.3.3/src/x64/ic-x64.cc +1907 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/jump-target-x64.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/macro-assembler-x64.cc +366 -338
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/macro-assembler-x64.h +83 -38
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/regexp-macro-assembler-x64.cc +82 -23
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/regexp-macro-assembler-x64.h +1 -2
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/register-allocator-x64-inl.h +6 -5
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/register-allocator-x64.cc +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/register-allocator-x64.h +1 -1
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/simulator-x64.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/simulator-x64.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/stub-cache-x64.cc +556 -377
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/virtual-frame-x64.cc +197 -98
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/x64/virtual-frame-x64.h +37 -28
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/zone-inl.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/zone.cc +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/src/zone.h +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/codemap.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/consarray.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/csvparser.js +0 -0
- data/ext/v8/upstream/2.3.3/tools/gc-nvp-trace-processor.py +317 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/generate-ten-powers.scm +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/gyp/v8.gyp +87 -20
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/js2c.py +19 -15
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/jsmin.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/linux-tick-processor +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/linux-tick-processor.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/logreader.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/mac-nm +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/mac-tick-processor +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/annotate +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/common +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/dump +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/report +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/reset +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/run +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/shutdown +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/oprofile/start +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/presubmit.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/process-heap-prof.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/profile.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/profile_view.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/run-valgrind.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/splaytree.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/splaytree.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/stats-viewer.py +25 -13
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/test.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/tickprocessor-driver.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/tickprocessor.js +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/tickprocessor.py +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/utils.py +0 -0
- data/ext/v8/upstream/2.3.3/tools/v8.xcodeproj/project.pbxproj +1855 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/README.txt +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/arm.vsprops +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/common.vsprops +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/d8.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/d8_arm.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/d8_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/d8js2c.cmd +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/debug.vsprops +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/ia32.vsprops +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/js2c.cmd +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/release.vsprops +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8.sln +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_arm.sln +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_arm.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_base.vcproj +40 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_base_arm.vcproj +20 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_base_x64.vcproj +16 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_cctest.vcproj +4 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_cctest_arm.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_cctest_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_mksnapshot.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_mksnapshot_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_process_sample.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_process_sample_arm.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_process_sample_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_shell_sample.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_shell_sample_arm.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_shell_sample_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_snapshot.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_snapshot_cc.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_snapshot_cc_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_snapshot_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_x64.sln +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/v8_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/visual_studio/x64.vsprops +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/windows-tick-processor.bat +0 -0
- data/ext/v8/upstream/{2.1.10 → 2.3.3}/tools/windows-tick-processor.py +0 -0
- data/ext/v8/upstream/Makefile +1 -1
- data/ext/v8/v8_template.cpp +94 -2
- data/ext/v8/v8_try_catch.cpp +2 -2
- data/lib/v8.rb +1 -1
- data/lib/v8/access.rb +93 -40
- data/lib/v8/cli.rb +1 -1
- data/lib/v8/function.rb +14 -2
- data/spec/redjs/jsapi_spec.rb +231 -42
- data/therubyracer.gemspec +3 -3
- metadata +463 -453
- data/ext/v8/upstream/2.1.10/src/arm/assembler-thumb2-inl.h +0 -263
- data/ext/v8/upstream/2.1.10/src/arm/assembler-thumb2.cc +0 -1878
- data/ext/v8/upstream/2.1.10/src/arm/assembler-thumb2.h +0 -1036
- data/ext/v8/upstream/2.1.10/src/arm/codegen-arm-inl.h +0 -72
- data/ext/v8/upstream/2.1.10/src/arm/ic-arm.cc +0 -1833
- data/ext/v8/upstream/2.1.10/src/circular-queue-inl.h +0 -101
- data/ext/v8/upstream/2.1.10/src/profile-generator.cc +0 -583
- data/ext/v8/upstream/2.1.10/src/profile-generator.h +0 -364
- data/ext/v8/upstream/2.1.10/src/x64/ic-x64.cc +0 -1621
@@ -58,6 +58,7 @@ SOURCES = {
|
|
58
58
|
debug.cc
|
59
59
|
disassembler.cc
|
60
60
|
diy-fp.cc
|
61
|
+
dtoa.cc
|
61
62
|
execution.cc
|
62
63
|
factory.cc
|
63
64
|
flags.cc
|
@@ -68,6 +69,7 @@ SOURCES = {
|
|
68
69
|
func-name-inferrer.cc
|
69
70
|
global-handles.cc
|
70
71
|
fast-dtoa.cc
|
72
|
+
fixed-dtoa.cc
|
71
73
|
handles.cc
|
72
74
|
hashmap.cc
|
73
75
|
heap-profiler.cc
|
@@ -134,13 +136,8 @@ SOURCES = {
|
|
134
136
|
arm/register-allocator-arm.cc
|
135
137
|
arm/stub-cache-arm.cc
|
136
138
|
arm/virtual-frame-arm.cc
|
137
|
-
"""),
|
138
|
-
'armvariant:arm': Split("""
|
139
139
|
arm/assembler-arm.cc
|
140
140
|
"""),
|
141
|
-
'armvariant:thumb2': Split("""
|
142
|
-
arm/assembler-thumb2.cc
|
143
|
-
"""),
|
144
141
|
'arch:mips': Split("""
|
145
142
|
fast-codegen.cc
|
146
143
|
mips/assembler-mips.cc
|
@@ -549,8 +549,8 @@ Object* Accessors::FunctionGetArguments(Object* object, void*) {
|
|
549
549
|
if (frame->function() != *function) continue;
|
550
550
|
|
551
551
|
// If there is an arguments variable in the stack, we return that.
|
552
|
-
int index =
|
553
|
-
|
552
|
+
int index = function->shared()->scope_info()->
|
553
|
+
StackSlotIndex(Heap::arguments_symbol());
|
554
554
|
if (index >= 0) {
|
555
555
|
Handle<Object> arguments = Handle<Object>(frame->GetExpression(index));
|
556
556
|
if (!arguments->IsTheHole()) return *arguments;
|
File without changes
|
File without changes
|
File without changes
|
@@ -34,6 +34,7 @@
|
|
34
34
|
#include "debug.h"
|
35
35
|
#include "execution.h"
|
36
36
|
#include "global-handles.h"
|
37
|
+
#include "heap-profiler.h"
|
37
38
|
#include "messages.h"
|
38
39
|
#include "platform.h"
|
39
40
|
#include "profile-generator-inl.h"
|
@@ -48,7 +49,7 @@
|
|
48
49
|
|
49
50
|
#define LOG_API(expr) LOG(ApiEntryCall(expr))
|
50
51
|
|
51
|
-
#ifdef
|
52
|
+
#ifdef ENABLE_VMSTATE_TRACKING
|
52
53
|
#define ENTER_V8 i::VMState __state__(i::OTHER)
|
53
54
|
#define LEAVE_V8 i::VMState __state__(i::EXTERNAL)
|
54
55
|
#else
|
@@ -58,11 +59,10 @@
|
|
58
59
|
|
59
60
|
namespace v8 {
|
60
61
|
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
UNREACHABLE(); \
|
62
|
+
#define ON_BAILOUT(location, code) \
|
63
|
+
if (IsDeadCheck(location) || v8::V8::IsExecutionTerminating()) { \
|
64
|
+
code; \
|
65
|
+
UNREACHABLE(); \
|
66
66
|
}
|
67
67
|
|
68
68
|
|
@@ -106,9 +106,6 @@ static i::HandleScopeImplementer thread_local;
|
|
106
106
|
|
107
107
|
|
108
108
|
static FatalErrorCallback exception_behavior = NULL;
|
109
|
-
int i::Internals::kJSObjectType = JS_OBJECT_TYPE;
|
110
|
-
int i::Internals::kFirstNonstringType = FIRST_NONSTRING_TYPE;
|
111
|
-
int i::Internals::kProxyType = PROXY_TYPE;
|
112
109
|
|
113
110
|
static void DefaultFatalErrorHandler(const char* location,
|
114
111
|
const char* message) {
|
@@ -776,18 +773,13 @@ void FunctionTemplate::SetCallHandler(InvocationCallback callback,
|
|
776
773
|
}
|
777
774
|
|
778
775
|
|
779
|
-
|
776
|
+
static i::Handle<i::AccessorInfo> MakeAccessorInfo(
|
780
777
|
v8::Handle<String> name,
|
781
778
|
AccessorGetter getter,
|
782
779
|
AccessorSetter setter,
|
783
780
|
v8::Handle<Value> data,
|
784
781
|
v8::AccessControl settings,
|
785
782
|
v8::PropertyAttribute attributes) {
|
786
|
-
if (IsDeadCheck("v8::FunctionTemplate::AddInstancePropertyAccessor()")) {
|
787
|
-
return;
|
788
|
-
}
|
789
|
-
ENTER_V8;
|
790
|
-
HandleScope scope;
|
791
783
|
i::Handle<i::AccessorInfo> obj = i::Factory::NewAccessorInfo();
|
792
784
|
ASSERT(getter != NULL);
|
793
785
|
obj->set_getter(*FromCData(getter));
|
@@ -799,7 +791,26 @@ void FunctionTemplate::AddInstancePropertyAccessor(
|
|
799
791
|
if (settings & ALL_CAN_WRITE) obj->set_all_can_write(true);
|
800
792
|
if (settings & PROHIBITS_OVERWRITING) obj->set_prohibits_overwriting(true);
|
801
793
|
obj->set_property_attributes(static_cast<PropertyAttributes>(attributes));
|
794
|
+
return obj;
|
795
|
+
}
|
796
|
+
|
802
797
|
|
798
|
+
void FunctionTemplate::AddInstancePropertyAccessor(
|
799
|
+
v8::Handle<String> name,
|
800
|
+
AccessorGetter getter,
|
801
|
+
AccessorSetter setter,
|
802
|
+
v8::Handle<Value> data,
|
803
|
+
v8::AccessControl settings,
|
804
|
+
v8::PropertyAttribute attributes) {
|
805
|
+
if (IsDeadCheck("v8::FunctionTemplate::AddInstancePropertyAccessor()")) {
|
806
|
+
return;
|
807
|
+
}
|
808
|
+
ENTER_V8;
|
809
|
+
HandleScope scope;
|
810
|
+
|
811
|
+
i::Handle<i::AccessorInfo> obj = MakeAccessorInfo(name,
|
812
|
+
getter, setter, data,
|
813
|
+
settings, attributes);
|
803
814
|
i::Handle<i::Object> list(Utils::OpenHandle(this)->property_accessors());
|
804
815
|
if (list->IsUndefined()) {
|
805
816
|
list = NeanderArray().value();
|
@@ -1106,8 +1117,25 @@ ScriptData* ScriptData::PreCompile(const char* input, int length) {
|
|
1106
1117
|
}
|
1107
1118
|
|
1108
1119
|
|
1109
|
-
ScriptData* ScriptData::
|
1110
|
-
|
1120
|
+
ScriptData* ScriptData::PreCompile(v8::Handle<String> source) {
|
1121
|
+
i::Handle<i::String> str = Utils::OpenHandle(*source);
|
1122
|
+
return i::PreParse(str, NULL, NULL);
|
1123
|
+
}
|
1124
|
+
|
1125
|
+
|
1126
|
+
ScriptData* ScriptData::New(const char* data, int length) {
|
1127
|
+
// Return an empty ScriptData if the length is obviously invalid.
|
1128
|
+
if (length % sizeof(unsigned) != 0) {
|
1129
|
+
return new i::ScriptDataImpl(i::Vector<unsigned>());
|
1130
|
+
}
|
1131
|
+
|
1132
|
+
// Copy the data to ensure it is properly aligned.
|
1133
|
+
int deserialized_data_length = length / sizeof(unsigned);
|
1134
|
+
unsigned* deserialized_data = i::NewArray<unsigned>(deserialized_data_length);
|
1135
|
+
memcpy(deserialized_data, data, length);
|
1136
|
+
|
1137
|
+
return new i::ScriptDataImpl(
|
1138
|
+
i::Vector<unsigned>(deserialized_data, deserialized_data_length));
|
1111
1139
|
}
|
1112
1140
|
|
1113
1141
|
|
@@ -1410,6 +1438,22 @@ v8::Handle<Value> Message::GetScriptData() const {
|
|
1410
1438
|
}
|
1411
1439
|
|
1412
1440
|
|
1441
|
+
v8::Handle<v8::StackTrace> Message::GetStackTrace() const {
|
1442
|
+
if (IsDeadCheck("v8::Message::GetStackTrace()")) {
|
1443
|
+
return Local<v8::StackTrace>();
|
1444
|
+
}
|
1445
|
+
ENTER_V8;
|
1446
|
+
HandleScope scope;
|
1447
|
+
i::Handle<i::JSObject> obj =
|
1448
|
+
i::Handle<i::JSObject>::cast(Utils::OpenHandle(this));
|
1449
|
+
i::Handle<i::Object> stackFramesObj = GetProperty(obj, "stackFrames");
|
1450
|
+
if (!stackFramesObj->IsJSArray()) return v8::Handle<v8::StackTrace>();
|
1451
|
+
i::Handle<i::JSArray> stackTrace =
|
1452
|
+
i::Handle<i::JSArray>::cast(stackFramesObj);
|
1453
|
+
return scope.Close(Utils::StackTraceToLocal(stackTrace));
|
1454
|
+
}
|
1455
|
+
|
1456
|
+
|
1413
1457
|
static i::Handle<i::Object> CallV8HeapFunction(const char* name,
|
1414
1458
|
i::Handle<i::Object> recv,
|
1415
1459
|
int argc,
|
@@ -1438,7 +1482,7 @@ static i::Handle<i::Object> CallV8HeapFunction(const char* name,
|
|
1438
1482
|
|
1439
1483
|
|
1440
1484
|
int Message::GetLineNumber() const {
|
1441
|
-
ON_BAILOUT("v8::Message::GetLineNumber()", return
|
1485
|
+
ON_BAILOUT("v8::Message::GetLineNumber()", return kNoLineNumberInfo);
|
1442
1486
|
ENTER_V8;
|
1443
1487
|
HandleScope scope;
|
1444
1488
|
EXCEPTION_PREAMBLE();
|
@@ -1470,7 +1514,7 @@ int Message::GetEndPosition() const {
|
|
1470
1514
|
|
1471
1515
|
|
1472
1516
|
int Message::GetStartColumn() const {
|
1473
|
-
if (IsDeadCheck("v8::Message::GetStartColumn()")) return
|
1517
|
+
if (IsDeadCheck("v8::Message::GetStartColumn()")) return kNoColumnInfo;
|
1474
1518
|
ENTER_V8;
|
1475
1519
|
HandleScope scope;
|
1476
1520
|
i::Handle<i::JSObject> data_obj = Utils::OpenHandle(this);
|
@@ -1485,7 +1529,7 @@ int Message::GetStartColumn() const {
|
|
1485
1529
|
|
1486
1530
|
|
1487
1531
|
int Message::GetEndColumn() const {
|
1488
|
-
if (IsDeadCheck("v8::Message::GetEndColumn()")) return
|
1532
|
+
if (IsDeadCheck("v8::Message::GetEndColumn()")) return kNoColumnInfo;
|
1489
1533
|
ENTER_V8;
|
1490
1534
|
HandleScope scope;
|
1491
1535
|
i::Handle<i::JSObject> data_obj = Utils::OpenHandle(this);
|
@@ -1525,6 +1569,120 @@ void Message::PrintCurrentStackTrace(FILE* out) {
|
|
1525
1569
|
}
|
1526
1570
|
|
1527
1571
|
|
1572
|
+
// --- S t a c k T r a c e ---
|
1573
|
+
|
1574
|
+
Local<StackFrame> StackTrace::GetFrame(uint32_t index) const {
|
1575
|
+
if (IsDeadCheck("v8::StackTrace::GetFrame()")) return Local<StackFrame>();
|
1576
|
+
ENTER_V8;
|
1577
|
+
HandleScope scope;
|
1578
|
+
i::Handle<i::JSArray> self = Utils::OpenHandle(this);
|
1579
|
+
i::Handle<i::JSObject> obj(i::JSObject::cast(self->GetElement(index)));
|
1580
|
+
return scope.Close(Utils::StackFrameToLocal(obj));
|
1581
|
+
}
|
1582
|
+
|
1583
|
+
|
1584
|
+
int StackTrace::GetFrameCount() const {
|
1585
|
+
if (IsDeadCheck("v8::StackTrace::GetFrameCount()")) return -1;
|
1586
|
+
ENTER_V8;
|
1587
|
+
return i::Smi::cast(Utils::OpenHandle(this)->length())->value();
|
1588
|
+
}
|
1589
|
+
|
1590
|
+
|
1591
|
+
Local<Array> StackTrace::AsArray() {
|
1592
|
+
if (IsDeadCheck("v8::StackTrace::AsArray()")) Local<Array>();
|
1593
|
+
ENTER_V8;
|
1594
|
+
return Utils::ToLocal(Utils::OpenHandle(this));
|
1595
|
+
}
|
1596
|
+
|
1597
|
+
|
1598
|
+
Local<StackTrace> StackTrace::CurrentStackTrace(int frame_limit,
|
1599
|
+
StackTraceOptions options) {
|
1600
|
+
if (IsDeadCheck("v8::StackTrace::CurrentStackTrace()")) Local<StackTrace>();
|
1601
|
+
ENTER_V8;
|
1602
|
+
i::Handle<i::JSArray> stackTrace =
|
1603
|
+
i::Top::CaptureCurrentStackTrace(frame_limit, options);
|
1604
|
+
return Utils::StackTraceToLocal(stackTrace);
|
1605
|
+
}
|
1606
|
+
|
1607
|
+
|
1608
|
+
// --- S t a c k F r a m e ---
|
1609
|
+
|
1610
|
+
int StackFrame::GetLineNumber() const {
|
1611
|
+
if (IsDeadCheck("v8::StackFrame::GetLineNumber()")) {
|
1612
|
+
return Message::kNoLineNumberInfo;
|
1613
|
+
}
|
1614
|
+
ENTER_V8;
|
1615
|
+
i::HandleScope scope;
|
1616
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
1617
|
+
i::Handle<i::Object> line = GetProperty(self, "lineNumber");
|
1618
|
+
if (!line->IsSmi()) {
|
1619
|
+
return Message::kNoLineNumberInfo;
|
1620
|
+
}
|
1621
|
+
return i::Smi::cast(*line)->value();
|
1622
|
+
}
|
1623
|
+
|
1624
|
+
|
1625
|
+
int StackFrame::GetColumn() const {
|
1626
|
+
if (IsDeadCheck("v8::StackFrame::GetColumn()")) {
|
1627
|
+
return Message::kNoColumnInfo;
|
1628
|
+
}
|
1629
|
+
ENTER_V8;
|
1630
|
+
i::HandleScope scope;
|
1631
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
1632
|
+
i::Handle<i::Object> column = GetProperty(self, "column");
|
1633
|
+
if (!column->IsSmi()) {
|
1634
|
+
return Message::kNoColumnInfo;
|
1635
|
+
}
|
1636
|
+
return i::Smi::cast(*column)->value();
|
1637
|
+
}
|
1638
|
+
|
1639
|
+
|
1640
|
+
Local<String> StackFrame::GetScriptName() const {
|
1641
|
+
if (IsDeadCheck("v8::StackFrame::GetScriptName()")) return Local<String>();
|
1642
|
+
ENTER_V8;
|
1643
|
+
HandleScope scope;
|
1644
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
1645
|
+
i::Handle<i::Object> name = GetProperty(self, "scriptName");
|
1646
|
+
if (!name->IsString()) {
|
1647
|
+
return Local<String>();
|
1648
|
+
}
|
1649
|
+
return scope.Close(Local<String>::Cast(Utils::ToLocal(name)));
|
1650
|
+
}
|
1651
|
+
|
1652
|
+
|
1653
|
+
Local<String> StackFrame::GetFunctionName() const {
|
1654
|
+
if (IsDeadCheck("v8::StackFrame::GetFunctionName()")) return Local<String>();
|
1655
|
+
ENTER_V8;
|
1656
|
+
HandleScope scope;
|
1657
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
1658
|
+
i::Handle<i::Object> name = GetProperty(self, "functionName");
|
1659
|
+
if (!name->IsString()) {
|
1660
|
+
return Local<String>();
|
1661
|
+
}
|
1662
|
+
return scope.Close(Local<String>::Cast(Utils::ToLocal(name)));
|
1663
|
+
}
|
1664
|
+
|
1665
|
+
|
1666
|
+
bool StackFrame::IsEval() const {
|
1667
|
+
if (IsDeadCheck("v8::StackFrame::IsEval()")) return false;
|
1668
|
+
ENTER_V8;
|
1669
|
+
i::HandleScope scope;
|
1670
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
1671
|
+
i::Handle<i::Object> is_eval = GetProperty(self, "isEval");
|
1672
|
+
return is_eval->IsTrue();
|
1673
|
+
}
|
1674
|
+
|
1675
|
+
|
1676
|
+
bool StackFrame::IsConstructor() const {
|
1677
|
+
if (IsDeadCheck("v8::StackFrame::IsConstructor()")) return false;
|
1678
|
+
ENTER_V8;
|
1679
|
+
i::HandleScope scope;
|
1680
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
1681
|
+
i::Handle<i::Object> is_constructor = GetProperty(self, "isConstructor");
|
1682
|
+
return is_constructor->IsTrue();
|
1683
|
+
}
|
1684
|
+
|
1685
|
+
|
1528
1686
|
// --- D a t a ---
|
1529
1687
|
|
1530
1688
|
bool Value::IsUndefined() const {
|
@@ -2185,10 +2343,10 @@ Local<String> v8::Object::ObjectProtoToString() {
|
|
2185
2343
|
int postfix_len = i::StrLength(postfix);
|
2186
2344
|
|
2187
2345
|
int buf_len = prefix_len + str_len + postfix_len;
|
2188
|
-
|
2346
|
+
i::ScopedVector<char> buf(buf_len);
|
2189
2347
|
|
2190
2348
|
// Write prefix.
|
2191
|
-
char* ptr = buf;
|
2349
|
+
char* ptr = buf.start();
|
2192
2350
|
memcpy(ptr, prefix, prefix_len * v8::internal::kCharSize);
|
2193
2351
|
ptr += prefix_len;
|
2194
2352
|
|
@@ -2200,8 +2358,7 @@ Local<String> v8::Object::ObjectProtoToString() {
|
|
2200
2358
|
memcpy(ptr, postfix, postfix_len * v8::internal::kCharSize);
|
2201
2359
|
|
2202
2360
|
// Copy the buffer into a heap-allocated string and return it.
|
2203
|
-
Local<String> result = v8::String::New(buf, buf_len);
|
2204
|
-
i::DeleteArray(buf);
|
2361
|
+
Local<String> result = v8::String::New(buf.start(), buf_len);
|
2205
2362
|
return result;
|
2206
2363
|
}
|
2207
2364
|
}
|
@@ -2243,6 +2400,23 @@ bool v8::Object::Has(uint32_t index) {
|
|
2243
2400
|
}
|
2244
2401
|
|
2245
2402
|
|
2403
|
+
bool Object::SetAccessor(Handle<String> name,
|
2404
|
+
AccessorGetter getter,
|
2405
|
+
AccessorSetter setter,
|
2406
|
+
v8::Handle<Value> data,
|
2407
|
+
AccessControl settings,
|
2408
|
+
PropertyAttribute attributes) {
|
2409
|
+
ON_BAILOUT("v8::Object::SetAccessor()", return false);
|
2410
|
+
ENTER_V8;
|
2411
|
+
HandleScope scope;
|
2412
|
+
i::Handle<i::AccessorInfo> info = MakeAccessorInfo(name,
|
2413
|
+
getter, setter, data,
|
2414
|
+
settings, attributes);
|
2415
|
+
i::Handle<i::Object> result = i::SetAccessor(Utils::OpenHandle(this), info);
|
2416
|
+
return !result.is_null() && !result->IsUndefined();
|
2417
|
+
}
|
2418
|
+
|
2419
|
+
|
2246
2420
|
bool v8::Object::HasRealNamedProperty(Handle<String> key) {
|
2247
2421
|
ON_BAILOUT("v8::Object::HasRealNamedProperty()", return false);
|
2248
2422
|
return Utils::OpenHandle(this)->HasRealNamedProperty(
|
@@ -2450,10 +2624,41 @@ void v8::Object::SetIndexedPropertiesToPixelData(uint8_t* data, int length) {
|
|
2450
2624
|
return;
|
2451
2625
|
}
|
2452
2626
|
i::Handle<i::PixelArray> pixels = i::Factory::NewPixelArray(length, data);
|
2627
|
+
self->set_map(
|
2628
|
+
*i::Factory::GetSlowElementsMap(i::Handle<i::Map>(self->map())));
|
2453
2629
|
self->set_elements(*pixels);
|
2454
2630
|
}
|
2455
2631
|
|
2456
2632
|
|
2633
|
+
bool v8::Object::HasIndexedPropertiesInPixelData() {
|
2634
|
+
ON_BAILOUT("v8::HasIndexedPropertiesInPixelData()", return false);
|
2635
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
2636
|
+
return self->HasPixelElements();
|
2637
|
+
}
|
2638
|
+
|
2639
|
+
|
2640
|
+
uint8_t* v8::Object::GetIndexedPropertiesPixelData() {
|
2641
|
+
ON_BAILOUT("v8::GetIndexedPropertiesPixelData()", return NULL);
|
2642
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
2643
|
+
if (self->HasPixelElements()) {
|
2644
|
+
return i::PixelArray::cast(self->elements())->external_pointer();
|
2645
|
+
} else {
|
2646
|
+
return NULL;
|
2647
|
+
}
|
2648
|
+
}
|
2649
|
+
|
2650
|
+
|
2651
|
+
int v8::Object::GetIndexedPropertiesPixelDataLength() {
|
2652
|
+
ON_BAILOUT("v8::GetIndexedPropertiesPixelDataLength()", return -1);
|
2653
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
2654
|
+
if (self->HasPixelElements()) {
|
2655
|
+
return i::PixelArray::cast(self->elements())->length();
|
2656
|
+
} else {
|
2657
|
+
return -1;
|
2658
|
+
}
|
2659
|
+
}
|
2660
|
+
|
2661
|
+
|
2457
2662
|
void v8::Object::SetIndexedPropertiesToExternalArrayData(
|
2458
2663
|
void* data,
|
2459
2664
|
ExternalArrayType array_type,
|
@@ -2474,10 +2679,66 @@ void v8::Object::SetIndexedPropertiesToExternalArrayData(
|
|
2474
2679
|
}
|
2475
2680
|
i::Handle<i::ExternalArray> array =
|
2476
2681
|
i::Factory::NewExternalArray(length, array_type, data);
|
2682
|
+
self->set_map(
|
2683
|
+
*i::Factory::GetSlowElementsMap(i::Handle<i::Map>(self->map())));
|
2477
2684
|
self->set_elements(*array);
|
2478
2685
|
}
|
2479
2686
|
|
2480
2687
|
|
2688
|
+
bool v8::Object::HasIndexedPropertiesInExternalArrayData() {
|
2689
|
+
ON_BAILOUT("v8::HasIndexedPropertiesInExternalArrayData()", return false);
|
2690
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
2691
|
+
return self->HasExternalArrayElements();
|
2692
|
+
}
|
2693
|
+
|
2694
|
+
|
2695
|
+
void* v8::Object::GetIndexedPropertiesExternalArrayData() {
|
2696
|
+
ON_BAILOUT("v8::GetIndexedPropertiesExternalArrayData()", return NULL);
|
2697
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
2698
|
+
if (self->HasExternalArrayElements()) {
|
2699
|
+
return i::ExternalArray::cast(self->elements())->external_pointer();
|
2700
|
+
} else {
|
2701
|
+
return NULL;
|
2702
|
+
}
|
2703
|
+
}
|
2704
|
+
|
2705
|
+
|
2706
|
+
ExternalArrayType v8::Object::GetIndexedPropertiesExternalArrayDataType() {
|
2707
|
+
ON_BAILOUT("v8::GetIndexedPropertiesExternalArrayDataType()",
|
2708
|
+
return static_cast<ExternalArrayType>(-1));
|
2709
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
2710
|
+
switch (self->elements()->map()->instance_type()) {
|
2711
|
+
case i::EXTERNAL_BYTE_ARRAY_TYPE:
|
2712
|
+
return kExternalByteArray;
|
2713
|
+
case i::EXTERNAL_UNSIGNED_BYTE_ARRAY_TYPE:
|
2714
|
+
return kExternalUnsignedByteArray;
|
2715
|
+
case i::EXTERNAL_SHORT_ARRAY_TYPE:
|
2716
|
+
return kExternalShortArray;
|
2717
|
+
case i::EXTERNAL_UNSIGNED_SHORT_ARRAY_TYPE:
|
2718
|
+
return kExternalUnsignedShortArray;
|
2719
|
+
case i::EXTERNAL_INT_ARRAY_TYPE:
|
2720
|
+
return kExternalIntArray;
|
2721
|
+
case i::EXTERNAL_UNSIGNED_INT_ARRAY_TYPE:
|
2722
|
+
return kExternalUnsignedIntArray;
|
2723
|
+
case i::EXTERNAL_FLOAT_ARRAY_TYPE:
|
2724
|
+
return kExternalFloatArray;
|
2725
|
+
default:
|
2726
|
+
return static_cast<ExternalArrayType>(-1);
|
2727
|
+
}
|
2728
|
+
}
|
2729
|
+
|
2730
|
+
|
2731
|
+
int v8::Object::GetIndexedPropertiesExternalArrayDataLength() {
|
2732
|
+
ON_BAILOUT("v8::GetIndexedPropertiesExternalArrayDataLength()", return 0);
|
2733
|
+
i::Handle<i::JSObject> self = Utils::OpenHandle(this);
|
2734
|
+
if (self->HasExternalArrayElements()) {
|
2735
|
+
return i::ExternalArray::cast(self->elements())->length();
|
2736
|
+
} else {
|
2737
|
+
return -1;
|
2738
|
+
}
|
2739
|
+
}
|
2740
|
+
|
2741
|
+
|
2481
2742
|
Local<v8::Object> Function::NewInstance() const {
|
2482
2743
|
return NewInstance(0, NULL);
|
2483
2744
|
}
|
@@ -3539,6 +3800,17 @@ void V8::RemoveMessageListeners(MessageCallback that) {
|
|
3539
3800
|
}
|
3540
3801
|
|
3541
3802
|
|
3803
|
+
void V8::SetCaptureStackTraceForUncaughtExceptions(
|
3804
|
+
bool capture,
|
3805
|
+
int frame_limit,
|
3806
|
+
StackTrace::StackTraceOptions options) {
|
3807
|
+
i::Top::SetCaptureStackTraceForUncaughtExceptions(
|
3808
|
+
capture,
|
3809
|
+
frame_limit,
|
3810
|
+
options);
|
3811
|
+
}
|
3812
|
+
|
3813
|
+
|
3542
3814
|
void V8::SetCounterFunction(CounterLookupCallback callback) {
|
3543
3815
|
if (IsDeadCheck("v8::V8::SetCounterFunction()")) return;
|
3544
3816
|
i::StatsTable::SetCounterFunction(callback);
|
@@ -3881,10 +4153,40 @@ Local<Value> Exception::Error(v8::Handle<v8::String> raw_message) {
|
|
3881
4153
|
// --- D e b u g S u p p o r t ---
|
3882
4154
|
|
3883
4155
|
#ifdef ENABLE_DEBUGGER_SUPPORT
|
4156
|
+
|
4157
|
+
static v8::Debug::EventCallback event_callback = NULL;
|
4158
|
+
|
4159
|
+
static void EventCallbackWrapper(const v8::Debug::EventDetails& event_details) {
|
4160
|
+
if (event_callback) {
|
4161
|
+
event_callback(event_details.GetEvent(),
|
4162
|
+
event_details.GetExecutionState(),
|
4163
|
+
event_details.GetEventData(),
|
4164
|
+
event_details.GetCallbackData());
|
4165
|
+
}
|
4166
|
+
}
|
4167
|
+
|
4168
|
+
|
3884
4169
|
bool Debug::SetDebugEventListener(EventCallback that, Handle<Value> data) {
|
3885
4170
|
EnsureInitialized("v8::Debug::SetDebugEventListener()");
|
3886
4171
|
ON_BAILOUT("v8::Debug::SetDebugEventListener()", return false);
|
3887
4172
|
ENTER_V8;
|
4173
|
+
|
4174
|
+
event_callback = that;
|
4175
|
+
|
4176
|
+
HandleScope scope;
|
4177
|
+
i::Handle<i::Object> proxy = i::Factory::undefined_value();
|
4178
|
+
if (that != NULL) {
|
4179
|
+
proxy = i::Factory::NewProxy(FUNCTION_ADDR(EventCallbackWrapper));
|
4180
|
+
}
|
4181
|
+
i::Debugger::SetEventListener(proxy, Utils::OpenHandle(*data));
|
4182
|
+
return true;
|
4183
|
+
}
|
4184
|
+
|
4185
|
+
|
4186
|
+
bool Debug::SetDebugEventListener2(EventCallback2 that, Handle<Value> data) {
|
4187
|
+
EnsureInitialized("v8::Debug::SetDebugEventListener2()");
|
4188
|
+
ON_BAILOUT("v8::Debug::SetDebugEventListener2()", return false);
|
4189
|
+
ENTER_V8;
|
3888
4190
|
HandleScope scope;
|
3889
4191
|
i::Handle<i::Object> proxy = i::Factory::undefined_value();
|
3890
4192
|
if (that != NULL) {
|
@@ -3911,6 +4213,12 @@ void Debug::DebugBreak() {
|
|
3911
4213
|
}
|
3912
4214
|
|
3913
4215
|
|
4216
|
+
void Debug::DebugBreakForCommand(ClientData* data) {
|
4217
|
+
if (!i::V8::IsRunning()) return;
|
4218
|
+
i::Debugger::EnqueueDebugCommand(data);
|
4219
|
+
}
|
4220
|
+
|
4221
|
+
|
3914
4222
|
static v8::Debug::MessageHandler message_handler = NULL;
|
3915
4223
|
|
3916
4224
|
static void MessageHandlerWrapper(const v8::Debug::Message& message) {
|
@@ -4139,15 +4447,23 @@ int CpuProfiler::GetProfilesCount() {
|
|
4139
4447
|
}
|
4140
4448
|
|
4141
4449
|
|
4142
|
-
const CpuProfile* CpuProfiler::GetProfile(int index
|
4450
|
+
const CpuProfile* CpuProfiler::GetProfile(int index,
|
4451
|
+
Handle<Value> security_token) {
|
4143
4452
|
IsDeadCheck("v8::CpuProfiler::GetProfile");
|
4144
|
-
return reinterpret_cast<const CpuProfile*>(
|
4453
|
+
return reinterpret_cast<const CpuProfile*>(
|
4454
|
+
i::CpuProfiler::GetProfile(
|
4455
|
+
security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token),
|
4456
|
+
index));
|
4145
4457
|
}
|
4146
4458
|
|
4147
4459
|
|
4148
|
-
const CpuProfile* CpuProfiler::FindProfile(unsigned uid
|
4460
|
+
const CpuProfile* CpuProfiler::FindProfile(unsigned uid,
|
4461
|
+
Handle<Value> security_token) {
|
4149
4462
|
IsDeadCheck("v8::CpuProfiler::FindProfile");
|
4150
|
-
return reinterpret_cast<const CpuProfile*>(
|
4463
|
+
return reinterpret_cast<const CpuProfile*>(
|
4464
|
+
i::CpuProfiler::FindProfile(
|
4465
|
+
security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token),
|
4466
|
+
uid));
|
4151
4467
|
}
|
4152
4468
|
|
4153
4469
|
|
@@ -4157,10 +4473,238 @@ void CpuProfiler::StartProfiling(Handle<String> title) {
|
|
4157
4473
|
}
|
4158
4474
|
|
4159
4475
|
|
4160
|
-
const CpuProfile* CpuProfiler::StopProfiling(Handle<String> title
|
4476
|
+
const CpuProfile* CpuProfiler::StopProfiling(Handle<String> title,
|
4477
|
+
Handle<Value> security_token) {
|
4161
4478
|
IsDeadCheck("v8::CpuProfiler::StopProfiling");
|
4162
4479
|
return reinterpret_cast<const CpuProfile*>(
|
4163
|
-
i::CpuProfiler::StopProfiling(
|
4480
|
+
i::CpuProfiler::StopProfiling(
|
4481
|
+
security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token),
|
4482
|
+
*Utils::OpenHandle(*title)));
|
4483
|
+
}
|
4484
|
+
|
4485
|
+
|
4486
|
+
HeapGraphEdge::Type HeapGraphEdge::GetType() const {
|
4487
|
+
IsDeadCheck("v8::HeapGraphEdge::GetType");
|
4488
|
+
return static_cast<HeapGraphEdge::Type>(
|
4489
|
+
reinterpret_cast<const i::HeapGraphEdge*>(this)->type());
|
4490
|
+
}
|
4491
|
+
|
4492
|
+
|
4493
|
+
Handle<Value> HeapGraphEdge::GetName() const {
|
4494
|
+
IsDeadCheck("v8::HeapGraphEdge::GetName");
|
4495
|
+
const i::HeapGraphEdge* edge =
|
4496
|
+
reinterpret_cast<const i::HeapGraphEdge*>(this);
|
4497
|
+
switch (edge->type()) {
|
4498
|
+
case i::HeapGraphEdge::CONTEXT_VARIABLE:
|
4499
|
+
case i::HeapGraphEdge::INTERNAL:
|
4500
|
+
case i::HeapGraphEdge::PROPERTY:
|
4501
|
+
return Handle<String>(ToApi<String>(i::Factory::LookupAsciiSymbol(
|
4502
|
+
edge->name())));
|
4503
|
+
case i::HeapGraphEdge::ELEMENT:
|
4504
|
+
return Handle<Number>(ToApi<Number>(i::Factory::NewNumberFromInt(
|
4505
|
+
edge->index())));
|
4506
|
+
default: UNREACHABLE();
|
4507
|
+
}
|
4508
|
+
return ImplementationUtilities::Undefined();
|
4509
|
+
}
|
4510
|
+
|
4511
|
+
|
4512
|
+
const HeapGraphNode* HeapGraphEdge::GetFromNode() const {
|
4513
|
+
IsDeadCheck("v8::HeapGraphEdge::GetFromNode");
|
4514
|
+
const i::HeapEntry* from =
|
4515
|
+
reinterpret_cast<const i::HeapGraphEdge*>(this)->from();
|
4516
|
+
return reinterpret_cast<const HeapGraphNode*>(from);
|
4517
|
+
}
|
4518
|
+
|
4519
|
+
|
4520
|
+
const HeapGraphNode* HeapGraphEdge::GetToNode() const {
|
4521
|
+
IsDeadCheck("v8::HeapGraphEdge::GetToNode");
|
4522
|
+
const i::HeapEntry* to =
|
4523
|
+
reinterpret_cast<const i::HeapGraphEdge*>(this)->to();
|
4524
|
+
return reinterpret_cast<const HeapGraphNode*>(to);
|
4525
|
+
}
|
4526
|
+
|
4527
|
+
|
4528
|
+
int HeapGraphPath::GetEdgesCount() const {
|
4529
|
+
return reinterpret_cast<const i::HeapGraphPath*>(this)->path()->length();
|
4530
|
+
}
|
4531
|
+
|
4532
|
+
|
4533
|
+
const HeapGraphEdge* HeapGraphPath::GetEdge(int index) const {
|
4534
|
+
return reinterpret_cast<const HeapGraphEdge*>(
|
4535
|
+
reinterpret_cast<const i::HeapGraphPath*>(this)->path()->at(index));
|
4536
|
+
}
|
4537
|
+
|
4538
|
+
|
4539
|
+
const HeapGraphNode* HeapGraphPath::GetFromNode() const {
|
4540
|
+
return GetEdgesCount() > 0 ? GetEdge(0)->GetFromNode() : NULL;
|
4541
|
+
}
|
4542
|
+
|
4543
|
+
|
4544
|
+
const HeapGraphNode* HeapGraphPath::GetToNode() const {
|
4545
|
+
const int count = GetEdgesCount();
|
4546
|
+
return count > 0 ? GetEdge(count - 1)->GetToNode() : NULL;
|
4547
|
+
}
|
4548
|
+
|
4549
|
+
|
4550
|
+
HeapGraphNode::Type HeapGraphNode::GetType() const {
|
4551
|
+
IsDeadCheck("v8::HeapGraphNode::GetType");
|
4552
|
+
return static_cast<HeapGraphNode::Type>(
|
4553
|
+
reinterpret_cast<const i::HeapEntry*>(this)->type());
|
4554
|
+
}
|
4555
|
+
|
4556
|
+
|
4557
|
+
Handle<String> HeapGraphNode::GetName() const {
|
4558
|
+
IsDeadCheck("v8::HeapGraphNode::GetName");
|
4559
|
+
return Handle<String>(ToApi<String>(i::Factory::LookupAsciiSymbol(
|
4560
|
+
reinterpret_cast<const i::HeapEntry*>(this)->name())));
|
4561
|
+
}
|
4562
|
+
|
4563
|
+
|
4564
|
+
uint64_t HeapGraphNode::GetId() const {
|
4565
|
+
IsDeadCheck("v8::HeapGraphNode::GetId");
|
4566
|
+
return reinterpret_cast<const i::HeapEntry*>(this)->id();
|
4567
|
+
}
|
4568
|
+
|
4569
|
+
|
4570
|
+
int HeapGraphNode::GetSelfSize() const {
|
4571
|
+
IsDeadCheck("v8::HeapGraphNode::GetSelfSize");
|
4572
|
+
return reinterpret_cast<const i::HeapEntry*>(this)->self_size();
|
4573
|
+
}
|
4574
|
+
|
4575
|
+
|
4576
|
+
int HeapGraphNode::GetTotalSize() const {
|
4577
|
+
IsDeadCheck("v8::HeapSnapshot::GetHead");
|
4578
|
+
return const_cast<i::HeapEntry*>(
|
4579
|
+
reinterpret_cast<const i::HeapEntry*>(this))->TotalSize();
|
4580
|
+
}
|
4581
|
+
|
4582
|
+
|
4583
|
+
int HeapGraphNode::GetPrivateSize() const {
|
4584
|
+
IsDeadCheck("v8::HeapSnapshot::GetPrivateSize");
|
4585
|
+
return const_cast<i::HeapEntry*>(
|
4586
|
+
reinterpret_cast<const i::HeapEntry*>(this))->NonSharedTotalSize();
|
4587
|
+
}
|
4588
|
+
|
4589
|
+
|
4590
|
+
int HeapGraphNode::GetChildrenCount() const {
|
4591
|
+
IsDeadCheck("v8::HeapSnapshot::GetChildrenCount");
|
4592
|
+
return reinterpret_cast<const i::HeapEntry*>(this)->children()->length();
|
4593
|
+
}
|
4594
|
+
|
4595
|
+
|
4596
|
+
const HeapGraphEdge* HeapGraphNode::GetChild(int index) const {
|
4597
|
+
IsDeadCheck("v8::HeapSnapshot::GetChild");
|
4598
|
+
return reinterpret_cast<const HeapGraphEdge*>(
|
4599
|
+
reinterpret_cast<const i::HeapEntry*>(this)->children()->at(index));
|
4600
|
+
}
|
4601
|
+
|
4602
|
+
|
4603
|
+
int HeapGraphNode::GetRetainersCount() const {
|
4604
|
+
IsDeadCheck("v8::HeapSnapshot::GetRetainersCount");
|
4605
|
+
return reinterpret_cast<const i::HeapEntry*>(this)->retainers()->length();
|
4606
|
+
}
|
4607
|
+
|
4608
|
+
|
4609
|
+
const HeapGraphEdge* HeapGraphNode::GetRetainer(int index) const {
|
4610
|
+
IsDeadCheck("v8::HeapSnapshot::GetRetainer");
|
4611
|
+
return reinterpret_cast<const HeapGraphEdge*>(
|
4612
|
+
reinterpret_cast<const i::HeapEntry*>(this)->retainers()->at(index));
|
4613
|
+
}
|
4614
|
+
|
4615
|
+
|
4616
|
+
int HeapGraphNode::GetRetainingPathsCount() const {
|
4617
|
+
IsDeadCheck("v8::HeapSnapshot::GetRetainingPathsCount");
|
4618
|
+
return const_cast<i::HeapEntry*>(
|
4619
|
+
reinterpret_cast<const i::HeapEntry*>(
|
4620
|
+
this))->GetRetainingPaths()->length();
|
4621
|
+
}
|
4622
|
+
|
4623
|
+
|
4624
|
+
const HeapGraphPath* HeapGraphNode::GetRetainingPath(int index) const {
|
4625
|
+
IsDeadCheck("v8::HeapSnapshot::GetRetainingPath");
|
4626
|
+
return reinterpret_cast<const HeapGraphPath*>(
|
4627
|
+
const_cast<i::HeapEntry*>(
|
4628
|
+
reinterpret_cast<const i::HeapEntry*>(
|
4629
|
+
this))->GetRetainingPaths()->at(index));
|
4630
|
+
}
|
4631
|
+
|
4632
|
+
|
4633
|
+
const HeapGraphNode* HeapSnapshotsDiff::GetAdditionsRoot() const {
|
4634
|
+
IsDeadCheck("v8::HeapSnapshotsDiff::GetAdditionsRoot");
|
4635
|
+
const i::HeapSnapshotsDiff* diff =
|
4636
|
+
reinterpret_cast<const i::HeapSnapshotsDiff*>(this);
|
4637
|
+
return reinterpret_cast<const HeapGraphNode*>(diff->additions_root());
|
4638
|
+
}
|
4639
|
+
|
4640
|
+
|
4641
|
+
const HeapGraphNode* HeapSnapshotsDiff::GetDeletionsRoot() const {
|
4642
|
+
IsDeadCheck("v8::HeapSnapshotsDiff::GetDeletionsRoot");
|
4643
|
+
const i::HeapSnapshotsDiff* diff =
|
4644
|
+
reinterpret_cast<const i::HeapSnapshotsDiff*>(this);
|
4645
|
+
return reinterpret_cast<const HeapGraphNode*>(diff->deletions_root());
|
4646
|
+
}
|
4647
|
+
|
4648
|
+
|
4649
|
+
unsigned HeapSnapshot::GetUid() const {
|
4650
|
+
IsDeadCheck("v8::HeapSnapshot::GetUid");
|
4651
|
+
return reinterpret_cast<const i::HeapSnapshot*>(this)->uid();
|
4652
|
+
}
|
4653
|
+
|
4654
|
+
|
4655
|
+
Handle<String> HeapSnapshot::GetTitle() const {
|
4656
|
+
IsDeadCheck("v8::HeapSnapshot::GetTitle");
|
4657
|
+
const i::HeapSnapshot* snapshot =
|
4658
|
+
reinterpret_cast<const i::HeapSnapshot*>(this);
|
4659
|
+
return Handle<String>(ToApi<String>(i::Factory::LookupAsciiSymbol(
|
4660
|
+
snapshot->title())));
|
4661
|
+
}
|
4662
|
+
|
4663
|
+
|
4664
|
+
const HeapGraphNode* HeapSnapshot::GetRoot() const {
|
4665
|
+
IsDeadCheck("v8::HeapSnapshot::GetHead");
|
4666
|
+
const i::HeapSnapshot* snapshot =
|
4667
|
+
reinterpret_cast<const i::HeapSnapshot*>(this);
|
4668
|
+
return reinterpret_cast<const HeapGraphNode*>(snapshot->const_root());
|
4669
|
+
}
|
4670
|
+
|
4671
|
+
|
4672
|
+
const HeapSnapshotsDiff* HeapSnapshot::CompareWith(
|
4673
|
+
const HeapSnapshot* snapshot) const {
|
4674
|
+
IsDeadCheck("v8::HeapSnapshot::CompareWith");
|
4675
|
+
i::HeapSnapshot* snapshot1 = const_cast<i::HeapSnapshot*>(
|
4676
|
+
reinterpret_cast<const i::HeapSnapshot*>(this));
|
4677
|
+
i::HeapSnapshot* snapshot2 = const_cast<i::HeapSnapshot*>(
|
4678
|
+
reinterpret_cast<const i::HeapSnapshot*>(snapshot));
|
4679
|
+
return reinterpret_cast<const HeapSnapshotsDiff*>(
|
4680
|
+
snapshot1->CompareWith(snapshot2));
|
4681
|
+
}
|
4682
|
+
|
4683
|
+
|
4684
|
+
int HeapProfiler::GetSnapshotsCount() {
|
4685
|
+
IsDeadCheck("v8::HeapProfiler::GetSnapshotsCount");
|
4686
|
+
return i::HeapProfiler::GetSnapshotsCount();
|
4687
|
+
}
|
4688
|
+
|
4689
|
+
|
4690
|
+
const HeapSnapshot* HeapProfiler::GetSnapshot(int index) {
|
4691
|
+
IsDeadCheck("v8::HeapProfiler::GetSnapshot");
|
4692
|
+
return reinterpret_cast<const HeapSnapshot*>(
|
4693
|
+
i::HeapProfiler::GetSnapshot(index));
|
4694
|
+
}
|
4695
|
+
|
4696
|
+
|
4697
|
+
const HeapSnapshot* HeapProfiler::FindSnapshot(unsigned uid) {
|
4698
|
+
IsDeadCheck("v8::HeapProfiler::FindSnapshot");
|
4699
|
+
return reinterpret_cast<const HeapSnapshot*>(
|
4700
|
+
i::HeapProfiler::FindSnapshot(uid));
|
4701
|
+
}
|
4702
|
+
|
4703
|
+
|
4704
|
+
const HeapSnapshot* HeapProfiler::TakeSnapshot(Handle<String> title) {
|
4705
|
+
IsDeadCheck("v8::HeapProfiler::TakeSnapshot");
|
4706
|
+
return reinterpret_cast<const HeapSnapshot*>(
|
4707
|
+
i::HeapProfiler::TakeSnapshot(*Utils::OpenHandle(*title)));
|
4164
4708
|
}
|
4165
4709
|
|
4166
4710
|
#endif // ENABLE_LOGGING_AND_PROFILING
|