platform/upstream/v8.git
13 years agoRemove TLS load in regexp code.
vitalyr@chromium.org [Fri, 5 Aug 2011 12:31:37 +0000 (12:31 +0000)]
Remove TLS load in regexp code.

Spotted while reviewing Yang's patch.

R=yangguo@chromium.org

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

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

13 years agoAdd lost -O3 flag when building inside Chromium
jkummerow@chromium.org [Fri, 5 Aug 2011 12:05:23 +0000 (12:05 +0000)]
Add lost -O3 flag when building inside Chromium

TEST=WebKit layout tests no longer timeout

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

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

13 years agoFix DebugEvaluate crash within a catch in a function without local context.
keuchel@chromium.org [Fri, 5 Aug 2011 12:00:57 +0000 (12:00 +0000)]
Fix DebugEvaluate crash within a catch in a function without local context.

BUG=v8:1586
TEST=mjsunit/regress/regress-1586.js

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

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

13 years agoStatic state cleanup: add more consts.
vitalyr@chromium.org [Fri, 5 Aug 2011 11:32:46 +0000 (11:32 +0000)]
Static state cleanup: add more consts.

R=vegorov@chromium.org

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

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

13 years agoFix bug in scanner.
lrn@chromium.org [Fri, 5 Aug 2011 11:21:04 +0000 (11:21 +0000)]
Fix bug in scanner.
Checking for end-of-comment truncated to byte before comparing to '*'.

BUG=v8:1546
TEST=mjsunit/regress/regress-1546

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

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

13 years agoSpecify stack size for win64 when linking d8.
yangguo@chromium.org [Fri, 5 Aug 2011 10:00:35 +0000 (10:00 +0000)]
Specify stack size for win64 when linking d8.

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

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

13 years agoMake GYP build usable for day-to-day work (second attempt)
jkummerow@chromium.org [Fri, 5 Aug 2011 09:44:30 +0000 (09:44 +0000)]
Make GYP build usable for day-to-day work (second attempt)

- Introduce a global Makefile that triggers GYP-based building
- Some fixes to .gyp[i] files to make everything work
- tools/test-wrapper-gypbuild.py as a temporary solution for easy testing

Original review URL: http://codereview.chromium.org/7383006/

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

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

13 years agoRevert "Fix a bug in scope analysis."
kmillikin@chromium.org [Fri, 5 Aug 2011 09:20:08 +0000 (09:20 +0000)]
Revert "Fix a bug in scope analysis."

This reverts commit revision 8838.

TBR=ricow@chromium.org
BUG=
TEST=

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

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

13 years agoFix a bug in scope analysis.
kmillikin@chromium.org [Fri, 5 Aug 2011 08:28:11 +0000 (08:28 +0000)]
Fix a bug in scope analysis.

When recompiling code (e.g., when optimizing) we could incorrectly hoist
some function expressions.  This leads to incorrect results or a crash.  The
root cause was that functions were not correctly categorized as expression
or declaration at parse time.

This requires some extra hoops to prevent the print name "anonymous" for
functions created by 'new Function' from establishing a binding.

R=vegorov@chromium.org,kasperl@chromium.org
BUG=1583
TEST=regress-1583

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

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

13 years agoFix report printing in test.py script.
mstarzinger@chromium.org [Fri, 5 Aug 2011 08:04:47 +0000 (08:04 +0000)]
Fix report printing in test.py script.

R=ricow@chromium.org

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

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

13 years agoRevert "tighten invariants of HValue::InferRange"
kmillikin@chromium.org [Thu, 4 Aug 2011 16:43:20 +0000 (16:43 +0000)]
Revert "tighten invariants of HValue::InferRange"

This change reportedly causes a slowdown or inifinite loop on ARM.  Revert
pending investigation.

R=vegorov@chromium.org
BUG=
TEST=

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

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

13 years agoMinimize malloc heap allocation on process startup.
vitalyr@chromium.org [Thu, 4 Aug 2011 15:18:18 +0000 (15:18 +0000)]
Minimize malloc heap allocation on process startup.

R=vegorov@chromium.org
BUG=http://b/issue?id=5095592

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

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

13 years agogrokdump: Tiny bugfix and type list update.
vitalyr@chromium.org [Thu, 4 Aug 2011 12:07:43 +0000 (12:07 +0000)]
grokdump: Tiny bugfix and type list update.

R=vegorov@chromium.org

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

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

13 years agoMove element deletion into element handlers
danno@chromium.org [Thu, 4 Aug 2011 11:42:14 +0000 (11:42 +0000)]
Move element deletion into element handlers

