therubyracer 0.6.3 → 0.7.0.pre
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/Rakefile +10 -9
- data/ext/v8/callbacks.cpp +15 -8
- data/ext/v8/converters.cpp +7 -8
- data/ext/v8/converters.h +0 -2
- data/ext/v8/extconf.rb +2 -0
- data/ext/v8/rr.cpp +169 -0
- data/ext/v8/rr.h +34 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/AUTHORS +8 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/ChangeLog +198 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/LICENSE +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/SConstruct +152 -38
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/include/v8-debug.h +52 -4
- data/ext/v8/upstream/2.1.10/include/v8-profiler.h +176 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/include/v8.h +227 -48
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/SConscript +60 -10
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/accessors.cc +5 -39
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/accessors.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/allocation.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/allocation.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/api.cc +477 -57
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/api.h +8 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/apinatives.js +1 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/apiutils.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arguments.h +5 -6
- data/ext/v8/upstream/{2.0.6/src/arm/assembler-thumb2-inl.h → 2.1.10/src/arm/assembler-arm-inl.h} +42 -27
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/assembler-arm.cc +430 -216
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/assembler-arm.h +199 -110
- data/ext/v8/upstream/{2.0.6/src/arm/assembler-arm-inl.h → 2.1.10/src/arm/assembler-thumb2-inl.h} +4 -18
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/assembler-thumb2.cc +142 -85
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/assembler-thumb2.h +18 -9
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/builtins-arm.cc +127 -87
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/codegen-arm-inl.h +3 -5
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/codegen-arm.cc +4634 -1427
- data/ext/v8/upstream/2.1.10/src/arm/codegen-arm.h +946 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/constants-arm.cc +21 -3
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/constants-arm.h +39 -13
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/cpu-arm.cc +9 -3
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/debug-arm.cc +34 -8
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/disasm-arm.cc +262 -117
- data/ext/v8/upstream/2.1.10/src/arm/fast-codegen-arm.cc +238 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/frames-arm.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/frames-arm.h +0 -0
- data/ext/v8/upstream/{2.0.6/src/arm/fast-codegen-arm.cc → 2.1.10/src/arm/full-codegen-arm.cc} +453 -283
- data/ext/v8/upstream/2.1.10/src/arm/ic-arm.cc +1833 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/jump-target-arm.cc +3 -29
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/macro-assembler-arm.cc +564 -104
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/macro-assembler-arm.h +255 -46
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/regexp-macro-assembler-arm.cc +78 -104
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/regexp-macro-assembler-arm.h +6 -22
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/register-allocator-arm-inl.h +0 -3
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/register-allocator-arm.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/register-allocator-arm.h +2 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/simulator-arm.cc +557 -180
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/simulator-arm.h +52 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/arm/stub-cache-arm.cc +904 -240
- data/ext/v8/upstream/2.1.10/src/arm/virtual-frame-arm.cc +668 -0
- data/ext/v8/upstream/2.1.10/src/arm/virtual-frame-arm.h +503 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/array.js +82 -109
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/assembler.cc +49 -13
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/assembler.h +27 -5
- data/ext/v8/upstream/2.1.10/src/ast.cc +1138 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ast.h +354 -53
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/bootstrapper.cc +609 -501
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/bootstrapper.h +27 -8
- data/ext/v8/upstream/2.1.10/src/builtins.cc +1512 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/builtins.h +41 -25
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/bytecodes-irregexp.h +0 -0
- data/ext/v8/upstream/2.1.10/src/cached-powers.h +119 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/char-predicates-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/char-predicates.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/checks.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/checks.h +25 -1
- data/ext/v8/upstream/2.1.10/src/circular-queue-inl.h +101 -0
- data/ext/v8/upstream/2.1.10/src/circular-queue.cc +121 -0
- data/ext/v8/upstream/2.1.10/src/circular-queue.h +129 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/code-stubs.cc +23 -8
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/code-stubs.h +16 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/code.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/codegen-inl.h +6 -34
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/codegen.cc +73 -92
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/codegen.h +164 -68
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/compilation-cache.cc +117 -73
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/compilation-cache.h +18 -17
- data/ext/v8/upstream/2.1.10/src/compiler.cc +623 -0
- data/ext/v8/upstream/2.1.10/src/compiler.h +299 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/contexts.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/contexts.h +8 -11
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/conversions-inl.h +28 -13
- data/ext/v8/upstream/2.1.10/src/conversions.cc +1105 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/conversions.h +9 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/counters.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/counters.h +1 -1
- data/ext/v8/upstream/2.1.10/src/cpu-profiler-inl.h +99 -0
- data/ext/v8/upstream/2.1.10/src/cpu-profiler.cc +494 -0
- data/ext/v8/upstream/2.1.10/src/cpu-profiler.h +277 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/cpu.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8-debug.cc +15 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8-debug.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8-posix.cc +18 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8-readline.cc +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8-windows.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8.cc +10 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8.h +2 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/d8.js +43 -38
- data/ext/v8/upstream/2.1.10/src/data-flow.cc +755 -0
- data/ext/v8/upstream/2.1.10/src/data-flow.h +278 -0
- data/ext/v8/upstream/{2.0.6/src/date-delay.js → 2.1.10/src/date.js} +100 -110
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/dateparser-inl.h +11 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/dateparser.cc +24 -26
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/dateparser.h +8 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/debug-agent.cc +3 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/debug-agent.h +0 -0
- data/ext/v8/upstream/{2.0.6/src/debug-delay.js → 2.1.10/src/debug-debugger.js} +111 -15
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/debug.cc +156 -96
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/debug.h +53 -5
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/disasm.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/disassembler.cc +2 -8
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/disassembler.h +0 -0
- data/ext/v8/upstream/2.1.10/src/diy-fp.cc +58 -0
- data/ext/v8/upstream/2.1.10/src/diy-fp.h +117 -0
- data/ext/v8/upstream/2.1.10/src/double.h +169 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/dtoa-config.c +4 -3
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/execution.cc +22 -22
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/execution.h +17 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/factory.cc +70 -46
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/factory.h +27 -17
- data/ext/v8/upstream/2.1.10/src/fast-codegen.cc +746 -0
- data/ext/v8/upstream/2.1.10/src/fast-codegen.h +161 -0
- data/ext/v8/upstream/2.1.10/src/fast-dtoa.cc +512 -0
- data/ext/v8/upstream/2.1.10/src/fast-dtoa.h +59 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/flag-definitions.h +32 -11
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/flags.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/flags.h +0 -0
- data/ext/v8/upstream/2.1.10/src/flow-graph.cc +763 -0
- data/ext/v8/upstream/2.1.10/src/flow-graph.h +180 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/frame-element.cc +1 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/frame-element.h +49 -11
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/frames-inl.h +2 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/frames.cc +91 -17
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/frames.h +24 -2
- data/ext/v8/upstream/{2.0.6/src/fast-codegen.cc → 2.1.10/src/full-codegen.cc} +549 -198
- data/ext/v8/upstream/{2.0.6/src/fast-codegen.h → 2.1.10/src/full-codegen.h} +109 -29
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/func-name-inferrer.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/func-name-inferrer.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/global-handles.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/global-handles.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/globals.h +67 -43
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/handles-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/handles.cc +124 -129
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/handles.h +33 -15
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/hashmap.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/hashmap.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/heap-inl.h +56 -12
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/heap-profiler.cc +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/heap-profiler.h +2 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/heap.cc +413 -221
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/heap.h +192 -67
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/assembler-ia32-inl.h +6 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/assembler-ia32.cc +187 -32
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/assembler-ia32.h +31 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/builtins-ia32.cc +160 -133
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/codegen-ia32-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/codegen-ia32.cc +5533 -2177
- data/ext/v8/upstream/{2.0.6/src/x64/codegen-x64.h → 2.1.10/src/ia32/codegen-ia32.h} +453 -134
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/cpu-ia32.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/debug-ia32.cc +63 -8
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/disasm-ia32.cc +99 -16
- data/ext/v8/upstream/2.1.10/src/ia32/fast-codegen-ia32.cc +950 -0
- data/ext/v8/upstream/2.1.10/src/ia32/fast-codegen-ia32.h +155 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/frames-ia32.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/frames-ia32.h +0 -0
- data/ext/v8/upstream/{2.0.6/src/ia32/fast-codegen-ia32.cc → 2.1.10/src/ia32/full-codegen-ia32.cc} +454 -253
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/ic-ia32.cc +545 -390
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/jump-target-ia32.cc +1 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/macro-assembler-ia32.cc +330 -139
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/macro-assembler-ia32.h +96 -30
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/regexp-macro-assembler-ia32.cc +73 -89
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/regexp-macro-assembler-ia32.h +6 -21
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/register-allocator-ia32-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/register-allocator-ia32.cc +59 -5
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/register-allocator-ia32.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/simulator-ia32.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/simulator-ia32.h +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/stub-cache-ia32.cc +745 -303
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/virtual-frame-ia32.cc +278 -71
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ia32/virtual-frame-ia32.h +78 -22
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ic-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ic.cc +172 -89
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/ic.h +51 -20
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/interpreter-irregexp.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/interpreter-irregexp.h +0 -0
- data/ext/v8/upstream/{2.0.6/src/json-delay.js → 2.1.10/src/json.js} +26 -12
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/jsregexp.cc +151 -118
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/jsregexp.h +31 -7
- data/ext/v8/upstream/2.1.10/src/jump-target-heavy-inl.h +51 -0
- data/ext/v8/upstream/{2.0.6/src/jump-target.cc → 2.1.10/src/jump-target-heavy.cc} +164 -184
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/jump-target-inl.h +8 -9
- data/ext/v8/upstream/{2.0.6/src/usage-analyzer.h → 2.1.10/src/jump-target-light-inl.h} +9 -7
- data/ext/v8/upstream/2.1.10/src/jump-target-light.cc +86 -0
- data/ext/v8/upstream/2.1.10/src/jump-target.cc +155 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/jump-target.h +6 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/list-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/list.h +2 -1
- data/ext/v8/upstream/2.1.10/src/liveedit-debugger.js +944 -0
- data/ext/v8/upstream/2.1.10/src/liveedit.cc +1468 -0
- data/ext/v8/upstream/2.1.10/src/liveedit.h +170 -0
- data/ext/v8/upstream/2.1.10/src/log-inl.h +59 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/log-utils.cc +3 -9
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/log-utils.h +1 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/log.cc +198 -95
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/log.h +50 -49
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/macro-assembler.h +9 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/macros.py +30 -11
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/mark-compact.cc +464 -152
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/mark-compact.h +41 -20
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/math.js +9 -8
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/memory.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/messages.cc +1 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/messages.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/messages.js +46 -9
- data/ext/v8/upstream/2.1.10/src/mips/assembler-mips-inl.h +215 -0
- data/ext/v8/upstream/2.1.10/src/mips/assembler-mips.cc +1208 -0
- data/ext/v8/upstream/2.1.10/src/mips/assembler-mips.h +665 -0
- data/ext/v8/upstream/2.1.10/src/mips/builtins-mips.cc +202 -0
- data/ext/v8/upstream/2.1.10/src/mips/codegen-mips-inl.h +70 -0
- data/ext/v8/upstream/2.1.10/src/mips/codegen-mips.cc +1428 -0
- data/ext/v8/upstream/{2.0.6/src/arm/codegen-arm.h → 2.1.10/src/mips/codegen-mips.h} +103 -205
- data/ext/v8/upstream/2.1.10/src/mips/constants-mips.cc +323 -0
- data/ext/v8/upstream/2.1.10/src/mips/constants-mips.h +525 -0
- data/ext/v8/upstream/2.1.10/src/mips/cpu-mips.cc +69 -0
- data/ext/v8/upstream/2.1.10/src/mips/debug-mips.cc +128 -0
- data/ext/v8/upstream/2.1.10/src/mips/disasm-mips.cc +784 -0
- data/ext/v8/upstream/2.1.10/src/mips/fast-codegen-mips.cc +74 -0
- data/ext/v8/upstream/2.1.10/src/mips/frames-mips.cc +99 -0
- data/ext/v8/upstream/2.1.10/src/mips/frames-mips.h +164 -0
- data/ext/v8/upstream/2.1.10/src/mips/full-codegen-mips.cc +273 -0
- data/ext/v8/upstream/2.1.10/src/mips/ic-mips.cc +217 -0
- data/ext/v8/upstream/2.1.10/src/mips/jump-target-mips.cc +172 -0
- data/ext/v8/upstream/2.1.10/src/mips/macro-assembler-mips.cc +1323 -0
- data/ext/v8/upstream/2.1.10/src/mips/macro-assembler-mips.h +461 -0
- data/ext/v8/upstream/2.1.10/src/mips/register-allocator-mips-inl.h +137 -0
- data/ext/v8/upstream/2.1.10/src/mips/register-allocator-mips.cc +60 -0
- data/ext/v8/upstream/2.1.10/src/mips/register-allocator-mips.h +46 -0
- data/ext/v8/upstream/2.1.10/src/mips/simulator-mips.cc +1648 -0
- data/ext/v8/upstream/2.1.10/src/mips/simulator-mips.h +311 -0
- data/ext/v8/upstream/2.1.10/src/mips/stub-cache-mips.cc +400 -0
- data/ext/v8/upstream/2.1.10/src/mips/virtual-frame-mips.cc +316 -0
- data/ext/v8/upstream/{2.0.6/src/arm/virtual-frame-arm.h → 2.1.10/src/mips/virtual-frame-mips.h} +87 -71
- data/ext/v8/upstream/{2.0.6/src/mirror-delay.js → 2.1.10/src/mirror-debugger.js} +51 -45
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/mksnapshot.cc +97 -10
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/natives.h +6 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/objects-debug.cc +47 -5
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/objects-inl.h +154 -38
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/objects.cc +528 -280
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/objects.h +302 -95
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/oprofile-agent.cc +25 -33
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/oprofile-agent.h +9 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/parser.cc +444 -72
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/parser.h +4 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform-freebsd.cc +32 -13
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform-linux.cc +59 -25
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform-macos.cc +30 -13
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform-nullos.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform-openbsd.cc +21 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform-posix.cc +0 -18
- data/ext/v8/upstream/2.1.10/src/platform-solaris.cc +607 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform-win32.cc +16 -17
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/platform.h +25 -8
- data/ext/v8/upstream/2.1.10/src/powers-ten.h +2461 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/prettyprinter.cc +49 -29
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/prettyprinter.h +3 -1
- data/ext/v8/upstream/2.1.10/src/profile-generator-inl.h +124 -0
- data/ext/v8/upstream/2.1.10/src/profile-generator.cc +583 -0
- data/ext/v8/upstream/2.1.10/src/profile-generator.h +364 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/property.cc +1 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/property.h +12 -24
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-macro-assembler-irregexp-inl.h +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-macro-assembler-irregexp.cc +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-macro-assembler-irregexp.h +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-macro-assembler-tracer.cc +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-macro-assembler-tracer.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-macro-assembler.cc +33 -10
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-macro-assembler.h +12 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-stack.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/regexp-stack.h +0 -0
- data/ext/v8/upstream/{2.0.6/src/regexp-delay.js → 2.1.10/src/regexp.js} +180 -58
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/register-allocator-inl.h +68 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/register-allocator.cc +5 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/register-allocator.h +42 -17
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/rewriter.cc +110 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/rewriter.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/runtime.cc +2733 -623
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/runtime.h +43 -20
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/runtime.js +46 -35
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/scanner.cc +278 -36
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/scanner.h +97 -26
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/scopeinfo.cc +3 -3
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/scopeinfo.h +1 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/scopes.cc +11 -12
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/scopes.h +0 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/serialize.cc +298 -175
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/serialize.h +184 -40
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/shell.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/simulator.h +2 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/smart-pointer.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/snapshot-common.cc +16 -31
- data/ext/v8/upstream/2.1.10/src/snapshot-empty.cc +50 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/snapshot.h +13 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/spaces-inl.h +35 -27
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/spaces.cc +256 -42
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/spaces.h +136 -42
- data/ext/v8/upstream/{2.0.6/src/zone-inl.h → 2.1.10/src/splay-tree-inl.h} +102 -89
- data/ext/v8/upstream/2.1.10/src/splay-tree.h +203 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/string-stream.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/string-stream.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/string.js +260 -149
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/stub-cache.cc +195 -69
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/stub-cache.h +127 -12
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/third_party/dtoa/COPYING +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/third_party/dtoa/dtoa.c +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/third_party/valgrind/valgrind.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/token.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/token.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/top.cc +26 -31
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/top.h +3 -4
- data/ext/v8/upstream/2.1.10/src/type-info.cc +53 -0
- data/ext/v8/upstream/2.1.10/src/type-info.h +244 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/unicode-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/unicode.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/unicode.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/uri.js +6 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/utils.cc +0 -37
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/utils.h +121 -50
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/v8-counters.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/v8-counters.h +130 -98
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/v8.cc +42 -11
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/v8.h +4 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/v8natives.js +202 -37
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/v8threads.cc +11 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/v8threads.h +15 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/variables.cc +7 -51
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/variables.h +5 -35
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/version.cc +3 -3
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/version.h +0 -0
- data/ext/v8/upstream/2.1.10/src/virtual-frame-heavy-inl.h +152 -0
- data/ext/v8/upstream/{2.0.6/src/virtual-frame.cc → 2.1.10/src/virtual-frame-heavy.cc} +107 -176
- data/ext/v8/upstream/2.1.10/src/virtual-frame-inl.h +39 -0
- data/ext/v8/upstream/2.1.10/src/virtual-frame-light-inl.h +69 -0
- data/ext/v8/upstream/2.1.10/src/virtual-frame-light.cc +49 -0
- data/ext/v8/upstream/2.1.10/src/virtual-frame.cc +49 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/virtual-frame.h +2 -0
- data/ext/v8/upstream/{2.0.6/src/log-inl.h → 2.1.10/src/vm-state-inl.h} +28 -20
- data/ext/v8/upstream/{2.0.6/src/snapshot-empty.cc → 2.1.10/src/vm-state.cc} +5 -6
- data/ext/v8/upstream/2.1.10/src/vm-state.h +75 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/assembler-x64-inl.h +11 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/assembler-x64.cc +285 -93
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/assembler-x64.h +81 -78
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/builtins-x64.cc +130 -87
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/codegen-x64-inl.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/codegen-x64.cc +4520 -1317
- data/ext/v8/upstream/{2.0.6/src/ia32/codegen-ia32.h → 2.1.10/src/x64/codegen-x64.h} +362 -141
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/cpu-x64.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/debug-x64.cc +20 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/disasm-x64.cc +121 -44
- data/ext/v8/upstream/2.1.10/src/x64/fast-codegen-x64.cc +246 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/frames-x64.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/frames-x64.h +0 -0
- data/ext/v8/upstream/{2.0.6/src/x64/fast-codegen-x64.cc → 2.1.10/src/x64/full-codegen-x64.cc} +404 -231
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/ic-x64.cc +346 -117
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/jump-target-x64.cc +1 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/macro-assembler-x64.cc +537 -181
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/macro-assembler-x64.h +140 -34
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/regexp-macro-assembler-x64.cc +74 -96
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/regexp-macro-assembler-x64.h +8 -25
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/register-allocator-x64-inl.h +1 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/register-allocator-x64.cc +3 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/register-allocator-x64.h +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/simulator-x64.cc +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/simulator-x64.h +2 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/stub-cache-x64.cc +785 -288
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/virtual-frame-x64.cc +128 -52
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/x64/virtual-frame-x64.h +40 -19
- data/ext/v8/upstream/2.1.10/src/zone-inl.h +82 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/zone.cc +1 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/src/zone.h +6 -90
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/codemap.js +12 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/consarray.js +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/csvparser.js +22 -37
- data/ext/v8/upstream/2.1.10/tools/generate-ten-powers.scm +286 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/gyp/v8.gyp +86 -24
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/js2c.py +22 -22
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/jsmin.py +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/linux-tick-processor +10 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/linux-tick-processor.py +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/logreader.js +34 -16
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/mac-nm +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/mac-tick-processor +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/annotate +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/common +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/dump +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/report +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/reset +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/run +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/shutdown +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/oprofile/start +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/presubmit.py +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/process-heap-prof.py +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/profile.js +70 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/profile_view.js +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/run-valgrind.py +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/splaytree.js +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/splaytree.py +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/stats-viewer.py +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/test.py +7 -7
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/tickprocessor-driver.js +7 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/tickprocessor.js +140 -9
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/tickprocessor.py +40 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/utils.py +6 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/README.txt +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/arm.vsprops +1 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/common.vsprops +1 -2
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/d8.vcproj +0 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/d8_arm.vcproj +193 -199
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/d8_x64.vcproj +16 -8
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/d8js2c.cmd +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/debug.vsprops +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/ia32.vsprops +5 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/js2c.cmd +1 -1
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/release.vsprops +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8.sln +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8.vcproj +11 -7
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_arm.sln +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_arm.vcproj +227 -223
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_base.vcproj +137 -5
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_base_arm.vcproj +116 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_base_x64.vcproj +125 -4
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_cctest.vcproj +12 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_cctest_arm.vcproj +12 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_cctest_x64.vcproj +11 -11
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_mksnapshot.vcproj +0 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_mksnapshot_x64.vcproj +0 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_process_sample.vcproj +0 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_process_sample_arm.vcproj +145 -151
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_process_sample_x64.vcproj +16 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_shell_sample.vcproj +0 -6
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_shell_sample_arm.vcproj +145 -151
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_shell_sample_x64.vcproj +16 -8
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_snapshot.vcproj +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_snapshot_cc.vcproj +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_snapshot_cc_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_snapshot_x64.vcproj +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_x64.sln +0 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/v8_x64.vcproj +11 -7
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/visual_studio/x64.vsprops +5 -1
- data/ext/v8/upstream/2.1.10/tools/windows-tick-processor.bat +29 -0
- data/ext/v8/upstream/{2.0.6 → 2.1.10}/tools/windows-tick-processor.py +0 -0
- data/ext/v8/upstream/Makefile +8 -2
- data/ext/v8/v8.cpp +21 -73
- data/ext/v8/v8_array.cpp +56 -0
- data/ext/v8/v8_array.h +8 -0
- data/ext/v8/v8_callbacks.cpp +121 -0
- data/ext/v8/v8_callbacks.h +8 -0
- data/ext/v8/v8_cxt.cpp +74 -77
- data/ext/v8/v8_cxt.h +2 -9
- data/ext/v8/v8_date.cpp +26 -0
- data/ext/v8/v8_date.h +6 -0
- data/ext/v8/v8_exception.cpp +55 -0
- data/ext/v8/v8_exception.h +6 -0
- data/ext/v8/v8_external.cpp +50 -0
- data/ext/v8/v8_external.h +8 -0
- data/ext/v8/v8_func.cpp +76 -18
- data/ext/v8/v8_func.h +5 -4
- data/ext/v8/v8_msg.cpp +55 -46
- data/ext/v8/v8_msg.h +3 -11
- data/ext/v8/v8_obj.cpp +67 -36
- data/ext/v8/v8_obj.h +6 -8
- data/ext/v8/v8_ref.cpp +25 -9
- data/ext/v8/v8_ref.h +3 -5
- data/ext/v8/v8_script.cpp +17 -10
- data/ext/v8/v8_script.h +3 -3
- data/ext/v8/v8_str.cpp +34 -6
- data/ext/v8/v8_str.h +4 -2
- data/ext/v8/v8_template.cpp +195 -33
- data/ext/v8/v8_template.h +4 -5
- data/ext/v8/v8_try_catch.cpp +99 -0
- data/ext/v8/v8_try_catch.h +5 -0
- data/ext/v8/v8_value.cpp +164 -0
- data/ext/v8/v8_value.h +10 -0
- data/lib/v8.rb +3 -1
- data/lib/v8/access.rb +60 -0
- data/lib/v8/array.rb +15 -0
- data/lib/v8/callbacks.rb +88 -0
- data/lib/v8/cli.rb +1 -1
- data/lib/v8/context.rb +55 -66
- data/lib/v8/function.rb +20 -2
- data/lib/v8/object.rb +14 -12
- data/lib/v8/ruby_error.rb +3 -0
- data/lib/v8/to.rb +59 -7
- data/spec/ext/cxt_spec.rb +2 -15
- data/spec/ext/func_spec.rb +17 -10
- data/spec/ext/try_catch_spec.rb +32 -0
- data/spec/foo.rb +17 -0
- data/spec/redjs/jsapi_spec.rb +173 -96
- data/spec/spec_helper.rb +7 -0
- data/spec/v8/to_spec.rb +0 -1
- data/therubyracer.gemspec +6 -6
- metadata +493 -386
- data/ext/v8/upstream/2.0.6/src/arm/ic-arm.cc +0 -849
- data/ext/v8/upstream/2.0.6/src/arm/virtual-frame-arm.cc +0 -412
- data/ext/v8/upstream/2.0.6/src/ast.cc +0 -512
- data/ext/v8/upstream/2.0.6/src/builtins.cc +0 -851
- data/ext/v8/upstream/2.0.6/src/compiler.cc +0 -1132
- data/ext/v8/upstream/2.0.6/src/compiler.h +0 -107
- data/ext/v8/upstream/2.0.6/src/conversions.cc +0 -709
- data/ext/v8/upstream/2.0.6/src/usage-analyzer.cc +0 -426
- data/ext/v8/upstream/2.0.6/tools/windows-tick-processor.bat +0 -5
- data/ext/v8/upstream/no-strict-aliasing.patch +0 -13
- data/ext/v8/v8_standalone.cpp +0 -69
- data/ext/v8/v8_standalone.h +0 -31
- data/spec/ext/obj_spec.rb +0 -13
File without changes
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2010 the V8 project authors. All rights reserved.
|
2
2
|
# Redistribution and use in source and binary forms, with or without
|
3
3
|
# modification, are permitted provided that the following conditions are
|
4
4
|
# met:
|
@@ -35,7 +35,6 @@ root_dir = dirname(File('SConstruct').rfile().abspath)
|
|
35
35
|
sys.path.append(join(root_dir, 'tools'))
|
36
36
|
import js2c, utils
|
37
37
|
|
38
|
-
|
39
38
|
# ANDROID_TOP is the top of the Android checkout, fetched from the environment
|
40
39
|
# variable 'TOP'. You will also need to set the CXX, CC, AR and RANLIB
|
41
40
|
# environment variables to the cross-compiling tools.
|
@@ -43,19 +42,32 @@ ANDROID_TOP = os.environ.get('TOP')
|
|
43
42
|
if ANDROID_TOP is None:
|
44
43
|
ANDROID_TOP=""
|
45
44
|
|
45
|
+
# ARM_TARGET_LIB is the path to the dynamic library to use on the target
|
46
|
+
# machine if cross-compiling to an arm machine. You will also need to set
|
47
|
+
# the additional cross-compiling environment variables to the cross compiler.
|
48
|
+
ARM_TARGET_LIB = os.environ.get('ARM_TARGET_LIB')
|
49
|
+
if ARM_TARGET_LIB:
|
50
|
+
ARM_LINK_FLAGS = ['-Wl,-rpath=' + ARM_TARGET_LIB + '/lib:' +
|
51
|
+
ARM_TARGET_LIB + '/usr/lib',
|
52
|
+
'-Wl,--dynamic-linker=' + ARM_TARGET_LIB +
|
53
|
+
'/lib/ld-linux.so.3']
|
54
|
+
else:
|
55
|
+
ARM_LINK_FLAGS = []
|
56
|
+
|
46
57
|
# TODO: Sort these issues out properly but as a temporary solution for gcc 4.4
|
47
58
|
# on linux we need these compiler flags to avoid crashes in the v8 test suite
|
48
59
|
# and avoid dtoa.c strict aliasing issues
|
49
60
|
if os.environ.get('GCC_VERSION') == '44':
|
50
|
-
GCC_EXTRA_CCFLAGS = ['-fno-tree-vrp']
|
51
|
-
GCC_DTOA_EXTRA_CCFLAGS = [
|
61
|
+
GCC_EXTRA_CCFLAGS = ['-fno-tree-vrp', '-fno-strict-aliasing']
|
62
|
+
GCC_DTOA_EXTRA_CCFLAGS = []
|
52
63
|
else:
|
53
64
|
GCC_EXTRA_CCFLAGS = []
|
54
65
|
GCC_DTOA_EXTRA_CCFLAGS = []
|
55
66
|
|
56
|
-
ANDROID_FLAGS = ['-march=
|
57
|
-
'-mtune=
|
58
|
-
'-
|
67
|
+
ANDROID_FLAGS = ['-march=armv7-a',
|
68
|
+
'-mtune=cortex-a8',
|
69
|
+
'-mfloat-abi=softfp',
|
70
|
+
'-mfpu=vfp',
|
59
71
|
'-fpic',
|
60
72
|
'-mthumb-interwork',
|
61
73
|
'-funwind-tables',
|
@@ -70,6 +82,8 @@ ANDROID_FLAGS = ['-march=armv5te',
|
|
70
82
|
'-fomit-frame-pointer',
|
71
83
|
'-fno-strict-aliasing',
|
72
84
|
'-finline-limit=64',
|
85
|
+
'-DCAN_USE_VFP_INSTRUCTIONS=1',
|
86
|
+
'-DCAN_USE_ARMV7_INSTRUCTIONS=1',
|
73
87
|
'-MD']
|
74
88
|
|
75
89
|
ANDROID_INCLUDES = [ANDROID_TOP + '/bionic/libc/arch-arm/include',
|
@@ -91,20 +105,26 @@ ANDROID_LINKFLAGS = ['-nostdlib',
|
|
91
105
|
'-Wl,-z,nocopyreloc',
|
92
106
|
'-Wl,-rpath-link=' + ANDROID_TOP + '/out/target/product/generic/obj/lib',
|
93
107
|
ANDROID_TOP + '/out/target/product/generic/obj/lib/crtbegin_dynamic.o',
|
94
|
-
ANDROID_TOP + '/prebuilt/linux-x86/toolchain/arm-eabi-4.
|
108
|
+
ANDROID_TOP + '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork/libgcc.a',
|
95
109
|
ANDROID_TOP + '/out/target/product/generic/obj/lib/crtend_android.o'];
|
96
110
|
|
97
111
|
LIBRARY_FLAGS = {
|
98
112
|
'all': {
|
99
113
|
'CPPPATH': [join(root_dir, 'src')],
|
100
|
-
'regexp:
|
101
|
-
|
114
|
+
'regexp:interpreted': {
|
115
|
+
'CPPDEFINES': ['V8_INTERPRETED_REGEXP']
|
102
116
|
},
|
103
117
|
'mode:debug': {
|
104
118
|
'CPPDEFINES': ['V8_ENABLE_CHECKS']
|
105
119
|
},
|
120
|
+
'vmstate:on': {
|
121
|
+
'CPPDEFINES': ['ENABLE_VMSTATE_TRACKING'],
|
122
|
+
},
|
123
|
+
'protectheap:on': {
|
124
|
+
'CPPDEFINES': ['ENABLE_VMSTATE_TRACKING', 'ENABLE_HEAP_PROTECTION'],
|
125
|
+
},
|
106
126
|
'profilingsupport:on': {
|
107
|
-
'CPPDEFINES': ['ENABLE_LOGGING_AND_PROFILING'],
|
127
|
+
'CPPDEFINES': ['ENABLE_VMSTATE_TRACKING', 'ENABLE_LOGGING_AND_PROFILING'],
|
108
128
|
},
|
109
129
|
'debuggersupport:on': {
|
110
130
|
'CPPDEFINES': ['ENABLE_DEBUGGER_SUPPORT'],
|
@@ -157,6 +177,11 @@ LIBRARY_FLAGS = {
|
|
157
177
|
'LIBPATH' : ['/usr/local/lib'],
|
158
178
|
'CCFLAGS': ['-ansi'],
|
159
179
|
},
|
180
|
+
'os:solaris': {
|
181
|
+
'CPPPATH' : ['/usr/local/include'],
|
182
|
+
'LIBPATH' : ['/usr/local/lib'],
|
183
|
+
'CCFLAGS': ['-ansi'],
|
184
|
+
},
|
160
185
|
'os:win32': {
|
161
186
|
'CCFLAGS': ['-DWIN32'],
|
162
187
|
'CXXFLAGS': ['-DWIN32'],
|
@@ -187,6 +212,17 @@ LIBRARY_FLAGS = {
|
|
187
212
|
'armvariant:arm': {
|
188
213
|
'CPPDEFINES': ['V8_ARM_VARIANT_ARM']
|
189
214
|
},
|
215
|
+
'arch:mips': {
|
216
|
+
'CPPDEFINES': ['V8_TARGET_ARCH_MIPS'],
|
217
|
+
'simulator:none': {
|
218
|
+
'CCFLAGS': ['-EL', '-mips32r2', '-Wa,-mips32r2', '-fno-inline'],
|
219
|
+
'LDFLAGS': ['-EL']
|
220
|
+
}
|
221
|
+
},
|
222
|
+
'simulator:mips': {
|
223
|
+
'CCFLAGS': ['-m32'],
|
224
|
+
'LINKFLAGS': ['-m32']
|
225
|
+
},
|
190
226
|
'arch:x64': {
|
191
227
|
'CPPDEFINES': ['V8_TARGET_ARCH_X64'],
|
192
228
|
'CCFLAGS': ['-m64'],
|
@@ -240,8 +276,16 @@ LIBRARY_FLAGS = {
|
|
240
276
|
},
|
241
277
|
'msvcltcg:on': {
|
242
278
|
'CCFLAGS': ['/GL'],
|
243
|
-
'LINKFLAGS': ['/LTCG'],
|
244
279
|
'ARFLAGS': ['/LTCG'],
|
280
|
+
'pgo:off': {
|
281
|
+
'LINKFLAGS': ['/LTCG'],
|
282
|
+
},
|
283
|
+
'pgo:instrument': {
|
284
|
+
'LINKFLAGS': ['/LTCG:PGI']
|
285
|
+
},
|
286
|
+
'pgo:optimize': {
|
287
|
+
'LINKFLAGS': ['/LTCG:PGO']
|
288
|
+
}
|
245
289
|
}
|
246
290
|
}
|
247
291
|
}
|
@@ -277,24 +321,21 @@ V8_EXTRA_FLAGS = {
|
|
277
321
|
},
|
278
322
|
'msvc': {
|
279
323
|
'all': {
|
280
|
-
'WARNINGFLAGS': ['/WX', '/wd4355', '/wd4800']
|
324
|
+
'WARNINGFLAGS': ['/W3', '/WX', '/wd4355', '/wd4800']
|
281
325
|
},
|
282
326
|
'library:shared': {
|
283
327
|
'CPPDEFINES': ['BUILDING_V8_SHARED'],
|
284
328
|
'LIBS': ['winmm', 'ws2_32']
|
285
329
|
},
|
286
|
-
'arch:ia32': {
|
287
|
-
'WARNINGFLAGS': ['/W3']
|
288
|
-
},
|
289
|
-
'arch:x64': {
|
290
|
-
'WARNINGFLAGS': ['/W3']
|
291
|
-
},
|
292
330
|
'arch:arm': {
|
293
331
|
'CPPDEFINES': ['V8_TARGET_ARCH_ARM'],
|
294
332
|
# /wd4996 is to silence the warning about sscanf
|
295
333
|
# used by the arm simulator.
|
296
334
|
'WARNINGFLAGS': ['/wd4996']
|
297
335
|
},
|
336
|
+
'arch:mips': {
|
337
|
+
'CPPDEFINES': ['V8_TARGET_ARCH_MIPS'],
|
338
|
+
},
|
298
339
|
'disassembler:on': {
|
299
340
|
'CPPDEFINES': ['ENABLE_DISASSEMBLER']
|
300
341
|
}
|
@@ -313,6 +354,10 @@ MKSNAPSHOT_EXTRA_FLAGS = {
|
|
313
354
|
'os:freebsd': {
|
314
355
|
'LIBS': ['execinfo', 'pthread']
|
315
356
|
},
|
357
|
+
'os:solaris': {
|
358
|
+
'LIBS': ['m', 'pthread', 'socket', 'nsl', 'rt'],
|
359
|
+
'LINKFLAGS': ['-mt']
|
360
|
+
},
|
316
361
|
'os:openbsd': {
|
317
362
|
'LIBS': ['execinfo', 'pthread']
|
318
363
|
},
|
@@ -347,7 +392,6 @@ DTOA_EXTRA_FLAGS = {
|
|
347
392
|
CCTEST_EXTRA_FLAGS = {
|
348
393
|
'all': {
|
349
394
|
'CPPPATH': [join(root_dir, 'src')],
|
350
|
-
'LIBS': ['$LIBRARY']
|
351
395
|
},
|
352
396
|
'gcc': {
|
353
397
|
'all': {
|
@@ -362,6 +406,10 @@ CCTEST_EXTRA_FLAGS = {
|
|
362
406
|
'os:freebsd': {
|
363
407
|
'LIBS': ['execinfo', 'pthread']
|
364
408
|
},
|
409
|
+
'os:solaris': {
|
410
|
+
'LIBS': ['m', 'pthread', 'socket', 'nsl', 'rt'],
|
411
|
+
'LINKFLAGS': ['-mt']
|
412
|
+
},
|
365
413
|
'os:openbsd': {
|
366
414
|
'LIBS': ['execinfo', 'pthread']
|
367
415
|
},
|
@@ -373,13 +421,17 @@ CCTEST_EXTRA_FLAGS = {
|
|
373
421
|
'__ARM_ARCH_5E__', '__ARM_ARCH_5TE__'],
|
374
422
|
'CCFLAGS': ANDROID_FLAGS,
|
375
423
|
'CPPPATH': ANDROID_INCLUDES,
|
376
|
-
'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib'
|
424
|
+
'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib',
|
425
|
+
ANDROID_TOP + '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork'],
|
377
426
|
'LINKFLAGS': ANDROID_LINKFLAGS,
|
378
|
-
'LIBS': ['log', 'c', 'stdc++', 'm'],
|
427
|
+
'LIBS': ['log', 'c', 'stdc++', 'm', 'gcc'],
|
379
428
|
'mode:release': {
|
380
429
|
'CPPDEFINES': ['SK_RELEASE', 'NDEBUG']
|
381
430
|
}
|
382
431
|
},
|
432
|
+
'arch:arm': {
|
433
|
+
'LINKFLAGS': ARM_LINK_FLAGS
|
434
|
+
},
|
383
435
|
},
|
384
436
|
'msvc': {
|
385
437
|
'all': {
|
@@ -403,7 +455,6 @@ CCTEST_EXTRA_FLAGS = {
|
|
403
455
|
SAMPLE_FLAGS = {
|
404
456
|
'all': {
|
405
457
|
'CPPPATH': [join(abspath('.'), 'include')],
|
406
|
-
'LIBS': ['$LIBRARY'],
|
407
458
|
},
|
408
459
|
'gcc': {
|
409
460
|
'all': {
|
@@ -420,6 +471,11 @@ SAMPLE_FLAGS = {
|
|
420
471
|
'LIBPATH' : ['/usr/local/lib'],
|
421
472
|
'LIBS': ['execinfo', 'pthread']
|
422
473
|
},
|
474
|
+
'os:solaris': {
|
475
|
+
'LIBPATH' : ['/usr/local/lib'],
|
476
|
+
'LIBS': ['m', 'pthread', 'socket', 'nsl', 'rt'],
|
477
|
+
'LINKFLAGS': ['-mt']
|
478
|
+
},
|
423
479
|
'os:openbsd': {
|
424
480
|
'LIBPATH' : ['/usr/local/lib'],
|
425
481
|
'LIBS': ['execinfo', 'pthread']
|
@@ -432,13 +488,17 @@ SAMPLE_FLAGS = {
|
|
432
488
|
'__ARM_ARCH_5E__', '__ARM_ARCH_5TE__'],
|
433
489
|
'CCFLAGS': ANDROID_FLAGS,
|
434
490
|
'CPPPATH': ANDROID_INCLUDES,
|
435
|
-
'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib'
|
491
|
+
'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib',
|
492
|
+
ANDROID_TOP + '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork'],
|
436
493
|
'LINKFLAGS': ANDROID_LINKFLAGS,
|
437
|
-
'LIBS': ['log', 'c', 'stdc++', 'm'],
|
494
|
+
'LIBS': ['log', 'c', 'stdc++', 'm', 'gcc'],
|
438
495
|
'mode:release': {
|
439
496
|
'CPPDEFINES': ['SK_RELEASE', 'NDEBUG']
|
440
497
|
}
|
441
498
|
},
|
499
|
+
'arch:arm': {
|
500
|
+
'LINKFLAGS': ARM_LINK_FLAGS
|
501
|
+
},
|
442
502
|
'arch:ia32': {
|
443
503
|
'CCFLAGS': ['-m32'],
|
444
504
|
'LINKFLAGS': ['-m32']
|
@@ -447,10 +507,22 @@ SAMPLE_FLAGS = {
|
|
447
507
|
'CCFLAGS': ['-m64'],
|
448
508
|
'LINKFLAGS': ['-m64']
|
449
509
|
},
|
510
|
+
'arch:mips': {
|
511
|
+
'CPPDEFINES': ['V8_TARGET_ARCH_MIPS'],
|
512
|
+
'simulator:none': {
|
513
|
+
'CCFLAGS': ['-EL', '-mips32r2', '-Wa,-mips32r2', '-fno-inline'],
|
514
|
+
'LINKFLAGS': ['-EL'],
|
515
|
+
'LDFLAGS': ['-EL']
|
516
|
+
}
|
517
|
+
},
|
450
518
|
'simulator:arm': {
|
451
519
|
'CCFLAGS': ['-m32'],
|
452
520
|
'LINKFLAGS': ['-m32']
|
453
521
|
},
|
522
|
+
'simulator:mips': {
|
523
|
+
'CCFLAGS': ['-m32'],
|
524
|
+
'LINKFLAGS': ['-m32']
|
525
|
+
},
|
454
526
|
'mode:release': {
|
455
527
|
'CCFLAGS': ['-O2']
|
456
528
|
},
|
@@ -490,7 +562,15 @@ SAMPLE_FLAGS = {
|
|
490
562
|
},
|
491
563
|
'msvcltcg:on': {
|
492
564
|
'CCFLAGS': ['/GL'],
|
493
|
-
'
|
565
|
+
'pgo:off': {
|
566
|
+
'LINKFLAGS': ['/LTCG'],
|
567
|
+
},
|
568
|
+
},
|
569
|
+
'pgo:instrument': {
|
570
|
+
'LINKFLAGS': ['/LTCG:PGI']
|
571
|
+
},
|
572
|
+
'pgo:optimize': {
|
573
|
+
'LINKFLAGS': ['/LTCG:PGO']
|
494
574
|
}
|
495
575
|
},
|
496
576
|
'arch:ia32': {
|
@@ -529,13 +609,18 @@ D8_FLAGS = {
|
|
529
609
|
'os:freebsd': {
|
530
610
|
'LIBS': ['pthread'],
|
531
611
|
},
|
612
|
+
'os:solaris': {
|
613
|
+
'LIBS': ['m', 'pthread', 'socket', 'nsl', 'rt'],
|
614
|
+
'LINKFLAGS': ['-mt']
|
615
|
+
},
|
532
616
|
'os:openbsd': {
|
533
617
|
'LIBS': ['pthread'],
|
534
618
|
},
|
535
619
|
'os:android': {
|
536
|
-
'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib'
|
620
|
+
'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib',
|
621
|
+
ANDROID_TOP + '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork'],
|
537
622
|
'LINKFLAGS': ANDROID_LINKFLAGS,
|
538
|
-
'LIBS': ['log', 'c', 'stdc++', 'm'],
|
623
|
+
'LIBS': ['log', 'c', 'stdc++', 'm', 'gcc'],
|
539
624
|
},
|
540
625
|
'os:win32': {
|
541
626
|
'LIBS': ['winmm', 'ws2_32'],
|
@@ -582,12 +667,12 @@ SIMPLE_OPTIONS = {
|
|
582
667
|
'help': 'the toolchain to use (' + TOOLCHAIN_GUESS + ')'
|
583
668
|
},
|
584
669
|
'os': {
|
585
|
-
'values': ['freebsd', 'linux', 'macos', 'win32', 'android', 'openbsd'],
|
670
|
+
'values': ['freebsd', 'linux', 'macos', 'win32', 'android', 'openbsd', 'solaris'],
|
586
671
|
'default': OS_GUESS,
|
587
672
|
'help': 'the os to build for (' + OS_GUESS + ')'
|
588
673
|
},
|
589
674
|
'arch': {
|
590
|
-
'values':['arm', 'ia32', 'x64'],
|
675
|
+
'values':['arm', 'ia32', 'x64', 'mips'],
|
591
676
|
'default': ARCH_GUESS,
|
592
677
|
'help': 'the architecture to build for (' + ARCH_GUESS + ')'
|
593
678
|
},
|
@@ -611,6 +696,16 @@ SIMPLE_OPTIONS = {
|
|
611
696
|
'default': 'static',
|
612
697
|
'help': 'the type of library to produce'
|
613
698
|
},
|
699
|
+
'vmstate': {
|
700
|
+
'values': ['on', 'off'],
|
701
|
+
'default': 'off',
|
702
|
+
'help': 'enable VM state tracking'
|
703
|
+
},
|
704
|
+
'protectheap': {
|
705
|
+
'values': ['on', 'off'],
|
706
|
+
'default': 'off',
|
707
|
+
'help': 'enable heap protection'
|
708
|
+
},
|
614
709
|
'profilingsupport': {
|
615
710
|
'values': ['on', 'off'],
|
616
711
|
'default': 'on',
|
@@ -637,7 +732,7 @@ SIMPLE_OPTIONS = {
|
|
637
732
|
'help': 'use Microsoft Visual C++ link-time code generation'
|
638
733
|
},
|
639
734
|
'simulator': {
|
640
|
-
'values': ['arm', 'none'],
|
735
|
+
'values': ['arm', 'mips', 'none'],
|
641
736
|
'default': 'none',
|
642
737
|
'help': 'build with simulator'
|
643
738
|
},
|
@@ -670,6 +765,11 @@ SIMPLE_OPTIONS = {
|
|
670
765
|
'values': ['arm', 'thumb2', 'none'],
|
671
766
|
'default': 'none',
|
672
767
|
'help': 'generate thumb2 instructions instead of arm instructions (default)'
|
768
|
+
},
|
769
|
+
'pgo': {
|
770
|
+
'values': ['off', 'instrument', 'optimize'],
|
771
|
+
'default': 'off',
|
772
|
+
'help': 'select profile guided optimization variant',
|
673
773
|
}
|
674
774
|
}
|
675
775
|
|
@@ -677,7 +777,7 @@ SIMPLE_OPTIONS = {
|
|
677
777
|
def GetOptions():
|
678
778
|
result = Options()
|
679
779
|
result.Add('mode', 'compilation mode (debug, release)', 'release')
|
680
|
-
result.Add('sample', 'build sample (shell, process)', '')
|
780
|
+
result.Add('sample', 'build sample (shell, process, lineprocessor)', '')
|
681
781
|
result.Add('env', 'override environment settings (NAME0:value0,NAME1:value1,...)', '')
|
682
782
|
result.Add('importenv', 'import environment settings (NAME0,NAME1,...)', '')
|
683
783
|
for (name, option) in SIMPLE_OPTIONS.iteritems():
|
@@ -745,7 +845,7 @@ def IsLegal(env, option, values):
|
|
745
845
|
def VerifyOptions(env):
|
746
846
|
if not IsLegal(env, 'mode', ['debug', 'release']):
|
747
847
|
return False
|
748
|
-
if not IsLegal(env, 'sample', ["shell", "process"]):
|
848
|
+
if not IsLegal(env, 'sample', ["shell", "process", "lineprocessor"]):
|
749
849
|
return False
|
750
850
|
if not IsLegal(env, 'regexp', ["native", "interpreted"]):
|
751
851
|
return False
|
@@ -757,6 +857,8 @@ def VerifyOptions(env):
|
|
757
857
|
Abort("Shared Object soname not applicable for Windows.")
|
758
858
|
if env['soname'] == 'on' and env['library'] == 'static':
|
759
859
|
Abort("Shared Object soname not applicable for static library.")
|
860
|
+
if env['os'] != 'win32' and env['pgo'] != 'off':
|
861
|
+
Abort("Profile guided optimization only supported on Windows.")
|
760
862
|
for (name, option) in SIMPLE_OPTIONS.iteritems():
|
761
863
|
if (not option.get('default')) and (name not in ARGUMENTS):
|
762
864
|
message = ("A value for option %s must be specified (%s)." %
|
@@ -842,7 +944,7 @@ class BuildContext(object):
|
|
842
944
|
env['ENV'] = self.env_overrides
|
843
945
|
|
844
946
|
|
845
|
-
def PostprocessOptions(options):
|
947
|
+
def PostprocessOptions(options, os):
|
846
948
|
# Adjust architecture if the simulator option has been set
|
847
949
|
if (options['simulator'] != 'none') and (options['arch'] != options['simulator']):
|
848
950
|
if 'arch' in ARGUMENTS:
|
@@ -853,10 +955,19 @@ def PostprocessOptions(options):
|
|
853
955
|
# Print a warning if profiling is enabled without profiling support
|
854
956
|
print "Warning: forcing profilingsupport on when prof is on"
|
855
957
|
options['profilingsupport'] = 'on'
|
958
|
+
if os == 'win32' and options['pgo'] != 'off' and options['msvcltcg'] == 'off':
|
959
|
+
if 'msvcltcg' in ARGUMENTS:
|
960
|
+
print "Warning: forcing msvcltcg on as it is required for pgo (%s)" % options['pgo']
|
961
|
+
options['msvcltcg'] = 'on'
|
856
962
|
if (options['armvariant'] == 'none' and options['arch'] == 'arm'):
|
857
963
|
options['armvariant'] = 'arm'
|
858
964
|
if (options['armvariant'] != 'none' and options['arch'] != 'arm'):
|
859
965
|
options['armvariant'] = 'none'
|
966
|
+
if options['arch'] == 'mips':
|
967
|
+
if ('regexp' in ARGUMENTS) and options['regexp'] == 'native':
|
968
|
+
# Print a warning if native regexp is specified for mips
|
969
|
+
print "Warning: forcing regexp to interpreted for mips"
|
970
|
+
options['regexp'] = 'interpreted'
|
860
971
|
|
861
972
|
|
862
973
|
def ParseEnvOverrides(arg, imports):
|
@@ -878,7 +989,7 @@ def BuildSpecific(env, mode, env_overrides):
|
|
878
989
|
options = {'mode': mode}
|
879
990
|
for option in SIMPLE_OPTIONS:
|
880
991
|
options[option] = env[option]
|
881
|
-
PostprocessOptions(options)
|
992
|
+
PostprocessOptions(options, env['os'])
|
882
993
|
|
883
994
|
context = BuildContext(options, env_overrides, samples=SplitList(env['sample']))
|
884
995
|
|
@@ -915,7 +1026,6 @@ def BuildSpecific(env, mode, env_overrides):
|
|
915
1026
|
if context.options['soname'] == 'on':
|
916
1027
|
# When building shared object with SONAME version the library name.
|
917
1028
|
library_name += '-' + version
|
918
|
-
env['LIBRARY'] = library_name
|
919
1029
|
|
920
1030
|
# Generate library SONAME if required by the build.
|
921
1031
|
if context.options['soname'] == 'on':
|
@@ -936,6 +1046,7 @@ def BuildSpecific(env, mode, env_overrides):
|
|
936
1046
|
|
937
1047
|
# Link the object files into a library.
|
938
1048
|
env.Replace(**context.flags['v8'])
|
1049
|
+
|
939
1050
|
context.ApplyEnvOverrides(env)
|
940
1051
|
if context.options['library'] == 'static':
|
941
1052
|
library = env.StaticLibrary(library_name, object_files)
|
@@ -954,8 +1065,9 @@ def BuildSpecific(env, mode, env_overrides):
|
|
954
1065
|
context.d8_targets.append(shell)
|
955
1066
|
|
956
1067
|
for sample in context.samples:
|
957
|
-
sample_env = Environment(
|
1068
|
+
sample_env = Environment()
|
958
1069
|
sample_env.Replace(**context.flags['sample'])
|
1070
|
+
sample_env.Prepend(LIBS=[library_name])
|
959
1071
|
context.ApplyEnvOverrides(sample_env)
|
960
1072
|
sample_object = sample_env.SConscript(
|
961
1073
|
join('samples', 'SConscript'),
|
@@ -968,7 +1080,9 @@ def BuildSpecific(env, mode, env_overrides):
|
|
968
1080
|
sample_env.Depends(sample_program, library)
|
969
1081
|
context.sample_targets.append(sample_program)
|
970
1082
|
|
971
|
-
|
1083
|
+
cctest_env = env.Copy()
|
1084
|
+
cctest_env.Prepend(LIBS=[library_name])
|
1085
|
+
cctest_program = cctest_env.SConscript(
|
972
1086
|
join('test', 'cctest', 'SConscript'),
|
973
1087
|
build_dir=join('obj', 'test', target_id),
|
974
1088
|
exports='context object_files',
|