platform/upstream/v8.git
12 years agoFix presubmit - remove stray whitespace on empty lines.
whesse@chromium.org [Sun, 18 Sep 2011 21:16:08 +0000 (21:16 +0000)]
Fix presubmit - remove stray whitespace on empty lines.

BUG=
TEST=

Review URL: http://codereview.chromium.org/7931023

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: Fixed a bug in CallStubCompiler::CompileArrayPushCall.
erikcorry [Sun, 18 Sep 2011 15:16:46 +0000 (15:16 +0000)]
MIPS: Fixed a bug in CallStubCompiler::CompileArrayPushCall.

An ARM PreIndex store was badly ported.

Landing http://codereview.chromium.org/7934003/ for Paul Lind.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: port Implement function proxies (except for their use as constructors).
erikcorry [Sun, 18 Sep 2011 15:11:33 +0000 (15:11 +0000)]
MIPS: port Implement function proxies (except for their use as constructors).

port r9258 (c8709a9)

Note on mips implementation: Arm reg r4 (call type) normally maps to mips
reg t0. We had already used t0 as a temp in Generate_FunctionCall() and
Generate_FunctionApply(), so I replaced that existing t0 usage with t3, and
now use t0 only for call type.

Original commit message:
Introduce new %Apply native.
Extend Execution::Call to optionally handle receiver rewriting (needed for %Apply).
Fix Function.prototype.bind for functions that have .apply modified.

Landing http://codereview.chromium.org/7891033/ for Paul Lind.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: Fix assertion-fail on cacheflush from generated code.
erikcorry [Sun, 18 Sep 2011 15:05:44 +0000 (15:05 +0000)]
MIPS: Fix assertion-fail on cacheflush from generated code.

Fix a mips-specific CallCFunction assertion, when checking for valid
frames on the stack. We fake it with AllowExternalCallThatCantCauseGC().

Landing http://codereview.chromium.org/7932010/ for Paul Lind.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoWhen --nolimit-inlining flag is set, don't limit inlining depth.
fschneider@chromium.org [Sat, 17 Sep 2011 12:29:16 +0000 (12:29 +0000)]
When --nolimit-inlining flag is set, don't limit inlining depth.

This flag is used to debug problems with inlining.
By default we still limit inlining to small functions and up to a maximum
depth to avoid too much code size growth.
Review URL: http://codereview.chromium.org/7919012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMake proxies work as prototypes.
rossberg@chromium.org [Fri, 16 Sep 2011 13:38:30 +0000 (13:38 +0000)]
Make proxies work as prototypes.
Fix a couple of other proxy bugs along the way.
Refactor trap invocation in native code.

R=kmillikin@chromium.org
BUG=v8:1543
TEST=

Review URL: http://codereview.chromium.org/7799026

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9312 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix asserts and GC unsafeness in stub generation, bug=1689.
erik.corry@gmail.com [Fri, 16 Sep 2011 13:06:51 +0000 (13:06 +0000)]
Fix asserts and GC unsafeness in stub generation, bug=1689.
Review URL: http://codereview.chromium.org/7920006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMake function proxies work as constructors.
rossberg@chromium.org [Fri, 16 Sep 2011 12:26:29 +0000 (12:26 +0000)]
Make function proxies work as constructors.

R=kmillikin@chromium.org
BUG=v8:1543
TEST=

Review URL: http://codereview.chromium.org/7628021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9310 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix some stub calling asserts on x64.
erik.corry@gmail.com [Fri, 16 Sep 2011 11:29:13 +0000 (11:29 +0000)]
Fix some stub calling asserts on x64.
Review URL: http://codereview.chromium.org/7922008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9309 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: pre-crankshaft updates to code-stubs and stub-cache (3/3)
danno@chromium.org [Fri, 16 Sep 2011 09:23:48 +0000 (09:23 +0000)]
MIPS: pre-crankshaft updates to code-stubs and stub-cache (3/3)

Highlights:
- code-stubs-mips.cc
-- use EmitFPUTruncate in place of inline code in several places.
-- use BranchF macro rather than lower-level FP cmp and branch for readability.
-- Port of Sven's r8859 (Implement type recording for ToBoolean) and r8886
(Simplify and optimize ToBoolean handling.)
-- Fix bug in TranscendentalCacheStub::Generate where some regs were not
saved across CFunction call.
-- use updated xxxCFunction macros.
-- update InstanceOfStub to support crankshaft
DoDeferredLInstanceOfKnownGlobal
-- Provide code-patching and I-cache flushing support for generated
code, used for InstanceOfStub under crankshaft (not submitted here).
This requires adding new ExternalReference to src/assember.cc,h

- stub-cache-mips.cc
-- port Danno's r8901 (Create a common base class for Fixed-, FixedDouble-
and ExternalArrays) to mips crankshaft branch.