BUG=none
TEST=none

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

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

13 years agoAdditional functions to Harmony weak maps API.
mstarzinger@chromium.org [Thu, 4 Aug 2011 11:13:15 +0000 (11:13 +0000)]
Additional functions to Harmony weak maps API.

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

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

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

13 years agoAdd regression test for 91517
danno@chromium.org [Thu, 4 Aug 2011 11:00:32 +0000 (11:00 +0000)]
Add regression test for 91517

R=vegorov@chromium.org
BUG=91517
TEST=regress-91517.js

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

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

13 years agoFix out-of-bounds access in fetching propery names
danno@chromium.org [Thu, 4 Aug 2011 09:23:25 +0000 (09:23 +0000)]
Fix out-of-bounds access in fetching propery names

R=vegorov@chromium.org
BUG=chromium:91517
TEST=none

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

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

13 years agoFix GCMole warning.
mstarzinger@chromium.org [Wed, 3 Aug 2011 15:42:25 +0000 (15:42 +0000)]
Fix GCMole warning.

R=danno@chromium.org

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

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

13 years agoAdd missing bounds check in FixedArray::set for smis
danno@chromium.org [Wed, 3 Aug 2011 13:56:55 +0000 (13:56 +0000)]
Add missing bounds check in FixedArray::set for smis

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

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

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

13 years agoPrototype of mark-and-compact support for Harmony weak maps.
mstarzinger@chromium.org [Wed, 3 Aug 2011 12:48:30 +0000 (12:48 +0000)]
Prototype of mark-and-compact support for Harmony weak maps.

R=vegorov@chromium.org
BUG=v8:1565
TEST=cctest/test-weakmaps

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

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

13 years agoEnsure that the length property of bound functions are actual unique
ricow@chromium.org [Wed, 3 Aug 2011 12:44:17 +0000 (12:44 +0000)]
Ensure that the length property of bound functions are actual unique
for the individually bound functions.

Our existing code will generate a new function on every call to bind,
but it will use the same shared function. When setting the lenght this
will be set on the shared function, i.e., the length of all bound
functions will be that of the last bound function.
Review URL: http://codereview.chromium.org/7475002

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

13 years agoFix performance regression due to elements refactor
danno@chromium.org [Wed, 3 Aug 2011 12:42:04 +0000 (12:42 +0000)]
Fix performance regression due to elements refactor

Consolidate the runtime logic for fetching elements from Objects and JSObjects so that element access in the GetElement cases that are not handled in generated code.

R=svenpanne@chromium.org
BUG=none
TEST=closure.js test faster

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

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

13 years agoFix presubmit error.
mstarzinger@chromium.org [Wed, 3 Aug 2011 12:23:55 +0000 (12:23 +0000)]
Fix presubmit error.

TBR=svenpanne@chromium.org

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

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

13 years agoPreliminary Harmony weak maps API implementation.
mstarzinger@chromium.org [Wed, 3 Aug 2011 11:55:13 +0000 (11:55 +0000)]
Preliminary Harmony weak maps API implementation.

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

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

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

13 years agoEncapsulate element handling into a class keyed on ElementsKind
danno@chromium.org [Wed, 3 Aug 2011 11:12:46 +0000 (11:12 +0000)]
Encapsulate element handling into a class keyed on ElementsKind

Advantage is that it's much easier to add new element types (like FAST_SMI_ELEMENTS), and that handling logic for each element kind is (more) consolidated.

Currently, only GetElementsWithReceiver uses the new encapsulation, but the goal is to move much more element functionality into the class incrementally.

BUG=none
TEST=none

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

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

13 years agoPrepare push to trunk. Now working on 3.5.4.
lrn@chromium.org [Wed, 3 Aug 2011 10:56:06 +0000 (10:56 +0000)]
Prepare push to trunk. Now working on 3.5.4.

R=ricow@chromium.org

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

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

13 years agotighten invariants of HValue::InferRange
kmillikin@chromium.org [Wed, 3 Aug 2011 10:44:20 +0000 (10:44 +0000)]
tighten invariants of HValue::InferRange

* src/hydrogen-instructions.cc (HValue::InferRange): Only mark values
  with int32 representation as never being -0.  Always return a non-NULL
  value; callers should check for representation().IsNone() if that's
  their concern.

  In practice these invariants were not violated by callers, but they
  were sometimes two calls away, which seems brittle.

BUG=
TEST=tests pass, modulo http://code.google.com/p/v8/issues/detail?id=1572

