platform/upstream/v8.git
9 years agoRename ParseSourceElements in preparser too
arv [Fri, 6 Feb 2015 23:26:18 +0000 (15:26 -0800)]
Rename ParseSourceElements in preparser too

BUG=None
R=adamk
LOG=N

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

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

9 years agoAllow eval and arguments as property names
arv [Fri, 6 Feb 2015 18:04:11 +0000 (10:04 -0800)]
Allow eval and arguments as property names

We incorrectly disallowed eval and arguments in accessor and method
names. This was because we checked the name inside the
ParseFunctionLiteral. We now flag accessors so that lazy parsing of
these functions are treated correctly.

BUG=v8:1984
R=adamk, dslomov@chromium.org
LOG=N

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

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

9 years agoAdd basic compilation support for modules
adamk [Fri, 6 Feb 2015 17:52:20 +0000 (09:52 -0800)]
Add basic compilation support for modules

This adds an "experimental" API hook (v8::ScriptCompiler::CompileModule)
allowing compilation of modules. The code gen is incredibly basic: the
module body is represented by a Block in the AST. But this at least gets
more of the pipeline working, and opens the door to writing mjsunit tests
(once d8 is modified to support module compilation).

BUG=v8:1569
LOG=n

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

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

9 years agoSimplify cpu-profiler test code with help of wrappers.
loislo [Fri, 6 Feb 2015 16:50:56 +0000 (08:50 -0800)]
Simplify cpu-profiler test code with help of wrappers.

BTW: a few fixes for string comparison

BUG=none
LOG=n

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

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

9 years agoPreParser / Parser consistency: Make PreParser aware of Zone and AstValueFactory.
marja [Fri, 6 Feb 2015 15:58:36 +0000 (07:58 -0800)]
PreParser / Parser consistency: Make PreParser aware of Zone and AstValueFactory.

Previously it just had hacks to have NULLs instead of them and pretended to know
nothing about Zone. The hacks provide no real benefit (probably historically
based on some weird misconception about the relationship between Zone and
Isolate), and make it harder for the PreParser to start to know more about
variables and scoping.

BUG=

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

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

9 years ago[turbofan] OSR loops assign all local variables.
titzer [Fri, 6 Feb 2015 15:56:58 +0000 (07:56 -0800)]
[turbofan] OSR loops assign all local variables.

R=mstarzinger@chromium.org
BUG=

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

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

9 years agoTemporarily disable double fields unboxing.
ishell [Fri, 6 Feb 2015 15:50:31 +0000 (07:50 -0800)]
Temporarily disable double fields unboxing.

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

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

9 years agoCheck that we're called on a valid heap during idle notifications
jochen [Fri, 6 Feb 2015 15:36:08 +0000 (07:36 -0800)]
Check that we're called on a valid heap during idle notifications

BUG=chromium:425035
R=dcarney@chromium.org
LOG=n

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

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

9 years agoAdd hash fields to code cache header.
yangguo [Fri, 6 Feb 2015 15:20:40 +0000 (07:20 -0800)]
Add hash fields to code cache header.

R=jochen@chromium.org
BUG=chromium:441896
LOG=N

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

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

9 years ago[turbofan] Fix loop analysis bug with certain phi structures.
titzer [Fri, 6 Feb 2015 15:19:33 +0000 (07:19 -0800)]
[turbofan] Fix loop analysis bug with certain phi structures.

R=mstarzinger@chromium.org
BUG=

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

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

9 years agoMake the Linkage::NeedsFrameState list more intuitive.
mstarzinger [Fri, 6 Feb 2015 15:07:15 +0000 (07:07 -0800)]
Make the Linkage::NeedsFrameState list more intuitive.

R=jarin@chromium.org

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

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

9 years agox87: currently Turbofan is not supported by X87 so this test case is disabled.
cdai2 [Fri, 6 Feb 2015 14:59:06 +0000 (22:59 +0800)]
x87: currently Turbofan is not supported by X87 so this test case is disabled.

BUG=
R=mstarzinger@chromium.org, weiliang.lin@intel.com

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

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

9 years ago[x64] Assembler support for internal references and RIP relative addressing.
bmeurer [Fri, 6 Feb 2015 12:48:15 +0000 (04:48 -0800)]
[x64] Assembler support for internal references and RIP relative addressing.

R=dcarney@chromium.org
BUG=v8:3872
LOG=n

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

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

9 years agoConst-corrected some MachineSignature* parameters.
svenpanne [Fri, 6 Feb 2015 12:18:44 +0000 (04:18 -0800)]
Const-corrected some MachineSignature* parameters.

Recipe: Add "const" to RawMachineAssembler constructor, fix breakage.

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

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

9 years agosplit interceptor tests off of test-api
Dan Carney [Fri, 6 Feb 2015 12:07:48 +0000 (13:07 +0100)]
split interceptor tests off of test-api

BUG=
R=verwaest@chromium.org

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

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