BUG=
TEST=

Review URL: http://codereview.chromium.org/7890001
Patch from Paul Lind <plind44@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9308 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: pre-crankshaft updates to macro-assembler and related files. (2/3)
danno@chromium.org [Fri, 16 Sep 2011 09:12:56 +0000 (09:12 +0000)]
MIPS: pre-crankshaft updates to macro-assembler and related files. (2/3)

Highlights:
- Better support for FP compares and branches (BranchF macro)
- Add EmitFPUTruncate() macro, similar to EmitVFPTruncate on Arm.
- Some improvements to long-branch mechanism for mips.
- Add ClampUint8() and ClampDoubleToUint8()

- Minor changes to ic-mips, full-codegen-mips mostly, for improved
code-patching with BinaryOpStub.
- Small changes to stack checking in full-codegen-mips and
regexp-macro-assembler-mips

BUG=
TEST=

Review URL: http://codereview.chromium.org/7888004
Patch from Paul Lind <plind44@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix some asserts in stub generation and file some bugs where
erik.corry@gmail.com [Thu, 15 Sep 2011 19:24:04 +0000 (19:24 +0000)]
Fix some asserts in stub generation and file some bugs where
we appear to have valid asserts triggering.
Review URL: http://codereview.chromium.org/7908005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoShare Maps for ElementsKind transitions
danno@chromium.org [Thu, 15 Sep 2011 16:38:47 +0000 (16:38 +0000)]
Share Maps for ElementsKind transitions

Support sharing maps after an changing an object's ElementsKind for element kinds other then external elements.

R=svenpanne@chromium.org
BUG=none
TEST=external-arrays.js

Review URL: http://codereview.chromium.org/7862036

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9304 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixing presubmit.
yangguo@chromium.org [Thu, 15 Sep 2011 13:20:42 +0000 (13:20 +0000)]
Fixing presubmit.

Review URL: http://codereview.chromium.org/7910001

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoTickprocessor no longer prints error messages on log entries that are unrelated to...
yangguo@chromium.org [Thu, 15 Sep 2011 13:12:59 +0000 (13:12 +0000)]
Tickprocessor no longer prints error messages on log entries that are unrelated to profiling.

BUG=v8:1683

Review URL: http://codereview.chromium.org/7906003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoUpdate mozilla test expectations (FAIL regress-103602)
jkummerow@chromium.org [Thu, 15 Sep 2011 12:57:16 +0000 (12:57 +0000)]
Update mozilla test expectations (FAIL regress-103602)

TEST=mozilla tests are green

Review URL: http://codereview.chromium.org/7908002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoCorrecting a bogus assert outdated since r9295.
yangguo@chromium.org [Thu, 15 Sep 2011 12:47:06 +0000 (12:47 +0000)]
Correcting a bogus assert outdated since r9295.

Review URL: http://codereview.chromium.org/7909002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoChange global const handling to silently ignore redeclarations
jkummerow@chromium.org [Thu, 15 Sep 2011 12:00:30 +0000 (12:00 +0000)]
Change global const handling to silently ignore redeclarations

and make window.{Infinity,NaN,undefined} read-only as per ES5

BUG=89490
TEST=mjsunit/const-redecl.js, mjsunit/undeletable-functions.js, es5conform, sputnik

Review URL: http://codereview.chromium.org/7811015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9299 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoConvert "BUG=foo" to "(issue foo)" in push-to-trunk.sh
jkummerow@chromium.org [Thu, 15 Sep 2011 11:45:06 +0000 (11:45 +0000)]
Convert "BUG=foo" to "(issue foo)" in push-to-trunk.sh

Review URL: http://codereview.chromium.org/7903005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd asserts to ensure that we:
erik.corry@gmail.com [Thu, 15 Sep 2011 11:30:45 +0000 (11:30 +0000)]
Add asserts to ensure that we:
1) Don't make a call to C without having a valid frame on the stack.
2) Don't generate a call to a stub while generating a stub, unless we can be
sure that the stub we are calling has already been generated (the stub
generation code is not reentrant wrt. GC).
Review URL: http://codereview.chromium.org/7891042

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoEnable slices of external strings (in the tentative implementation).
yangguo@chromium.org [Thu, 15 Sep 2011 11:10:01 +0000 (11:10 +0000)]
Enable slices of external strings (in the tentative implementation).
TEST=cctest test-strings/SliceFromExternal, mjsunit/string-slices.js

Review URL: http://codereview.chromium.org/7832002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9295 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoEnable inlining of functions that reference context slots.
fschneider@chromium.org [Thu, 15 Sep 2011 10:57:47 +0000 (10:57 +0000)]
Enable inlining of functions that reference context slots.
Review URL: http://codereview.chromium.org/7887038

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoNuke CompareToNull AST node.
svenpanne@chromium.org [Thu, 15 Sep 2011 09:09:40 +0000 (09:09 +0000)]
Nuke CompareToNull AST node.