Review URL: http://codereview.chromium.org/7514040
Patch from Andy Wingo <wingo@igalia.com>.

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

13 years agoCheck phi uses of the arguments object after redundant phies elimination.
vegorov@chromium.org [Wed, 3 Aug 2011 10:40:03 +0000 (10:40 +0000)]
Check phi uses of the arguments object after redundant phies elimination.

This allows to handle code like:

var a = arguments;
while (smth) a[i];

without bailout.

R=kmillikin@chromium.org

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

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

13 years agoMIPS: port Fix ClassOf check on ARM.
danno@chromium.org [Wed, 3 Aug 2011 10:11:09 +0000 (10:11 +0000)]
MIPS: port Fix ClassOf check on ARM.

Ported r8713 (6bdadc4)

BUG=
TEST=

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

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

13 years agoMIPS: port Ensure that GenerateStoreFastDoubleElement returns stored value on all...
danno@chromium.org [Wed, 3 Aug 2011 10:07:34 +0000 (10:07 +0000)]
MIPS: port Ensure that GenerateStoreFastDoubleElement returns stored value on all paths.

Ported r8781 (ca7888b)

BUG=
TEST=

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

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

13 years agoRevert "Make window.{undefined,NaN,Infinity} read-only"
jkummerow@chromium.org [Wed, 3 Aug 2011 09:53:14 +0000 (09:53 +0000)]
Revert "Make window.{undefined,NaN,Infinity} read-only"

This reverts r8766.

TEST=WebKit LayoutTests green again.

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

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

13 years agoRevert "Revert "Fix a bug in scope analysis.""
kmillikin@chromium.org [Wed, 3 Aug 2011 09:10:35 +0000 (09:10 +0000)]
Revert "Revert "Fix a bug in scope analysis.""

Reapply r8783 with an additional fix.

Because the preparser and parser do not use the same scope analysis to
determine if a function can be lazily compiled, the parser can have false
positives.  Rather than treating this as a parse error, treat the preparser
as authoritative and eagerly compile the function.

R=lrn@chromium.org
BUG=
TEST=

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

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

13 years agoFix ContextDeserialization and PartialDeserialization tests.
vegorov@chromium.org [Tue, 2 Aug 2011 17:43:32 +0000 (17:43 +0000)]
Fix ContextDeserialization and PartialDeserialization tests.

Space should be reserved twice before each deserialization.

R=erik.corry@gmail.com

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

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

13 years agoRevert "Fix a bug in scope analysis."
kmillikin@chromium.org [Tue, 2 Aug 2011 17:02:24 +0000 (17:02 +0000)]
Revert "Fix a bug in scope analysis."

This reverts r8783.

R=vegorov@chromium.org
BUG=
TEST=

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

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

13 years agoDon't use mprotect on Cygwin as virtual memory is managed directly via WinAPI calls.
vegorov@chromium.org [Tue, 2 Aug 2011 16:16:32 +0000 (16:16 +0000)]
Don't use mprotect on Cygwin as virtual memory is managed directly via WinAPI calls.

Patch by Bert Belder.

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

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

13 years agoAvoid uninitialized member warning on gcc 4.3.4
vegorov@chromium.org [Tue, 2 Aug 2011 16:02:33 +0000 (16:02 +0000)]
Avoid uninitialized member warning on gcc 4.3.4

Patch by Bert Belder.

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

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

13 years agoFixed code generation for LBranch on ARM when the operand's representation is double.
svenpanne@chromium.org [Tue, 2 Aug 2011 15:14:12 +0000 (15:14 +0000)]
Fixed code generation for LBranch on ARM when the operand's representation is double.

The condition code for branching on the result of vcmp was wrong, effectively
swapping the true/false branches.

TEST=regress-lbranch-double.js
Review URL: http://codereview.chromium.org/7553010

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

13 years agoFix a bug in scope analysis.
kmillikin@chromium.org [Tue, 2 Aug 2011 15:04:31 +0000 (15:04 +0000)]
Fix a bug in scope analysis.

Function declarations inside catch are hoisted to the nearest enclosing
function scope, but we compiled their bodies as if occurring inside the
catch scope.

BUG=chrome:91120
TEST=regress/regress-91120 attached

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

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

13 years agoProperly handle FixedDoubleArrays in sort()
danno@chromium.org [Tue, 2 Aug 2011 14:05:11 +0000 (14:05 +0000)]
Properly handle FixedDoubleArrays in sort()

