platform/upstream/v8.git
9 years agoMIPS64: Fix bugs in branches for unsigned conditions.
dusan.milosavljevic [Tue, 17 Mar 2015 17:05:06 +0000 (10:05 -0700)]
MIPS64: Fix bugs in branches for unsigned conditions.

TEST=cctest/test-branch-combine
BUG=

Review URL: https://codereview.chromium.org/1017733002

Cr-Commit-Position: refs/heads/master@{#27245}

9 years agoMIPS: Support INTERNAL_REFERENCE_ENCODED in serializer.
paul.lind [Tue, 17 Mar 2015 17:00:12 +0000 (10:00 -0700)]
MIPS: Support INTERNAL_REFERENCE_ENCODED in serializer.

Add mips support for the changes in https://codereview.chromium.org/1000373003. On mips, these support the long-branch mechanism.

TEST=test-serialize/SerializeToplevelLargeCodeObject
BUG=

Review URL: https://codereview.chromium.org/1014763003

Cr-Commit-Position: refs/heads/master@{#27244}

9 years agoDelegate throwing in RegExpExecStub to CEntryStub.
mstarzinger [Tue, 17 Mar 2015 15:49:24 +0000 (08:49 -0700)]
Delegate throwing in RegExpExecStub to CEntryStub.

This ensures that there is only one stub that deals with unwinding the
stack. Having more than one place containing that logic is brittle and
error prone, especially when it is a corner case only for RangeErrors.

R=titzer@chromium.org
TEST=mjsunit/regress/regress-crbug-467047
BUG=chromium:467047
LOG=N

Review URL: https://codereview.chromium.org/1012103002

Cr-Commit-Position: refs/heads/master@{#27243}

9 years agoMark mjsunit/debug-references as flaky in gc-stress.
ulan [Tue, 17 Mar 2015 15:37:15 +0000 (08:37 -0700)]
Mark mjsunit/debug-references as flaky in gc-stress.

BUG=v8:3969
LOG=NO
TBR=yangguo@chromium.org

Review URL: https://codereview.chromium.org/1016743003

Cr-Commit-Position: refs/heads/master@{#27242}

9 years agoFeedback vector: ASAN found memory leaks during AST Numbering pass.
mvstanton [Tue, 17 Mar 2015 15:16:21 +0000 (08:16 -0700)]
Feedback vector: ASAN found memory leaks during AST Numbering pass.

The cause was dynamic allocation of an accounting structure used to
create/initialize the type feedback vector, done at the end of the
numbering pass. The solution is to Zone-allocate the structure to
bring it's lifetime in line with the compilation unit.

BUG=

Review URL: https://codereview.chromium.org/1014793003

Cr-Commit-Position: refs/heads/master@{#27241}

9 years ago[turbofan] Follow-up to evaluation order in AstGraphBuilder.
mstarzinger [Tue, 17 Mar 2015 14:08:02 +0000 (07:08 -0700)]
[turbofan] Follow-up to evaluation order in AstGraphBuilder.

The evaluation order of receiver versus arguments is not properly
defined by C++. This caused issues with Clang where the environment
changed after the receiveing environment was already loaded.

R=jarin@chromium.org
BUG=chromium:467531
LOG=N

Review URL: https://codereview.chromium.org/1011123002

Cr-Commit-Position: refs/heads/master@{#27240}

9 years agocorrectly invalidate global cells
dcarney [Tue, 17 Mar 2015 13:27:25 +0000 (06:27 -0700)]
correctly invalidate global cells

additionally, remove unnecessary deopts when transitioning to global accessor properties from data properties

R=verwaest@chromium.org

BUG=

Review URL: https://codereview.chromium.org/996133002

Cr-Commit-Position: refs/heads/master@{#27239}

9 years ago[turbofan] Fix C++ evaluation order in AstGraphBuilder.
mstarzinger [Tue, 17 Mar 2015 12:36:57 +0000 (05:36 -0700)]
[turbofan] Fix C++ evaluation order in AstGraphBuilder.

The evaluation order of receiver versus arguments is not properly
defined by C++. This caused issues with Clang where the environment
changed after the receiveing environment was already loaded.

R=jarin@chromium.org
BUG=chromium:467531
TEST=mjsunit/regress/regress-crbug-467531
LOG=N

Review URL: https://codereview.chromium.org/1015683002

Cr-Commit-Position: refs/heads/master@{#27238}

9 years ago[turbofan] Fix obsolete workaround for type system in simplified lowering.
bmeurer [Tue, 17 Mar 2015 12:35:51 +0000 (05:35 -0700)]
[turbofan] Fix obsolete workaround for type system in simplified lowering.

Ranges and bitset types now work together, so we don't need these weird
hacks anymore.

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/994283005

Cr-Commit-Position: refs/heads/master@{#27237}

9 years agoconvert String::New functions to maybe
dcarney [Tue, 17 Mar 2015 11:45:35 +0000 (04:45 -0700)]
convert String::New functions to maybe

R=svenpanne@chromium.org
BUG=v8:3929
LOG=n

Review URL: https://codereview.chromium.org/1010803008

Cr-Commit-Position: refs/heads/master@{#27236}

9 years agoUse platform specific stubs for vector-based Load/KeyedLoad.
mvstanton [Tue, 17 Mar 2015 11:28:09 +0000 (04:28 -0700)]
Use platform specific stubs for vector-based Load/KeyedLoad.

A hydrogen code stub is not the best approach because it builds a frame
and doesn't have the technology to discard roots at tail call exits.
Platform-specific stubs provide much better performance at this point.

R=verwaest@chromium.org

BUG=

Review URL: https://codereview.chromium.org/988653003

Cr-Commit-Position: refs/heads/master@{#27235}

9 years agoSerializer: Cache FlagList::Hash result.
yangguo [Tue, 17 Mar 2015 11:04:12 +0000 (04:04 -0700)]
Serializer: Cache FlagList::Hash result.

R=vogelheim@chromium.org

Review URL: https://codereview.chromium.org/1011703003

Cr-Commit-Position: refs/heads/master@{#27234}

9 years agoRetain maps that have live prototypes.
ulan [Tue, 17 Mar 2015 10:52:00 +0000 (03:52 -0700)]
Retain maps that have live prototypes.

BUG=v8:3664
LOG=NO

Review URL: https://codereview.chromium.org/1009343002

Cr-Commit-Position: refs/heads/master@{#27233}

9 years ago[turbofan] Variable liveness analysis for deopt.
jarin [Tue, 17 Mar 2015 09:38:37 +0000 (02:38 -0700)]
[turbofan] Variable liveness analysis for deopt.

This change introduces a liveness analyzer for local variables in frame states.

The main idea is to use the AstGraphBuilder::Environment class to build the control flow graph, and record local variable loads, stores and checkpoints in the CFG basic blocks (LivenessAnalyzerBlock class).

After the graph building finishes, we run a simple data flow analysis over the CFG to figure out liveness of each local variable at each checkpoint. Finally, we run a pass over all the checkpoints and replace dead local variables in the frame states with the 'undefined' value.

Performance numbers for Embenchen are below.

----------- box2d.js
Current --turbo-deoptimization: EmbenchenBox2d(RunTime): 11265 ms.
d8-master --turbo-deoptimization: EmbenchenBox2d(RunTime): 11768 ms.
d8-master: EmbenchenBox2d(RunTime): 10996 ms.
----------- bullet.js
Current --turbo-deoptimization: EmbenchenBullet(RunTime): 17049 ms.
d8-master --turbo-deoptimization: EmbenchenBullet(RunTime): 17384 ms.
d8-master: EmbenchenBullet(RunTime): 16153 ms.
----------- copy.js
Current --turbo-deoptimization: EmbenchenCopy(RunTime): 4877 ms.
d8-master --turbo-deoptimization: EmbenchenCopy(RunTime): 4938 ms.
d8-master: EmbenchenCopy(RunTime): 4940 ms.
----------- corrections.js
Current --turbo-deoptimization: EmbenchenCorrections(RunTime): 7068 ms.
d8-master --turbo-deoptimization: EmbenchenCorrections(RunTime): 6718 ms.
d8-master: EmbenchenCorrections(RunTime): 6858 ms.
----------- fannkuch.js
Current --turbo-deoptimization: EmbenchenFannkuch(RunTime): 4167 ms.
d8-master --turbo-deoptimization: EmbenchenFannkuch(RunTime): 4608 ms.
d8-master: EmbenchenFannkuch(RunTime): 4149 ms.
----------- fasta.js
Current --turbo-deoptimization: EmbenchenFasta(RunTime): 9981 ms.
d8-master --turbo-deoptimization: EmbenchenFasta(RunTime): 9848 ms.
d8-master: EmbenchenFasta(RunTime): 9640 ms.
----------- lua_binarytrees.js
Current --turbo-deoptimization: EmbenchenLuaBinaryTrees(RunTime): 11571 ms.
d8-master --turbo-deoptimization: EmbenchenLuaBinaryTrees(RunTime): 13089 ms.
d8-master: EmbenchenLuaBinaryTrees(RunTime): 10957 ms.
----------- memops.js
Current --turbo-deoptimization: EmbenchenMemOps(RunTime): 7766 ms.
d8-master --turbo-deoptimization: EmbenchenMemOps(RunTime): 7346 ms.
d8-master: EmbenchenMemOps(RunTime): 7738 ms.
----------- primes.js
Current --turbo-deoptimization: EmbenchenPrimes(RunTime): 7459 ms.
d8-master --turbo-deoptimization: EmbenchenPrimes(RunTime): 7453 ms.
d8-master: EmbenchenPrimes(RunTime): 7451 ms.
----------- skinning.js
Current --turbo-deoptimization: EmbenchenSkinning(RunTime): 15564 ms.
d8-master --turbo-deoptimization: EmbenchenSkinning(RunTime): 15611 ms.
d8-master: EmbenchenSkinning(RunTime): 15583 ms.
----------- zlib.js
Current --turbo-deoptimization: EmbenchenZLib(RunTime): 10825 ms.
d8-master --turbo-deoptimization: EmbenchenZLib(RunTime): 11180 ms.
d8-master: EmbenchenZLib(RunTime): 10823 ms.

BUG=

Review URL: https://codereview.chromium.org/949743002

Cr-Commit-Position: refs/heads/master@{#27232}

9 years agoCpuProfiler: extract DeoptInfo fill in code into a static function.
loislo [Tue, 17 Mar 2015 09:37:26 +0000 (02:37 -0700)]
CpuProfiler: extract DeoptInfo fill in code into a static function.

the third part of the patch https://codereview.chromium.org/1012633002

this patch
1) moves DeoptInfo builder code to platform independent file lithium-codegen.cc
2) adds inlining_id property to HEnterInlined so we can use it on lithium level.

BUG=chromium:452067
LOG=n

Review URL: https://codereview.chromium.org/1011733005

Cr-Commit-Position: refs/heads/master@{#27231}

9 years agoSerializer: micro-optimizations for the deserializer.
yangguo [Tue, 17 Mar 2015 09:23:35 +0000 (02:23 -0700)]
Serializer: micro-optimizations for the deserializer.

R=vogelheim@chromium.org

Review URL: https://codereview.chromium.org/1008923003

Cr-Commit-Position: refs/heads/master@{#27230}

9 years agoadd missing dcheck to ToLocalChecked
dcarney [Tue, 17 Mar 2015 09:03:40 +0000 (02:03 -0700)]
add missing dcheck to ToLocalChecked

R=svenpanne@chromium.org
BUG=v8:3929
LOG=n

Review URL: https://codereview.chromium.org/1017663002

Cr-Commit-Position: refs/heads/master@{#27229}

9 years agoUpdate V8 DEPS.
v8-autoroll [Tue, 17 Mar 2015 04:02:31 +0000 (21:02 -0700)]
Update V8 DEPS.

Rolling v8/build/gyp to d174d75bf69c682cb62af9187879e01513b35e52

TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/1014683004

Cr-Commit-Position: refs/heads/master@{#27228}

9 years ago[ARM64] [turbofan] Improve construction of doubles.
jacob.bramley [Mon, 16 Mar 2015 17:15:16 +0000 (10:15 -0700)]
[ARM64] [turbofan] Improve construction of doubles.

Improve the code generated for construction of a 64-bit floating point
number from two 32-bit integers.

Previously, this moved FP->core, inserted, then moved core->FP for each
half. Now, we construct the double in an X register and move core->FP.
Typically, the temporary register aliases the input register, so the
sequence improves from six to two instructions.

Patch from Martyn Capewell <m.m.capewell@googlemail.com>.

BUG=

Review URL: https://codereview.chromium.org/1008003004

Cr-Commit-Position: refs/heads/master@{#27227}

9 years agoMake valgrind a bit more happy by zero-terminating/initializing strings.
svenpanne [Mon, 16 Mar 2015 15:34:03 +0000 (08:34 -0700)]
Make valgrind a bit more happy by zero-terminating/initializing strings.

Tiny cleanup on the way...

Review URL: https://codereview.chromium.org/1007283006

Cr-Commit-Position: refs/heads/master@{#27226}

9 years agoHook up over approximating the weak closure to the idle time handler
jochen [Mon, 16 Mar 2015 14:51:09 +0000 (07:51 -0700)]
Hook up over approximating the weak closure to the idle time handler

The feature itself is still behind a flag.

BUG=v8:3862
R=hpayer@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/1014503003

Cr-Commit-Position: refs/heads/master@{#27225}

9 years agoCpuProfiler: replace FLAG_hydrogen_track_positions with is_tracking_positions method...
loislo [Mon, 16 Mar 2015 14:17:01 +0000 (07:17 -0700)]
CpuProfiler: replace FLAG_hydrogen_track_positions with is_tracking_positions method on CompilationInfo

this is the second part of https://codereview.chromium.org/1012633002.

almost mechanical change.
I'd like to enable positions tracking when cpu profiler is working.
But I'll switch it on for cpu-profiler in another patch.

BUG=chromium:452067
LOG=n

Review URL: https://codereview.chromium.org/995183005

Cr-Commit-Position: refs/heads/master@{#27224}

9 years agoBugfix in hydrogen GVN.
ishell [Mon, 16 Mar 2015 13:46:10 +0000 (06:46 -0700)]
Bugfix in hydrogen GVN.

BUG=chromium:467481
LOG=Y

Review URL: https://codereview.chromium.org/1009933002

Cr-Commit-Position: refs/heads/master@{#27223}

9 years ago[turbofan] Cache for reusing parts of value vector nodes in frame states.
jarin [Mon, 16 Mar 2015 13:43:02 +0000 (06:43 -0700)]
[turbofan] Cache for reusing parts of value vector nodes in frame states.

Instead of the current approach of storing flat vectors in frame states (and possibly reusing the last vector in AST graph builder), this change list builds a tree for the values and tries to reuse the nodes for different frame states. At the moment, we only use this for the local variable part of frame state, but nothing prevents us from using this for all parts.

This change provides two new classes: one for creating the tree (StateValuesCache) and one for iterating the trees (StateValuesAccess).

BUG=

Review URL: https://codereview.chromium.org/1008213002

Cr-Commit-Position: refs/heads/master@{#27222}

9 years agoCpuProfiler: convert List<InlinedFunctionInfo> into std::vector<InlinedFunctionInfo>
loislo [Mon, 16 Mar 2015 13:41:50 +0000 (06:41 -0700)]
CpuProfiler: convert List<InlinedFunctionInfo> into std::vector<InlinedFunctionInfo>

this is the first part of https://codereview.chromium.org/1012633002.
mechanical change.

The motivation: the original patch needs to use List of List but list is not copiable.

BUG=chromium:452067
LOG=n

Review URL: https://codereview.chromium.org/1011733002

Cr-Commit-Position: refs/heads/master@{#27221}

9 years agoPromote code from code cache to compilation cache.
yangguo [Mon, 16 Mar 2015 13:19:10 +0000 (06:19 -0700)]
Promote code from code cache to compilation cache.

The per-isolate compilation cache is a lot faster still than
the serialized code cache. Promote code to compilation cache
after deserialization.

R=vogelheim@chromium.org
BUG=chromium:399580
LOG=N

Review URL: https://codereview.chromium.org/1008363002

Cr-Commit-Position: refs/heads/master@{#27220}

9 years agoRemove BLACKLIST from check-name-clashes.py, it's wrong nowadays.
svenpanne [Mon, 16 Mar 2015 13:08:42 +0000 (06:08 -0700)]
Remove BLACKLIST from check-name-clashes.py, it's wrong nowadays.

Fix the resulting warnings by renaming things apart.

BUG=v8:3947
LOG=n

Review URL: https://codereview.chromium.org/1009373002

Cr-Commit-Position: refs/heads/master@{#27219}

9 years agoRepeatedly overapproximate the weak closure as long as we make progress
jochen [Mon, 16 Mar 2015 12:51:47 +0000 (05:51 -0700)]
Repeatedly overapproximate the weak closure as long as we make progress

Also, include the time for building object groups in the tracing scope
for the overapproximation.

BUG=v8:3862
R=hpayer@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/1012593004

Cr-Commit-Position: refs/heads/master@{#27218}

9 years agoRemove all atomic access from store buffer.
hpayer [Mon, 16 Mar 2015 12:22:10 +0000 (05:22 -0700)]
Remove all atomic access from store buffer.

Store buffer does not contain stale pointers anymore. Hence, sweeper threads and store buffer processing does not collide.

BUG=

Review URL: https://codereview.chromium.org/1007273002

Cr-Commit-Position: refs/heads/master@{#27217}

9 years agoFix RelocInfo::Mode enum wrt LAST_STANDARD_NONCOMPACT_ENUM.
yangguo [Mon, 16 Mar 2015 11:43:28 +0000 (04:43 -0700)]
Fix RelocInfo::Mode enum wrt LAST_STANDARD_NONCOMPACT_ENUM.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/1011613003

Cr-Commit-Position: refs/heads/master@{#27216}

9 years agoRevert of Remove kind field from StackHandler. (patchset #4 id:60001 of https://coder...
mstarzinger [Mon, 16 Mar 2015 11:41:27 +0000 (04:41 -0700)]
Revert of Remove kind field from StackHandler. (patchset #4 id:60001 of https://codereview.chromium.org/1002203002/)

Reason for revert:
Layout test failure in inspector/sources/debugger/debugger-pause-on-promise-rejection.html

Original issue's description:
> Remove kind field from StackHandler.
>
> This makes the Isolate::Throw logic not depend on a prediction of
> whether an exception is caught or uncaught. Such a prediction is
> inherently undecidable because a finally block can decide between
> consuming or re-throwing an exception depending on arbitray control
> flow.
>
> There still is a conservative prediction mechanism in place that
> components like the debugger or tracing can use for reporting.
>
> With this change we can get rid of the StackHandler::kind field, a
> pre-requisite to do table-based lookups of exception handlers.
>
> R=yangguo@chromium.org
>
> Committed: https://crrev.com/96f79568a926966ebcf0685bf9adc947f4e1fbff
> Cr-Commit-Position: refs/heads/master@{#27210}

TBR=yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1009903002

Cr-Commit-Position: refs/heads/master@{#27215}

9 years agoDelete dead store buffer verification code and code that changes the store buffer...
hpayer [Mon, 16 Mar 2015 11:40:12 +0000 (04:40 -0700)]
Delete dead store buffer verification code and code that changes the store buffer in debug mode.

BUG=

Review URL: https://codereview.chromium.org/1009323002

Cr-Commit-Position: refs/heads/master@{#27214}

9 years agoFix ll_prof.py for static binaries.
jacob.bramley [Mon, 16 Mar 2015 11:34:45 +0000 (04:34 -0700)]
Fix ll_prof.py for static binaries.

BUG=

Review URL: https://codereview.chromium.org/1007613005

Cr-Commit-Position: refs/heads/master@{#27213}

9 years agoMIPS64: Unify and improve Word32 compares to use same instructions as Word64 compares.
dusan.milosavljevic [Mon, 16 Mar 2015 11:00:00 +0000 (04:00 -0700)]
MIPS64: Unify and improve Word32 compares to use same instructions as Word64 compares.

The CL enables the same instructions are selected for Word32 and Word64 compare
operations which is possible due to a fact 32-bit inputs and produced values
are always sign-extended.

TEST=
BUG=

Review URL: https://codereview.chromium.org/1005123002

Cr-Commit-Position: refs/heads/master@{#27212}

9 years agoFix data race in Isolate::CheckDetachedContextsAfterGC
ulan [Mon, 16 Mar 2015 10:16:59 +0000 (03:16 -0700)]
Fix data race in Isolate::CheckDetachedContextsAfterGC

BUG=chromium:462908
LOG=NO

Review URL: https://codereview.chromium.org/1010713002

Cr-Commit-Position: refs/heads/master@{#27211}

9 years agoRemove kind field from StackHandler.
mstarzinger [Mon, 16 Mar 2015 10:06:11 +0000 (03:06 -0700)]
Remove kind field from StackHandler.

This makes the Isolate::Throw logic not depend on a prediction of
whether an exception is caught or uncaught. Such a prediction is
inherently undecidable because a finally block can decide between
consuming or re-throwing an exception depending on arbitray control
flow.

There still is a conservative prediction mechanism in place that
components like the debugger or tracing can use for reporting.

With this change we can get rid of the StackHandler::kind field, a
pre-requisite to do table-based lookups of exception handlers.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/1002203002

Cr-Commit-Position: refs/heads/master@{#27210}

9 years agoClarify arm gn configuration
jochen [Mon, 16 Mar 2015 09:54:46 +0000 (02:54 -0700)]
Clarify arm gn configuration

R=dpranke@chromium.org
TBR=machenbach@chromium.org
BUG=
LOG=n

Review URL: https://codereview.chromium.org/1004113003

Cr-Commit-Position: refs/heads/master@{#27209}

9 years agoRemove obsolete TakeHeapSnapshot method from API
yurys [Mon, 16 Mar 2015 09:49:18 +0000 (02:49 -0700)]
Remove obsolete TakeHeapSnapshot method from API

BUG=chromium:465651
LOG=Y

Review URL: https://codereview.chromium.org/997583004

Cr-Commit-Position: refs/heads/master@{#27208}

9 years agoRevert of Reland of Remove slots that point to unboxed doubles from the StoreBuffer...
ishell [Mon, 16 Mar 2015 09:40:34 +0000 (02:40 -0700)]
Revert of Reland of Remove slots that point to unboxed doubles from the StoreBuffer/SlotsBuffer. (patchset #3 id:40001 of https://codereview.chromium.org/988363002/)

Reason for revert:
Increased rate of Chrome crashes. Requires further investigation.

Original issue's description:
> Reland of Remove slots that point to unboxed doubles from the StoreBuffer/SlotsBuffer.
>
> The problem is that tagged slot could become a double slot after migrating of an object to another map with "shifted" fields (for example as a result of generalizing immutable data property to a data field).
> This CL also adds useful machinery that helps triggering incremental write barriers.
>
> BUG=chromium:454297, chromium:465273
> LOG=Y
>
> Committed: https://crrev.com/6d0677d845c47ab9fa297de61d0e3d8e5480a02a
> Cr-Commit-Position: refs/heads/master@{#27141}

TBR=hpayer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:454297, chromium:465273

Review URL: https://codereview.chromium.org/1004623003

Cr-Commit-Position: refs/heads/master@{#27207}

9 years agoPPC: Exclude mirror-object test until issue is resolved
michael_dawson [Mon, 16 Mar 2015 09:26:31 +0000 (02:26 -0700)]
PPC: Exclude mirror-object test until issue is resolved

modified:   test/mjsunit/mjsunit.status

R=danno@chromium.org, svenpanne@chromium.org

BUG=

Review URL: https://codereview.chromium.org/997773003

Cr-Commit-Position: refs/heads/master@{#27206}

9 years agoBeautify syntax error for unterminated argument list
yurys [Mon, 16 Mar 2015 09:16:12 +0000 (02:16 -0700)]
Beautify syntax error for unterminated argument list

BUG=chromium:339474
LOG=Y

Review URL: https://codereview.chromium.org/1002263004

Cr-Commit-Position: refs/heads/master@{#27205}

9 years agoPPC: Further leverage internal references.
michael_dawson [Mon, 16 Mar 2015 08:40:14 +0000 (01:40 -0700)]
PPC: Further leverage internal references.

Enable code dependent on the newly provided common code support for
encoded internal references.

modified:   src/ppc/code-stubs-ppc.cc
modified:   test/cctest/cctest.status

R=danno@chromium.org, svenpanne@chromium.org

BUG=

Review URL: https://codereview.chromium.org/1008963002

Cr-Commit-Position: refs/heads/master@{#27204}

9 years agoAdd more debug output for flaky debug-references test.
yangguo [Mon, 16 Mar 2015 08:14:32 +0000 (01:14 -0700)]
Add more debug output for flaky debug-references test.

TBR=vogelheim@chromium.org

Review URL: https://codereview.chromium.org/1013603002

Cr-Commit-Position: refs/heads/master@{#27203}

9 years agoPPC: Implement turbofan Float64Min and Float64Max machine operators.
michael_dawson [Mon, 16 Mar 2015 08:01:51 +0000 (01:01 -0700)]
PPC: Implement turbofan Float64Min and Float64Max machine operators.

R=danno@chromium.org, svenpanne@chromium.org

BUG=

Review URL: https://codereview.chromium.org/1006913002

Cr-Commit-Position: refs/heads/master@{#27202}

9 years ago[turbofan] Fix typo in ControlReducer.
bmeurer [Mon, 16 Mar 2015 07:27:52 +0000 (00:27 -0700)]
[turbofan] Fix typo in ControlReducer.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/1001063003

Cr-Commit-Position: refs/heads/master@{#27201}

9 years agoUpdate V8 DEPS.
machenbach [Sat, 14 Mar 2015 18:41:28 +0000 (11:41 -0700)]
Update V8 DEPS.

Rolling v8/tools/clang to 37246cb63b9720d6fe74b473210291007e49297b

TBR=jochen@chromium.org
BUG=chromium:466099
LOG=n

Review URL: https://codereview.chromium.org/1005333002

Cr-Commit-Position: refs/heads/master@{#27200}

9 years agoWhitespace change for updating perf shards (2)
Michael Achenbach [Sat, 14 Mar 2015 17:12:49 +0000 (10:12 -0700)]
Whitespace change for updating perf shards (2)

Cr-Commit-Position: refs/heads/master@{#27199}

9 years agoWhitespace change for updating perf shards (1)
Michael Achenbach [Sat, 14 Mar 2015 16:49:22 +0000 (09:49 -0700)]
Whitespace change for updating perf shards (1)

Cr-Commit-Position: refs/heads/master@{#27198}

9 years agoMake release scripts even more robust.
machenbach [Sat, 14 Mar 2015 02:04:33 +0000 (19:04 -0700)]
Make release scripts even more robust.

Also clean up left alone release branch in the chromium
checkout of the v8rel script.

TBR=tandrii@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/1003383003

Cr-Commit-Position: refs/heads/master@{#27197}

9 years agoMake release scripts more robust.
machenbach [Sat, 14 Mar 2015 01:20:45 +0000 (18:20 -0700)]
Make release scripts more robust.

Remembering the current branch is a relic from the past
where no work-dir checkout was used. Now this doesn't give
much benefit and screws up the script if it was left in
a bad state (e.g. after a master restart).

TBR=tandrii@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/1002383002

Cr-Commit-Position: refs/heads/master@{#27196}

9 years agoWhitespace change to test slave-side triggers.
Michael Achenbach [Sat, 14 Mar 2015 00:33:24 +0000 (17:33 -0700)]
Whitespace change to test slave-side triggers.

Cr-Commit-Position: refs/heads/master@{#27195}

9 years agoWhitespace change to test slave-side triggers.
Michael Achenbach [Fri, 13 Mar 2015 21:51:42 +0000 (14:51 -0700)]
Whitespace change to test slave-side triggers.

Cr-Commit-Position: refs/heads/master@{#27194}

9 years agoWhitespace change to test slave-side triggers.
Michael Achenbach [Fri, 13 Mar 2015 21:50:40 +0000 (14:50 -0700)]
Whitespace change to test slave-side triggers.

Cr-Commit-Position: refs/heads/master@{#27193}

9 years agoDon't assert that we only cross compile on linux
jochen [Fri, 13 Mar 2015 20:49:43 +0000 (13:49 -0700)]
Don't assert that we only cross compile on linux

We also cross compile on Windows for example. Since we can't switch the
toolchain there, we'll just use the 64bit toolchain and produce an
invalid snapshot :-/

BUG=none
R=dpranke@chromium.org
LOG=n
TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/1008933002

Cr-Commit-Position: refs/heads/master@{#27192}

9 years agoRemove some dead code from the Isolate.
mstarzinger [Fri, 13 Mar 2015 17:58:04 +0000 (10:58 -0700)]
Remove some dead code from the Isolate.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/1009453004

Cr-Commit-Position: refs/heads/master@{#27191}

9 years ago[es6] Function length property should be configurable
arv [Fri, 13 Mar 2015 17:19:40 +0000 (10:19 -0700)]
[es6] Function length property should be configurable

ES6 specs the function length property (it was not part of ES5) and
it makes it configurable.

BUG=v8:3045
LOG=N
R=mstarzinger@chromium.org, adamk@chromium.org
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/993073002

Cr-Commit-Position: refs/heads/master@{#27190}

9 years agoFix test for function declarations syntax error.
dslomov [Fri, 13 Mar 2015 16:57:25 +0000 (09:57 -0700)]
Fix test for function declarations syntax error.

Also fix parsing of declarations after case labels.

R=waldron.rick@gmail.com,rossberg@chromium.org
BUG=v8:3939
LOG=N

Review URL: https://codereview.chromium.org/964063003

Cr-Commit-Position: refs/heads/master@{#27189}

9 years ago[strong] Check super constructor calls
rossberg [Fri, 13 Mar 2015 16:26:38 +0000 (09:26 -0700)]
[strong] Check super constructor calls

R=marja@chromium.org
BUG=v8:3956
LOG=N

Review URL: https://codereview.chromium.org/1002253002

Cr-Commit-Position: refs/heads/master@{#27188}

9 years agoRemove --harmony-scoping flag.
dslomov [Fri, 13 Mar 2015 15:15:42 +0000 (08:15 -0700)]
Remove --harmony-scoping flag.

We have been shipping harmony scoping for 2 Chrome releases now (M41
and M42). Time to remove the flag.

R=rossberg@chromium.org
LOG=Y

Review URL: https://codereview.chromium.org/1007783002

Cr-Commit-Position: refs/heads/master@{#27187}

9 years ago[V8] Use Function.name in Error.stack
kozyatinskiy [Fri, 13 Mar 2015 15:11:47 +0000 (08:11 -0700)]
[V8] Use Function.name in Error.stack

Error.stack contains function.name if its type is string.
Otherwise if function have inferred name then .stack contains it.
For functions from eval .stack property contains "eval".

LOG=N
BUG=chromium:17356
R=yurys@chromium.org

Review URL: https://codereview.chromium.org/919653002

Cr-Commit-Position: refs/heads/master@{#27186}

9 years agoHide Symbol implementation in a closure.
yangguo [Fri, 13 Mar 2015 15:08:12 +0000 (08:08 -0700)]
Hide Symbol implementation in a closure.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/1009443002

Cr-Commit-Position: refs/heads/master@{#27185}

9 years agoUse the incremental root marking visitor for overapproximating the weak closure
jochen [Fri, 13 Mar 2015 14:51:22 +0000 (07:51 -0700)]
Use the incremental root marking visitor for overapproximating the weak closure

Since incremental marking hasn't completed yet at this point, we can't
use the MC's root visitor.

Also, we shouldn't hurry with incremental marking while
overapproximating

BUG=v8:3862
R=hpayer@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/997423002

Cr-Commit-Position: refs/heads/master@{#27184}

9 years agoEncode RelocInfo extra tag to fit changed RelocInfo kind enum.
yangguo [Fri, 13 Mar 2015 13:39:18 +0000 (06:39 -0700)]
Encode RelocInfo extra tag to fit changed RelocInfo kind enum.

This fixes some failures on MIPS. Though not all of them, since
MIPS does not correctly implement set_target_internal_reference.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/1008823002

Cr-Commit-Position: refs/heads/master@{#27183}

9 years agoImplement TDZ in StoreIC for top-level lexicals.
dslomov [Fri, 13 Mar 2015 13:28:05 +0000 (06:28 -0700)]
Implement TDZ in StoreIC for top-level lexicals.

StoreIC::Store was missing a check present in LoadIC::Load.

R=rossberg@chromium.org
BUG=v8:3941
LOG=Y

Review URL: https://codereview.chromium.org/1001323002

Cr-Commit-Position: refs/heads/master@{#27182}

9 years agoAdd more output to flaky debug-references test.
yangguo [Fri, 13 Mar 2015 12:27:33 +0000 (05:27 -0700)]
Add more output to flaky debug-references test.

R=vogelheim@chromium.org

Review URL: https://codereview.chromium.org/1006873002

Cr-Commit-Position: refs/heads/master@{#27181}

9 years agoExtract code to mark an object during incremental marking
jochen [Fri, 13 Mar 2015 12:14:01 +0000 (05:14 -0700)]
Extract code to mark an object during incremental marking

Not only does this remove code duplication, I also plan to use this for
unifying reference group marking later

BUG=none
R=hpayer@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/1007793002

Cr-Commit-Position: refs/heads/master@{#27180}

9 years agoPPC: fix allocation issues for PPC64.
yangguo [Fri, 13 Mar 2015 11:18:25 +0000 (04:18 -0700)]
PPC: fix allocation issues for PPC64.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/1009433002

Cr-Commit-Position: refs/heads/master@{#27179}

9 years agoSpeed up FastElementsAccessor::ValidContents by removing redundant handle scope.
titzer [Fri, 13 Mar 2015 10:47:31 +0000 (03:47 -0700)]
Speed up FastElementsAccessor::ValidContents by removing redundant handle scope.

R=jkummerow@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1002203003

Cr-Commit-Position: refs/heads/master@{#27178}

9 years agoSerializer: prepare support for INTERNAL_REFERENCE_ENCODED.
yangguo [Fri, 13 Mar 2015 10:07:54 +0000 (03:07 -0700)]
Serializer: prepare support for INTERNAL_REFERENCE_ENCODED.

Platform ports that use this RelocInfo kind need to implement
set_target_internal_reference accordingly to distinguish between
INTERNAL_REFERENCE and INTERNAL_REFERENCE_ENCODED.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/1000373003

Cr-Commit-Position: refs/heads/master@{#27177}

9 years agoRemove duplicate script scope.
marja [Fri, 13 Mar 2015 09:46:05 +0000 (02:46 -0700)]
Remove duplicate script scope.

We previously had two nested SCRIPT_SCOPEs (used to be GLOBAL_SCOPES), but as
the lexical variable implementation changed, the inner one is no longer needed.
BUG=

Review URL: https://codereview.chromium.org/1002193002

Cr-Commit-Position: refs/heads/master@{#27176}

9 years agoTurn on job-based optimizing compiler
jochen [Fri, 13 Mar 2015 09:13:50 +0000 (02:13 -0700)]
Turn on job-based optimizing compiler

BUG=v8:3608
R=yangguo@chromium.org
LOG=y

Review URL: https://codereview.chromium.org/1001313002

Cr-Commit-Position: refs/heads/master@{#27175}

9 years agoPPC: [turbofan] Introduce optional Float64Min and Float64Max machine operators.
michael_dawson [Fri, 13 Mar 2015 07:39:53 +0000 (00:39 -0700)]
PPC: [turbofan] Introduce optional Float64Min and Float64Max machine operators.

Port 99f8d57f3c5d967bc3b10356b22d7ec7be55e89f

Original commit message:
Basically recognize certain x < y ? x : y constructs and turn that into
Float64Min/Float64Max operations, if the target machine supports that.
On x86 we lower to (v)minsd/(v)maxsd.

R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/998283002

Cr-Commit-Position: refs/heads/master@{#27160}

R=danno@chromium.org, svenpanne@chromium.org

BUG=

Review URL: https://codereview.chromium.org/1005693002

Cr-Commit-Position: refs/heads/master@{#27174}

9 years agoPPC: Simplify pending message object handling.
michael_dawson [Fri, 13 Mar 2015 07:34:47 +0000 (00:34 -0700)]
PPC: Simplify pending message object handling.

Port d4696c484142c601cbd691ae80164043785a3af7

Original commit message:
This moves the decision whether to report a message or not to when
the pending exception is propagated instead of trying to preserve the
decision in a ThreadLocalTop field.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/998943003

Cr-Commit-Position: refs/heads/master@{#27150}

R=danno@chromium.org, svenpanne@chromium.org, titzer@chromium.org

BUG=

Review URL: https://codereview.chromium.org/1000963002

Cr-Commit-Position: refs/heads/master@{#27173}

9 years ago[turbofan] Use builtin inlining mechanism for Math.abs and Math.sqrt.
bmeurer [Fri, 13 Mar 2015 07:06:02 +0000 (00:06 -0700)]
[turbofan] Use builtin inlining mechanism for Math.abs and Math.sqrt.

Reduces the amount of custom support code for Math functions in TurboFan
and allows for more general inlining (i.e. independent of parameter
types).

BUG=v8:3952
LOG=n
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/1004083002

Cr-Commit-Position: refs/heads/master@{#27172}

9 years agoFix error message for Object.observe accept argument
adamk [Thu, 12 Mar 2015 19:04:29 +0000 (12:04 -0700)]
Fix error message for Object.observe accept argument

BUG=chromium:464695
LOG=n

Review URL: https://codereview.chromium.org/1005553003

Cr-Commit-Position: refs/heads/master@{#27171}

9 years agoReactivate all the cores in cpu.sh.
Hannes Payer [Thu, 12 Mar 2015 18:01:47 +0000 (19:01 +0100)]
Reactivate all the cores in cpu.sh.

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/1004763002

Cr-Commit-Position: refs/heads/master@{#27170}

9 years agoMIPS: Improve naming of turbofan ops for %_DoubleHi, %_DoubleLo and %_ConstructDouble.
balazs.kilvady [Thu, 12 Mar 2015 17:29:00 +0000 (10:29 -0700)]
MIPS: Improve naming of turbofan ops for %_DoubleHi, %_DoubleLo and %_ConstructDouble.

BUG=

Review URL: https://codereview.chromium.org/1006523002

Cr-Commit-Position: refs/heads/master@{#27169}

9 years agoMIPS: [turbofan] Introduce optional Float64Min and Float64Max machine operators.
balazs.kilvady [Thu, 12 Mar 2015 16:43:39 +0000 (09:43 -0700)]
MIPS: [turbofan] Introduce optional Float64Min and Float64Max machine operators.

Port 99f8d57f3c5d967bc3b10356b22d7ec7be55e89f

Original commit message:
Basically recognize certain x < y ? x : y constructs and turn that into
Float64Min/Float64Max operations, if the target machine supports that.
On x86 we lower to (v)minsd/(v)maxsd.

BUG=

Review URL: https://codereview.chromium.org/1006513002

Cr-Commit-Position: refs/heads/master@{#27168}

9 years agoUse path in name for test262-es6
arv [Thu, 12 Mar 2015 16:36:16 +0000 (09:36 -0700)]
Use path in name for test262-es6

For ES5 the file names always included the whole path, like this:

  ch15/15.2/15.2.3/15.2.3.14/15.2.3.14-1-3.js

For ES6 this is no longer true:

  language/computed-property-names/basics/symbol.js
  language/computed-property-names/class/method/symbol.js

To allow the status file to correctly identify the right test we need
to change the reported test name to include the whole path.

BUG=None
LOG=N
R=rossberg@chromium.org, machenbach@chromium.org

Review URL: https://codereview.chromium.org/1001613002

Cr-Commit-Position: refs/heads/master@{#27167}

9 years agoremove DeletedField from PropertyDetails
dcarney [Thu, 12 Mar 2015 16:03:19 +0000 (09:03 -0700)]
remove DeletedField from PropertyDetails

R=verwaest@chromium.org

BUG=

Review URL: https://codereview.chromium.org/1002703002

Cr-Commit-Position: refs/heads/master@{#27166}

9 years agoSwitch the order of experimental global initialization and running natives.
dslomov [Thu, 12 Mar 2015 15:44:32 +0000 (08:44 -0700)]
Switch the order of experimental global initialization and running natives.

The order should match the one for normal natives.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/988513003

Cr-Commit-Position: refs/heads/master@{#27165}

9 years agoUse target_cpu instead of cpu_arch in BUILD.gn
jochen [Thu, 12 Mar 2015 15:39:41 +0000 (08:39 -0700)]
Use target_cpu instead of cpu_arch in BUILD.gn

Also add missing defines for arm simulator build

BUG=v8:3841
R=machenbach@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/874393007

Cr-Commit-Position: refs/heads/master@{#27164}

9 years agoFix build on solaris platforms
johan [Thu, 12 Mar 2015 15:12:37 +0000 (08:12 -0700)]
Fix build on solaris platforms

e8b9f2d7 introduced a different cast which broke building on Illumos.
Revert to previous behavior for V8_OS_SOLARIS only.

Found on SmartOS while building with gcc 4.9.0.

edit1: adding jochen to reviewers since he was assigned through the issue tracker and danno since he seems to do a fair amount of cross-platform work

edit2: removing BUG reference because I don't understand what LOG needs to contain (and it seems to link to chromium and not the v8 repo). Please edit commit message as appropriate.

BUG=3935
LOG=n

Review URL: https://codereview.chromium.org/990063002

Cr-Commit-Position: refs/heads/master@{#27163}

9 years ago[turbofan] Bring back long lost comment to AstGraphBuilder.
mstarzinger [Thu, 12 Mar 2015 15:04:30 +0000 (08:04 -0700)]
[turbofan] Bring back long lost comment to AstGraphBuilder.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/1004673002

Cr-Commit-Position: refs/heads/master@{#27162}

9 years agoHide RegExp and String initialization in a closure.
yangguo [Thu, 12 Mar 2015 14:47:35 +0000 (07:47 -0700)]
Hide RegExp and String initialization in a closure.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/1000063002

Cr-Commit-Position: refs/heads/master@{#27161}

9 years ago[turbofan] Introduce optional Float64Min and Float64Max machine operators.
bmeurer [Thu, 12 Mar 2015 14:07:28 +0000 (07:07 -0700)]
[turbofan] Introduce optional Float64Min and Float64Max machine operators.

Basically recognize certain x < y ? x : y constructs and turn that into
Float64Min/Float64Max operations, if the target machine supports that.
On x86 we lower to (v)minsd/(v)maxsd.

R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/998283002

Cr-Commit-Position: refs/heads/master@{#27160}

9 years ago[es6] support template literals after MemberExpression
caitpotter88 [Thu, 12 Mar 2015 14:01:56 +0000 (07:01 -0700)]
[es6] support template literals after MemberExpression

BUG=v8:3958, 450942
LOG=N
R=arv@chromium.org

Review URL: https://codereview.chromium.org/996223003

Cr-Commit-Position: refs/heads/master@{#27159}

9 years agoMIPS: Simplify pending message object handling.
balazs.kilvady [Thu, 12 Mar 2015 13:54:31 +0000 (06:54 -0700)]
MIPS: Simplify pending message object handling.

Port d4696c484142c601cbd691ae80164043785a3af7

Original commit message:
This moves the decision whether to report a message or not to when
the pending exception is propagated instead of trying to preserve the
decision in a ThreadLocalTop field.

BUG=

Review URL: https://codereview.chromium.org/1004623002

Cr-Commit-Position: refs/heads/master@{#27158}

9 years ago[turbofan] Introduce builders for property access.
mstarzinger [Thu, 12 Mar 2015 13:49:55 +0000 (06:49 -0700)]
[turbofan] Introduce builders for property access.

This introduces a choke point in the AstGraphBuilder for property
access creation. This makes it easier to enrich all such nodes with
additional side-table or debugging information.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/1002713002

Cr-Commit-Position: refs/heads/master@{#27157}

9 years agoAdd Cast() for Int32 and Uint32
bashi [Thu, 12 Mar 2015 12:27:41 +0000 (05:27 -0700)]
Add Cast() for Int32 and Uint32

It should be possible to cast a Value to Int32 without throwing an exception
when IsInt32() is true. Same for Uint32.

BUG=chromium:462402
LOG=Y

Review URL: https://codereview.chromium.org/1003663002

Cr-Commit-Position: refs/heads/master@{#27156}

9 years agoRemove funky 2-stage initialization of ParserInfo and an adventurous memset.
Sven Panne [Thu, 12 Mar 2015 11:46:12 +0000 (12:46 +0100)]
Remove funky 2-stage initialization of ParserInfo and an adventurous memset.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/1002673002

Cr-Commit-Position: refs/heads/master@{#27155}

9 years agoIncorrect handling of HTransitionElementsKind in hydrogen check elimination phase...
ishell [Thu, 12 Mar 2015 11:44:23 +0000 (04:44 -0700)]
Incorrect handling of HTransitionElementsKind in hydrogen check elimination phase fixed.

BUG=chromium:460917
LOG=Y

Review URL: https://codereview.chromium.org/1000893003

Cr-Commit-Position: refs/heads/master@{#27154}

9 years ago[strong] Cleanup and fix test (declaration-after-use.js).
marja [Thu, 12 Mar 2015 10:52:04 +0000 (03:52 -0700)]
[strong] Cleanup and fix test (declaration-after-use.js).

Cleanup: Better helpers, unified line splitting. Also asserting that without
strong mode, the snippets don't produce errors.

Fix: The eval related tests were wrong (we didn't make sure that the error
thrown comes from strong scoping and is not a normal runtime error).

BUG=v8:3956
LOG=N

Review URL: https://codereview.chromium.org/993393002

Cr-Commit-Position: refs/heads/master@{#27153}

9 years agoMIPS: CpuProfiler: enable tests except four failing tests.
balazs.kilvady [Thu, 12 Mar 2015 10:46:22 +0000 (03:46 -0700)]
MIPS: CpuProfiler: enable tests except four failing tests.

Port 84e90b2d0d28229b4107ff350620fc40935c5770

Original commit message:
Four tests are failing due to a problem with no frame ranges.

TEST=cctest/test-cpu-profiler/CollectDeoptEvents
BUG=

Review URL: https://codereview.chromium.org/1000723002

Cr-Commit-Position: refs/heads/master@{#27152}

9 years agoadd 0 length guard in IsNonArrayIndexInteger
dcarney [Thu, 12 Mar 2015 10:44:31 +0000 (03:44 -0700)]
add 0 length guard in IsNonArrayIndexInteger

TBR=verwaest@chromium.org

BUG=466086
LOG=N

Review URL: https://codereview.chromium.org/998213002

Cr-Commit-Position: refs/heads/master@{#27151}

9 years agoSimplify pending message object handling.
mstarzinger [Thu, 12 Mar 2015 09:50:30 +0000 (02:50 -0700)]
Simplify pending message object handling.

This moves the decision whether to report a message or not to when
the pending exception is propagated instead of trying to preserve the
decision in a ThreadLocalTop field.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/998943003

Cr-Commit-Position: refs/heads/master@{#27150}

9 years agoVector-ICs: Implement slot sharing for global loads.
mvstanton [Thu, 12 Mar 2015 09:22:47 +0000 (02:22 -0700)]
Vector-ICs: Implement slot sharing for global loads.

We can reduce the number of type feedback vector slots required, and
also reduce IC misses.

Review URL: https://codereview.chromium.org/1001533002

Cr-Commit-Position: refs/heads/master@{#27149}

9 years ago[turbofan] Remove unused diamonds during control reduction.
bmeurer [Thu, 12 Mar 2015 09:02:07 +0000 (02:02 -0700)]
[turbofan] Remove unused diamonds during control reduction.

A diamond is unused if the Merge node has no Phi/EffectPhi uses, exactly
two inputs, one IfTrue and one IfFalse, which have the same Branch
control input and no other uses except for the Merge. In this case the
diamond can safely be removed.

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/1000883003

Cr-Commit-Position: refs/heads/master@{#27148}

9 years agoMark ProcessDebugMessagesThreaded as flaky.
machenbach [Thu, 12 Mar 2015 08:15:48 +0000 (01:15 -0700)]
Mark ProcessDebugMessagesThreaded as flaky.

TBR=yangguo@chromium.org

Review URL: https://codereview.chromium.org/1004583002

Cr-Commit-Position: refs/heads/master@{#27147}

9 years agoPPC: simplify delta calculation in DoDeferredInstanceOfKnownGlobal.
michael_dawson [Thu, 12 Mar 2015 08:14:38 +0000 (01:14 -0700)]
PPC: simplify delta calculation in DoDeferredInstanceOfKnownGlobal.

... and improve protection against trampoline table generation in this
sequence.

R=danno@chromium.org, svenpanne@chromium.org

BUG=

Review URL: https://codereview.chromium.org/985933003

Cr-Commit-Position: refs/heads/master@{#27146}