The Great Master Plan is to move the recognition of special cases for
comparisons further down the compilation pipeline where more information is
available. This is a first step into this direction: The special handling of
equality comparisons involving null is pushed from the parser to the code
generators, removing the need for a special AST node. (There are rumors from
usually well-informed sources that this node type is actually a relic of ancient
crankshaft days...)

The next steps will be the unification of null/undefined handling and pushing
the special case handling in crankshaft even further down the pipeline, enabling
the recognition of cases like "var foo=null; if (foo === bar) ...", but these
will be in separate CLs.
Review URL: http://codereview.chromium.org/7887037

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd "native" target to Makefile for the benefit of Linux distros
jkummerow@chromium.org [Thu, 15 Sep 2011 08:16:07 +0000 (08:16 +0000)]
Add "native" target to Makefile for the benefit of Linux distros

TEST=make native; make native.check; make native.clean

Review URL: http://codereview.chromium.org/7891045

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd solaris support to gyp build.
jkummerow@chromium.org [Thu, 15 Sep 2011 08:13:39 +0000 (08:13 +0000)]
Add solaris support to gyp build.

Patch by Ben Noordhuis <info@bnoordhuis.nl>. I don't have a Solaris box around to test this myself.

BUG=v8:1684

Review URL: http://codereview.chromium.org/7889038

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixing issue 1639, debugger stops stepping outside evaluate.
yangguo@chromium.org [Thu, 15 Sep 2011 07:23:31 +0000 (07:23 +0000)]
Fixing issue 1639, debugger stops stepping outside evaluate.
BUG=v8:1639

Review URL: http://codereview.chromium.org/7889039

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9287 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.6.5.
lrn@chromium.org [Thu, 15 Sep 2011 07:22:07 +0000 (07:22 +0000)]
Prepare push to trunk.  Now working on version 3.6.5.

R=ricow@chromium.org

Review URL: http://codereview.chromium.org/7905001

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoForce lazy deoptimization and remove optimized code on deopt inside a recursively...
vegorov@chromium.org [Wed, 14 Sep 2011 16:14:26 +0000 (16:14 +0000)]
Force lazy deoptimization and remove optimized code on deopt inside a recursively invoked function.

R=fschneider@chromium.org,sgjesse@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7890028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixing d8's broken readline history.
yangguo@chromium.org [Wed, 14 Sep 2011 14:39:56 +0000 (14:39 +0000)]
Fixing d8's broken readline history.

Review URL: http://codereview.chromium.org/7885026

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9282 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMark variables as being accessed from any inner scope, not only function scopes
keuchel@chromium.org [Wed, 14 Sep 2011 13:51:29 +0000 (13:51 +0000)]
Mark variables as being accessed from any inner scope, not only function scopes

BUG=96523
TEST=mjsunit/regress/regress-96523.js

Review URL: http://codereview.chromium.org/7890031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9281 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMake built-in functions not call .apply on functions.
lrn@chromium.org [Wed, 14 Sep 2011 12:33:57 +0000 (12:33 +0000)]
Make built-in functions not call .apply on functions.

Uses the new %Apply runtime function instead.
Removes last(?) dependency on user-mungable infrastructure.

Review URL: http://codereview.chromium.org/7887031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9277 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoCleanup of include comments
lrn@chromium.org [Wed, 14 Sep 2011 12:23:52 +0000 (12:23 +0000)]
Cleanup of include comments

Review URL: http://codereview.chromium.org/7892025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9276 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoEliminate the need for code delete events in CPU profiler.
mikhail.naganov@gmail.com [Wed, 14 Sep 2011 11:47:03 +0000 (11:47 +0000)]
Eliminate the need for code delete events in CPU profiler.

Events are still generated for tick processor on performance testing
server to work, as soon as scripts will be updated, it will be safe
to remove code delete events emitting code.

R=erik.corry@gmail.com
BUG=v8:1466
TEST=existing tests in test-profile-generator,test-cpu-profiler and mjsunit/tools

Review URL: http://codereview.chromium.org/7864017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9275 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoReverting r9272.
yangguo@chromium.org [Wed, 14 Sep 2011 11:27:14 +0000 (11:27 +0000)]
Reverting r9272.

Review URL: http://codereview.chromium.org/7889033

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9274 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix scope iteration when debugging global code.
keuchel@chromium.org [Wed, 14 Sep 2011 11:20:31 +0000 (11:20 +0000)]
Fix scope iteration when debugging global code.

TEST=mjsunit/debug-scopes.js

Review URL: http://codereview.chromium.org/7890007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixed broken readline console history.
yangguo@chromium.org [Wed, 14 Sep 2011 11:05:07 +0000 (11:05 +0000)]
Fixed broken readline console history.