R=jkummerow@chromium.org
BUG=91008
TEST=regress-91008.js

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

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

13 years agoEnsure that GenerateStoreFastDoubleElement returns stored value on all paths.
vegorov@chromium.org [Tue, 2 Aug 2011 13:36:38 +0000 (13:36 +0000)]
Ensure that GenerateStoreFastDoubleElement returns stored value on all paths.

BUG=chromium:91013
TEST=test/mjsunit/regress/regress-91013.js
Review URL: http://codereview.chromium.org/7551009

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

13 years agoMark optimized modulo and memcpy code pages -w after writing them.
vegorov@chromium.org [Tue, 2 Aug 2011 13:34:52 +0000 (13:34 +0000)]
Mark optimized modulo and memcpy code pages -w after writing them.

BUG=91245

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

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

13 years agoCheck for phi-uses of arguments object before eliminating dead phi's.
vegorov@chromium.org [Tue, 2 Aug 2011 09:32:28 +0000 (09:32 +0000)]
Check for phi-uses of arguments object before eliminating dead phi's.

HGraphBuilder::TryArgumentsAccess does not emit any uses for receiver and will generate incorrect code when receiver for a property access is defined by a phi that returns either arguments object or something else.

BUG=v8:1582
TEST=test/mjsunit/regress/regress-1582.js
Review URL: http://codereview.chromium.org/7553006

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

13 years agoProperly handle FastDoubleArrays in Runtime_MoveArrayContents
danno@chromium.org [Tue, 2 Aug 2011 09:28:55 +0000 (09:28 +0000)]
Properly handle FastDoubleArrays in Runtime_MoveArrayContents

BUG=91013
TEST=regress91013.js

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

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

13 years agoFixed: regression in issue 1579 concerning readline() in d8.
yangguo@chromium.org [Mon, 1 Aug 2011 14:15:02 +0000 (14:15 +0000)]
Fixed: regression in issue 1579 concerning readline() in d8.
BUG=v8:1579

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

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

13 years agoTiny cleanup.
svenpanne@chromium.org [Mon, 1 Aug 2011 13:35:11 +0000 (13:35 +0000)]
Tiny cleanup.
Review URL: http://codereview.chromium.org/7541020

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

13 years agoImplement type recording for ToBoolean on x64.
svenpanne@chromium.org [Mon, 1 Aug 2011 12:53:24 +0000 (12:53 +0000)]
Implement type recording for ToBoolean on x64.

Handle oddballs on ia32 via root indices, similar to other platforms. Added a
special case for Smi types on ia32 to make lithium code generation on both Intel
platforms more similar.
Review URL: http://codereview.chromium.org/7544012

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

13 years agoMake window.{undefined,NaN,Infinity} read-only
jkummerow@chromium.org [Mon, 1 Aug 2011 12:18:03 +0000 (12:18 +0000)]
Make window.{undefined,NaN,Infinity} read-only

as per ES5.

BUG=89490
TEST=es5conform 15.1.*, 15.2.3.*; mjsunit/undeletable-functions

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

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

13 years agoPrepare push to trunk. Now working on 3.5.3.
vegorov@chromium.org [Mon, 1 Aug 2011 11:10:33 +0000 (11:10 +0000)]
Prepare push to trunk. Now working on 3.5.3.
Review URL: http://codereview.chromium.org/7538017

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

13 years agoString to ascii char array converter for debug mode.
yangguo@chromium.org [Fri, 29 Jul 2011 09:49:40 +0000 (09:49 +0000)]
String to ascii char array converter for debug mode.

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

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

13 years agoRevert r8753.
fschneider@chromium.org [Fri, 29 Jul 2011 09:14:00 +0000 (09:14 +0000)]
Revert r8753.

It caused a regressions in compile time in the optimizing compiler. I'm reverting until
the reason for this is identified and fixed.

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

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

13 years agoReintroduced dictionary that can use objects as keys.
mstarzinger@chromium.org [Thu, 28 Jul 2011 17:21:22 +0000 (17:21 +0000)]
Reintroduced dictionary that can use objects as keys.

R=vitalyr@chromium.org
TEST=cctest/test-dictionary

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

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

13 years agoOptimization: Do not assign an environment to LBranch when are sure that we will...
svenpanne@chromium.org [Thu, 28 Jul 2011 14:56:08 +0000 (14:56 +0000)]
Optimization: Do not assign an environment to LBranch when are sure that we will never deopt later.
Review URL: http://codereview.chromium.org/7524025

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

