- 15 Feb, 2016 1 commit
-
-
jarin authored
This is mostly preparation for allowing the function closure to be materialized. As a drive-by fix, I have added ignition source position support to the frame inspector (this fixed some ignition test failures). Review URL: https://codereview.chromium.org/1698743002 Cr-Commit-Position: refs/heads/master@{#33975}
-
- 11 Feb, 2016 1 commit
-
-
jarin authored
This removes uses of JSFunction by the (proper) deoptimizer. This will be useful when we escape analyze JSFunction away. Unfortunately, the debugger still needs JSFunction, so escape analysis would not work yet. Review URL: https://codereview.chromium.org/1686183003 Cr-Commit-Position: refs/heads/master@{#33891}
-
- 27 Nov, 2015 1 commit
-
-
jochen authored
BUG=v8:2487 R=yangguo@chromium.org,jkummerow@chromium.org,mstarzinger@chromium.org LOG=n Review URL: https://codereview.chromium.org/1474763008 Cr-Commit-Position: refs/heads/master@{#32359}
-
- 22 Oct, 2015 1 commit
-
-
chunyang.dai authored
register configurations currently. This CL provides a mechanism so that optimizing compilers can select different Register Configuration. BUG= Review URL: https://codereview.chromium.org/1405673003 Cr-Commit-Position: refs/heads/master@{#31476}
-
- 05 Oct, 2015 1 commit
-
-
mbrandy authored
Port 5cf1c0bc Original commit message: Previous to this patch, both the lithium and TurboFan register allocators tracked allocated registers by "indices", rather than the register codes used elsewhere in the runtime. This patch ensures that codes are used everywhere, and in the process cleans up a bunch of redundant code and adds more structure to how the set of allocatable registers is defined. Some highlights of changes: * TurboFan's RegisterConfiguration class moved to V8's top level so that it can be shared with Crankshaft. * Various "ToAllocationIndex" and related methods removed. * Code that can be easily shared between Register classes on different platforms is now shared. * The list of allocatable registers on each platform is declared as a list rather than implicitly via the register index <-> code mapping. R=danno@chromium.org, bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, dstence@us.ibm.com BUG= Review URL: https://codereview.chromium.org/1381383002 Cr-Commit-Position: refs/heads/master@{#31114}
-
- 17 Aug, 2015 1 commit
-
-
mstarzinger authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1299563003 Cr-Commit-Position: refs/heads/master@{#30187}
-
- 24 Jul, 2015 1 commit
-
-
yangguo authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1248443003 Cr-Commit-Position: refs/heads/master@{#29840}
-
- 04 Jun, 2015 1 commit
-
-
mbrandy authored
Embed constant pools within their corresponding Code objects. This removes support for out-of-line constant pools in favor of the new approach -- the main advantage being that it eliminates the need to allocate and manage separate constant pool array objects. Currently supported on PPC and ARM. Enabled by default on PPC only. This yields a 6% improvment in Octane on PPC64. R=bmeurer@chromium.org, rmcilroy@chromium.org, michael_dawson@ca.ibm.com BUG=chromium:478811 LOG=Y Review URL: https://codereview.chromium.org/1162993006 Cr-Commit-Position: refs/heads/master@{#28801}
-
- 03 Jun, 2015 1 commit
-
-
bmeurer authored
Revert of Embedded constant pools. (patchset #12 id:220001 of https://codereview.chromium.org/1131783003/) Reason for revert: Breaks Linux nosnap cctest/test-api/FastReturnValuesWithProfiler, see http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%202/builds/609/steps/Check/logs/FastReturnValuesWithP.. Original issue's description: > Add support for Embedded Constant Pools for PPC and Arm > > Embed constant pools within their corresponding Code > objects. > > This removes support for out-of-line constant pools in favor > of the new approach -- the main advantage being that it > eliminates the need to allocate and manage separate constant > pool array objects. > > Currently supported on PPC and ARM. Enabled by default on > PPC only. > > This yields a 6% improvment in Octane on PPC64. > > R=danno@chromium.org, svenpanne@chromium.org, bmeurer@chromium.org, rmcilroy@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com > BUG=chromium:478811 > LOG=Y > > Committed: https://crrev.com/a9404029343d65f146e3443f5280c40a97e736af > Cr-Commit-Position: refs/heads/master@{#28770} TBR=rmcilroy@chromium.org,ishell@chromium.org,rodolph.perfetta@arm.com,mbrandy@us.ibm.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:478811 Review URL: https://codereview.chromium.org/1155703006 Cr-Commit-Position: refs/heads/master@{#28772}
-
- 02 Jun, 2015 1 commit
-
-
mbrandy authored
Embed constant pools within their corresponding Code objects. This removes support for out-of-line constant pools in favor of the new approach -- the main advantage being that it eliminates the need to allocate and manage separate constant pool array objects. Currently supported on PPC and ARM. Enabled by default on PPC only. This yields a 6% improvment in Octane on PPC64. R=danno@chromium.org, svenpanne@chromium.org, bmeurer@chromium.org, rmcilroy@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG=chromium:478811 LOG=Y Review URL: https://codereview.chromium.org/1131783003 Cr-Commit-Position: refs/heads/master@{#28770}
-
- 01 Jun, 2015 1 commit
-
-
erikcorry authored
When compiling on a laptop I like to concatenate the small test files. This makes a big difference to compile times. These changes make that easier. R=ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/1163803002 Cr-Commit-Position: refs/heads/master@{#28742}
-
- 18 Mar, 2015 1 commit
-
-
loislo authored
I found some strange split in deopt entry points generator. The code for table entry generator had two classes. It is safe to join these classes together and drop virtual. BUG= LOG=n Review URL: https://codereview.chromium.org/1010413003 Cr-Commit-Position: refs/heads/master@{#27264}
-
- 03 Mar, 2015 1 commit
-
-
michael_dawson authored
Contribution of PowerPC port (continuation of 422063005, 817143002, 866843003, and 901083004. This patch updates the ppc directories to make them current with changes in common code, removes the optimization to use the ool constant pool, and excludes tests that don't pass under the ppc simulator given a 240s timeout. Subsequent patches will cover: - remaining optimizations for PPC - remaining AIX changes not resolved by 4.8 compiler (4.8 is only recently available for AIX) - incremental updates required to ppc directories due to platform specific changes made in google repos while we complete the above steps. modified: src/compiler/ppc/code-generator-ppc.cc modified: src/ic/ppc/handler-compiler-ppc.cc modified: src/ppc/assembler-ppc-inl.h modified: src/ppc/assembler-ppc.cc modified: src/ppc/assembler-ppc.h modified: src/ppc/builtins-ppc.cc modified: src/ppc/code-stubs-ppc.cc modified: src/ppc/debug-ppc.cc modified: src/ppc/deoptimizer-ppc.cc modified: src/ppc/frames-ppc.cc modified: src/ppc/frames-ppc.h modified: src/ppc/full-codegen-ppc.cc modified: src/ppc/lithium-codegen-ppc.cc modified: src/ppc/lithium-ppc.cc modified: src/ppc/lithium-ppc.h modified: src/ppc/macro-assembler-ppc.cc modified: src/ppc/macro-assembler-ppc.h modified: test/cctest/cctest.status modified: test/mjsunit/mjsunit.status R=danno@chromium.org, svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/965823002 Cr-Commit-Position: refs/heads/master@{#26951}
-
- 20 Feb, 2015 1 commit
-
-
michael_dawson authored
Rebase to latest and use branch created by git new-branch to get a patch that only has the required changes. Created new branch, reset to HEAD and then cherry picked across the changes modified: src/compiler/ppc/code-generator-ppc.cc modified: src/compiler/ppc/instruction-selector-ppc.cc modified: src/disassembler.cc modified: src/ic/ppc/handler-compiler-ppc.cc modified: src/ic/ppc/ic-compiler-ppc.cc modified: src/ppc/assembler-ppc-inl.h modified: src/ppc/assembler-ppc.cc modified: src/ppc/assembler-ppc.h modified: src/ppc/builtins-ppc.cc modified: src/ppc/code-stubs-ppc.cc modified: src/ppc/deoptimizer-ppc.cc modified: src/ppc/disasm-ppc.cc modified: src/ppc/full-codegen-ppc.cc modified: src/ppc/macro-assembler-ppc.cc modified: src/serialize.cc R=danno@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/935383002 Cr-Commit-Position: refs/heads/master@{#26762}
-
- 05 Feb, 2015 1 commit
-
-
michael_dawson authored
Contribution of PowerPC port (continuation of 422063005, 817143002 and 866843003) This patch brings the ppc directories up to date with our repo. We have removed 5 individual optimizations which require changes in both the ppc and common directories so they can be more easily reviewed on their own in subsequent patches. Subsequent patches will cover: - individual optimizations for PPC (5) - remaining AIX changes not resolved by 4.8 compiler (4.8 is only recently available for AIX) - incremental updates required to ppc directories due to platform specific changes made in google repos while we complete the above steps. With the update there are still some timeouts seen when run in simulated mode which may be a result of the missing optimizations. Once we have the optimizations in we will review the simulation results and address/exclude tests as necessary so that the simulated runs are clean. new file: src/compiler/ppc/code-generator-ppc.cc new file: src/compiler/ppc/instruction-codes-ppc.h new file: src/compiler/ppc/instruction-selector-ppc.cc new file: src/compiler/ppc/linkage-ppc.cc modified: src/ic/ppc/handler-compiler-ppc.cc modified: src/ic/ppc/ic-compiler-ppc.cc modified: src/ic/ppc/ic-ppc.cc modified: src/ic/ppc/stub-cache-ppc.cc modified: src/ppc/assembler-ppc.cc modified: src/ppc/assembler-ppc.h modified: src/ppc/builtins-ppc.cc modified: src/ppc/code-stubs-ppc.cc modified: src/ppc/code-stubs-ppc.h modified: src/ppc/codegen-ppc.cc modified: src/ppc/constants-ppc.h modified: src/ppc/deoptimizer-ppc.cc modified: src/ppc/disasm-ppc.cc modified: src/ppc/full-codegen-ppc.cc modified: src/ppc/interface-descriptors-ppc.cc modified: src/ppc/lithium-codegen-ppc.cc modified: src/ppc/lithium-codegen-ppc.h modified: src/ppc/lithium-ppc.cc modified: src/ppc/lithium-ppc.h modified: src/ppc/macro-assembler-ppc.cc modified: src/ppc/macro-assembler-ppc.h modified: src/ppc/regexp-macro-assembler-ppc.cc modified: src/ppc/regexp-macro-assembler-ppc.h modified: src/ppc/simulator-ppc.cc modified: src/ppc/simulator-ppc.h new file: test/unittests/compiler/ppc/instruction-selector-ppc-unittest.cc R=danno@chromium.org, svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/901083004 Cr-Commit-Position: refs/heads/master@{#26471}
-
- 11 Nov, 2014 1 commit
-
-
svenpanne@chromium.org authored
Technically, this is https://codereview.chromium.org/571173003/ from Andrew Low <andrew_low@ca.ibm.com>. TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/714093002 Cr-Commit-Position: refs/heads/master@{#25255} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25255 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Sep, 2014 1 commit
-
-
yangguo@chromium.org authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/552803002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23778 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Aug, 2014 1 commit
-
-
bmeurer@chromium.org authored
This way we don't clash with the ASSERT* macros defined by GoogleTest, and we are one step closer to being able to replace our homegrown base/ with base/ from Chrome. R=jochen@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/430503007 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jul, 2014 1 commit
-
-
danno@chromium.org authored
R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/426233002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22709 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Jul, 2014 1 commit
-
-
m.m.capewell@googlemail.com authored
BUG= R=ulan@chromium.org, bmeurer@chromium.org Review URL: https://codereview.chromium.org/349243002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Jun, 2014 1 commit
-
-
mvstanton@chromium.org authored
Centralize a register definition in an IC that provides: 1) symbolic names for the register (like, edx == receiver) 2) defines ordering when passed on the stack Code that implements or uses the IC should use this definition instead of "knowing" what the registers are. Or at least have the definition to validate it's assumptions. As a side effect of avoiding runtime static initializers (enforced by tools/check-static-initializers.sh, neat), I gave ownership of the registers array to CodeStubInterfaceDescriptor. This prompted a cleanup of that struct. R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/352583002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
- this avoids using relative include paths which are forbidden by the style guide - makes the code more readable since it's clear which header is meant - allows for starting to use checkdeps BUG=none R=jkummerow@chromium.org, danno@chromium.org LOG=n Review URL: https://codereview.chromium.org/304153016 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 May, 2014 1 commit
-
-
yangguo@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/275433004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 May, 2014 1 commit
-
-
mvstanton@chromium.org authored
The fix is to make the code aging sequence hang off the isolate. BUG=v8:3303 R=svenpanne@chromium.org LOG=N Review URL: https://codereview.chromium.org/261953002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21165 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Apr, 2014 1 commit
-
-
svenpanne@chromium.org authored
This parameter will soon be used when a few pseudo-classes like Serializer are turned into real classes. The current CL is already big enough, untying our Gordian knot called "startup" will continue... BUG=359977 LOG=y R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/260003006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2014 1 commit
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/259183002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Mar, 2014 1 commit
-
-
rmcilroy@chromium.org authored
Ensure that the stack contains the correct constant pool pointer when a function deopts. This CL depends on https://codereview.chromium.org/183803022/ landing first. R=ulan@chromium.org Review URL: https://codereview.chromium.org/188063002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Mar, 2014 1 commit
-
-
ulan@chromium.org authored
This adds a pointer to the shared function info into deoptimization data of an optimized code. Whenever the code is deoptimized, it clears the cache in the shared function info. This fixes the problem when the optimized function dies in new space GC before the code is deoptimized due to code dependency and before the optimized code cache is cleared in old space GC (see mjsunit/regress/regress-343609.js). This partially reverts r19603 because we need to be able to evict specific code from the optimized code cache. BUG=343609 LOG=Y TEST=mjsunit/regress/regress-343609.js R=yangguo@chromium.org Review URL: https://codereview.chromium.org/184923002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19635 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Feb, 2014 2 commits
-
-
jkummerow@chromium.org authored
kNoCodeAgeSequenceLength is in bytes on ia32/x64, but in instructions on arm/mips. R=ulan@chromium.org Review URL: https://codereview.chromium.org/183893006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19617 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
R=ulan@chromium.org Review URL: https://codereview.chromium.org/184373004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19607 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Nov, 2013 1 commit
-
-
ulan@chromium.org authored
and preserve FP registers on NotifyStubFailure. In debug mode, clobber FP registers on each runtime call to increase chances of catching such bugs. R=danno@chromium.org Review URL: https://chromiumcodereview.appspot.com/78283002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Nov, 2013 1 commit
-
-
mvstanton@chromium.org authored
arguments in addition to their parameters. Before, we'd add a special variable to the environment with the value of a register with the number of arguments. Now, that register just appears as a parameter to the code stub. BUG= R=verwaest@chromium.org Review URL: https://codereview.chromium.org/70203002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Oct, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org, danno@chromium.org Review URL: https://codereview.chromium.org/28993003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17275 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Sep, 2013 1 commit
-
-
ulan@chromium.org authored
First stage of implementing an out-of-line constant pool on Arm. This CL frees up register r7 for use as a constant pool pointer in later stages. BUG= R=ulan@chromium.org Review URL: https://chromiumcodereview.appspot.com/21063002 Patch from Ross McIlroy <rmcilroy@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Sep, 2013 1 commit
-
-
yangguo@chromium.org authored
This is mostly moving and renaming, except for the BackEdgeTableIterator. Motivation is that the back edges in unoptimized code has nothing to do with the deoptimizer. R=titzer@chromium.org BUG= Review URL: https://codereview.chromium.org/23526069 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Sep, 2013 1 commit
-
-
titzer@chromium.org authored
Generate a custom OSR entrypoint for OSR compiles on all platforms, and transition to optimized code using the special entrypoint, instead of through the deoptimizer. Do not install the OSR compiled code as _the_ optimized code for a function. Remove OSR-related stuff from deoptimizer. BUG= R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/21340002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Aug, 2013 1 commit
-
-
yangguo@chromium.org authored
R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/23480013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Aug, 2013 1 commit
-
-
yangguo@chromium.org authored
This is to prepare for speculative concurrent OSR. I'm planning to add another builtin to patch to, to indicate a concurrent OSR. R=titzer@chromium.org BUG= Review URL: https://codereview.chromium.org/23608004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Jul, 2013 1 commit
-
-
titzer@chromium.org authored
Factor out common code from platform-specific deoptimization. Fix Deoptimizer not to need to partition functions, but revoke their code before patching, allowing deoptimizing_code_list to be removed from Code; Add DeoptimizeCodeList API to deoptimizer, which works on a ZoneList<Code*>. BUG= R=mstarzinger@chromium.org, ulan@chromium.org Review URL: https://codereview.chromium.org/19638014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Jul, 2013 1 commit
-
-
haitao.feng@intel.com authored
BUG=None R=danno@chromium.org Review URL: https://codereview.chromium.org/19802002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-