Review URL: http://codereview.chromium.org/7888035

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9272 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: port Remove in-loop tracking for call ICs.
kmillikin@chromium.org [Wed, 14 Sep 2011 08:11:16 +0000 (08:11 +0000)]
MIPS: port Remove in-loop tracking for call ICs.

port r9260 (af9cfd83).

Original commit message:
We passed this flag around in a lot of places and had differenc call
ICs based on it, but never did any real specialization based on its
value.

BUG=
TEST=

Committed: http://code.google.com/p/v8/source/detail?r=9269

Review URL: http://codereview.chromium.org/7886028
Patch from Paul Lind <plind44@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRevert "MIPS: port Remove in-loop tracking for call ICs."
kmillikin@chromium.org [Wed, 14 Sep 2011 08:08:16 +0000 (08:08 +0000)]
Revert "MIPS: port Remove in-loop tracking for call ICs."

Committed incorrectly.

TBR=ricow@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7890026

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9270 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: port Remove in-loop tracking for call ICs.
kmillikin@chromium.org [Wed, 14 Sep 2011 08:04:47 +0000 (08:04 +0000)]
MIPS: port Remove in-loop tracking for call ICs.

port r9260 (af9cfd83).

Original commit message:
We passed this flag around in a lot of places and had differenc call
ICs based on it, but never did any real specialization based on its
value.

BUG=
TEST=

Review URL: http://codereview.chromium.org/7886028
Patch from Paul Lind <plind44@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixed spurious character in test case, plus presubmit issues.
rossberg@chromium.org [Wed, 14 Sep 2011 07:30:51 +0000 (07:30 +0000)]
Fixed spurious character in test case, plus presubmit issues.

Also addressed Slava's complaint about the personalized comment.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7886032

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix for .bind regression.
rossberg@chromium.org [Tue, 13 Sep 2011 17:14:39 +0000 (17:14 +0000)]
Fix for .bind regression.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7892013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9267 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixing r9265: moving test case into correct location.
yangguo@chromium.org [Tue, 13 Sep 2011 16:11:05 +0000 (16:11 +0000)]
Fixing r9265: moving test case into correct location.

Review URL: http://codereview.chromium.org/7889008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9266 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdding test case for issue 1639, fixed by r9264.
yangguo@chromium.org [Tue, 13 Sep 2011 15:08:36 +0000 (15:08 +0000)]
Adding test case for issue 1639, fixed by r9264.
BUG=v8:1639

Review URL: http://codereview.chromium.org/7889006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoDebugger: fix stepping next with trycatch recursion
yangguo@chromium.org [Tue, 13 Sep 2011 14:38:39 +0000 (14:38 +0000)]
Debugger: fix stepping next with trycatch recursion

Added depth check to StepNextContinue. Do step out and queue actual StepNext if check failed.

R=yangguo@chromium.org,danno@chromium.org,vegorov@chromium.org
BUG=v8:1639
TEST=

Review URL: http://codereview.chromium.org/7780033
Patch from Fedor Indutny <fedor@indutny.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9264 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixing r9262 for shared library build.
yangguo@chromium.org [Tue, 13 Sep 2011 14:31:54 +0000 (14:31 +0000)]
Fixing r9262 for shared library build.

Review URL: http://codereview.chromium.org/7888013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixing parallel execution in d8 (with -p) and some memory leaks.
yangguo@chromium.org [Tue, 13 Sep 2011 13:16:13 +0000 (13:16 +0000)]
Fixing parallel execution in d8 (with -p) and some memory leaks.

Review URL: http://codereview.chromium.org/7891005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9262 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoTest (and fix) all exception paths that can occur with proxies.
rossberg@chromium.org [Tue, 13 Sep 2011 13:07:20 +0000 (13:07 +0000)]
Test (and fix) all exception paths that can occur with proxies.

R=kmillikin@chromium.org
BUG=v8:1543
TEST=

Review URL: http://codereview.chromium.org/7623013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemove in-loop tracking for call ICs.
kmillikin@chromium.org [Tue, 13 Sep 2011 12:53:28 +0000 (12:53 +0000)]
Remove in-loop tracking for call ICs.

We passed this flag around in a lot of places and had differenc call
ICs based on it, but never did any real specialization based on its
value.

R=fschneider@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7869009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: pre-crankshaft updates to assembler and related files. (1/3)
danno@chromium.org [Tue, 13 Sep 2011 12:12:25 +0000 (12:12 +0000)]
MIPS: pre-crankshaft updates to assembler and related files. (1/3)

Highlights:
- assembler.h adds FPU definitions used for Crankshaft.
- Support optimization of mips call: jalr->jal
    - includes changes to  set_target_address_at(), support routines.
    - Add 2nd use of Apply() to update target addresses.