13 years agoTiny cleanup of LCodeGen::DoBranch.
svenpanne@chromium.org [Thu, 28 Jul 2011 14:31:16 +0000 (14:31 +0000)]
Tiny cleanup of LCodeGen::DoBranch.
Review URL: http://codereview.chromium.org/7482044

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

13 years agoUse type info for the ToBoolean translation in crankshaft.
svenpanne@chromium.org [Thu, 28 Jul 2011 13:33:51 +0000 (13:33 +0000)]
Use type info for the ToBoolean translation in crankshaft.

To do this, the Branch instruction needs to carry around a temporary register,
but only when the crankshafted code will make a map access. When the
crankshafted code sees an object of a type it hasn't encountered before, it will
always trigger a deopt. Another option in theses cases would be calling a
ToBooleanStub which can handle all types, but then one has to be careful to
*not* trigger a GC (which is currently a bit tricky to achieve).

Const-corrected ToBoolean::Types. Moved the NeedsMap logic into ToBoolean::Types
itself, where it belongs.

This patch improves a lot of benchmarks, crypto-orig even by 16.7%, but slows
down others. The slowdown has to be investigated, but I'd like to get this patch
out first to fix the flakiness problems we currently have due to the previous
crankshafted ToBoolean.
Review URL: http://codereview.chromium.org/7461107

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

13 years agoFix win64 debug mode compilation
ricow@chromium.org [Thu, 28 Jul 2011 12:34:37 +0000 (12:34 +0000)]
Fix win64 debug mode compilation
Review URL: http://codereview.chromium.org/7482042

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

13 years agoFix calculation of 'scope_calls_eval' when 'eval' is within a nested catch.
keuchel@chromium.org [Thu, 28 Jul 2011 12:17:36 +0000 (12:17 +0000)]
Fix calculation of 'scope_calls_eval' when 'eval' is within a nested catch.

BUG=
TEST=mjsunit/scope-calls-eval.js

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

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

13 years agoAdd tracing of the stack height to full code generator.
whesse@chromium.org [Thu, 28 Jul 2011 10:17:41 +0000 (10:17 +0000)]
Add tracing of the stack height to full code generator.

BUG=
TEST=

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

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

13 years agoFix presubmit error.
fschneider@chromium.org [Thu, 28 Jul 2011 09:34:14 +0000 (09:34 +0000)]
Fix presubmit error.

TBR=ricow@chromium.org
Review URL: http://codereview.chromium.org/7523025

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

13 years agoSimplifications and cleanup of range analysis code.
fschneider@chromium.org [Thu, 28 Jul 2011 09:19:57 +0000 (09:19 +0000)]
Simplifications and cleanup of range analysis code.

Landing two patches contributed by Andy Wingo:

http://codereview.chromium.org/7514040/ and

http://codereview.chromium.org/7516001/
Review URL: http://codereview.chromium.org/7520022

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

13 years agoPrepare push to trunk. Now working on 3.5.2.
ricow@chromium.org [Thu, 28 Jul 2011 07:31:21 +0000 (07:31 +0000)]
Prepare push to trunk. Now working on 3.5.2.
Review URL: http://codereview.chromium.org/7522015

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

13 years agoRe-activate unboxed double arrays by default.
danno@chromium.org [Wed, 27 Jul 2011 15:29:02 +0000 (15:29 +0000)]
Re-activate unboxed double arrays by default.

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

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

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

13 years agoFix FixedDoubleArray crashes in chromebot
danno@chromium.org [Wed, 27 Jul 2011 15:08:50 +0000 (15:08 +0000)]
Fix FixedDoubleArray crashes in chromebot

R=ricow@chromium.org
BUG=non
TEST=running urls from reliability bots

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

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

13 years agoRecord safepoint at calls ToBooleanStub.
fschneider@chromium.org [Wed, 27 Jul 2011 14:56:36 +0000 (14:56 +0000)]
Record safepoint at calls ToBooleanStub.

This fixes the issues when GC happens when invoking
ToBooleanStub.
Review URL: http://codereview.chromium.org/7465066

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

13 years agoEnsure that a string is flattened when entering JsonParser::ParseJson. Fixes issue...
whesse@chromium.org [Wed, 27 Jul 2011 14:34:59 +0000 (14:34 +0000)]
Ensure that a string is flattened when entering JsonParser::ParseJson.  Fixes issue v8:1572.

BUG=v8:1572
TEST=mjsunit/regress/regress-crbug-l84186.js

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

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