9 years agonew classes: assert that constructors are not callable and rewrite 'return;'
dslomov [Fri, 6 Feb 2015 10:34:50 +0000 (02:34 -0800)]
new classes: assert that constructors are not callable and rewrite 'return;'

R=arv@chromium.org
BUG=v8:3834
LOG=N

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

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

9 years agoAllocate typed array for rempio2 result.
yangguo [Fri, 6 Feb 2015 09:54:58 +0000 (01:54 -0800)]
Allocate typed array for rempio2 result.

R=svenpanne@chromium.org
BUG=chromium:441896
LOG=N

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

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

9 years agocleanup api-natives a bit
dcarney [Fri, 6 Feb 2015 09:44:49 +0000 (01:44 -0800)]
cleanup api-natives a bit

R=verwaest@chromium.org

BUG=

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

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

9 years agoRemove unused path in FieldIndex code
danno [Fri, 6 Feb 2015 09:43:41 +0000 (01:43 -0800)]
Remove unused path in FieldIndex code

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

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

9 years ago[turbofan] Remove global InstructionOperand caches.
dcarney [Fri, 6 Feb 2015 09:00:40 +0000 (01:00 -0800)]
[turbofan] Remove global InstructionOperand caches.

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

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

9 years ago[ia32] Assembler support for internal references.
bmeurer [Fri, 6 Feb 2015 08:51:39 +0000 (00:51 -0800)]
[ia32] Assembler support for internal references.

BUG=v8:3872
LOG=n
R=dcarney@chromium.org

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

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

9 years agoX87: Double field values need sNaN -> qNaN canonicalization.
cdai2 [Fri, 6 Feb 2015 08:06:03 +0000 (16:06 +0800)]
X87: Double field values need sNaN -> qNaN canonicalization.

  Fix the failure introduced by 0381acf7b32893f3ec8b097ec269d6743682905a (r26213).

  When storing Double field to external double array, we need to do special
  qNaN --> sNan recovery on X87 port.

BUG=
R=weiliang.lin@intel.com

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

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

9 years ago[arm] Assembler support for internal references.
Benedikt Meurer [Fri, 6 Feb 2015 07:39:25 +0000 (08:39 +0100)]
[arm] Assembler support for internal references.

BUG=v8:3872
LOG=n
R=verwaest@chromium.org

Committed: https://chromium.googlesource.com/v8/v8/+/49cbe537e715c960fb9773af2e240133726f465b

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

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

9 years ago[arm] Assembler support for internal references.
Benedikt Meurer [Fri, 6 Feb 2015 07:20:58 +0000 (08:20 +0100)]
[arm] Assembler support for internal references.

BUG=v8:3872
LOG=n
R=verwaest@chromium.org

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

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

9 years agoUpdate V8 DEPS.
v8-autoroll [Fri, 6 Feb 2015 06:00:26 +0000 (22:00 -0800)]
Update V8 DEPS.

Rolling v8/tools/clang to 6f9d79914087cffd820021c3bb1155ad44f4b435

TBR=machenbach@chromium.org

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

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

9 years agoMIPS64: Externalize deoptimization reasons.
akos.palfi [Thu, 5 Feb 2015 23:54:57 +0000 (15:54 -0800)]
MIPS64: Externalize deoptimization reasons.

Port 2491a639bf46da4bfdcf65329305ee3053aa5fec

BUG=

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

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

9 years agoAccessor functions should have no prototype property
Erik Arvidsson [Thu, 5 Feb 2015 23:34:16 +0000 (18:34 -0500)]
Accessor functions should have no prototype property

This also removes some convenience functions that were not used.

BUG=v8:3700
LOG=N
R=adamk@chromium.org, adamk

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

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

9 years agoContribution of PowerPC port (continuation of 422063005) - PPC dir update
michael_dawson [Thu, 5 Feb 2015 19:01:48 +0000 (11:01 -0800)]
Contribution of PowerPC port (continuation of 422063005) - PPC dir update

Contribution of PowerPC port (continuation of 422063005817143002 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}

9 years agoMIPS64: Perform receiver patching for sloppy mode in high-level IR.
balazs.kilvady [Thu, 5 Feb 2015 17:17:29 +0000 (09:17 -0800)]
MIPS64: Perform receiver patching for sloppy mode in high-level IR.

Port 9e0865069fa53678d24def0f1e7828b5391f11d2

TEST=cctest/test-run-jscalls/ReceiverPatching
BUG=

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

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

9 years agoMIPS:[turbofan] Reland "Improve unordered comparisons for boolean materialization.".
Dusan Milosavljevic [Thu, 5 Feb 2015 16:51:26 +0000 (17:51 +0100)]
MIPS:[turbofan] Reland "Improve unordered comparisons for boolean materialization.".

BUG=
R=paul.lind@imgtec.com

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

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

9 years agoRemove IC age from Code.
ulan [Thu, 5 Feb 2015 16:40:27 +0000 (08:40 -0800)]
Remove IC age from Code.

BUG=

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

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

