Reviewers: Dmitry Titov, Mads Ager, Message: Dmitry, Mads,
I don't expect you to look through every detail of this (even though it would be nice), but there were a few interesting changes to the crankshaft infrastructure (especially to the runtime profiler and to the deoptimizer) that require your
attention. We discussed most of them last week. I'm still working on win32 and mac platform files and I'll update the patch before landing. Thanks, Vitaly Description: [Isolates] Merge crankshaft (r5922 from bleeding_edge). Please review this at http://codereview.chromium.org/6529055/ Affected files: M SConstruct A include/v8-testing.h M samples/shell.cc M src/SConscript M src/accessors.h M src/accessors.cc M src/allocation-inl.h M src/allocation.h M src/allocation.cc M src/api.h M src/api.cc M src/arm/assembler-arm-inl.h M src/arm/assembler-arm.h M src/arm/assembler-arm.cc M src/arm/builtins-arm.cc M src/arm/code-stubs-arm.h M src/arm/code-stubs-arm.cc M src/arm/codegen-arm.h M src/arm/codegen-arm.cc M src/arm/cpu-arm.cc A src/arm/deoptimizer-arm.cc M src/arm/frames-arm.h M src/arm/frames-arm.cc M src/arm/full-codegen-arm.cc M src/arm/ic-arm.cc A src/arm/lithium-arm.h A src/arm/lithium-arm.cc A src/arm/lithium-codegen-arm.h A src/arm/lithium-codegen-arm.cc M src/arm/macro-assembler-arm.h M src/arm/macro-assembler-arm.cc M src/arm/simulator-arm.h M src/arm/simulator-arm.cc M src/arm/stub-cache-arm.cc M src/assembler.h M src/assembler.cc M src/ast-inl.h M src/ast.h M src/ast.cc A src/atomicops.h A src/atomicops_internals_arm_gcc.h A src/atomicops_internals_x86_gcc.h A src/atomicops_internals_x86_gcc.cc A src/atomicops_internals_x86_macosx.h A src/atomicops_internals_x86_msvc.h M src/bootstrapper.cc M src/builtins.h M src/builtins.cc M src/checks.h M src/code-stubs.h M src/code-stubs.cc M src/codegen.h M src/codegen.cc M src/compilation-cache.h M src/compilation-cache.cc M src/compiler.h M src/compiler.cc M src/contexts.h M src/contexts.cc M src/cpu-profiler.h M src/cpu-profiler.cc M src/d8.h M src/data-flow.h M src/data-flow.cc M src/debug.cc A src/deoptimizer.h A src/deoptimizer.cc M src/disassembler.cc M src/execution.h M src/execution.cc M src/factory.h M src/factory.cc M src/flag-definitions.h M src/flags.cc M src/frame-element.h M src/frames.h M src/frames.cc M src/full-codegen.h M src/full-codegen.cc M src/global-handles.cc M src/globals.h M src/handles.h M src/handles.cc M src/heap-inl.h M src/heap.h M src/heap.cc A src/hydrogen-instructions.h A src/hydrogen-instructions.cc A src/hydrogen.h A src/hydrogen.cc M src/ia32/assembler-ia32-inl.h M src/ia32/assembler-ia32.h M src/ia32/assembler-ia32.cc M src/ia32/builtins-ia32.cc M src/ia32/code-stubs-ia32.h M src/ia32/code-stubs-ia32.cc M src/ia32/codegen-ia32.h M src/ia32/codegen-ia32.cc M src/ia32/cpu-ia32.cc A src/ia32/deoptimizer-ia32.cc M src/ia32/disasm-ia32.cc M src/ia32/frames-ia32.h M src/ia32/full-codegen-ia32.cc M src/ia32/ic-ia32.cc A src/ia32/lithium-codegen-ia32.h A src/ia32/lithium-codegen-ia32.cc A src/ia32/lithium-ia32.h A src/ia32/lithium-ia32.cc M src/ia32/macro-assembler-ia32.h M src/ia32/macro-assembler-ia32.cc M src/ia32/stub-cache-ia32.cc M src/ic-inl.h M src/ic.h M src/ic.cc M src/isolate.h M src/isolate.cc M src/jump-target-light.h M src/list-inl.h M src/list.h A src/lithium-allocator.h A src/lithium-allocator.cc M src/liveedit-debugger.js M src/liveedit.h M src/liveedit.cc M src/log.h M src/log.cc M src/mark-compact.h M src/mark-compact.cc M src/math.js M src/memory.h M src/messages.js M src/objects-debug.cc M src/objects-inl.h M src/objects-visiting.h M src/objects.h M src/objects.cc M src/parser.cc M src/platform-freebsd.cc M src/platform-linux.cc M src/platform-macos.cc M src/platform-nullos.cc M src/platform-openbsd.cc M src/platform-solaris.cc M src/platform-win32.cc M src/platform.h M src/prettyprinter.h M src/profile-generator.cc M src/property.h M src/rewriter.cc A src/runtime-profiler.h A src/runtime-profiler.cc M src/runtime.h M src/runtime.cc A src/safepoint-table.h A src/safepoint-table.cc M src/scopeinfo.h M src/scopes.h M src/scopes.cc M src/serialize.h M src/serialize.cc M src/spaces-inl.h M src/spaces.h M src/spaces.cc M src/string-stream.h M src/stub-cache.h M src/stub-cache.cc M src/token.h M src/top.cc M src/type-info.h M src/type-info.cc M src/utils.h M src/utils.cc M src/v8-counters.h M src/v8.h M src/v8.cc M src/v8globals.h M src/v8threads.cc M src/v8utils.h M src/variables.h M src/variables.cc M src/version.cc M src/vm-state-inl.h M src/vm-state.h A src/win32-headers.h M src/x64/assembler-x64-inl.h M src/x64/assembler-x64.h M src/x64/assembler-x64.cc M src/x64/builtins-x64.cc M src/x64/code-stubs-x64.h M src/x64/code-stubs-x64.cc M src/x64/codegen-x64.h M src/x64/codegen-x64.cc M src/x64/cpu-x64.cc A src/x64/deoptimizer-x64.cc M src/x64/frames-x64.h M src/x64/full-codegen-x64.cc M src/x64/ic-x64.cc A src/x64/lithium-codegen-x64.h A src/x64/lithium-x64.h M src/x64/macro-assembler-x64.h M src/x64/macro-assembler-x64.cc M src/x64/stub-cache-x64.cc M src/zone.h M test/cctest/SConscript M test/cctest/cctest.status M test/cctest/test-alloc.cc M test/cctest/test-api.cc M test/cctest/test-dataflow.cc M test/cctest/test-debug.cc A test/cctest/test-deoptimization.cc M test/cctest/test-heap.cc M test/cctest/test-log-stack-tracer.cc M test/cctest/test-log.cc M test/cctest/test-mark-compact.cc M test/cctest/test-profile-generator.cc M test/cctest/test-spaces.cc M test/cctest/test-version.cc M test/es5conform/es5conform.status M test/message/message.status M test/message/try-catch-finally-return-in-finally.js M test/message/try-catch-finally-return-in-finally.out M test/message/try-finally-return-in-finally.js M test/message/try-finally-return-in-finally.out A test/mjsunit/accessors-on-global-object.js A test/mjsunit/apply-arguments-gc-safepoint.js M test/mjsunit/array-functions-prototype.js M test/mjsunit/codegen-coverage.js A test/mjsunit/compiler/alloc-number.js A test/mjsunit/compiler/array-access.js A test/mjsunit/compiler/array-length.js A test/mjsunit/compiler/assignment-deopt.js M test/mjsunit/compiler/assignment.js A test/mjsunit/compiler/binary-ops.js A test/mjsunit/compiler/call-keyed.js A test/mjsunit/compiler/compare.js A test/mjsunit/compiler/complex-for-in.js A test/mjsunit/compiler/control-flow-0.js A test/mjsunit/compiler/control-flow-1.js A test/mjsunit/compiler/control-flow-2.js A test/mjsunit/compiler/count-deopt.js M test/mjsunit/compiler/countoperation.js A test/mjsunit/compiler/delete.js A test/mjsunit/compiler/deopt-args.js A test/mjsunit/compiler/deopt-inlined-smi.js A test/mjsunit/compiler/expression-trees.js A test/mjsunit/compiler/for-stmt.js M test/mjsunit/compiler/globals.js A test/mjsunit/compiler/inline-compare.js A test/mjsunit/compiler/inline-conditional.js A test/mjsunit/compiler/inline-global-access.js A test/mjsunit/compiler/inline-param.js A test/mjsunit/compiler/inline-two.js A test/mjsunit/compiler/logical-and.js A test/mjsunit/compiler/logical-or.js M test/mjsunit/compiler/loops.js A test/mjsunit/compiler/null-compare.js A test/mjsunit/compiler/optimized-function-calls.js A test/mjsunit/compiler/pic.js A test/mjsunit/compiler/property-calls.js A test/mjsunit/compiler/property-refs.js A test/mjsunit/compiler/property-stores.js A test/mjsunit/compiler/recursive-deopt.js A test/mjsunit/compiler/regress-0.js A test/mjsunit/compiler/regress-1.js A test/mjsunit/compiler/regress-2.js A test/mjsunit/compiler/regress-3.js A test/mjsunit/compiler/regress-3136962.js A test/mjsunit/compiler/regress-3185901.js A test/mjsunit/compiler/regress-3218915.js A test/mjsunit/compiler/regress-3249650.js A test/mjsunit/compiler/regress-4.js A test/mjsunit/compiler/regress-5.js A test/mjsunit/compiler/regress-6.js A test/mjsunit/compiler/regress-7.js A test/mjsunit/compiler/regress-8.js A test/mjsunit/compiler/regress-arguments.js A test/mjsunit/compiler/regress-arrayliteral.js A test/mjsunit/compiler/regress-funarguments.js A test/mjsunit/compiler/regress-funcaller.js A test/mjsunit/compiler/regress-gap.js A test/mjsunit/compiler/regress-gvn.js A test/mjsunit/compiler/regress-loop-deopt.js A test/mjsunit/compiler/regress-max.js A test/mjsunit/compiler/regress-or.js A test/mjsunit/compiler/regress-rep-change.js A test/mjsunit/compiler/regress-stacktrace-methods.js A test/mjsunit/compiler/regress-stacktrace.js A test/mjsunit/compiler/safepoint.js M test/mjsunit/compiler/simple-bailouts.js M test/mjsunit/compiler/simple-binary-op.js A test/mjsunit/compiler/simple-deopt.js M test/mjsunit/compiler/simple-global-access.js A test/mjsunit/compiler/simple-inlining.js A test/mjsunit/compiler/simple-osr.js A test/mjsunit/compiler/switch-bailout.js M test/mjsunit/compiler/this-property-refs.js M test/mjsunit/compiler/thisfunction.js A test/mjsunit/compiler/variables.js M test/mjsunit/debug-changebreakpoint.js M test/mjsunit/debug-clearbreakpoint.js M test/mjsunit/debug-clearbreakpointgroup.js M test/mjsunit/debug-liveedit-2.js M test/mjsunit/debug-liveedit-breakpoints.js M test/mjsunit/debug-liveedit-patch-positions.js M test/mjsunit/debug-stepout-recursive-function.js M test/mjsunit/fuzz-natives.js M test/mjsunit/mirror-object.js M test/mjsunit/mjsunit.status A test/mjsunit/regress/regress-3006390.js A test/mjsunit/regress/regress-3185905.js A test/mjsunit/regress/regress-3199913.js A test/mjsunit/regress/regress-3218530.js A test/mjsunit/regress/regress-3218915.js A test/mjsunit/regress/regress-3230771.js A test/mjsunit/regress/regress-3247124.js A test/mjsunit/regress/regress-3252443.js M test/mjsunit/regress/regress-52801.js M test/mjsunit/regress/regress-580.js A test/mjsunit/smi-ops-inlined.js M test/mjsunit/smi-ops.js M test/mjsunit/string-replace-gc.js A test/mjsunit/sum-0-plus-undefined-is-NaN.js M test/mjsunit/typeof.js M test/mozilla/mozilla.status M test/sputnik/sputnik.status M tools/gyp/v8.gyp M tools/test.py M tools/visual_studio/v8_base.vcproj M tools/visual_studio/v8_base_arm.vcproj M tools/visual_studio/v8_base_x64.vcproj -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
