In order to eventually deprecate the TurboFan compiler, all of the V8 code stubs that are built with Crankshaft/Hydrogen must first be converted to TurboFan's CodeStubAssembler
Of course, the description above should say "in order to eventually deprecate the Crankshaft" compiler, not TurboFan.
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/d2efbf253821b4f7ab82b1c570e199bec5a557ff commit d2efbf253821b4f7ab82b1c570e199bec5a557ff Author: danno <danno@chromium.org> Date: Tue May 03 21:34:19 2016 [stubs] Convert InternalArrayNoArgumentsConstructor to a TurboFan stub BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/1948433002 Cr-Commit-Position: refs/heads/master@{#36000} [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/arm/code-stubs-arm.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/arm64/code-stubs-arm64.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/code-stub-assembler.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/code-stub-assembler.h [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/code-stubs-hydrogen.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/code-stubs.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/code-stubs.h [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/ia32/code-stubs-ia32.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/mips/code-stubs-mips.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/mips64/code-stubs-mips64.cc [modify] https://crrev.com/d2efbf253821b4f7ab82b1c570e199bec5a557ff/src/x64/code-stubs-x64.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/5840dd1fe04b154021c1bff91f90935a011cf162 commit 5840dd1fe04b154021c1bff91f90935a011cf162 Author: bjaideep <bjaideep@ca.ibm.com> Date: Wed May 04 04:45:22 2016 PPC: [stubs] Convert InternalArrayNoArgumentsConstructor to a TurboFan stub Port d2efbf253821b4f7ab82b1c570e199bec5a557ff R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/1952503002 Cr-Commit-Position: refs/heads/master@{#36003} [modify] https://crrev.com/5840dd1fe04b154021c1bff91f90935a011cf162/src/ppc/code-stubs-ppc.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/e23471eed2f13f447bdec868e38946f7736da8ac commit e23471eed2f13f447bdec868e38946f7736da8ac Author: jyan <jyan@ca.ibm.com> Date: Wed May 04 18:58:28 2016 S390: [stubs] Convert InternalArrayNoArgumentsConstructor to a TurboFan stub Port d2efbf253821b4f7ab82b1c570e199bec5a557ff R=danno@chromium.org, joransiu@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/1946193004 Cr-Commit-Position: refs/heads/master@{#36040} [modify] https://crrev.com/e23471eed2f13f447bdec868e38946f7736da8ac/src/s390/code-stubs-s390.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e commit 02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e Author: danno <danno@chromium.org> Date: Tue May 24 08:14:45 2016 [stubs] Convert Internal/ArraySingleArgumentsConstructor to a TurboFan stub BUG= chromium:608675 LOG=n Review-Url: https://codereview.chromium.org/1987183002 Cr-Commit-Position: refs/heads/master@{#36463} [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/arm/code-stubs-arm.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/arm/interface-descriptors-arm.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/arm64/code-stubs-arm64.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/arm64/interface-descriptors-arm64.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/code-stub-assembler.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/code-stubs-hydrogen.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/code-stubs.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/code-stubs.h [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/compiler/schedule.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/ia32/code-stubs-ia32.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/ia32/interface-descriptors-ia32.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/interface-descriptors.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/interface-descriptors.h [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/mips/code-stubs-mips.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/mips/interface-descriptors-mips.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/mips64/code-stubs-mips64.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/mips64/interface-descriptors-mips64.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/runtime/runtime-array.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/runtime/runtime.h [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/x64/code-stubs-x64.cc [modify] https://crrev.com/02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e/src/x64/interface-descriptors-x64.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/075f5a416dd4f31323e6126da3535e0048d3b859 commit 075f5a416dd4f31323e6126da3535e0048d3b859 Author: bjaideep <bjaideep@ca.ibm.com> Date: Tue May 24 15:26:30 2016 PPC: [stubs] Convert Internal/ArraySingleArgumentsConstructor to a TurboFan stub Port 02c8b6f7f0f8801f0cdc33bef576e3b0c3db394e R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2005753005 Cr-Commit-Position: refs/heads/master@{#36481} [modify] https://crrev.com/075f5a416dd4f31323e6126da3535e0048d3b859/src/ppc/code-stubs-ppc.cc [modify] https://crrev.com/075f5a416dd4f31323e6126da3535e0048d3b859/src/ppc/interface-descriptors-ppc.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab commit c8ac0d8693f559795eeb3f3aaf386dde166fb2ab Author: danno <danno@chromium.org> Date: Fri Jun 10 11:00:00 2016 [stubs] Remove N-argument Hydrogen-based Array constructor stub Instead, always tail call to the runtime. Also, cleanup the various versions of the runtime call that is used for Array construction fallback. There can be only one. BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2024253002 Cr-Commit-Position: refs/heads/master@{#36888} [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/arm/code-stubs-arm.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/arm/interface-descriptors-arm.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/arm64/code-stubs-arm64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/arm64/interface-descriptors-arm64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/code-stubs-hydrogen.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/code-stubs.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/code-stubs.h [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/compiler/js-generic-lowering.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/crankshaft/arm/lithium-codegen-arm.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/crankshaft/arm64/lithium-codegen-arm64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/crankshaft/ia32/lithium-codegen-ia32.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/crankshaft/mips/lithium-codegen-mips.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/crankshaft/mips64/lithium-codegen-mips64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/crankshaft/x64/lithium-codegen-x64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/ia32/code-stubs-ia32.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/ia32/interface-descriptors-ia32.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/interface-descriptors.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/interface-descriptors.h [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/mips/code-stubs-mips.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/mips/interface-descriptors-mips.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/mips64/code-stubs-mips64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/mips64/interface-descriptors-mips64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/runtime/runtime-array.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/runtime/runtime.h [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/x64/code-stubs-x64.cc [modify] https://crrev.com/c8ac0d8693f559795eeb3f3aaf386dde166fb2ab/src/x64/interface-descriptors-x64.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/7f6f6ad1babd71e0b04314b3df387af44095bde3 commit 7f6f6ad1babd71e0b04314b3df387af44095bde3 Author: bjaideep <bjaideep@ca.ibm.com> Date: Fri Jun 10 18:00:39 2016 PPC: [stubs] Remove N-argument Hydrogen-based Array constructor stub Port c8ac0d8693f559795eeb3f3aaf386dde166fb2ab Original commit message: Instead, always tail call to the runtime. Also, cleanup the various versions of the runtime call that is used for Array construction fallback. There can be only one. R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2057253002 Cr-Commit-Position: refs/heads/master@{#36901} [modify] https://crrev.com/7f6f6ad1babd71e0b04314b3df387af44095bde3/src/crankshaft/ppc/lithium-codegen-ppc.cc [modify] https://crrev.com/7f6f6ad1babd71e0b04314b3df387af44095bde3/src/ppc/code-stubs-ppc.cc [modify] https://crrev.com/7f6f6ad1babd71e0b04314b3df387af44095bde3/src/ppc/interface-descriptors-ppc.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/c07c675e9a30adc57be25eaa7b87d69d31fc2090 commit c07c675e9a30adc57be25eaa7b87d69d31fc2090 Author: danno <danno@chromium.org> Date: Thu Jul 28 22:15:00 2016 Add a flag to help platform ports bootstrap V8 A "--minimal" flag turns off all optimizing compilers and activates the interpreter. The idea is that with this flag activated, only the platform-specific stubs and a Turbofan implementation must be complete to start d8 and run the bulk of the tests. Note that although this flag is constructed as a runtime flag, it must be set to true when building the snapshot and therefore creates a compile-time dependency. BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2189663002 Cr-Commit-Position: refs/heads/master@{#38150} [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/bootstrapper.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/code-stubs-hydrogen.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/code-stubs.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/code-stubs.h [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/crankshaft/hydrogen.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/flag-definitions.h [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/full-codegen/full-codegen.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/runtime/runtime-array.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/runtime/runtime-internal.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/runtime/runtime-strings.cc [modify] https://crrev.com/c07c675e9a30adc57be25eaa7b87d69d31fc2090/src/runtime/runtime.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/24451aa2d5500e37edcc81a19bee172538a8925a commit 24451aa2d5500e37edcc81a19bee172538a8925a Author: danno <danno@chromium.org> Date: Fri Jul 29 13:52:26 2016 [stubs] Classify and categorize remaining Hydrogen stubs BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2193163002 Cr-Commit-Position: refs/heads/master@{#38179} [modify] https://crrev.com/24451aa2d5500e37edcc81a19bee172538a8925a/src/code-stubs.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/4602d98ea4897e1c13c302901aab92be709cd1c0 commit 4602d98ea4897e1c13c302901aab92be709cd1c0 Author: franzih <franzih@chromium.org> Date: Tue Aug 02 07:04:25 2016 [turbofan] Stub for typeof operator. Replace hydrogen stub for typeof with TurboFan stub. BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2195863002 Cr-Commit-Position: refs/heads/master@{#38227} [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/arm/code-stubs-arm.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/arm64/code-stubs-arm64.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/code-stubs-hydrogen.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/code-stubs.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/code-stubs.h [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/arm/lithium-codegen-arm.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/arm64/lithium-codegen-arm64.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/ia32/lithium-codegen-ia32.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/mips/lithium-codegen-mips.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/mips64/lithium-codegen-mips64.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/ppc/lithium-codegen-ppc.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/s390/lithium-codegen-s390.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/x64/lithium-codegen-x64.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/crankshaft/x87/lithium-codegen-x87.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/ia32/code-stubs-ia32.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/interpreter/interpreter.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/interpreter/interpreter.h [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/mips/code-stubs-mips.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/mips64/code-stubs-mips64.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/ppc/code-stubs-ppc.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/s390/code-stubs-s390.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/x64/code-stubs-x64.cc [modify] https://crrev.com/4602d98ea4897e1c13c302901aab92be709cd1c0/src/x87/code-stubs-x87.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/827b1f412b0322e59cc11ef40f5f25222c90e792 commit 827b1f412b0322e59cc11ef40f5f25222c90e792 Author: mstarzinger <mstarzinger@chromium.org> Date: Wed Aug 03 14:49:05 2016 [stubs] Turn FastCloneRegExpStub into a TurboFan code stub. R=danno@chromium.org BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2207553002 Cr-Commit-Position: refs/heads/master@{#38302} [modify] https://crrev.com/827b1f412b0322e59cc11ef40f5f25222c90e792/src/code-stubs-hydrogen.cc [modify] https://crrev.com/827b1f412b0322e59cc11ef40f5f25222c90e792/src/code-stubs.cc [modify] https://crrev.com/827b1f412b0322e59cc11ef40f5f25222c90e792/src/code-stubs.h [modify] https://crrev.com/827b1f412b0322e59cc11ef40f5f25222c90e792/src/deoptimize-reason.h [modify] https://crrev.com/827b1f412b0322e59cc11ef40f5f25222c90e792/src/full-codegen/full-codegen.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/eb841269235e6b438b75930878a8cb3ca745014c commit eb841269235e6b438b75930878a8cb3ca745014c Author: danno <danno@chromium.org> Date: Fri Aug 05 11:12:13 2016 [stubs] Convert GrowElementsStub to TurboFan One caveat: the Crankshaft stub used to preserve callee-clobbered double registers, which is contrary to any real platform ABI that we support. Since the only current use of this stub is in Crankshaft, the instruction there now must be marked as double-clobbering. This might result in a small performance regression. However, when this stub is eventually used in TF-generated code, it will be called from deferred code that can save doubles only on the rarely-taken path... something that Crankshaft can't do. BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2206333003 Cr-Commit-Position: refs/heads/master@{#38371} [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/code-stub-assembler.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/code-stub-assembler.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/code-stubs-hydrogen.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/code-stubs.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/code-stubs.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/compiler/code-assembler.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/arm/lithium-arm.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/arm/lithium-codegen-arm.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/arm64/lithium-arm64.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/arm64/lithium-codegen-arm64.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/ia32/lithium-codegen-ia32.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/ia32/lithium-ia32.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/mips/lithium-codegen-mips.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/mips/lithium-mips.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/mips64/lithium-codegen-mips64.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/mips64/lithium-mips64.h [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/x64/lithium-codegen-x64.cc [modify] https://crrev.com/eb841269235e6b438b75930878a8cb3ca745014c/src/crankshaft/x64/lithium-x64.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/c39660a4d314472a94c2ffdf243121e473633c5a commit c39660a4d314472a94c2ffdf243121e473633c5a Author: bjaideep <bjaideep@ca.ibm.com> Date: Mon Aug 08 14:10:09 2016 PPC/s390: [stubs] Convert GrowElementsStub to TurboFan Port eb841269235e6b438b75930878a8cb3ca745014c Original commit message: One caveat: the Crankshaft stub used to preserve callee-clobbered double registers, which is contrary to any real platform ABI that we support. Since the only current use of this stub is in Crankshaft, the instruction there now must be marked as double-clobbering. This might result in a small performance regression. However, when this stub is eventually used in TF-generated code, it will be called from deferred code that can save doubles only on the rarely-taken path... something that Crankshaft can't do. R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2227673003 Cr-Commit-Position: refs/heads/master@{#38444} [modify] https://crrev.com/c39660a4d314472a94c2ffdf243121e473633c5a/src/crankshaft/ppc/lithium-codegen-ppc.cc [modify] https://crrev.com/c39660a4d314472a94c2ffdf243121e473633c5a/src/crankshaft/ppc/lithium-ppc.h [modify] https://crrev.com/c39660a4d314472a94c2ffdf243121e473633c5a/src/crankshaft/s390/lithium-codegen-s390.cc [modify] https://crrev.com/c39660a4d314472a94c2ffdf243121e473633c5a/src/crankshaft/s390/lithium-s390.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/87448cdd0124b500351c79bb875e7d2ade9065c1 commit 87448cdd0124b500351c79bb875e7d2ade9065c1 Author: danno <danno@chromium.org> Date: Tue Aug 09 08:54:31 2016 [stubs] Cleanup FixedArray copying Use common CodeStubAssembler routines for FixedArray-copying builtin. Also cleanup a few shared pieces of code along the way. BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2220673002 Cr-Commit-Position: refs/heads/master@{#38478} [modify] https://crrev.com/87448cdd0124b500351c79bb875e7d2ade9065c1/src/builtins/builtins-internal.cc [modify] https://crrev.com/87448cdd0124b500351c79bb875e7d2ade9065c1/src/code-stub-assembler.cc [modify] https://crrev.com/87448cdd0124b500351c79bb875e7d2ade9065c1/src/code-stub-assembler.h [modify] https://crrev.com/87448cdd0124b500351c79bb875e7d2ade9065c1/src/objects.cc [modify] https://crrev.com/87448cdd0124b500351c79bb875e7d2ade9065c1/src/objects.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/9243d5e32b77ebc48bedc1d08009e9777f7aca12 commit 9243d5e32b77ebc48bedc1d08009e9777f7aca12 Author: franzih <franzih@chromium.org> Date: Tue Aug 09 16:14:16 2016 [turbofan] Rewrite ToObject as TurboFan stub. Drive-by fix: Use CodeStubAssembler::LoadNativeContext() BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2227763003 Cr-Commit-Position: refs/heads/master@{#38501} [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/arm/builtins-arm.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/arm64/builtins-arm64.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/ia32/builtins-ia32.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/mips/builtins-mips.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/mips64/builtins-mips64.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/ppc/builtins-ppc.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/s390/builtins-s390.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/x64/builtins-x64.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/builtins/x87/builtins-x87.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/code-stubs-hydrogen.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/code-stubs.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/code-stubs.h [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/arm/full-codegen-arm.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/arm64/full-codegen-arm64.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/full-codegen.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/ia32/full-codegen-ia32.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/mips/full-codegen-mips.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/mips64/full-codegen-mips64.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/ppc/full-codegen-ppc.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/s390/full-codegen-s390.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/x64/full-codegen-x64.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/full-codegen/x87/full-codegen-x87.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/runtime/runtime-internal.cc [modify] https://crrev.com/9243d5e32b77ebc48bedc1d08009e9777f7aca12/src/runtime/runtime.h
"[stubs] Port StoreTransitionStub and ElementsTransitionAndStoreStub to TurboFan." landed: https://codereview.chromium.org/2313093002/
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/e2455873e6146d57b453ce15eab7cd957bbca08b commit e2455873e6146d57b453ce15eab7cd957bbca08b Author: klaasb <klaasb@google.com> Date: Tue Sep 20 12:35:34 2016 Port FastCloneShallowArrayStub to Turbofan Refactors CodeStubAssembler::AllocateJSArray to share code. BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2304573004 Cr-Commit-Position: refs/heads/master@{#39550} [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/bailout-reason.h [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/code-stub-assembler.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/code-stub-assembler.h [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/code-stubs-hydrogen.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/code-stubs.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/code-stubs.h [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/crankshaft/hydrogen.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/crankshaft/hydrogen.h [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/deoptimize-reason.h [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/arm/full-codegen-arm.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/arm64/full-codegen-arm64.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/ia32/full-codegen-ia32.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/mips/full-codegen-mips.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/mips64/full-codegen-mips64.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/ppc/full-codegen-ppc.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/s390/full-codegen-s390.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/x64/full-codegen-x64.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/src/full-codegen/x87/full-codegen-x87.cc [modify] https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b/test/cctest/interpreter/bytecode_expectations/Generators.golden
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/914519dda779322e378ae5e497b9e97cc3ffb71a commit 914519dda779322e378ae5e497b9e97cc3ffb71a Author: ishell <ishell@chromium.org> Date: Fri Sep 23 15:14:30 2016 [ic] Remove unused xxxIC_MissFromStubFailure runtime functions. Namely: Runtime_LoadIC_MissFromStubFailure Runtime_StoreIC_MissFromStubFailure Runtime_KeyedStoreIC_MissFromStubFailure BUG= chromium:608675 Review-Url: https://codereview.chromium.org/2346743003 Cr-Commit-Position: refs/heads/master@{#39675} [modify] https://crrev.com/914519dda779322e378ae5e497b9e97cc3ffb71a/src/code-stubs.cc [modify] https://crrev.com/914519dda779322e378ae5e497b9e97cc3ffb71a/src/ic/ic.cc [modify] https://crrev.com/914519dda779322e378ae5e497b9e97cc3ffb71a/src/runtime/runtime.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/e0741946cb255a4e59e17a4ab3bf347f2b225da5 commit e0741946cb255a4e59e17a4ab3bf347f2b225da5 Author: danno <danno@chromium.org> Date: Fri Oct 07 12:28:52 2016 [stubs] Port NumberToStringSub to Turbofan In the process, also fix a merge hiccup that clobbered https://codereview.chromium.org/2003663002/ back in May. BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2397223002 Cr-Commit-Position: refs/heads/master@{#40085} [modify] https://crrev.com/e0741946cb255a4e59e17a4ab3bf347f2b225da5/src/code-stub-assembler.cc [modify] https://crrev.com/e0741946cb255a4e59e17a4ab3bf347f2b225da5/src/code-stub-assembler.h [modify] https://crrev.com/e0741946cb255a4e59e17a4ab3bf347f2b225da5/src/code-stubs-hydrogen.cc [modify] https://crrev.com/e0741946cb255a4e59e17a4ab3bf347f2b225da5/src/code-stubs.cc [modify] https://crrev.com/e0741946cb255a4e59e17a4ab3bf347f2b225da5/src/code-stubs.h [modify] https://crrev.com/e0741946cb255a4e59e17a4ab3bf347f2b225da5/src/compiler/schedule.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/787157dd0f9de2668ff0ae162405a3e191851d6e commit 787157dd0f9de2668ff0ae162405a3e191851d6e Author: danno <danno@chromium.org> Date: Tue Oct 18 06:34:40 2016 [stubs] Port StringAddStub to TF In the process: - Add ToString to the CodeStubAssembler and use it where appropriate - Add constant-folding versions of IntPtrAdd/IntPtrSub to simplify code in element offset computation, especially for strings. BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2407813002 Cr-Commit-Position: refs/heads/master@{#40379} [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/builtins/builtins-conversion.cc [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/builtins/builtins-regexp.cc [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/code-stub-assembler.cc [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/code-stub-assembler.h [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/code-stubs-hydrogen.cc [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/code-stubs.cc [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/code-stubs.h [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/compiler/code-assembler.cc [modify] https://crrev.com/787157dd0f9de2668ff0ae162405a3e191851d6e/src/compiler/code-assembler.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/df2578d2ec630ccd08619e1f733da3f61e7ee380 commit df2578d2ec630ccd08619e1f733da3f61e7ee380 Author: danno <danno@chromium.org> Date: Tue Nov 29 16:57:58 2016 [stubs] Port builtin for Array.push fast-case from Crankshaft to TF Improves performance in simple, single element case by 5% and in multiple elements cases by 2%. BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2497243002 Cr-Commit-Position: refs/heads/master@{#41368} [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/arm/code-stubs-arm.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/arm64/code-stubs-arm64.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/builtins/builtins-array.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/builtins/builtins.h [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/code-factory.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/code-factory.h [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/code-stub-assembler.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/code-stub-assembler.h [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/code-stubs-hydrogen.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/code-stubs.h [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/ia32/code-stubs-ia32.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/interface-descriptors.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/interface-descriptors.h [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/mips/code-stubs-mips.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/mips64/code-stubs-mips64.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/runtime/runtime-array.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/runtime/runtime.h [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/src/x64/code-stubs-x64.cc [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/test/cctest/test-code-stub-assembler.cc [add] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/test/mjsunit/array-push-hole-double.js [modify] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/test/mjsunit/array-push11.js [add] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/test/mjsunit/array-push13.js [add] https://crrev.com/df2578d2ec630ccd08619e1f733da3f61e7ee380/test/mjsunit/array-push14.js
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/f80961a7829e50e51e16dc8fc0ada96b625d4013 commit f80961a7829e50e51e16dc8fc0ada96b625d4013 Author: bjaideep <bjaideep@ca.ibm.com> Date: Tue Nov 29 18:48:04 2016 PPC/s390: [stubs] Port builtin for Array.push fast-case from Crankshaft to TF Port df2578d2ec630ccd08619e1f733da3f61e7ee380 Original Commit Message: Improves performance in simple, single element case by 5% and in multiple elements cases by 2%. R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2537513005 Cr-Commit-Position: refs/heads/master@{#41370} [modify] https://crrev.com/f80961a7829e50e51e16dc8fc0ada96b625d4013/src/ppc/code-stubs-ppc.cc [modify] https://crrev.com/f80961a7829e50e51e16dc8fc0ada96b625d4013/src/s390/code-stubs-s390.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/2b991784a4b7d212bc92e31f0da3e48603da1180 commit 2b991784a4b7d212bc92e31f0da3e48603da1180 Author: danno <danno@chromium.org> Date: Thu Dec 01 21:15:08 2016 [stubs] Port FastFunctionBindStub to TF BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2532483002 Cr-Commit-Position: refs/heads/master@{#41439} [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/arm/code-stubs-arm.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/arm64/code-stubs-arm64.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/bootstrapper.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/builtins/builtins-array.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/builtins/builtins-function.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/builtins/builtins.h [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/code-factory.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/code-factory.h [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/code-stubs-hydrogen.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/code-stubs.h [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/ia32/code-stubs-ia32.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/interface-descriptors.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/mips/code-stubs-mips.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/mips64/code-stubs-mips64.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/ppc/code-stubs-ppc.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/x64/code-stubs-x64.cc [modify] https://crrev.com/2b991784a4b7d212bc92e31f0da3e48603da1180/src/x87/code-stubs-x87.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/717d59394da2988bc6c7f73111c3aacc6f41d729 commit 717d59394da2988bc6c7f73111c3aacc6f41d729 Author: bjaideep <bjaideep@ca.ibm.com> Date: Thu Dec 01 22:49:40 2016 s390: [stubs] Port FastFunctionBindStub to TF Port 2b991784a4b7d212bc92e31f0da3e48603da1180 R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com BUG= chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/2542313002 Cr-Commit-Position: refs/heads/master@{#41441} [modify] https://crrev.com/717d59394da2988bc6c7f73111c3aacc6f41d729/src/s390/code-stubs-s390.cc
With the --minimal configuration (--ignition-stating and --turbo), it is now possible to run without any Crankshaft/Hydrogen stub support.
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/11c55d9c527daffbe7fef859ccebac5af337fd81 commit 11c55d9c527daffbe7fef859ccebac5af337fd81 Author: Benedikt Meurer <bmeurer@google.com> Date: Mon Nov 20 10:34:41 2017 [cleanup] Properly tail call from GrowArrayElementsStub. Now that Crankshaft is gone we no longer need to worry about parameter mismatch for safepoints and we can just tail-call to %GrowArrayElements from the GrowArrayElementsStub. Bug: chromium:608675 , v8:5269, v8:6408 Change-Id: I1b11d7d00cad02749a0ebc0a7de5e608de6d91c9 Reviewed-on: https://chromium-review.googlesource.com/778861 Reviewed-by: Daniel Clifford <danno@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49474} [modify] https://crrev.com/11c55d9c527daffbe7fef859ccebac5af337fd81/src/code-stubs.cc
Comment 1 by danno@chromium.org
, May 3 2016