9 years agoMIPS: Remove the obsolete OverwriteMode optimization.
balazs.kilvady [Thu, 5 Feb 2015 16:36:21 +0000 (08:36 -0800)]
MIPS: Remove the obsolete OverwriteMode optimization.

Port 634b0f20f4bbdad305c87fd8e196f4c05efbde1f

BUG=

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

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

9 years agoProtect against uninitialized lexical variables at top-level.
dslomov [Thu, 5 Feb 2015 16:35:09 +0000 (08:35 -0800)]
Protect against uninitialized lexical variables at top-level.

R=rossberg@chromium.org
BUG=chromium:452510
LOG=Y

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

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

9 years agoFix Code::VerifyEmbeddedObjects.
ulan [Thu, 5 Feb 2015 15:25:26 +0000 (07:25 -0800)]
Fix Code::VerifyEmbeddedObjects.

BUG=

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

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

9 years agoCallIC MISS handler doesn't need receiver.
mvstanton [Thu, 5 Feb 2015 15:10:57 +0000 (07:10 -0800)]
CallIC MISS handler doesn't need receiver.

Looking up and passing this argument is unnecessary.

R=ulan@chromium.org

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

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

9 years agoExternalize deoptimization reasons.
loislo [Thu, 5 Feb 2015 14:51:45 +0000 (06:51 -0800)]
Externalize deoptimization reasons.

1) The hardcoded strings were converted into DeoptReason enum.

2) Deopt comment were converted into a pair location and deopt reason entries so
the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.

3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.

BUG=452067
LOG=n

