platform/upstream/v8.git
13 years agoDon't return false from CompileCallInterceptor which returns a
ager@chromium.org [Thu, 18 Nov 2010 11:21:20 +0000 (11:21 +0000)]
Don't return false from CompileCallInterceptor which returns a
MaybeObject*. Instead return the failure which will be handled
correctly by the caller. This code would lead to a crash if ever
executed.

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

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

13 years agoA follow-up to r5849 -- fix Chromium build.
mikhail.naganov@gmail.com [Thu, 18 Nov 2010 10:49:34 +0000 (10:49 +0000)]
A follow-up to r5849 -- fix Chromium build.

TBR=sgjesse@chromium.org

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

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

13 years agoMake count-line-ends use StringSearch and only iterate over the source once.
lrn@chromium.org [Thu, 18 Nov 2010 10:42:22 +0000 (10:42 +0000)]
Make count-line-ends use StringSearch and only iterate over the source once.

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

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

13 years agoNew heap profiler: include all heap objects and refs into snapshot.
mikhail.naganov@gmail.com [Thu, 18 Nov 2010 10:38:25 +0000 (10:38 +0000)]
New heap profiler: include all heap objects and refs into snapshot.

Otherwise, retaned memory sizes are not precise. This increases size
of heap snapshot, I will deal with this later. Heap objects and
references previously missing in snapshot are now marked as 'hidden'.
That means, they not shown to user, but participate in sizes
calculation.

Other small changes:
 - added 'shortcut' graph edges: e.g. to pin global objects on top
   level;
 - meta-information in JSON snapshot is no more double encoded.

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

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

13 years agoPrepare push to trunk. Now working on version 2.5.8.
erik.corry@gmail.com [Thu, 18 Nov 2010 10:28:47 +0000 (10:28 +0000)]
Prepare push to trunk. Now working on version 2.5.8.
Review URL: http://codereview.chromium.org/5203002

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

13 years agoRevert r5846 because of debug mode test failures.
ager@chromium.org [Thu, 18 Nov 2010 09:40:00 +0000 (09:40 +0000)]
Revert r5846 because of debug mode test failures.

TBR=sandholm@chromium.org
Review URL: http://codereview.chromium.org/5167002

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

13 years agoLeverage Lasse's StringSearch object to speed up calculations of script
sandholm@chromium.org [Thu, 18 Nov 2010 08:45:17 +0000 (08:45 +0000)]
Leverage Lasse's StringSearch object to speed up calculations of script
line ends.
Review URL: http://codereview.chromium.org/5100002

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

13 years agoLanding for Justing Schuh.
ager@chromium.org [Thu, 18 Nov 2010 08:23:49 +0000 (08:23 +0000)]
Landing for Justing Schuh.

Split out the random number state between JavaScript and private API

I've added v8::RandomPrivate() for internaly used random numbers, and pass the state in as a parameter to a random_base function.

I still need to implement strong seeding. I already know how and will be landing that in another patch.

BUG=http://code.google.com/p/v8/issues/detail?id=936
TEST=None.

Codereview URL: http://codereview.chromium.org/5143004

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

13 years agoLanding for Martyn Capewell.
ager@chromium.org [Wed, 17 Nov 2010 14:48:43 +0000 (14:48 +0000)]
Landing for Martyn Capewell.

Replace some hard-coded return address calculations with Call.

BUG=none
TEST=none

Codereview URL: http://codereview.chromium.org/5158002/

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

13 years agoChange the order of evaluation of sub-expressions for keyed call
sgjesse@chromium.org [Wed, 17 Nov 2010 13:59:07 +0000 (13:59 +0000)]
Change the order of evaluation of sub-expressions for keyed call

The expression of the key is now evaluated before the arguments, so all expressions in a keyed call are evaluared from left to right.

BUG=http://code.google.com/p/v8/issues/detail?id=931
TEST=test/mjsunit/regress/regress-931.js
Review URL: http://codereview.chromium.org/5161002

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