- Minor debugging improvement in simulator.

BUG=
TEST=

Review URL: http://codereview.chromium.org/7888003
Patch from Paul Lind <plind44@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImplement function proxies (except for their use as constructors).
rossberg@chromium.org [Tue, 13 Sep 2011 11:42:57 +0000 (11:42 +0000)]
Implement function proxies (except for their use as constructors).

Introduce new %Apply native.

Extend Execution::Call to optionally handle receiver rewriting (needed for %Apply).

Fix Function.prototype.bind for functions that have .apply modified.

R=kmillikin@chromium.org
BUG=v8:1543
TEST=

Review URL: http://codereview.chromium.org/7623011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9258 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix presubmit.
fschneider@chromium.org [Tue, 13 Sep 2011 10:29:11 +0000 (10:29 +0000)]
Fix presubmit.

TBR=whesse@chromium.org
Review URL: http://codereview.chromium.org/7888008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9257 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agopush-to-trunk.sh: correctly detect existing branches, git-rm deleted files
jkummerow@chromium.org [Tue, 13 Sep 2011 10:08:45 +0000 (10:08 +0000)]
push-to-trunk.sh: correctly detect existing branches, git-rm deleted files

Review URL: http://codereview.chromium.org/7886004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9256 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix parent of the WeakMap prototype.
mstarzinger@chromium.org [Tue, 13 Sep 2011 09:45:10 +0000 (09:45 +0000)]
Fix parent of the WeakMap prototype.

R=rossberg@chromium.org
BUG=v8:1565
TEST=mjsunit/harmony/weakmaps

Review URL: http://codereview.chromium.org/7890003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix some valgrind errors in d8 shell.
fschneider@chromium.org [Tue, 13 Sep 2011 09:31:41 +0000 (09:31 +0000)]
Fix some valgrind errors in d8 shell.

This fixes 3 possibly lost warnings occurring when running unit tests under d8:

 28 bytes in 1 blocks are possibly lost in loss record 40 of 68
  at 0x67FB8DB: operator new[](unsigned int)
  by 0x83865CC: v8::Shell::SetOptions(int, char**) (d8.cc:1200)
  by 0x83869A5: v8::Shell::Main(int, char**) (d8.cc:1276)
  by 0x8386B31: main (d8.cc:1333)
Review URL: http://codereview.chromium.org/7780032

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSupport for precise stepping in functions compiled before debugging was started ...
sgjesse@chromium.org [Tue, 13 Sep 2011 08:31:21 +0000 (08:31 +0000)]
Support for precise stepping in functions compiled before debugging was started (step 1)

This change will ensure that all non-optimized code will be compiled
with debug break slots when debugging is initiated. This is handled by
scanning the heap for non-optimized functions without debug break slots and setting their code to be lazy recomplied. When the lazy recompilation happens the code will ge generated with debug break slots (if debugging is still active at that point in time).

R=svenpanne@chromium.org
Currently this is only implemented for functions which do not have activations on the stack.

BUG=
TEST=

Review URL: http://codereview.chromium.org//7839030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.6.4.
kmillikin@chromium.org [Tue, 13 Sep 2011 08:06:55 +0000 (08:06 +0000)]
Prepare push to trunk.  Now working on version 3.6.4.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7892002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9247 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRevert "Clean up Context::Lookup and its uses."
kmillikin@chromium.org [Tue, 13 Sep 2011 07:51:22 +0000 (07:51 +0000)]
Revert "Clean up Context::Lookup and its uses."

This reverts commit 9241.  This change shows failures on Mac and Win
for the threading tests.  Reverting while I investigate.

R=fschneider@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7886002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9246 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImproved pretty printing of VAR PROXY and some control flow AST nodes.
svenpanne@chromium.org [Mon, 12 Sep 2011 14:00:16 +0000 (14:00 +0000)]
Improved pretty printing of VAR PROXY and some control flow AST nodes.
Review URL: http://codereview.chromium.org/7866041

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9245 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agod8 external array c'tors: fix double-to-uint32 semantics
jkummerow@chromium.org [Mon, 12 Sep 2011 13:36:43 +0000 (13:36 +0000)]
d8 external array c'tors: fix double-to-uint32 semantics

TEST=mjsunit/external-array

Review URL: http://codereview.chromium.org/7866040

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agod8 external array c'tors: allow parameters that can be converted to numbers
jkummerow@chromium.org [Mon, 12 Sep 2011 12:42:05 +0000 (12:42 +0000)]
d8 external array c'tors: allow parameters that can be converted to numbers

BUG=v8:1681
TEST=d8 accepts: var a = new Int32Array("2");

Review URL: http://codereview.chromium.org/7867036

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd an explicit cast for an integral promotion that MSVC warns about.
kmillikin@chromium.org [Mon, 12 Sep 2011 12:16:30 +0000 (12:16 +0000)]
Add an explicit cast for an integral promotion that MSVC warns about.