13 years agoAllow GVN to separately optimize FastDoubleArrays
danno@chromium.org [Tue, 26 Jul 2011 16:31:11 +0000 (16:31 +0000)]
Allow GVN to separately optimize FastDoubleArrays

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

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

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

13 years agoImprove fast to slow elements conversion:
vitalyr@chromium.org [Tue, 26 Jul 2011 13:56:21 +0000 (13:56 +0000)]
Improve fast to slow elements conversion:

o Use a more strict limit for old arrays.

o Initial capacity of a slow elements dictionary should be the number
  of used elements and not the old array capacity.

R=danno@chromium.org

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

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

13 years agoFix presubmit error.
fschneider@chromium.org [Tue, 26 Jul 2011 10:24:14 +0000 (10:24 +0000)]
Fix presubmit error.

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

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

13 years agoLanding http://codereview.chromium.org/7514005/
fschneider@chromium.org [Tue, 26 Jul 2011 10:12:37 +0000 (10:12 +0000)]
Landing http://codereview.chromium.org/7514005/

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

13 years agoFixed win64 compiler warnings for D8 (static type casting).
yangguo@chromium.org [Tue, 26 Jul 2011 08:15:49 +0000 (08:15 +0000)]
Fixed win64 compiler warnings for D8 (static type casting).

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

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

13 years agoUpdate oom_dump README to indicate that people should build the correct V8 version.
ricow@chromium.org [Tue, 26 Jul 2011 06:03:36 +0000 (06:03 +0000)]
Update oom_dump README to indicate that people should build the correct V8 version.
Review URL: http://codereview.chromium.org/7198021

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

13 years agoSwitch from sample shell to d8 for unit test
ricow@chromium.org [Tue, 26 Jul 2011 05:56:45 +0000 (05:56 +0000)]
Switch from sample shell to d8 for unit test

Landing for yangguo to coordinate with buildbot update.

Original codereview: http://codereview.chromium.org/7282008/
Review URL: http://codereview.chromium.org/7495033

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

13 years agoremove dead code in fast double elements
danno@chromium.org [Mon, 25 Jul 2011 15:43:41 +0000 (15:43 +0000)]
remove dead code in fast double elements

* src/x64/lithium-codegen-x64.cc (DoLoadKeyedFastDoubleElement)
  (DoStoreKeyedFastDoubleElement): Remove set but unused variables.

BUG=
TEST=Fixes a build with gcc-4.6.

Review URL: http://codereview.chromium.org/7491041
Patch from Andy Wingo <wingo@igalia.com>.

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

13 years agoFix: FunctionTemplate::SetPrototypeAttributes broke prototype object
jkummerow@chromium.org [Mon, 25 Jul 2011 15:01:45 +0000 (15:01 +0000)]
Fix: FunctionTemplate::SetPrototypeAttributes broke prototype object

BUG=v8:1539
TEST=cctest test-api/SetPrototypeAttributes

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

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

13 years agoRecord ToBoolean's type information in Hydrogen's HBranch instruction, so we can...
svenpanne@chromium.org [Mon, 25 Jul 2011 14:08:36 +0000 (14:08 +0000)]
Record ToBoolean's type information in Hydrogen's HBranch instruction, so we can use it in LCodeGen::DoBranch later.
Review URL: http://codereview.chromium.org/7491043

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

13 years agoBetter range information for logical shift right >>>.
fschneider@chromium.org [Mon, 25 Jul 2011 13:28:35 +0000 (13:28 +0000)]
Better range information for logical shift right >>>.

If the input range is positive and the shift count is constant
we can replace >>> with >> to compute the output range.

For negative inputs, we can only compute a range if the
result always fits into a signed int32.

BUG=v8:1510
Review URL: http://codereview.chromium.org/7489043

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

13 years agoPrepare push to trunk. Now working on 3.5.1.
ricow@chromium.org [Mon, 25 Jul 2011 10:51:46 +0000 (10:51 +0000)]
Prepare push to trunk. Now working on 3.5.1.
Review URL: http://codereview.chromium.org/7493055

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

13 years agoRevert r8719 - Enable unboxed double arrays by default.
ricow@chromium.org [Mon, 25 Jul 2011 10:24:14 +0000 (10:24 +0000)]
Revert r8719 - Enable unboxed double arrays by default.

It causes relibility bot crashes
Review URL: http://codereview.chromium.org/7461061

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

13 years agoRemoved forgotten debugging code.
svenpanne@chromium.org [Mon, 25 Jul 2011 07:49:36 +0000 (07:49 +0000)]
Removed forgotten debugging code.
Review URL: http://codereview.chromium.org/7492042

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