13 years agoName argument in forward declaration.
floitschV8@gmail.com [Wed, 17 Nov 2010 13:29:45 +0000 (13:29 +0000)]
Name argument in forward declaration.

Unbreaks the build.
TBR: whesse@chromium.org
Review URL: http://codereview.chromium.org/5126002

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

13 years agoAdd bignum fall-back when the fast dtoa doesn't succeed. This removes Gay's dtoa...
floitschV8@gmail.com [Wed, 17 Nov 2010 13:20:44 +0000 (13:20 +0000)]
Add bignum fall-back when the fast dtoa doesn't succeed. This removes Gay's dtoa for the double->string direction. We still need it for the string->double direction.
Review URL: http://codereview.chromium.org/3468003

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

13 years agoStore script's line ends in copy-on-write fixed array.
vegorov@chromium.org [Wed, 17 Nov 2010 12:49:27 +0000 (12:49 +0000)]
Store script's line ends in copy-on-write fixed array.

This allows to remove explicit copy from line ends JS accessor which is used for formatting of stack traces.

Eager copying of line ends array might cause multiple full GC collections for huge scripts (e.g. scripts generated by GWT compiler with PRETY preset).

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

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

13 years agoExtract extensions to a separate directory.
ager@chromium.org [Wed, 17 Nov 2010 12:28:30 +0000 (12:28 +0000)]
Extract extensions to a separate directory.

Remove extensions from the external reference table. They should never
be part of the serialized code.

Create extensions/experimental subdirectory for experimental
extensions not officially supported by V8.

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

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

13 years agoAdd separate scanner only intended for preparsing.
lrn@chromium.org [Wed, 17 Nov 2010 12:00:22 +0000 (12:00 +0000)]
Add separate scanner only intended for preparsing.

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

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

13 years agoAPI call code refactoring (x64).
serya@chromium.org [Wed, 17 Nov 2010 10:44:16 +0000 (10:44 +0000)]
API call code refactoring (x64).

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

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

13 years agoImplement Math.floor stub on ARM. Uses VFP when available. This is a commit of http...
erik.corry@gmail.com [Wed, 17 Nov 2010 09:24:44 +0000 (09:24 +0000)]
Implement Math.floor stub on ARM. Uses VFP when available.  This is a commit of codereview.chromium.org/5075002/ for Martyn Capewell

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