I don't think the warning is valid, but it's a good sign that MSVC is
fixin' to generate the wrong code no matter what I think.

R=ricow@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7869008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoReapply "Clean up Context::Lookup and its uses."
kmillikin@chromium.org [Mon, 12 Sep 2011 12:13:00 +0000 (12:13 +0000)]
Reapply "Clean up Context::Lookup and its uses."

With a fix for a context lookup bug in the original change.

R=fschneider@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7862032

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoUse the BitField class for Code::Flags.
kmillikin@chromium.org [Mon, 12 Sep 2011 10:50:50 +0000 (10:50 +0000)]
Use the BitField class for Code::Flags.

Use the BitField helper class for the code flags, so that we do not have to
define both a shift and a mask explicitly.  This makes changing the flags
layout simpler.

Also, make the 'mask' and 'max' members of BitField into constants, because
they are constant and so that they can be used as constant expressions.
E.g., so they can be used in declaring other const members or in static
asserts.

R=fschneider@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7787028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9232 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRevert accidental r9229 and r9230
mikhail.naganov@gmail.com [Mon, 12 Sep 2011 10:50:40 +0000 (10:50 +0000)]
Revert accidental r9229 and r9230

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoadd test
mikhail.naganov@gmail.com [Mon, 12 Sep 2011 10:42:25 +0000 (10:42 +0000)]
add test

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agodo not use code deletions
mikhail.naganov@gmail.com [Mon, 12 Sep 2011 10:42:15 +0000 (10:42 +0000)]
do not use code deletions

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix the include guard from circular-queue-inl.h
mikhail.naganov@gmail.com [Mon, 12 Sep 2011 10:24:18 +0000 (10:24 +0000)]
Fix the include guard from circular-queue-inl.h

R=mnaganov@chromium.org

Review URL: http://codereview.chromium.org/7864028
Patch from Thiago Farina <tfarina@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoUpdate python version in build/README.txt to what's used by Chromium
jkummerow@chromium.org [Mon, 12 Sep 2011 09:59:59 +0000 (09:59 +0000)]
Update python version in build/README.txt to what's used by Chromium

Review URL: http://codereview.chromium.org/7867034

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9227 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImproved printing of Goto and CompareIDAndBranch instructions.
svenpanne@chromium.org [Mon, 12 Sep 2011 09:57:11 +0000 (09:57 +0000)]
Improved printing of Goto and CompareIDAndBranch instructions.
Review URL: http://codereview.chromium.org/7862031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9226 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRefactored HInferRepresenation::TryChange a bit, making the heuristics a bit clearer.
svenpanne@chromium.org [Mon, 12 Sep 2011 09:24:18 +0000 (09:24 +0000)]
Refactored HInferRepresenation::TryChange a bit, making the heuristics a bit clearer.

Removed an unneeded check for phis: There are never HValues in the work list
which are not convertible to integer and are not a phi. (But even if they were,
ignoring IsConvertibleToInteger() then looks like the wrong thing to do.)
Review URL: http://codereview.chromium.org/7857033

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9225 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRevert "Clean up Context::Lookup and its uses."
kmillikin@chromium.org [Mon, 12 Sep 2011 09:17:26 +0000 (09:17 +0000)]
Revert "Clean up Context::Lookup and its uses."

This reverts commit 9223, due to test failures.

R=ricow@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/7865023

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoClean up Context::Lookup and its uses.
kmillikin@chromium.org [Mon, 12 Sep 2011 08:57:09 +0000 (08:57 +0000)]
Clean up Context::Lookup and its uses.