Committed: https://crrev.com/c49820e45b57f128a98690940875c049f612dde6
Cr-Commit-Position: refs/heads/master@{#26434}

Committed: https://crrev.com/ec42e002da03adb2db968dd5b7453341ddc59a5c
Cr-Commit-Position: refs/heads/master@{#26448}

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

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

9 years agoTiny simplification of FieldIndex::ForInObjectOffset.
svenpanne [Thu, 5 Feb 2015 14:19:35 +0000 (06:19 -0800)]
Tiny simplification of FieldIndex::ForInObjectOffset.

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

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

9 years agoSplit --harmony-unicode and --harmony-unicode-regexps.
marja [Thu, 5 Feb 2015 14:16:54 +0000 (06:16 -0800)]
Split --harmony-unicode and --harmony-unicode-regexps.

This way we can ship \u{..} escapes in strings / identifiers before shipping /u
regexps.

BUG=

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

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

9 years agoAdd strong mode.
marja [Thu, 5 Feb 2015 14:11:34 +0000 (06:11 -0800)]
Add strong mode.

It doesn't do anything for now, but it implies strict mode. Added tests to
test-parsing.cc to test that.

BUG=

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

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

9 years ago[turbofan]: Improved source position information
danno [Thu, 5 Feb 2015 13:16:48 +0000 (05:16 -0800)]
[turbofan]: Improved source position information

Make sure the initial graph is fully populated with source position information and automatically propagate that information down through newly allocated nodes during reduction passes in the most unobtrusive way that's currently possible.

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

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

9 years agoFix try-finally for dead AST-branches in TurboFan.
mstarzinger [Thu, 5 Feb 2015 12:29:24 +0000 (04:29 -0800)]
Fix try-finally for dead AST-branches in TurboFan.

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

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

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

9 years agoRevert of Externalize deoptimization reasons. (patchset #7 id:120001 of https://coder...
bmeurer [Thu, 5 Feb 2015 12:03:13 +0000 (04:03 -0800)]
Revert of Externalize deoptimization reasons. (patchset #7 id:120001 of https://codereview.chromium.org/874323003/)

Reason for revert:
This CL breaks RelocInfo::INTERNAL_REFERENCE (and maybe others that come after DEOPT_REASON), which is currently (mostly) unused on tip-of-tree, but will be used for jump tables soon(ish) and should therefore work. It seems to be a problem with implicitly assumptions about the number of reloc info modes. Needs further investigation.

Original issue's description:
> Externalize deoptimization reasons.
>
> 1) The hardcoded strings were converted into DeoptReason enum.
>
> 2) Deopt comment were converted into a pair location and deopt reason entries so
> the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.
>
> 3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.
>
> BUG=452067
> LOG=n
>
> Committed: https://crrev.com/c49820e45b57f128a98690940875c049f612dde6
> Cr-Commit-Position: refs/heads/master@{#26434}
>
> Committed: https://crrev.com/ec42e002da03adb2db968dd5b7453341ddc59a5c
> Cr-Commit-Position: refs/heads/master@{#26448}

TBR=alph@chromium.org,mstarzinger@chromium.org,svenpanne@chromium.org,yurys@chromium.org,loislo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=452067

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

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

9 years agoGrokdump workaround for different layout of *_LIST structures written to minidumps...
ishell [Thu, 5 Feb 2015 11:47:02 +0000 (03:47 -0800)]
Grokdump workaround for different layout of *_LIST structures written to minidumps on Mac.

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

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

9 years agoRemove flush_monomorphic_ics flag.
ulan [Thu, 5 Feb 2015 11:45:39 +0000 (03:45 -0800)]
Remove flush_monomorphic_ics flag.

Since v8:3629 is fixed, ICs and handlers do not retain objects.

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

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

9 years agoRemove the obsolete OverwriteMode optimization.
Benedikt Meurer [Thu, 5 Feb 2015 10:38:41 +0000 (11:38 +0100)]
Remove the obsolete OverwriteMode optimization.

R=jkummerow@chromium.org

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

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

9 years agoFix HConstant(double, ...) constructor
jkummerow [Thu, 5 Feb 2015 10:28:05 +0000 (02:28 -0800)]
Fix HConstant(double, ...) constructor

It must always populate int32_value_, even if that's lossy, because other code (specifically, constant folding for truncating operations) relies on it.

BUG=v8:3865
LOG=y

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

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

9 years agoCorrectly report some internal OOM conditions.
mstarzinger [Thu, 5 Feb 2015 09:51:53 +0000 (01:51 -0800)]
Correctly report some internal OOM conditions.

R=hpayer@chromium.org
BUG=chromium:454615
LOG=N

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

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

9 years agoAdd NativeWeakMap to v8.h
yurys [Thu, 5 Feb 2015 09:40:13 +0000 (01:40 -0800)]
Add NativeWeakMap to v8.h

A new map wich references its keys weakly is added to v8.h. Internally it uses the same storage as JSWeakMap but doesn't depend on the JavaScript part of WeakMap implementation in weak-collection.js, hence it can be instantiated without entering any context.

BUG=chromium:437416
LOG=Y

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

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

9 years agoAdd a flag to track detached contexts.
ulan [Thu, 5 Feb 2015 09:35:47 +0000 (01:35 -0800)]
Add a flag to track detached contexts.

When embedder detaches the global objects, its context must be garbage
collected eventually.

BUG=

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

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

9 years agoScanner / Unicode decoding: use size_t instead of unsigned.
marja [Thu, 5 Feb 2015 07:54:24 +0000 (23:54 -0800)]
Scanner / Unicode decoding: use size_t instead of unsigned.

size_t is the correct data type for this purpose. Our APIs (in particular
ExternalSourceStream::GetMoreData) are already using it, and there were some
static_casts to convert between them.

This CL doesn't intend to fix all of V8, just the minimal sense-making part
around scanner character streams.

BUG=

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

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

9 years agoExternalize deoptimization reasons.
loislo [Thu, 5 Feb 2015 06:24:57 +0000 (22:24 -0800)]
Externalize deoptimization reasons.

1) The hardcoded strings were converted into DeoptReason enum.

2) Deopt comment were converted into a pair location and deopt reason entries so
the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.

3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.

BUG=452067
LOG=n

Committed: https://crrev.com/c49820e45b57f128a98690940875c049f612dde6
Cr-Commit-Position: refs/heads/master@{#26434}

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

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

9 years agoRevert "[turbofan] Make Factory::NewNumber() always return the minus_zero_value."
Benedikt Meurer [Thu, 5 Feb 2015 04:58:25 +0000 (05:58 +0100)]
Revert "[turbofan] Make Factory::NewNumber() always return the minus_zero_value."

This reverts commit f578d35ba8d6798afe45cd60f4f06bfa7e2ae6be because
(immutable) heap numbers are surprisingly mutable in V8. Someone else
might want to cleanup the mess, otherwise we'll just keep it this way.

TBR=jkummerow@chromium.org
BUG=chromium:454894
LOG=y

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

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

9 years agoUpdate V8 DEPS.
v8-autoroll [Thu, 5 Feb 2015 04:23:51 +0000 (20:23 -0800)]
Update V8 DEPS.

Rolling v8/buildtools to da0df3fdac6036e862addb1155a2d6c11b6c18d5

TBR=machenbach@chromium.org

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

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

9 years agox87: Use signaling NaN for holes in fixed double arrays.
Weiliang Lin [Thu, 5 Feb 2015 02:54:13 +0000 (10:54 +0800)]
x87: Use signaling NaN for holes in fixed double arrays.

Port 9eace97bbaab72962c0fda62e5f9011a10604d0d

BUG=
R=chunyang.dai@intel.com

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

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

9 years agoRevert "MIPS:[turbofan] Improve unordered comparisons for boolean materialization."
paul.lind [Wed, 4 Feb 2015 21:28:43 +0000 (13:28 -0800)]
Revert "MIPS:[turbofan] Improve unordered comparisons for boolean materialization."

Reason for revert:
Fails mjsunit/asm/embenchen/box2d

BUG=

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

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

9 years agoMIPS: Calls to the CallIC miss handler looked up the receiver incorrectly.
paul.lind [Wed, 4 Feb 2015 21:27:34 +0000 (13:27 -0800)]
MIPS: Calls to the CallIC miss handler looked up the receiver incorrectly.

Port 13b97b6214d8448c568d2e547e4a04c5fb468f5d

Original commit message:
On platforms that don't push the return address on the stack at time of call, there was an error.

BUG=

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

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

9 years agotemplates: Don't check IsLineTerminator() if character is negative
caitpotter88 [Wed, 4 Feb 2015 21:05:33 +0000 (13:05 -0800)]
templates: Don't check IsLineTerminator() if character is negative

BUG=455212
LOG=N
R=arv@chromium.org

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

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

9 years agoFix issue with multiple properties and emit store.
arv [Wed, 4 Feb 2015 20:44:01 +0000 (12:44 -0800)]
Fix issue with multiple properties and emit store.

We used to have a parse error for conflicting property keys. This check
was removed to match ES6 (SpiderMonkey & Chakra already made this change).
Since this check was removed we ended up with a few new cases when
generating code. For example, accessors always generated code even if
those should have been shadowed by a data property.

BUG=v8:3856
LOG=Y
R=adamk, dslomov@chromium.org

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

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

9 years agoAdd macro for getting a PropertyAttributes for the runtime functions
arv [Wed, 4 Feb 2015 18:22:23 +0000 (10:22 -0800)]
Add macro for getting a PropertyAttributes for the runtime functions

Motivation: Cleanup

BUG=None
R=adamk
LOG=N

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

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

9 years agoCalls to the CallIC miss handler looked up the receiver incorrectly.
mvstanton [Wed, 4 Feb 2015 17:45:53 +0000 (09:45 -0800)]
Calls to the CallIC miss handler looked up the receiver incorrectly.

On platforms that don't push the return address on the stack at time of call, there was an error.

R=ulan@chromium.org

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

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

9 years agoMIPS: Fix assertion in full codegen for holed 'this'.
balazs.kilvady [Wed, 4 Feb 2015 17:35:04 +0000 (09:35 -0800)]
MIPS: Fix assertion in full codegen for holed 'this'.

Port 275e088abec213aa0be3eef748926e4be2c5c79f

BUG=chromium:455141
LOG=N

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

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

9 years agoClass methods should be non enumerable
arv [Wed, 4 Feb 2015 17:23:07 +0000 (09:23 -0800)]
Class methods should be non enumerable

Class methods and accessors (both prototype and static) should be
non enumerable.

BUG=v8:3330
LOG=Y
R=dslomov@chromium.org

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

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

9 years agoMake functions contexts in optimized code weak.
ulan [Wed, 4 Feb 2015 17:13:47 +0000 (09:13 -0800)]
Make functions contexts in optimized code weak.

BUG=

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

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

9 years agoRevert of Externalize deoptimization reasons. (patchset #6 id:100001 of https://coder...
loislo [Wed, 4 Feb 2015 16:48:23 +0000 (08:48 -0800)]
Revert of Externalize deoptimization reasons. (patchset #6 id:100001 of https://codereview.chromium.org/874323003/)

Reason for revert:
it broke the build

Original issue's description:
> Externalize deoptimization reasons.
>
> 1) The hardcoded strings were converted into DeoptReason enum.
>
> 2) Deopt comment were converted into a pair location and deopt reason entries so
> the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.
>
> 3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.
>
> BUG=452067
> LOG=n
>
> Committed: https://crrev.com/c49820e45b57f128a98690940875c049f612dde6
> Cr-Commit-Position: refs/heads/master@{#26434}

TBR=alph@chromium.org,mstarzinger@chromium.org,svenpanne@chromium.org,yurys@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=452067

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

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

9 years agoExternalize deoptimization reasons.
loislo [Wed, 4 Feb 2015 16:35:17 +0000 (08:35 -0800)]
Externalize deoptimization reasons.

1) The hardcoded strings were converted into DeoptReason enum.

2) Deopt comment were converted into a pair location and deopt reason entries so
the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.

3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.

BUG=452067
LOG=n

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

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

9 years agotest-parsing.cc: Test fix.
marja [Wed, 4 Feb 2015 16:31:36 +0000 (08:31 -0800)]
test-parsing.cc: Test fix.

The syntax of this test snippet was so wrong ("function function") that it
wasn't testing what it was supposed to test.

R=rossberg@chromium.org
BUG=

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

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

9 years agoMIPS: Retry "Use a WeakCell in the CallIC type vector."
balazs.kilvady [Wed, 4 Feb 2015 16:05:11 +0000 (08:05 -0800)]
MIPS: Retry "Use a WeakCell in the CallIC type vector."

Port 6fc97a19653e03a891d3cd397069d5a10b9ab325

Original commit message:
The first try failed because I needed to make a better distinction
between clearing ICs according to policy at GC time or unconditional
clearing (say, via %ClearFunctionTypeFeedback).

It was also blocked by an issue in super constructor calls.
This fix (https://codereview.chromium.org/892113002/) needs to land
before checking in this CL.

BUG=

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

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

9 years agoMIPS: Introduce LanguageMode, drop StrictMode.
balazs.kilvady [Wed, 4 Feb 2015 15:14:35 +0000 (07:14 -0800)]
MIPS: Introduce LanguageMode, drop StrictMode.

Port c7851da4aefb644ab198ead1fa284932fd424797

Original commit message:
This enables adding more language modes in the future.

For maximum flexibility, LanguageMode is a bitmask, so we're not restricted to
use a sequence of language modes which are progressively stricter, but we can
express the language mode as combination of features.

For now, LanguageMode can only be "sloppy" or "strict", and there are
STATIC_ASSERTS in places which need to change when more modes are added.

LanguageMode is a bit like the old LanguageMode when "extended" mode was still
around (see https://codereview.chromium.org/8417035 and
https://codereview.chromium.org/181543002 ) except that it's transmitted through
all the layers (there's no StrictModeFlag).

BUG=

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

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

9 years agoRevert of Add WeakKeyMap to v8.h (patchset #2 id:20001 of https://codereview.chromium...
yurys [Wed, 4 Feb 2015 15:12:37 +0000 (07:12 -0800)]
Revert of Add WeakKeyMap to v8.h (patchset #2 id:20001 of https://codereview.chromium.org/891473005/)

Reason for revert:
Revert this patch due to shared win build compilation failure

http://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/5030/steps/compile/logs/stdio

Original issue's description:
> Add WeakKeyMap to v8.h
>
> A new map wich references its keys weakly is added to v8.h. Internally it uses the same storage as JSWeakMap but doesn't depend on the JavaScript part of WeakMap implementation in weak-collection.js, hence it can be instantiated without entering any context.
>
> BUG=chromium:437416
> LOG=Y
>
> Committed: https://crrev.com/ee7ed39ac8327124e74dd7ad5f1de0dede988cb7
> Cr-Commit-Position: refs/heads/master@{#26425}

TBR=jochen@chromium.org,mstarzinger@chromium.org,rossberg@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:437416

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

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

9 years agoRevert of Simplify WeakMap and WeakSet tests slightly. (patchset #1 id:1 of https...
yurys [Wed, 4 Feb 2015 15:11:28 +0000 (07:11 -0800)]
Revert of Simplify WeakMap and WeakSet tests slightly. (patchset #1 id:1 of https://codereview.chromium.org/903463002/)

Reason for revert:
Revert this patch as the original CL has to be reverted to due to shared win build failure

http://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/5030/steps/compile/logs/stdio

Original issue's description:
> Simplify WeakMap and WeakSet tests slightly.
>
> R=rossberg@chromium.org
> TEST=cctest/test-weakmaps,cctest/test-weaksets
>
> Committed: https://crrev.com/a90d7a871da19d33e93c8779186408c8d1615cac
> Cr-Commit-Position: refs/heads/master@{#26428}

TBR=rossberg@chromium.org,mstarzinger@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

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

9 years agoSimplify WeakMap and WeakSet tests slightly.
mstarzinger [Wed, 4 Feb 2015 13:36:50 +0000 (05:36 -0800)]
Simplify WeakMap and WeakSet tests slightly.

R=rossberg@chromium.org
TEST=cctest/test-weakmaps,cctest/test-weaksets

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

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

9 years agotry to fix windows after r26424
dcarney [Wed, 4 Feb 2015 13:15:39 +0000 (05:15 -0800)]
try to fix windows after r26424

BUG=

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

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

9 years agoMove the contents of api-natives.js to c++
dcarney [Wed, 4 Feb 2015 13:01:34 +0000 (05:01 -0800)]
Move the contents of api-natives.js to c++

R=verwaest@chromium.org

BUG=

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

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

9 years agoAdd WeakKeyMap to v8.h
yurys [Wed, 4 Feb 2015 12:52:53 +0000 (04:52 -0800)]
Add WeakKeyMap to v8.h

A new map wich references its keys weakly is added to v8.h. Internally it uses the same storage as JSWeakMap but doesn't depend on the JavaScript part of WeakMap implementation in weak-collection.js, hence it can be instantiated without entering any context.

BUG=chromium:437416
LOG=Y

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

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

9 years ago[turbofan] Don't allocate UnallocatedOperands in Zone memory during instruction selection
dcarney [Wed, 4 Feb 2015 12:38:47 +0000 (04:38 -0800)]
[turbofan] Don't allocate UnallocatedOperands in Zone memory during instruction selection

R=bmeurer@chromium.org

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

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

9 years agoFix assertion in full codegen for holed 'this'.
dslomov [Wed, 4 Feb 2015 12:14:21 +0000 (04:14 -0800)]
Fix assertion in full codegen for holed 'this'.

R=rossberg@chromium.org
BUG=chromium:455141
LOG=N

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

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

9 years agoMIPS:[turbofan] Improve unordered comparisons for boolean materialization.
Dusan Milosavljevic [Wed, 4 Feb 2015 10:52:16 +0000 (11:52 +0100)]
MIPS:[turbofan] Improve unordered comparisons for boolean materialization.

TEST=
BUG=
R=paul.lind@imgtec.com

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

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

9 years ago[turbofan] Make ContextScope a proper encapsulation of the current context.
titzer [Wed, 4 Feb 2015 09:59:48 +0000 (01:59 -0800)]
[turbofan] Make ContextScope a proper encapsulation of the current context.

R=mstarzinger@chromium.org
BUG=

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

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

9 years agoRetry "Use a WeakCell in the CallIC type vector."
mvstanton [Wed, 4 Feb 2015 09:46:05 +0000 (01:46 -0800)]
Retry "Use a WeakCell in the CallIC type vector."

The first try failed because I needed to make a better distinction
between clearing ICs according to policy at GC time or unconditional
clearing (say, via %ClearFunctionTypeFeedback).

It was also blocked by an issue in super constructor calls.
This fix (https://codereview.chromium.org/892113002/) needs to land
before checking in this CL.

R=ulan@chromium.org

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

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

9 years agoIntroduce LanguageMode, drop StrictMode.
marja [Wed, 4 Feb 2015 09:34:05 +0000 (01:34 -0800)]
Introduce LanguageMode, drop StrictMode.

This enables adding more language modes in the future.

For maximum flexibility, LanguageMode is a bitmask, so we're not restricted to
use a sequence of language modes which are progressively stricter, but we can
express the language mode as combination of features.

For now, LanguageMode can only be "sloppy" or "strict", and there are
STATIC_ASSERTS in places which need to change when more modes are added.

LanguageMode is a bit like the old LanguageMode when "extended" mode was still
around (see https://codereview.chromium.org/8417035 and
https://codereview.chromium.org/181543002 ) except that it's transmitted through
all the layers (there's no StrictModeFlag).

BUG=

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

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

9 years agoMIPS64: Super Constructor Calls need to use a vector slot, not an ic slot.
akos.palfi [Wed, 4 Feb 2015 01:57:52 +0000 (17:57 -0800)]
MIPS64: Super Constructor Calls need to use a vector slot, not an ic slot.

Port 64f81870ee0bc51a32620be8face35e7cbd0da92

BUG=

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

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

9 years agoMIPS: new classes: special construct stub for derived classs and TDZ for `this`.
akos.palfi [Wed, 4 Feb 2015 01:51:56 +0000 (17:51 -0800)]
MIPS: new classes: special construct stub for derived classs and TDZ for `this`.

Port 6f97a4948f1495a9b9d60b7f495d0e0efeaa1006

BUG=

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

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

9 years agoFix test-api/ObjectProtoToStringES6
caitpotter88 [Tue, 3 Feb 2015 22:18:06 +0000 (14:18 -0800)]
Fix test-api/ObjectProtoToStringES6

Fixes tree closure caused by r26415

BUG=v8:3502
R=arv@chromium.org
LOG=N

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

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

9 years agoUpdate harmony ObjectProtoToString() to 2/2/2015 spec
caitpotter88 [Tue, 3 Feb 2015 21:05:04 +0000 (13:05 -0800)]
Update harmony ObjectProtoToString() to 2/2/2015 spec

Applies to API implementation of O.p.toString

- Removes special handling of non-string @@toStringTag values (use builtinTag)
- Removes special handling of @@toStringTags which match [[Class]] names (remove ~ prefix)
- Add tests for non-string @@toStringTag values in test-api.cc

BUG=v8:3502
R=arv@chromium.org
LOG=N

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

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

9 years agoSuper Constructor Calls need to use a vector slot, not an ic slot.
mvstanton [Tue, 3 Feb 2015 19:16:07 +0000 (11:16 -0800)]
Super Constructor Calls need to use a vector slot, not an ic slot.

The Ast Call node is accustomed to using a vector IC slot for the
cases when it uses a CallIC. The super constructor work alters this
somewhat by using a CallConstructStub instead, however the
CallConstructStub expects a vector slot and not a vector ic slot.
This distinction needs to be maintained because slots and ic slots
have different clearing strategies and are handled differently.

R=dslomov@chromium.org
BUG=
LOG=N

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

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

9 years agoInfer HConstant::NotInNewSpace only if the supplied handle is null.
jarin [Tue, 3 Feb 2015 17:47:24 +0000 (09:47 -0800)]
Infer HConstant::NotInNewSpace only if the supplied handle is null.

BUG=chromium:449291
LOG=n
R=jkummerow@chromium.org

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

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

9 years agoVerify that code stubs and full code do not have pointers that can retain
ulan [Tue, 3 Feb 2015 17:46:15 +0000 (09:46 -0800)]
Verify that code stubs and full code do not have pointers that can retain
context.

BUG=v8:3629
LOG=N

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

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

9 years agoUpdate harmony Object.prototype.toString to 2/2/2015 spec
caitpotter88 [Tue, 3 Feb 2015 17:45:06 +0000 (09:45 -0800)]
Update harmony Object.prototype.toString to 2/2/2015 spec

- Removes special handling of non-string @@toStringTag values (use builtinTag)
- Removes special handling of @@toStringTags which match [[Class]] names (remove ~ prefix)

BUG=v8:3502
R=arv@chromium.org
LOG=N

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

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

9 years agoCheck the slots being adding to the SlotsBuffer.
ishell [Tue, 3 Feb 2015 17:43:56 +0000 (09:43 -0800)]
Check the slots being adding to the SlotsBuffer.
Related to crbug/454297.

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

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

9 years agonew classes: special construct stub for derived classs and TDZ for `this`.
dslomov [Tue, 3 Feb 2015 17:42:41 +0000 (09:42 -0800)]
new classes: special construct stub for derived classs and TDZ for `this`.

R=arv@chromium.org,rossberg@chromium.org
BUG=v8:3834
LOG=N

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

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

9 years agoWhitespace change to trigger bots.
Daniel Vogelheim [Tue, 3 Feb 2015 17:24:38 +0000 (18:24 +0100)]
Whitespace change to trigger bots.

BUG=

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

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

9 years agoPartial revert of crrev.com/900553003, to unbreak arm64 build.
Daniel Vogelheim [Tue, 3 Feb 2015 17:03:40 +0000 (18:03 +0100)]
Partial revert of crrev.com/900553003, to unbreak arm64 build.

R=verwaest@chromium.org
BUG=454625
NOTREECHECKS=true

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

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

9 years agoTurn throws into basic block terminators.
mstarzinger [Tue, 3 Feb 2015 15:22:41 +0000 (07:22 -0800)]
Turn throws into basic block terminators.

R=bmeurer@chromium.org
TEST=cctest/test-run-jsexceptions/Throw

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

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

9 years agoReset inlining limits due to overly long compilation times in Speedometer, Dart2JS
verwaest [Tue, 3 Feb 2015 15:02:43 +0000 (07:02 -0800)]
Reset inlining limits due to overly long compilation times in Speedometer, Dart2JS

BUG=454625
LOG=y

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

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

9 years ago[turbofan] Split pure nodes in the scheduler if beneficial.
Benedikt Meurer [Tue, 3 Feb 2015 14:50:40 +0000 (15:50 +0100)]
[turbofan] Split pure nodes in the scheduler if beneficial.

If a (pure) node has two or more uses, but there exists a path from the
common dominator of these uses to end, which does not contain a use,
then we split the node such that no unnecessary computation takes place.
Note however, that this only applies if the node cannot be hoisted out
of a loop.

BUG=v8:3864
LOG=n
R=jarin@chromium.org

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

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

9 years ago[turbofan] Parameter nodes are not idempotent.
bmeurer [Tue, 3 Feb 2015 14:45:28 +0000 (06:45 -0800)]
[turbofan] Parameter nodes are not idempotent.

R=mstarzinger@chromium.org

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

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

9 years agoRevert of Add WeakMap to v8.h (patchset #3 id:40001 of https://codereview.chromium...
yurys [Tue, 3 Feb 2015 14:42:34 +0000 (06:42 -0800)]
Revert of Add WeakMap to v8.h (patchset #3 id:40001 of https://codereview.chromium.org/886473005/)

Reason for revert:
Broke compilation on component build http://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/5007/steps/compile/logs/stdio

Original issue's description:
> Add WeakMap to v8.h
>
> A new map wich references its keys weakly is added to v8.h. Internally it uses the same storage as JSWeakMap but doesn't depend on the JavaScript part of WeakMap implementation in weak-collection.js, hence it can be instantiated without entering any context.
>
> BUG=chromium:437416
> LOG=Y
>
> Committed: https://crrev.com/37d4c57630636f21e3add8d3d1c7c978ff5fc8e0
> Cr-Commit-Position: refs/heads/master@{#26401}

TBR=jochen@chromium.org,mstarzinger@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:437416

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

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

9 years agoAdd WeakMap to v8.h
yurys [Tue, 3 Feb 2015 14:28:02 +0000 (06:28 -0800)]
Add WeakMap to v8.h

A new map wich references its keys weakly is added to v8.h. Internally it uses the same storage as JSWeakMap but doesn't depend on the JavaScript part of WeakMap implementation in weak-collection.js, hence it can be instantiated without entering any context.

BUG=chromium:437416
LOG=Y

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

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

9 years agoMove nested classes of AstGraphBuilder into cc file.
mstarzinger [Tue, 3 Feb 2015 14:22:11 +0000 (06:22 -0800)]
Move nested classes of AstGraphBuilder into cc file.

R=titzer@chromium.org

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

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

9 years ago[turbofan]: Small visualizer cleanup and fix for string handling
danno [Tue, 3 Feb 2015 13:10:52 +0000 (05:10 -0800)]
[turbofan]: Small visualizer cleanup and fix for string handling

R=mstarzinger@chromium.org

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

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