13 years agoFix compilation error in ia32 platform valgrind tests. Error was introduced in r8721.
whesse@chromium.org [Mon, 25 Jul 2011 06:58:54 +0000 (06:58 +0000)]
Fix compilation error in ia32 platform valgrind tests.  Error was introduced in r8721.
Review URL: http://codereview.chromium.org/7495025

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

13 years agov8: Move DeleteEmpty test to test-list.cc
mikhail.naganov@gmail.com [Sun, 24 Jul 2011 17:59:59 +0000 (17:59 +0000)]
v8: Move DeleteEmpty test to test-list.cc

BUG=None
TEST=None

Signed-off-by: Thiago Farina <tfarina@chromium.org>
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8728 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix bug in ARM pixel array clamping
danno@chromium.org [Fri, 22 Jul 2011 16:01:53 +0000 (16:01 +0000)]
Fix bug in ARM pixel array clamping

Properly handle undefined conversion to zero in Crankshaft.

R=yangguo@chromium.org
BUG=none
TEST=regress-1563.js

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

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

13 years agoDo not explicitly record undetectable objects in the ToBoolean stub.
svenpanne@chromium.org [Fri, 22 Jul 2011 12:42:40 +0000 (12:42 +0000)]
Do not explicitly record undetectable objects in the ToBoolean stub.

Loading the map within the stub already implies a check for an undetectable
object, so there is no need to record this separately. Furthermore, this brings
the size of the type info to record down to 8 bits, removing the need to find a
place for the ninth bit in the Code object. ;-)
Review URL: http://codereview.chromium.org/7484022

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

13 years agoUpdate valgrind.h. Codereview http://codereview.chromium.org/7468002
whesse@chromium.org [Fri, 22 Jul 2011 11:22:29 +0000 (11:22 +0000)]
Update valgrind.h.  Codereview codereview.chromium.org/7468002

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

13 years agoFinally, remove logging to memory support.
mikhail.naganov@gmail.com [Fri, 22 Jul 2011 09:59:45 +0000 (09:59 +0000)]
Finally, remove logging to memory support.

Since r93412, Chromium no more passes "--logfile=*" to V8.

R=danno@chromium.org
BUG=859

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

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

13 years agoEnable unboxed double arrays by default.
danno@chromium.org [Fri, 22 Jul 2011 09:48:54 +0000 (09:48 +0000)]
Enable unboxed double arrays by default.

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

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

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

13 years agoRemaining changes to fully support FastDoubleArray.
danno@chromium.org [Fri, 22 Jul 2011 09:04:16 +0000 (09:04 +0000)]
Remaining changes to fully support FastDoubleArray.

R=ager@chromium.org
BUG=none
TEST=cctests, unboxed-double-array.js

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

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

13 years agoFixed an off-by-one error in SplitConstantsInFullCompiler test.
svenpanne@chromium.org [Fri, 22 Jul 2011 09:03:55 +0000 (09:03 +0000)]
Fixed an off-by-one error in SplitConstantsInFullCompiler test.

The test tried to disassemble the last entry in a constant pool, which only
worked by accident until address randomization was introduced.
Review URL: http://codereview.chromium.org/7489005

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

13 years agoImplement a type recording ToBoolean IC.
svenpanne@chromium.org [Thu, 21 Jul 2011 13:51:04 +0000 (13:51 +0000)]
Implement a type recording ToBoolean IC.

The IC records the set of types it has seen, e.g. {String} or {Boolean,
Undefined}, etc.  Note that in theory this could lead to a large number of
different ToBoolean ICs (512, to be exact, because we distinguish 9 types),
but in practice only a small handful of them are actually generated.

Currently the type recording part is only implemented on ia32, other platforms
continue to work like they did before, though.

Removed some dead code on the way.
Review URL: http://codereview.chromium.org/7473028

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

13 years agoIntroduce a poor man's version of STL's bitset.
svenpanne@chromium.org [Thu, 21 Jul 2011 13:06:55 +0000 (13:06 +0000)]
Introduce a poor man's version of STL's bitset.

Used in a separate upcoming patch...
Review URL: http://codereview.chromium.org/7472029

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

13 years agoFix ClassOf check on ARM.
rossberg@chromium.org [Thu, 21 Jul 2011 12:39:35 +0000 (12:39 +0000)]
Fix ClassOf check on ARM.

R=ager@chromium.org
BUG=
TEST=

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

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