Refactor Context::Lookup so it is more obvious.  Change the comment in
contexts.h so it no longer indicates that it can return an arguments
object (it can't) and clean up the call sites that had leftover dead code.

BUG=
TEST=

Review URL: http://codereview.chromium.org/7782030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMove the implementation of Scanner::LiteralScope to scanner.cc
lrn@chromium.org [Mon, 12 Sep 2011 07:49:01 +0000 (07:49 +0000)]
Move the implementation of Scanner::LiteralScope to scanner.cc

It seems more appropriate as LiteralScope is declared in scanner.h

R=lrn@chromium.org

Signed-off-by: Thiago Farina <tfarina@chromium.org>
Review URL: http://codereview.chromium.org/7864024
Patch from Thiago Farina <tfarina@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRename SmartPointer to SmartArrayPointer.
mikhail.naganov@gmail.com [Fri, 9 Sep 2011 22:39:47 +0000 (22:39 +0000)]
Rename SmartPointer to SmartArrayPointer.

As pointed out in: http://codereview.chromium.org/7754007/#msg5

"SmartPointer should have been named SmartArrayPointer as it expects an input
allocated using new[] and deallocates it using delete[]. Using it as a simple
scoped pointer for a single object is incorrect."

R=mnaganov@chromium.org

Review URL: http://codereview.chromium.org/7860011
Patch from Thiago Farina <tfarina@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoKey external array map transitions on ElementsKind instead of ExternalArrayType
danno@chromium.org [Fri, 9 Sep 2011 14:47:37 +0000 (14:47 +0000)]
Key external array map transitions on ElementsKind instead of ExternalArrayType

R=jkummrow@chromium.org
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/7787007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoDon't allow seal or element property re-definition on external arrays.
danno@chromium.org [Fri, 9 Sep 2011 14:30:00 +0000 (14:30 +0000)]
Don't allow seal or element property re-definition on external arrays.

R=ricow@chromium.org
BUG=95920
TEST=test/mjsunit/regress/regress-95920.js

Review URL: http://codereview.chromium.org/7858031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9213 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRe-use phi reachability information to avoid a fixed-point computation.
svenpanne@chromium.org [Fri, 9 Sep 2011 13:12:52 +0000 (13:12 +0000)]
Re-use phi reachability information to avoid a fixed-point computation.

When we propagate the information that a value is not convertible to integer,
there is no need for a separate fixed-point computation, we can do things the
"Millikin way" (tm), folding as much computation as possible into a single pass:
;-) We already have the phi node reachability information, so we can easily
propagate this while doing the representation histogram computation.
Review URL: http://codereview.chromium.org/7754010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9212 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoTrigger OOM when zone is full.
yangguo@chromium.org [Fri, 9 Sep 2011 12:41:58 +0000 (12:41 +0000)]
Trigger OOM when zone is full.

Review URL: http://codereview.chromium.org/7859030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoBetter error messages for d8's load() (execute from file).
yangguo@chromium.org [Fri, 9 Sep 2011 11:10:36 +0000 (11:10 +0000)]
Better error messages for d8's load() (execute from file).
BUG=v8:796

Review URL: http://codereview.chromium.org/7754018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9209 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMechanical refactor to move ElementsKind type out of JSObject.
danno@chromium.org [Fri, 9 Sep 2011 09:35:57 +0000 (09:35 +0000)]
Mechanical refactor to move ElementsKind type out of JSObject.

R=svenpanne@chromium.org
BUG=none
TEST=all

Review URL: http://codereview.chromium.org/7849017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9208 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd a function to compute loop nesting level to HBasicBlock.
fschneider@chromium.org [Fri, 9 Sep 2011 09:17:57 +0000 (09:17 +0000)]
Add a function to compute loop nesting level to HBasicBlock.
Review URL: http://codereview.chromium.org/7857031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9207 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFollow up fixes for r9205: shared library build and thread deletion.
vitalyr@chromium.org [Thu, 8 Sep 2011 23:43:36 +0000 (23:43 +0000)]
Follow up fixes for r9205: shared library build and thread deletion.

Review URL: http://codereview.chromium.org/7787013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRelease memory of semaphores and thread pointers by using 'delete' instead of SmartPo...
vitalyr@chromium.org [Thu, 8 Sep 2011 22:44:03 +0000 (22:44 +0000)]
Release memory of semaphores and thread pointers by using 'delete' instead of SmartPointer.

As pointed out in: http://codereview.chromium.org/7754007/

SmartPointer expects an input allocated using new[] and deallocates it using delete[].
So using SmartPointer for deleting T* here is incorrect. Fix it now.

R=vitalyr@chromium.org

Review URL: http://codereview.chromium.org/7846022
Patch from Thiago Farina <tfarina@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9205 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix presubmit errors caused by updated depot tools
ricow@chromium.org [Thu, 8 Sep 2011 19:57:14 +0000 (19:57 +0000)]
Fix presubmit errors caused by updated depot tools

This is all blank line before/after linting errors.
Review URL: http://codereview.chromium.org/7754022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9204 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoUse more style-guide-friendly names for some constants.
kmillikin@chromium.org [Thu, 8 Sep 2011 16:29:57 +0000 (16:29 +0000)]
Use more style-guide-friendly names for some constants.

This is a renaming only change.

R=erik.corry@gmail.com
BUG=
TEST=

Review URL: http://codereview.chromium.org/7849020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9200 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.6.3.
ricow@chromium.org [Thu, 8 Sep 2011 16:09:24 +0000 (16:09 +0000)]
Prepare push to trunk. Now working on version 3.6.3.
Review URL: http://codereview.chromium.org/7849019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix memory leak from d8 shell.
mikhail.naganov@gmail.com [Thu, 8 Sep 2011 13:51:06 +0000 (13:51 +0000)]
Fix memory leak from d8 shell.

We were not disposing the semaphores and the thread used in SourceGroup.

R=mnaganov@chromium.org

