- 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}
-
- 12 Dec, 2014 1 commit
-
-
svenpanne authored
FINAL implies OVERRIDE, which in turn implies virtual, so there's no need to use more than one of these. The Google C++ style guide even requires this, see http://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Inheritance. While we're here, port r24662 to x87. The net result is that v8 compiles again with a current clang. BUG=v8:3753 LOG=y Review URL: https://codereview.chromium.org/797943002 Cr-Commit-Position: refs/heads/master@{#25792}
-
- 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
-
- 24 Sep, 2014 1 commit
-
-
yangguo@chromium.org authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/596783002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24161 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Sep, 2014 1 commit
-
-
mvstanton@chromium.org authored
the megamorphic load case in hydrogen. A simple approach is to wrap the probe activity in a hydrogen instruction. The instruction is novel in that it always tail-calls away. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/535873002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23772 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Sep, 2014 1 commit
-
-
mvstanton@chromium.org authored
Make concrete classes for individual call descriptors. The ic-convention classes that hold register specifications are merged into these new call descriptor classes, which should represent a final home for that information. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/527093002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23639 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
Less useless creativity is best creativity! R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/526223002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Sep, 2014 1 commit
-
-
mvstanton@chromium.org authored
There was no difference between these two classes in a hierarchical relationship. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/532473002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Aug, 2014 1 commit
-
-
mstarzinger@chromium.org authored
R=jochen@chromium.org Review URL: https://codereview.chromium.org/462033002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23081 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
-
- 31 Jul, 2014 1 commit
-
-
yangguo@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/425243002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22738 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
-
- 29 Jul, 2014 1 commit
-
-
yangguo@chromium.org authored
R=svenpanne@chromium.org BUG=v8:3469 LOG=N Review URL: https://codereview.chromium.org/425943002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22665 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Jul, 2014 1 commit
-
-
mvstanton@chromium.org authored
When FLAG_vector_ics is true, then AST nodes that use Load and KeyedLoad ICs will allocate a type vector slot to store feedback information. Full codegen will emit a load of the slot into a register if the flag is on. Support is incomplete, right now the IC doesn't know how to use the feedback slot. R=verwaest@chromium.org Review URL: https://codereview.chromium.org/398053002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22500 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Jul, 2014 1 commit
-
-
mvstanton@chromium.org authored
StubCallInterfaceDescriptor and CallInterfaceDescriptor are unified under a base class InterfaceDescriptor. Handling of the context register had to be massaged to effect the unification. This will make it easier to call hydrogen code stubs directly from crankshaft. R=danno@chromium.org Review URL: https://codereview.chromium.org/384403002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Jun, 2014 1 commit
-
-
marja@chromium.org authored
This reverts r 22017 Reason: broke Nexus 7 GPU bots (see crbug.com/389198) BUG=389198 LOG=n TBR=machenbach@chromium.org, ulan@chromium.org Review URL: https://codereview.chromium.org/359713004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Jun, 2014 1 commit
-
-
alexandre.rames@arm.com authored
When possible, we transform sequences of code of the form lsl r1, r2, #imm add r0, r5, r1 into add r0, r5, r2 LSL #imm This is an adaptation of r21161. R=ulan@chromium.org Review URL: https://codereview.chromium.org/312173002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Jun, 2014 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/333013002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Jun, 2014 1 commit
-
-
jarin@chromium.org authored
The bug seems to trigger only with array_index_dehoisting off in the snapshot, so it is hard to test for (ideas?). R=mvstanton@chromium.org BUG= Review URL: https://codereview.chromium.org/347523002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Jun, 2014 1 commit
-
-
ulan@chromium.org authored
Patch from Steven Keuchel <keuchel@chromium.org> BUG=v8:2198 LOG=N TEST=mjsunit/harmony/block-let-crankshaft.js R=rossberg@chromium.org Review URL: https://codereview.chromium.org/307593002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 2 commits
-
-
ishell@chromium.org authored
Fixed lint errors caused by "runtime/references" rule (Is this a non-const reference?) and the rule itself is restored. BUG=v8:3326 LOG=N R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/314723002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21651 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
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
-
- 02 Jun, 2014 2 commits
-
-
bmeurer@chromium.org authored
TEST=mjsunit/array-shift,mjsunit/array-shift2,mjsunit/array-shift3 R=yangguo@chromium.org Review URL: https://codereview.chromium.org/308793010 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/308593003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 May, 2014 2 commits
-
-
danno@chromium.org authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/303583002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21535 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
m.m.capewell@googlemail.com authored
R=ulan@chromium.org, bmeurer@chromium.org Review URL: https://codereview.chromium.org/302453008 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21517 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 May, 2014 1 commit
-
-
alexandre.rames@arm.com authored
R=jkummerow@chromium.org, ulan@chromium.org Review URL: https://codereview.chromium.org/296993002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 May, 2014 1 commit
-
-
danno@chromium.org authored
This is preparation for pending hydrogen stub work that needs to access memory using KeyedLoad/KeyedStore operations where the base offset used for the accesses are is the the default (e.g. the size of an FixedArray header for FixedArrays or zero for external arrays). R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/295913009 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21426 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 May, 2014 2 commits
-
-
bmeurer@chromium.org authored
This reverts commit r21383 for breaking the Mozilla tests. TBR=hpayer@chromium.org Review URL: https://codereview.chromium.org/292993003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21386 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
There's actually no need to have the transition as part of the HStoreNamedField instruction. In fact, it is cleaner and faster to generate a separate HStoreNamedField for the transition map. This will also help to eliminate map stores with store elimination, as well as reduce register pressure for transitioning stores on ia32. R=hpayer@chromium.org Review URL: https://codereview.chromium.org/295743002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21383 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 May, 2014 1 commit
-
-
bmeurer@chromium.org authored
TEST=mjsunit/array-shift,mjsunit/array-shift2,mjsunit/array-shift3 R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/279743002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 May, 2014 1 commit
-
-
bmeurer@chromium.org authored
Instead of adding code dependencies on stable during graph creation, we now add them during code generation for those HCheckMaps that survived dead code elimination. R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/264973013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 May, 2014 2 commits
-
-
bmeurer@chromium.org authored
Basically we should not check for map deprecation during code selection, because that may run on the concurrent compiler thread. So the fix is to move this logic to the code generation phase instead, which is always run on the main thread. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/263803005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/256303007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21110 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Apr, 2014 2 commits
-
-
svenpanne@chromium.org authored
TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/266493003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
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
-
- 01 Apr, 2014 1 commit
-
-
svenpanne@chromium.org authored
Previously we tried to share some code on by a slightly confusing re-use of LDivI for a (general) flooring division. Now we cleanly separate concerns, just like for the rest of the division-like operations. Note that ARM64 already did it this way. If we really want to save some code, we can introduce some macro assembler instructions and/or helper functions in the code generator in a future CL, but we should really try to avoid being "clever" to save just a few lines of trivial code. Effort != complexity. :-) Renamed some related Lithium operands on the way for more consistency. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/212703002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20395 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Mar, 2014 1 commit
-
-
svenpanne@chromium.org authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/204583002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Mar, 2014 1 commit
-
-
bmeurer@chromium.org authored
BUG=v8:3204 LOG=y R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/195023002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-