13 years agoFix deopts caused by misplaced COW checks.
jkummerow@chromium.org [Thu, 21 Jul 2011 12:01:51 +0000 (12:01 +0000)]
Fix deopts caused by misplaced COW checks.

TEST=Performance of pixel-array-blur back to normal.

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

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

13 years agoMake proxy fixing GC safe.
rossberg@chromium.org [Thu, 21 Jul 2011 11:28:18 +0000 (11:28 +0000)]
Make proxy fixing GC safe.

R=vegorov@chromium.org
BUG=
TEST=

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

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

13 years agoImplement Object.prototype.{hasOwnProperty, propertyIsEnumerable} for proxies.
rossberg@chromium.org [Thu, 21 Jul 2011 11:20:27 +0000 (11:20 +0000)]
Implement Object.prototype.{hasOwnProperty, propertyIsEnumerable} for proxies.
Refactor trap invocation.
Test other Object.prototype functionality for proxies.

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

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

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

13 years agoRe-apply: Implement mapping randomization for 64-bit Linux.
ager@chromium.org [Thu, 21 Jul 2011 11:01:50 +0000 (11:01 +0000)]
Re-apply: Implement mapping randomization for 64-bit Linux.

- 32-bit Linux already seems to scatter the mmap() chunks around;
  64-bit didn't.

- Seed the system random number generator a little better (we needlessly trunctaed microsecond resolution to millisecond resolution).

- Will automatically take advantage of better entropy when V8::RandomPrivate uses it.

R=fschneider@chromium.org,cevans@chromium.org
BUG=v8:805
TEST=

Review URL: http://codereview.chromium.org/7464022
Patch from Chris Evans <cevans@chromium.org>.

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

13 years agoFix overlap check in MoveBlock and fix assertion.
ager@chromium.org [Thu, 21 Jul 2011 10:51:06 +0000 (10:51 +0000)]
Fix overlap check in MoveBlock and fix assertion.

The old code was adding a size in words to a byte*. Should use size in
bytes. Also, the assertions were doing signed comparisons on pointers
instead of unsigned. Fixing the assertions makes one of the assertions
identical to the condition just before it.

R=fschneider@chromium.org
BUG=
TEST=

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

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

13 years agoRevert "Implement mapping randomization for 64-bit Linux."
ager@chromium.org [Thu, 21 Jul 2011 08:36:58 +0000 (08:36 +0000)]
Revert "Implement mapping randomization for 64-bit Linux."

Causes sputnik test failures.

R=cevans@chromium.org
BUG=
TEST=

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

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

13 years agoImplement mapping randomization for 64-bit Linux. Notes:
ager@chromium.org [Thu, 21 Jul 2011 07:52:54 +0000 (07:52 +0000)]
Implement mapping randomization for 64-bit Linux. Notes:
- 32-bit Linux already seems to scatter the mmap() chunks around; 64-bit didn't.
- Seed the system random number generator a little better (we needlessly
trunctaed microsecond resolution to millisecond resolution).
- Will automatically take advantage of better entropy when V8::RandomPrivate
uses it.

BUG=v8:805

Review URL: http://codereview.chromium.org/7377008
Patch from Chris Evans <cevans@chromium.org>.

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

13 years agoICU 4.6 NumberFormat::EStyle enum is gone in ICU 4.8. Adding #if #else to make it...
cira@chromium.org [Wed, 20 Jul 2011 17:46:56 +0000 (17:46 +0000)]
ICU 4.6 NumberFormat::EStyle enum is gone in ICU 4.8. Adding #if #else to make it work across versions.

There was an ICU cleanup (removing all C++ style enums and replacing them with plain C enums). NumberFormat::EStyle had a draft status (from ICU 4.2) and it was cut. Confusion came up because DateFormat::EStyle is stable and won't be removed.

TEST=Compile Chromium with ICU 4.6 and ICU 4.8
BUG=1561
Review URL: http://codereview.chromium.org/7421003

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

13 years agoSlightly simplify slow elements conversion check.
vitalyr@chromium.org [Wed, 20 Jul 2011 15:14:50 +0000 (15:14 +0000)]
Slightly simplify slow elements conversion check.

R=danno@chromium.org

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

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

13 years agoAdd fake data dependencies (instead of disabling GVN) to fix code motion
jkummerow@chromium.org [Wed, 20 Jul 2011 14:43:10 +0000 (14:43 +0000)]
Add fake data dependencies (instead of disabling GVN) to fix code motion

for HInstructions used in polymorphic array access code.

TEST=existing tests pass.

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

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