13 years agoPort direct API function call to x64 (ia32 CL is http://codereview.chromium.org/44560...
serya@chromium.org [Tue, 16 Nov 2010 16:08:57 +0000 (16:08 +0000)]
Port direct API function call to x64 (ia32 CL is codereview.chromium.org/4456002/).

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

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

13 years agoFixing lint errors.
serya@chromium.org [Tue, 16 Nov 2010 15:23:47 +0000 (15:23 +0000)]
Fixing lint errors.

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

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

13 years agoAPI call code refactoring (ia32).
serya@chromium.org [Tue, 16 Nov 2010 15:04:41 +0000 (15:04 +0000)]
API call code refactoring (ia32).

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

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

13 years agoFix bug in parser that allows "(foo):42" as a labeled statement.
lrn@chromium.org [Tue, 16 Nov 2010 12:10:48 +0000 (12:10 +0000)]
Fix bug in parser that allows "(foo):42" as a labeled statement.

Fixes issue 918.

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

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

13 years agoRevert premature addition to parser.
lrn@chromium.org [Tue, 16 Nov 2010 08:16:13 +0000 (08:16 +0000)]
Revert premature addition to parser.

TBR:ricow

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

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

13 years agoMove static scanner fields to scanner-base.h
lrn@chromium.org [Tue, 16 Nov 2010 08:01:45 +0000 (08:01 +0000)]
Move static scanner fields to scanner-base.h

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

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

13 years agoRemoving redundant stubs for API functions.
serya@chromium.org [Mon, 15 Nov 2010 17:12:34 +0000 (17:12 +0000)]
Removing redundant stubs for API functions.

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

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

13 years agoSplit globals.h into two parts, where only one depends on V8.
lrn@chromium.org [Mon, 15 Nov 2010 13:23:30 +0000 (13:23 +0000)]
Split globals.h into two parts, where only one depends on V8.
Made allocation.{h,cc} independent of V8, allowing utils.h to allocate
vectors and collectors.

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

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

13 years agoProvide more accurate results about used heap size via GetHeapStatistics.
mikhail.naganov@gmail.com [Mon, 15 Nov 2010 10:38:24 +0000 (10:38 +0000)]
Provide more accurate results about used heap size via GetHeapStatistics.

I observed that used heap size provided by Heap::SizeOfObjects() is
usually about ~10% bigger than the number calculated by summing up
heap objects sizes.

This aligns DevTools Timeline stats with Heap profiler stats.

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

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

13 years agoImprove support for vmrs/vmsr in ARM disassembler. This is a commit of http://codere...
erik.corry@gmail.com [Mon, 15 Nov 2010 10:21:57 +0000 (10:21 +0000)]
Improve support for vmrs/vmsr in ARM disassembler.  This is a commit of codereview.chromium.org/4904001 for Martyn Capewell.

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

13 years agoLanding for dsule@codeaurora.org.
ager@chromium.org [Mon, 15 Nov 2010 10:12:01 +0000 (10:12 +0000)]
Landing for dsule@codeaurora.org.

Allow build-time customization of the max semispace size. Building a
version of V8 with snapshots and with a non-default max semi-space
size is much easier when you can set the max semispace size in the
build environment.

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

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

13 years agoFix Win64 build.
antonm@chromium.org [Sat, 13 Nov 2010 15:00:24 +0000 (15:00 +0000)]
Fix Win64 build.

MemoryAllocator::AvailableExecutable should return intptr_t, the difference of intptr_t's.

TBR=ager@chromium.org

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

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

13 years agoFix Win64: strlen returns size_t which gets converted to int.
antonm@chromium.org [Sat, 13 Nov 2010 14:37:28 +0000 (14:37 +0000)]
Fix Win64: strlen returns size_t which gets converted to int.

TBR=lrn@chromium.org

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

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

13 years agoUse the real climit for testing the stack limit API. The currently
ager@chromium.org [Fri, 12 Nov 2010 08:40:21 +0000 (08:40 +0000)]
Use the real climit for testing the stack limit API. The currently
active climit can be changed by other events and should not be trusted
for these tests. The real climit stays the same once set.

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

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

13 years agoFix strtod.
floitschV8@gmail.com [Thu, 11 Nov 2010 16:32:32 +0000 (16:32 +0000)]
Fix strtod.

Strtod function used buffer that was allocated inside a nested scope.

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

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

13 years agoFix compile error on Windows (no snprintf support).
lrn@chromium.org [Thu, 11 Nov 2010 13:47:15 +0000 (13:47 +0000)]
Fix compile error on Windows (no snprintf support).
Luckily the snprintf wasn't really needed.

TBR:whesse

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

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

13 years agoPreparsing now considers catch-blocks as inside a with.
lrn@chromium.org [Thu, 11 Nov 2010 11:45:25 +0000 (11:45 +0000)]
Preparsing now considers catch-blocks as inside a with.
Fix issue 928.

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

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

13 years agoMove ComputeCallInitialize from the codegen.cc to stub-cache.cc.
fschneider@chromium.org [Thu, 11 Nov 2010 10:33:51 +0000 (10:33 +0000)]
Move ComputeCallInitialize from the codegen.cc to stub-cache.cc.

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

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

13 years agoFix Chromium bug 62639.
lrn@chromium.org [Thu, 11 Nov 2010 10:18:48 +0000 (10:18 +0000)]
Fix Chromium bug 62639.
Add missing failure check after expecting an identifier in preparser.
This allowed code to use the non-existing literal.

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

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

13 years agoSpecial case global and non-global code paths in regexp.test.
sandholm@chromium.org [Thu, 11 Nov 2010 08:47:30 +0000 (08:47 +0000)]
Special case global and non-global code paths in regexp.test.
Review URL: http://codereview.chromium.org/4517003

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

13 years agoRevert unkosher change to xcode project.
lrn@chromium.org [Thu, 11 Nov 2010 08:11:27 +0000 (08:11 +0000)]
Revert unkosher change to xcode project.
Should have been reverted before committing 5775, but that revert failed to stick.

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

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

13 years agoMove common static helpers from codegen to the macro-assembler files.
fschneider@chromium.org [Wed, 10 Nov 2010 17:00:20 +0000 (17:00 +0000)]
Move common static helpers from codegen to the macro-assembler files.

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

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

13 years agoMake String.prototype.split honor limit when separator is empty.
vitalyr@chromium.org [Wed, 10 Nov 2010 12:34:28 +0000 (12:34 +0000)]
Make String.prototype.split honor limit when separator is empty.

BUG=929

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

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

13 years agoPrepare push to push version 2.5.6 to trunk.
ager@chromium.org [Wed, 10 Nov 2010 11:38:22 +0000 (11:38 +0000)]
Prepare push to push version 2.5.6 to trunk.
Review URL: http://codereview.chromium.org/4709003

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

13 years agoAnother fix after the executable memory limit introduction.
ager@chromium.org [Wed, 10 Nov 2010 10:14:13 +0000 (10:14 +0000)]
Another fix after the executable memory limit introduction.

The max executable size must be less than or equal to the max old
space size. It is an extra limit in addition to the old space size.

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

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

13 years agoFix x64 build after executable memory limit change.
ager@chromium.org [Wed, 10 Nov 2010 09:25:46 +0000 (09:25 +0000)]
Fix x64 build after executable memory limit change.

TBR=jschuh@chromium.org
Review URL: http://codereview.chromium.org/4656002

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

13 years agoFix executable memory setting and fix test.
ager@chromium.org [Wed, 10 Nov 2010 09:20:08 +0000 (09:20 +0000)]
Fix executable memory setting and fix test.
Review URL: http://codereview.chromium.org/4764002

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

13 years agoLanding for Justin Schuh.
ager@chromium.org [Wed, 10 Nov 2010 08:38:42 +0000 (08:38 +0000)]
Landing for Justin Schuh.

Add 128MB limit for executable pages.

BUG=http://code.google.com/p/v8/issues/detail?id=925
TEST=None.
TBR=jschuh@chromium.org
Review URL: http://codereview.chromium.org/4634003

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

13 years agoAdd check for overflow after MUL operations in side-effect free int32 expressions.
vegorov@chromium.org [Tue, 9 Nov 2010 19:32:49 +0000 (19:32 +0000)]
Add check for overflow after MUL operations in side-effect free int32 expressions.

BUG=http://code.google.com/p/v8/issues/detail?id=927
TEST=test/mjsunit/regress/regress-927.js

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

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

13 years agoDirect call API functions (ia32 implementation).
serya@chromium.org [Tue, 9 Nov 2010 14:01:23 +0000 (14:01 +0000)]
Direct call API functions (ia32 implementation).

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

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

13 years agoARM: The Simulator will now handle different VFP rounding modes. RZ and RM are implem...
erik.corry@gmail.com [Tue, 9 Nov 2010 08:26:02 +0000 (08:26 +0000)]
ARM: The Simulator will now handle different VFP rounding modes. RZ and RM are implemented.  This is a commit of
http://codereview.chromium.org/4295003/show for Alexander Rames of ARM.

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

13 years agoAdd comments to double.h.
floitschV8@gmail.com [Mon, 8 Nov 2010 15:40:28 +0000 (15:40 +0000)]
Add comments to double.h.

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

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

13 years agoRemove bignum-dtoa.{cc, h} from gyp file.
floitschV8@gmail.com [Mon, 8 Nov 2010 15:37:11 +0000 (15:37 +0000)]
Remove bignum-dtoa.{cc, h} from gyp file.

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

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

13 years agoHeap profiler: remove context checks for objects.
mikhail.naganov@gmail.com [Mon, 8 Nov 2010 15:18:12 +0000 (15:18 +0000)]
Heap profiler: remove context checks for objects.

It seems that there will be no access to heap snapshots from
web pages' code, only from Developer Tools, thus it makes no
sense doing filtering of object by their security contexts.

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

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

13 years agoWork around windows compiler bug.
floitschV8@gmail.com [Mon, 8 Nov 2010 13:04:47 +0000 (13:04 +0000)]
Work around windows compiler bug.

Doubles that lie exactly between two doubles should round to the even one.

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

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

13 years agoFix Double.NextDouble function.
floitschV8@gmail.com [Mon, 8 Nov 2010 12:13:05 +0000 (12:13 +0000)]
Fix Double.NextDouble function.

This unbreaks the build on windows.

TBR: whesse@chromium.org
BUG=
TEST=

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

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

13 years agoBignum implementation of Strtod.
floitschV8@gmail.com [Mon, 8 Nov 2010 11:49:47 +0000 (11:49 +0000)]
Bignum implementation of Strtod.

This removes the dependency on Gay's strtod.

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

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

13 years agoPrepare push to trunk. Now working on version 2.5.6.
whesse@chromium.org [Mon, 8 Nov 2010 11:15:51 +0000 (11:15 +0000)]
Prepare push to trunk. Now working on version 2.5.6.
Review URL: http://codereview.chromium.org/4669002

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

13 years agoFix pseudo-smi accessors lo/hi ordering for SharedFunctionInfo on x64.
vegorov@chromium.org [Mon, 8 Nov 2010 10:30:57 +0000 (10:30 +0000)]
Fix pseudo-smi accessors lo/hi ordering for SharedFunctionInfo on x64.

Incorrect ordering lead to crashes during GC when end position was not even number.

Add static assert to catch this kind of typos.

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

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

13 years agoMove part of scanner.* into scanner-base.* for reuse in preparser scanner.
lrn@chromium.org [Fri, 5 Nov 2010 13:33:40 +0000 (13:33 +0000)]
Move part of scanner.* into scanner-base.* for reuse in preparser scanner.
Make checks.h not depend on flags.h or global.h (or anything else except
include/v8stdint.h). Only checks.cc has the dependencies (so another
implementation of checks.cc can be provided by the preparser).
Now files depending on checks.h (using ASSERT macros) can include it
directly without depending on all of v8.

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

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

13 years agoAnother minor regexp cleanup.
sandholm@chromium.org [Fri, 5 Nov 2010 13:33:12 +0000 (13:33 +0000)]
Another minor regexp cleanup.
Review URL: http://codereview.chromium.org/4577001

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

13 years agoFix bug introduced when extracting utils.
lrn@chromium.org [Fri, 5 Nov 2010 13:12:14 +0000 (13:12 +0000)]
Fix bug introduced when extracting utils.

TBR=ager@chromium.org

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

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

13 years agoSplit utils.h into utils.h and v8utils.h where the former is independent of V8.
lrn@chromium.org [Fri, 5 Nov 2010 08:18:53 +0000 (08:18 +0000)]
Split utils.h into utils.h and v8utils.h where the former is independent of V8.
The code in utils.h can be reused outside of v8 propert, as long as the
propert ASSERT macros are defined.

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

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

13 years agoAdd a test for debug break while running in an infinite loop
sgjesse@chromium.org [Thu, 4 Nov 2010 15:43:12 +0000 (15:43 +0000)]
Add a test for debug break while running in an infinite loop

Fixed a bug where execution termination could get lost while leaving the debugger.
Review URL: http://codereview.chromium.org/4405003

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

13 years agoFix presubmit errors introduced by r5768.
vegorov@chromium.org [Thu, 4 Nov 2010 15:39:06 +0000 (15:39 +0000)]
Fix presubmit errors introduced by r5768.

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

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

13 years agoFix a potential error in Add() macro-instruction on ARM.
whesse@chromium.org [Thu, 4 Nov 2010 15:30:04 +0000 (15:30 +0000)]
Fix a potential error in Add() macro-instruction on ARM.
Review URL: http://codereview.chromium.org/4247004

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

13 years agoImprove positions recording for calls.
vegorov@chromium.org [Thu, 4 Nov 2010 15:12:03 +0000 (15:12 +0000)]
Improve positions recording for calls.

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

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

13 years agoMake presubmit lint the "include" dir.
lrn@chromium.org [Thu, 4 Nov 2010 10:27:39 +0000 (10:27 +0000)]
Make presubmit lint the "include" dir.
Make include dir content pass lint.

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

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

13 years agoFix issue 924 - splitting the empty string.
lrn@chromium.org [Thu, 4 Nov 2010 10:24:17 +0000 (10:24 +0000)]
Fix issue 924 - splitting the empty string.

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

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

13 years agoExtract essential type declarations into separate file.
lrn@chromium.org [Thu, 4 Nov 2010 08:52:49 +0000 (08:52 +0000)]
Extract essential type declarations into separate file.

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

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

13 years agoSimplify preparsing of "new"-expressions.
lrn@chromium.org [Thu, 4 Nov 2010 07:19:06 +0000 (07:19 +0000)]
Simplify preparsing of "new"-expressions.

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

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

13 years agoInvestigate usleep failure on Linux. Add more debug output.
mikhail.naganov@gmail.com [Wed, 3 Nov 2010 18:33:57 +0000 (18:33 +0000)]
Investigate usleep failure on Linux. Add more debug output.

BUG=crbug.com/54592
TEST=none

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

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

13 years agoFix some fotgotten variable names.
antonm@chromium.org [Wed, 3 Nov 2010 13:29:01 +0000 (13:29 +0000)]
Fix some fotgotten variable names.

TBR=vegorov@chromium.org

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

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

13 years agoAttempt to collect more garbage before panicking with out of memory.
antonm@chromium.org [Wed, 3 Nov 2010 13:00:28 +0000 (13:00 +0000)]
Attempt to collect more garbage before panicking with out of memory.

Currently weak handles retain an object for another GC round (oftem times,
major GC round.)  Instrumenting Chromium shows that navigation leaves
many global objects which are only collected in next go.  Let's
attempt to collect more garbage when approacing OOM condition.

This is a better version of rolled out r5455: now it's correctly
rebuilds object groups between additional GCs.

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

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

13 years agoFix assumptions in DoubleToFixed.
floitschV8@gmail.com [Wed, 3 Nov 2010 12:05:01 +0000 (12:05 +0000)]
Fix assumptions in DoubleToFixed.

By luck two errors cancelled each other out.

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

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

13 years agoMinor regexp test cleanup.
sandholm@chromium.org [Wed, 3 Nov 2010 10:30:15 +0000 (10:30 +0000)]
Minor regexp test cleanup.
Review URL: http://codereview.chromium.org/4371002

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

13 years agoPrepare push to trunk. Now working on version 2.5.5.
lrn@chromium.org [Wed, 3 Nov 2010 08:11:13 +0000 (08:11 +0000)]
Prepare push to trunk. Now working on version 2.5.5.

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

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

13 years agoRemove regexp caching.
lrn@chromium.org [Tue, 2 Nov 2010 13:37:59 +0000 (13:37 +0000)]
Remove regexp caching.

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

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

13 years agoRemove all remaining code related to exposing C-frames to the JavaScript debugger
sgjesse@chromium.org [Tue, 2 Nov 2010 12:08:58 +0000 (12:08 +0000)]
Remove all remaining code related to exposing C-frames to the JavaScript debugger

BUG=906
Review URL: http://codereview.chromium.org/4104009

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

13 years agoFix converting NULL to Failure bugs introduced in r5698.
vegorov@chromium.org [Tue, 2 Nov 2010 11:56:10 +0000 (11:56 +0000)]
Fix converting NULL to Failure bugs introduced in r5698.

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

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

13 years agoRemove old preparser option and behavior from the parser.
lrn@chromium.org [Tue, 2 Nov 2010 11:45:47 +0000 (11:45 +0000)]
Remove old preparser option and behavior from the parser.

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

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

13 years agoLanding for Rodolph Perfetta.
ager@chromium.org [Tue, 2 Nov 2010 08:26:33 +0000 (08:26 +0000)]
Landing for Rodolph Perfetta.

Improve V8 VFPv3 runtime detection, to address issue 914.

This patch will check for the exact word vfpv3 as well as 0xc08 (CortexA8
part number) as some earlier kernel didn't report vfpv3 for A8.

Codereview URL: http://codereview.chromium.org/4103013/show

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

13 years agoStand-alone parser template.
lrn@chromium.org [Tue, 2 Nov 2010 07:21:37 +0000 (07:21 +0000)]
Stand-alone parser template.
Uses existing Scanner and ParserLog.
Generates same preparse-data as existing preparser.

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

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

13 years agoPrepare push to trunk. Now working on version 2.5.4.
fschneider@chromium.org [Mon, 1 Nov 2010 12:17:58 +0000 (12:17 +0000)]
Prepare push to trunk. Now working on version 2.5.4.

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

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

13 years agoRefactoring of v8:Arguments similary we did with v8::AccessorInfo (http://codereview...
serya@chromium.org [Mon, 1 Nov 2010 10:51:44 +0000 (10:51 +0000)]
Refactoring of v8:Arguments similary we did with v8::AccessorInfo (codereview.chromium.org/242050). GC-controlled values moved to a separate array.
Review URL: http://codereview.chromium.org/4117010

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

13 years agoRemove invalid asserts from last commit.
ager@chromium.org [Mon, 1 Nov 2010 09:16:39 +0000 (09:16 +0000)]
Remove invalid asserts from last commit.

TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/4094010

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

13 years agoLanding for Rodolph Perfetta.
ager@chromium.org [Mon, 1 Nov 2010 08:55:40 +0000 (08:55 +0000)]
Landing for Rodolph Perfetta.

Reduces the number of movw/movt instructions generated in ProbeTable. It
improves code size for CompileCallMegamorphic by about 10%.

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/4220004/show

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

13 years agoClear JS function result caches in all global contexts.
vegorov@chromium.org [Fri, 29 Oct 2010 08:13:19 +0000 (08:13 +0000)]
Clear JS function result caches in all global contexts.

Original patch by Mark Lam <mark.lam@palm.com> from Hewlett-Packard Development Company, LP. (http://codereview.chromium.org/4187007)

Fix memory corruption in JSFunctionResultCache::Clear caused by out of bounds writes which was revealed by the patch.

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

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

13 years agoFix some memory leaks in the serialization tests.
erik.corry@gmail.com [Fri, 29 Oct 2010 07:10:41 +0000 (07:10 +0000)]
Fix some memory leaks in the serialization tests.
Review URL: http://codereview.chromium.org/4095009

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

13 years agoStop running some liveedit tests (see issue 915).
erik.corry@gmail.com [Fri, 29 Oct 2010 07:10:14 +0000 (07:10 +0000)]
Stop running some liveedit tests (see issue 915).
Plug tiny memory leaks in test-lock.cc.
Review URL: http://codereview.chromium.org/4161005

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

13 years agoLanding for Justin Schuh.
ager@chromium.org [Fri, 29 Oct 2010 06:15:34 +0000 (06:15 +0000)]
Landing for Justin Schuh.

This switches out the existing constant splitting with masking that works like this:

1. Generate a random 32-bit value at compilation time.
2. XOR the 32-bit constant with the random value.
3. Emit the resulting immediate value along with the XOR operation to generate the original value.

BUG=http://code.google.com/p/v8/issues/detail?id=908

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

13 years agoll_prof: minor fixes to the issues found while running with chromium.
vitalyr@chromium.org [Thu, 28 Oct 2010 16:48:10 +0000 (16:48 +0000)]
ll_prof: minor fixes to the issues found while running with chromium.

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

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

13 years agoRemove the patching of the debug break stub
sgjesse@chromium.org [Thu, 28 Oct 2010 11:50:50 +0000 (11:50 +0000)]
Remove the patching of the debug break stub

This is no longer required to break at the function entry. Actually has not been required since the inlined stack check was introduced long time ago.
Review URL: http://codereview.chromium.org/4106005

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

13 years agoAdd gc() calls to some tests to please valgrind.
erik.corry@gmail.com [Thu, 28 Oct 2010 08:43:47 +0000 (08:43 +0000)]
Add gc() calls to some tests to please valgrind.
Review URL: http://codereview.chromium.org/4116005

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

13 years agoLanding for Rodolph Perfetta.
ager@chromium.org [Thu, 28 Oct 2010 07:35:07 +0000 (07:35 +0000)]
Landing for Rodolph Perfetta.

Fix the ARM simulator, the ARM disassembler and extend the stop feature.
The stop feature in the simulator now support enabling, disabling and
counting.

BUG=None
TEST=None

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

13 years agoFix the last USE_SIMULATOR mips issue introduced with my last arm
ager@chromium.org [Thu, 28 Oct 2010 07:33:51 +0000 (07:33 +0000)]
Fix the last USE_SIMULATOR mips issue introduced with my last arm
simulator change.

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

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

13 years agoFix reporting of impossible nested calls of DOM functions.
mikhail.naganov@gmail.com [Wed, 27 Oct 2010 17:03:01 +0000 (17:03 +0000)]
Fix reporting of impossible nested calls of DOM functions.

It turns out that having PC pointing _exactly_ at callback entry
point is quite probable.

BUG=crbug/60753

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

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

13 years agoProfiler on linux: use SA_RESTART signal flag to have most of the syscalls restarted...
vitalyr@chromium.org [Wed, 27 Oct 2010 12:45:46 +0000 (12:45 +0000)]
Profiler on linux: use SA_RESTART signal flag to have most of the syscalls restarted for us.

This change keeps the interactive shell alive.

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

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

13 years agoMake Parser class have no friends and fewer things to depend on it.
lrn@chromium.org [Wed, 27 Oct 2010 12:33:48 +0000 (12:33 +0000)]
Make Parser class have no friends and fewer things to depend on it.

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

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

13 years agoFix a bug that prevents constants from overwriting function values in object literals.
karlklose@chromium.org [Wed, 27 Oct 2010 11:37:59 +0000 (11:37 +0000)]
Fix a bug that prevents constants from overwriting function values in object literals.
BUG=http://code.google.com/p/v8/issues/detail?id=907

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

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

13 years agoSeparate JSON parsing from the JavaScript parser.
lrn@chromium.org [Wed, 27 Oct 2010 09:19:43 +0000 (09:19 +0000)]
Separate JSON parsing from the JavaScript parser.
Switch JSON parsing to creating the value directly instead of createing
code to create the value.

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

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

13 years agoPrepare push to trunk. Now working on version 2.5.3.
lrn@chromium.org [Wed, 27 Oct 2010 08:09:34 +0000 (08:09 +0000)]
Prepare push to trunk. Now working on version 2.5.3.

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

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

13 years agoFaster ascii string case conversion.
vitalyr@chromium.org [Tue, 26 Oct 2010 18:14:45 +0000 (18:14 +0000)]
Faster ascii string case conversion.

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

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