Signed-off-by: Thiago Farina <tfarina@chromium.org>
Review URL: http://codereview.chromium.org/7754007/

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9198 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix bug in collector.
lrn@chromium.org [Thu, 8 Sep 2011 13:44:11 +0000 (13:44 +0000)]
Fix bug in collector.

Small cleanups in preparser.

TEST=cctest/test-utils/SequenceCollectorRegression

Review URL: http://codereview.chromium.org/7754014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9197 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd "soname_version" parameter to common.gypi, v8.gyp, Makefile
jkummerow@chromium.org [Thu, 8 Sep 2011 13:20:49 +0000 (13:20 +0000)]
Add "soname_version" parameter to common.gypi, v8.gyp, Makefile

TEST=compile with component=shared_library and soname_version=1.2.3 and find "libv8-1.2.3.so" in the output.

Review URL: http://codereview.chromium.org/7848017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9196 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRename scanner.* to scanner-character-streams.*. and scanner-base.* to scanner.*
lrn@chromium.org [Thu, 8 Sep 2011 13:06:44 +0000 (13:06 +0000)]
Rename scanner.* to scanner-character-streams.*. and scanner-base.* to scanner.*

R=lrn@chromium.org

Signed-off-by: Thiago Farina <tfarina@chromium.org>
Review URL: http://codereview.chromium.org/7739020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9195 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAmends to r9181 and r9191.
yangguo@chromium.org [Thu, 8 Sep 2011 11:03:26 +0000 (11:03 +0000)]
Amends to r9181 and r9191.

Review URL: http://codereview.chromium.org/7847019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9192 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixing shared library build of d8.
yangguo@chromium.org [Thu, 8 Sep 2011 09:49:52 +0000 (09:49 +0000)]
Fixing shared library build of d8.

Review URL: http://codereview.chromium.org/7851013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix missing setting of array to copy-on-write in
erik.corry@gmail.com [Thu, 8 Sep 2011 09:24:32 +0000 (09:24 +0000)]
Fix missing setting of array to copy-on-write in
optimized string split.
Review URL: http://codereview.chromium.org/7849012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9190 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemove ExitContextStatement.
kmillikin@chromium.org [Thu, 8 Sep 2011 08:59:14 +0000 (08:59 +0000)]
Remove ExitContextStatement.

All the constructs that used it are now properly bracketed in the AST and we
handle abrupt exits without try/finally.  We can treat normal context exit
as occurring implicitly at the end of a body.

Review URL: http://codereview.chromium.org/7837025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFunctions in d8 to turn the profiler on/off (enableProfiler() and disableProfiler()).
yangguo@chromium.org [Thu, 8 Sep 2011 08:54:28 +0000 (08:54 +0000)]
Functions in d8 to turn the profiler on/off (enableProfiler() and disableProfiler()).

Review URL: http://codereview.chromium.org/7851011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9188 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: port Remove variable rewrites and the unneccesary Slot class.
kmillikin@chromium.org [Thu, 8 Sep 2011 08:47:07 +0000 (08:47 +0000)]
MIPS: port Remove variable rewrites and the unneccesary Slot class.

Port r9162 (2215df8).

BUG=
TEST=

Review URL: http://codereview.chromium.org/7847015
Patch from Paul Lind <plind44@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9187 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoIntroduce push-to-trunk.sh (for git users)
jkummerow@chromium.org [Thu, 8 Sep 2011 08:46:31 +0000 (08:46 +0000)]
Introduce push-to-trunk.sh (for git users)

Review URL: http://codereview.chromium.org/7835035

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9186 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImproved phi reachability computation a bit.
svenpanne@chromium.org [Thu, 8 Sep 2011 07:40:11 +0000 (07:40 +0000)]
Improved phi reachability computation a bit.

The use-def relation between phis is mainly "forwards" (i.e. from phis with
smaller IDs to ones with larger IDs), so the fixed point computation terminates
faster when iterate through the phis in a "backwards" manner. This is quite
visible in complex Mandreel-generated code, where a few hundred phis with
non-trivial use-def chains are generated.
Review URL: http://codereview.chromium.org/7848012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix wrong assert from 9180
ricow@chromium.org [Thu, 8 Sep 2011 06:23:05 +0000 (06:23 +0000)]
Fix wrong assert from 9180

There is an optional parameter to the function, with default value being a null handle. We then check that this is a flat string.
Review URL: http://codereview.chromium.org/7850011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9184 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoJSArray can go slow case during String.split. Guard against
erik.corry@gmail.com [Thu, 8 Sep 2011 06:06:13 +0000 (06:06 +0000)]
JSArray can go slow case during String.split.  Guard against
that eventuality.
Review URL: http://codereview.chromium.org/7840031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9183 ce2b1a6d-e550-0410-aec6-3dcde31c8c00