platform/upstream/v8.git
13 years agoExtract platform independent part of RevertStackCheckCode.
karlklose@chromium.org [Wed, 2 Feb 2011 11:58:24 +0000 (11:58 +0000)]
Extract platform independent part of RevertStackCheckCode.

BUG=none
TEST=none

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

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

13 years agoARM: Refactor duplicated floating point code in type recording binary operation stub.
sgjesse@chromium.org [Wed, 2 Feb 2011 10:30:41 +0000 (10:30 +0000)]
ARM: Refactor duplicated floating point code in type recording binary operation stub.
Review URL: http://codereview.chromium.org/6334045

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

13 years agoRequire typed input representation for HTypeof hydrogen instruction.
vegorov@chromium.org [Wed, 2 Feb 2011 09:52:57 +0000 (09:52 +0000)]
Require typed input representation for HTypeof hydrogen instruction.

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

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

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

13 years agoThis fixes the issue with the deoptimizer trashing the reloc info before patching...
ricow@chromium.org [Wed, 2 Feb 2011 09:40:09 +0000 (09:40 +0000)]
This fixes the issue with the deoptimizer trashing the reloc info before patching the code.

If we, immediately after the deoptimization, but before actually
running the patched code, get a compacting GC, the addresses from the
calls might no longer be valid.

I have validated that this works by patching the existing code to
always do a compacting gc after we finish deoptimizing. I will create
a real regression test for this, but this includes additional code for
allowing us to force a deopt/opt from javascript test code. I will
land this in a seperate change.

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

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

13 years agoRevert revision 6555 as it causes win32 debug to fail.
ricow@chromium.org [Wed, 2 Feb 2011 08:14:06 +0000 (08:14 +0000)]
Revert revision 6555 as it causes win32 debug to fail.

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

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

13 years agoSwitch from template functions overloading to partial template specialization.
vegorov@chromium.org [Tue, 1 Feb 2011 20:47:53 +0000 (20:47 +0000)]
Switch from template functions overloading to partial template specialization.

This should fix compilation on old GCC.

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

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

13 years agoRevert "Fix bugs 992 and 1083"
peterhal@chromium.org [Tue, 1 Feb 2011 20:08:01 +0000 (20:08 +0000)]
Revert "Fix bugs 992 and 1083"

This reverts commit 6561 as the new assert caused failures in sputnik.

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

13 years agoFix bugs 992 and 1083
peterhal@chromium.org [Tue, 1 Feb 2011 17:08:14 +0000 (17:08 +0000)]
Fix bugs 992 and 1083

Fixes JS portion of DefineOwnProperty when there is
an existing property and the new descriptor is generic.

Makes code follow spec steps more closely.

Fixes typo for check for unchanged enumerable in step 6.

Adds regression tests.
Fixes errors in object-define-property test

Don't normalize the JSGlobalProxy. Gets webkit http/tests/security/xss-DENIED-defineProperty.html working.

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

13 years agoARM: Add multiplication and modulus to the type recording binary operation stub.
sgjesse@chromium.org [Tue, 1 Feb 2011 16:38:25 +0000 (16:38 +0000)]
ARM: Add multiplication and modulus to the type recording binary operation stub.

For now the smi part only handles power of two right hand side operands.

Fixed a bug when loading floating point value into core registers with VFP supported.
Review URL: http://codereview.chromium.org/6312059

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

13 years agoFix Xcode project.
mmaly@chromium.org [Tue, 1 Feb 2011 16:20:04 +0000 (16:20 +0000)]
Fix Xcode project.

TBR=ager@chromium.org
Code review URL: http://codereview.chromium.org/6286016/

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

13 years agoFix error message name.
mmaly@chromium.org [Tue, 1 Feb 2011 16:08:44 +0000 (16:08 +0000)]
Fix error message name.

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

13 years agoFix control flow resolution bug in lithium register allocator.
vegorov@chromium.org [Tue, 1 Feb 2011 14:33:23 +0000 (14:33 +0000)]
Fix control flow resolution bug in lithium register allocator.

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

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

13 years agoCompare JSObjects by identity immediately.
antonm@chromium.org [Tue, 1 Feb 2011 13:29:37 +0000 (13:29 +0000)]
Compare JSObjects by identity immediately.

When invoking EQUALS JS builtin, 1st argument is passed as a receiver and
if it's a global object, it gets overwritten with global proxy object and
thus one gets incorrect results.

BUG=v8::1082

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

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

13 years agoTemporary disable comparison of optimizability of code objects in some cases.
antonm@chromium.org [Tue, 1 Feb 2011 12:39:02 +0000 (12:39 +0000)]
Temporary disable comparison of optimizability of code objects in some cases.

With crankshaft, a code object can change its optimizability: it can start as
optimizable code object, but later we can find out it was a bad idea to
optimize it.  Alas, currently we don't have a proper event to communicate
this back to logger.  Hence we temporary allow a code object to be viewed
as optimizable judging from logs while being unoptimizable judging from
heap traversal.

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

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

13 years agoAvoid callbacks to user code during error formatting in a couple of
ager@chromium.org [Tue, 1 Feb 2011 12:31:16 +0000 (12:31 +0000)]
Avoid callbacks to user code during error formatting in a couple of
other situations.

Do not use overwritten Object.prototype.hasOwnProperty and
Array.prototype.pop. Do not use split and join in the error formatting
implementation. They are too big to control and their generality is
not needed.

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

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

13 years agoChange OSR stack check patching to use the stack check table.
karlklose@chromium.org [Tue, 1 Feb 2011 11:18:45 +0000 (11:18 +0000)]
Change OSR stack check patching to use the stack check table.

Change OSR stack check patching to use the stack check table to iterate over the calls to stack guards platform independent. Introduce Deoptimizer::PatchStackCheckAt for each platform to perform the platform specific patch at a given pc.

BUG=none
TEST=none

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

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

13 years agoFix V8 bug 1084: allow "\0" in strict mode as valid escape sequence.
mmaly@chromium.org [Mon, 31 Jan 2011 22:35:27 +0000 (22:35 +0000)]
Fix V8 bug 1084: allow "\0" in strict mode as valid escape sequence.
http://code.google.com/p/v8/issues/detail?id=1084

Code Review URL: http://codereview.chromium.org/6386014/

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

13 years agoArraySplice builtin should return empty array and not alter receiver if invoked with...
antonm@chromium.org [Mon, 31 Jan 2011 14:54:53 +0000 (14:54 +0000)]
ArraySplice builtin should return empty array and not alter receiver if invoked with no arguments.

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

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

13 years agoPerform security checks before fetching the value in Object.getOwnPropertyDescriptor.
antonm@chromium.org [Mon, 31 Jan 2011 13:49:15 +0000 (13:49 +0000)]
Perform security checks before fetching the value in Object.getOwnPropertyDescriptor.

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

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

13 years agoAdd entries for build products of OOM dump utility into .gitignore.
antonm@chromium.org [Mon, 31 Jan 2011 13:33:09 +0000 (13:33 +0000)]
Add entries for build products of OOM dump utility into .gitignore.

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

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

13 years agoFix typo in Changelog, date in version.cc.
whesse@chromium.org [Mon, 31 Jan 2011 12:37:19 +0000 (12:37 +0000)]
Fix typo in Changelog, date in version.cc.
Review URL: http://codereview.chromium.org/6287016

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

13 years agoFix a bug in the placement of minus-zero checks and in GVN.
fschneider@chromium.org [Mon, 31 Jan 2011 12:36:54 +0000 (12:36 +0000)]
Fix a bug in the placement of minus-zero checks and in GVN.

1. The placement of checks for negative zero has to be computed after
all conversion instructions have been inserted. I separated the code
into its own phase.

2. GVN need to take instruction flags into account when comparing
instructions for redundancy.

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

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

13 years agoPrepare push to trunk. Now working on version 3.1.1.
whesse@chromium.org [Mon, 31 Jan 2011 10:25:44 +0000 (10:25 +0000)]
Prepare push to trunk.  Now working on version 3.1.1.
Review URL: http://codereview.chromium.org/6347035

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

13 years agoARM: Add support for DoMathAbs with double inputs.
ager@chromium.org [Mon, 31 Jan 2011 10:16:28 +0000 (10:16 +0000)]
ARM: Add support for DoMathAbs with double inputs.

Adds vabs instruction to simulator, assembler, disassembler and tests.

BUG=none
TEST=Added to cctest.

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

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

13 years agoAdding vendor prefix to Locale class (becoming v8Locale) to minimize risk of future...
ager@chromium.org [Mon, 31 Jan 2011 09:58:12 +0000 (09:58 +0000)]
Adding vendor prefix to Locale class (becoming v8Locale) to minimize risk of future changes.

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

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

13 years agoFix bug in tail call of builtin in the ToNumber stub on ARM.
fschneider@chromium.org [Fri, 28 Jan 2011 17:24:10 +0000 (17:24 +0000)]
Fix bug in tail call of builtin in the ToNumber stub on ARM.

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

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

13 years agoRevert "Add custom typed ICs for pixel array loads. "
kmillikin@chromium.org [Fri, 28 Jan 2011 15:07:04 +0000 (15:07 +0000)]
Revert "Add custom typed ICs for pixel array loads. "

This change caused failures in (out of bounds) keyed loads of strings.

TBR'd.

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

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

13 years agoIntroduce ToNumber stub and use it in non-optimized code for to-number conversion.
fschneider@chromium.org [Fri, 28 Jan 2011 14:18:26 +0000 (14:18 +0000)]
Introduce ToNumber stub and use it in non-optimized code for to-number conversion.

This stub is used for increment/decrement operations and unary plus.
The resulting code is more compact and faster than calling a JS builtin.

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

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

13 years agoAdd custom typed ICs for pixel array loads.
danno@chromium.org [Fri, 28 Jan 2011 14:06:20 +0000 (14:06 +0000)]
Add custom typed ICs for pixel array loads.
Review URL: http://codereview.chromium.org/6323002

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

13 years agoClarify some details of global objects implementation.
antonm@chromium.org [Fri, 28 Jan 2011 13:41:19 +0000 (13:41 +0000)]
Clarify some details of global objects implementation.

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

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

13 years agoAvoid using Function.prototype.call in a number of places in our
ager@chromium.org [Fri, 28 Jan 2011 10:33:10 +0000 (10:33 +0000)]
Avoid using Function.prototype.call in a number of places in our
builtins files. We should always use %_CallFunction for a couple of
reasons: it cannot be overwritten and it does not wrap basic types in
wrapper objects.

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

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

13 years agoPrepare push to trunk. Now working on version 3.1.0.
ager@chromium.org [Fri, 28 Jan 2011 07:55:43 +0000 (07:55 +0000)]
Prepare push to trunk. Now working on version 3.1.0.
Review URL: http://codereview.chromium.org/6286014

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

13 years agoRevert "Unification: introduce ExternalReference::pending_exception_address()."
antonm@chromium.org [Thu, 27 Jan 2011 18:21:07 +0000 (18:21 +0000)]
Revert "Unification: introduce ExternalReference::pending_exception_address()."

This reverts r6518.

TBR=ager@chromium.org

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

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

13 years agoUnification: introduce ExternalReference::pending_exception_address().
antonm@chromium.org [Thu, 27 Jan 2011 18:10:45 +0000 (18:10 +0000)]
Unification: introduce ExternalReference::pending_exception_address().

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

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

13 years agoImplement DoGlobalReceiver and DoCheckFunction lithium instructions on x64
ricow@chromium.org [Thu, 27 Jan 2011 16:41:43 +0000 (16:41 +0000)]
Implement DoGlobalReceiver and DoCheckFunction lithium instructions on x64

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

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

13 years agoDo not set result_ prematurely.
antonm@chromium.org [Thu, 27 Jan 2011 16:17:13 +0000 (16:17 +0000)]
Do not set result_ prematurely.

If ConfigureGlobalObjects below will fail, we still decide that initialidation
went smoothly as we check emptiness of result_ handle to see if initialisation
failed or not.

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

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

13 years agoBetter name for ShouldReturnException which actually should be ShouldReportException.
antonm@chromium.org [Thu, 27 Jan 2011 14:25:37 +0000 (14:25 +0000)]
Better name for ShouldReturnException which actually should be ShouldReportException.

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

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

13 years agoCleanup unused code from the type oracle.
fschneider@chromium.org [Thu, 27 Jan 2011 14:04:07 +0000 (14:04 +0000)]
Cleanup unused code from the type oracle.

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

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

13 years agoFix id for HandleScope::DeleteExtensions and Factory::arguments_marker() in serializer.
vegorov@chromium.org [Thu, 27 Jan 2011 13:17:34 +0000 (13:17 +0000)]
Fix id for HandleScope::DeleteExtensions and Factory::arguments_marker() in serializer.

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

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

13 years agoX64 Crankshaft: Added yet more operations.
lrn@chromium.org [Thu, 27 Jan 2011 13:02:48 +0000 (13:02 +0000)]
X64 Crankshaft: Added yet more operations.

Added operations:
DoStoreGlobal
DoLoadNamedField
DoStoreNamedField
DoCheckPrototypeMaps
DoEnterInlined

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

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

13 years agoFix test expectations from r6509
sgjesse@chromium.org [Thu, 27 Jan 2011 12:31:24 +0000 (12:31 +0000)]
Fix test expectations from r6509
Review URL: http://codereview.chromium.org/6286011

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

13 years agoX64 Crankshaft: Reapply reverted operations with DoLoadGlobal disabled.
lrn@chromium.org [Thu, 27 Jan 2011 11:58:31 +0000 (11:58 +0000)]
X64 Crankshaft: Reapply reverted operations with DoLoadGlobal disabled.

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

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

13 years agoChange an invalid assert
sgjesse@chromium.org [Thu, 27 Jan 2011 11:55:58 +0000 (11:55 +0000)]
Change an invalid assert

BUG=v8:1079
Review URL: http://codereview.chromium.org/6332019

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

13 years agoFix reintroduction of global variables that have been deleted.
ager@chromium.org [Thu, 27 Jan 2011 08:35:39 +0000 (08:35 +0000)]
Fix reintroduction of global variables that have been deleted.

Deletion of global properties puts 'the hole' in the global property
cell and updates the property details in the property dictionary with
the information that the property has been deleted. When setting
global properties that have been deleted in generated code we just
store the new value in the global property cell. This does not update
the property details in the property dictionary. Therefore, it looks
like the property is not there eventhough it was just reintroduced.

Perform 'the hole' checks in generated code for global property stores
and bail out of ICs and optimized code if storing to a property cell
that contains 'the hole'.

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

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

13 years agoARM: Implement DoInstanceOfAndBranch in the lithium code generator.
karlklose@chromium.org [Thu, 27 Jan 2011 03:22:08 +0000 (03:22 +0000)]
ARM: Implement DoInstanceOfAndBranch in the lithium code generator.

BUG=none
TEST=none

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

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

13 years agoARM: Try to fix broken commit r6504
sgjesse@chromium.org [Wed, 26 Jan 2011 21:15:46 +0000 (21:15 +0000)]
ARM: Try to fix broken commit r6504

Commit contained wrong assert and was missing call to the runtime system for MUL.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/6338019

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

13 years agoRefactor recording of safepoints.
karlklose@chromium.org [Wed, 26 Jan 2011 20:48:48 +0000 (20:48 +0000)]
Refactor recording of safepoints.

Refactor SafepointTableBuilder::DefineSafepoint and ARM LCodeGen::RecordSafepoint to use an enum for different kinds of safepoints. This change removes a lot of duplicated code and makes it easier to include new kinds of safepoints in the future. The remaining variants of LCodeGen::RecordSafepoint remain as a convinient way to record common safepoint kinds.

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

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

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

13 years agoARM: Add multiplication to the type recording binary operation stub
sgjesse@chromium.org [Wed, 26 Jan 2011 20:25:33 +0000 (20:25 +0000)]
ARM: Add multiplication to the type recording binary operation stub
Review URL: http://codereview.chromium.org/6391004

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

13 years agoStrict mode eval/arguments LHS.
mmaly@chromium.org [Wed, 26 Jan 2011 19:21:46 +0000 (19:21 +0000)]
Strict mode eval/arguments LHS.

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

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

13 years agoCompress Variable class.
mmaly@chromium.org [Wed, 26 Jan 2011 18:15:43 +0000 (18:15 +0000)]
Compress Variable class.

Link: http://codereview.chromium.org/6246019/
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6502 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoStrict mode: function constructor tests.
mmaly@chromium.org [Wed, 26 Jan 2011 18:10:26 +0000 (18:10 +0000)]
Strict mode: function constructor tests.

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

13 years agoRemove the HInstruction utilities taking flag mask arguments.
kmillikin@chromium.org [Wed, 26 Jan 2011 17:32:02 +0000 (17:32 +0000)]
Remove the HInstruction utilities taking flag mask arguments.

It is a type error to treat a flag (an enum) as if it were a flag mask (an
int derived from shifting a bit by the enum value).  It is error prone to
have functions that take flag mask arguments because they will silently
accept flags.

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

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

13 years agoUse more detailed compilation info for inlined functions.
kmillikin@chromium.org [Wed, 26 Jan 2011 17:30:22 +0000 (17:30 +0000)]
Use more detailed compilation info for inlined functions.

Construct the statically-known compilation info for inlined functions using
the target closure (which knows about its scope chain) and not from the
shared function info (which doesn't).

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

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

13 years agoFix issue 1076 by resetting labels of switch-clauses before use.
fschneider@chromium.org [Wed, 26 Jan 2011 15:28:17 +0000 (15:28 +0000)]
Fix issue 1076 by resetting labels of switch-clauses before use.

If we compile a function literal twice with the full code generator,
we must make sure that the labels embedded in the AST are reset.

BUG=1076

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

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

13 years agoFix another message object leak.
ager@chromium.org [Wed, 26 Jan 2011 15:16:13 +0000 (15:16 +0000)]
Fix another message object leak.

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

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

13 years agoFix indentation.
antonm@chromium.org [Wed, 26 Jan 2011 15:02:02 +0000 (15:02 +0000)]
Fix indentation.

TBR=serya@chromium.org

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

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

13 years agoChange the default implementation of DataEquals for Hydrogen instructions.
kmillikin@chromium.org [Wed, 26 Jan 2011 14:51:21 +0000 (14:51 +0000)]
Change the default implementation of DataEquals for Hydrogen instructions.

The former default was true. The new default is false and the default
implementation is UNREACHABLE so it asserts in debug builds.  The function
is overridden in all concrete instruction classes that might have the flag
kUseGVN set.

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

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

13 years agoX64 Crankshaft: Fix compilation error on Windows X64.
whesse@chromium.org [Wed, 26 Jan 2011 13:54:25 +0000 (13:54 +0000)]
X64 Crankshaft: Fix compilation error on Windows X64.
Review URL: http://codereview.chromium.org/6338018

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

13 years agoClean up Hydrogen's HLoadFunctionPrototype.
kmillikin@chromium.org [Wed, 26 Jan 2011 13:37:51 +0000 (13:37 +0000)]
Clean up Hydrogen's HLoadFunctionPrototype.

This instruction was setting an incorrect collection of Changes/Depends
flags.

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

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

13 years agoARM: Fix the test expectations
sgjesse@chromium.org [Wed, 26 Jan 2011 13:26:36 +0000 (13:26 +0000)]
ARM: Fix the test expectations

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/6253013

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

13 years agoX64 Crankshaft: Remove relative jump to deoptimization code. Fixes logical error...
whesse@chromium.org [Wed, 26 Jan 2011 13:24:19 +0000 (13:24 +0000)]
X64 Crankshaft: Remove relative jump to deoptimization code.  Fixes logical error, and compilation error on Windows.
Review URL: http://codereview.chromium.org/6310018

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

13 years agoARM: Fix the type recording binary operation stub subtract
sgjesse@chromium.org [Wed, 26 Jan 2011 12:31:35 +0000 (12:31 +0000)]
ARM: Fix the type recording binary operation stub subtract

Failure exposed by Sputning tests where the generic case tried to string add for subtract.
Review URL: http://codereview.chromium.org/6339013

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

13 years agoDisable all code motion on the final optimization attempt.
kmillikin@chromium.org [Wed, 26 Jan 2011 10:25:43 +0000 (10:25 +0000)]
Disable all code motion on the final optimization attempt.

Before, we disabled code motion for check instructions on the final
optimization attempt.  It is unsafe to prevent movement of check
instructions but to allow movement of instructions that assume the checks
were performed.

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

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

13 years agoARM: Make the ARM hardware builder green
sgjesse@chromium.org [Wed, 26 Jan 2011 09:52:25 +0000 (09:52 +0000)]
ARM: Make the ARM hardware builder green

Fix a bug in the --debug-code alignment check in the C entry stub.

Don't force the --debug-code flag in the ARM disassembler tests. The framework does support passing flags and the test runner will when running tests in debug mode.

Skip some deserialization tests which crashes from time to time.
Review URL: http://codereview.chromium.org/6393007

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

13 years agoARM: Merging constants in simulator and assembler header files and other cleanup.
ager@chromium.org [Wed, 26 Jan 2011 08:32:54 +0000 (08:32 +0000)]
ARM: Merging constants in simulator and assembler header files and other cleanup.

First stab at a general ARM cleanup patch. It merges ARM constants so that they can be used across simulator, assembler and disassembler, and tidies up some syntax and ambiguities.

BUG=none
TEST=none

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

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

13 years agoMinor cleanup: Use MaybeObject instead of bool and Failure** in
erik.corry@gmail.com [Wed, 26 Jan 2011 08:12:56 +0000 (08:12 +0000)]
Minor cleanup: Use MaybeObject instead of bool and Failure** in
stub cache generation.
Review URL: http://codereview.chromium.org/6392003

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

13 years agoRevert r6543 and r6441.
fschneider@chromium.org [Wed, 26 Jan 2011 08:03:48 +0000 (08:03 +0000)]
Revert r6543 and r6441.

This fixes a crash in the code generator.

BUG=1074

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

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

13 years agoFix presumbit.
sgjesse@chromium.org [Wed, 26 Jan 2011 08:00:51 +0000 (08:00 +0000)]
Fix presumbit.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/6250031

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

13 years agoARM: Change BranchOnSmi/BranchOnNotSmi to JumpIfSmi/JumpIfNotSmi
sgjesse@chromium.org [Wed, 26 Jan 2011 07:44:45 +0000 (07:44 +0000)]
ARM: Change BranchOnSmi/BranchOnNotSmi to JumpIfSmi/JumpIfNotSmi
Review URL: http://codereview.chromium.org/6272019

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

13 years agoARM: Add subtract to the type recording binary operation stub.
sgjesse@chromium.org [Wed, 26 Jan 2011 07:41:02 +0000 (07:41 +0000)]
ARM: Add subtract to the type recording binary operation stub.
Review URL: http://codereview.chromium.org/6324013

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

13 years agoStrict mode object property validation.
mmaly@chromium.org [Tue, 25 Jan 2011 18:42:35 +0000 (18:42 +0000)]
Strict mode object property validation.

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

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

13 years agoStrict mode parameter validation.
mmaly@chromium.org [Tue, 25 Jan 2011 17:21:45 +0000 (17:21 +0000)]
Strict mode parameter validation.

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

13 years agoRevert change 6468: X64 Crankshaft functions added.
whesse@chromium.org [Tue, 25 Jan 2011 16:37:18 +0000 (16:37 +0000)]
Revert change 6468: X64 Crankshaft functions added.
Review URL: http://codereview.chromium.org/6260018

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

13 years agoSupport StringLength in hydrogen (similar to ArrayLength).
vitalyr@chromium.org [Tue, 25 Jan 2011 15:51:10 +0000 (15:51 +0000)]
Support StringLength in hydrogen (similar to ArrayLength).

To avoid deopts a few extra changes were needed:

o Enable megamorphic state for special property loads on
  primitives. We used to flip between monomorphic stubs.
o Extract pure string (no string wrapper support) version of the
  string length stub.

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

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

13 years agoARM: Initial type recording binary operation stub
sgjesse@chromium.org [Tue, 25 Jan 2011 14:52:35 +0000 (14:52 +0000)]
ARM: Initial type recording binary operation stub

This implements the type recording binary operation stub for ARM. This first iteration only supports ADD. Handling of 32-bit integers is currently not implemented but just transitions. The generic case for now delegates to the generic binary operation stub.
Review URL: http://codereview.chromium.org/6342019

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

13 years agoX64 Crankshaft: Added some functions needed for delta-blue.
lrn@chromium.org [Tue, 25 Jan 2011 14:03:20 +0000 (14:03 +0000)]
X64 Crankshaft: Added some functions needed for delta-blue.

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

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

13 years agoPrepare push to trunk. Now working on version 3.0.12.
ager@chromium.org [Tue, 25 Jan 2011 13:59:23 +0000 (13:59 +0000)]
Prepare push to trunk. Now working on version 3.0.12.
Review URL: http://codereview.chromium.org/6324012

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

13 years agoUpdate regression test.
kmillikin@chromium.org [Tue, 25 Jan 2011 13:32:36 +0000 (13:32 +0000)]
Update regression test.

With SVN r6465 (reverting changes to scopes), a regression test for
deleting parameter variables has to change to reflect a semantic
change.  It is now again possible to delete parameters from a function
that uses 'with' or 'try...catch'.

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

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

13 years agoRevert "Reapply change to with/arguments interaction."
kmillikin@chromium.org [Tue, 25 Jan 2011 13:01:45 +0000 (13:01 +0000)]
Revert "Reapply change to with/arguments interaction."

Revert this change again.  Somewhat mysteriously we sometimes get empty
contexts that we do not expect in the context chain.

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

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

13 years agoFixed typo in calling Thread::set_name() on freebsd.
sgjesse@chromium.org [Tue, 25 Jan 2011 12:59:43 +0000 (12:59 +0000)]
Fixed typo in calling Thread::set_name() on freebsd.

Patch by Mark Lam from Hewlett-Packard Development Company, LP

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

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

13 years agoPrepend the tools directory to python module path
sgjesse@chromium.org [Tue, 25 Jan 2011 12:56:04 +0000 (12:56 +0000)]
Prepend the tools directory to python module path

This works around possible collisions with modules installed in the system
python directories.

See Gentoo Linux bug report:
http://bugs.gentoo.org/349794

Patch by Mike Gilbert <floppymaster@gmail.com>

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

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

13 years agoAdd compilation guard to new x64-only file, for Mac platform.
whesse@chromium.org [Tue, 25 Jan 2011 12:50:18 +0000 (12:50 +0000)]
Add compilation guard to new x64-only file, for Mac platform.
Review URL: http://codereview.chromium.org/6249016

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

13 years agoAdding GC hooks to support LiveObjectList functionality.
sgjesse@chromium.org [Tue, 25 Jan 2011 12:35:06 +0000 (12:35 +0000)]
Adding GC hooks to support LiveObjectList functionality.

Patch by Mark Lam from Hewlett-Packard Development Company, LP

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

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

13 years agoScript changes so that we can build debug/release with
sgjesse@chromium.org [Tue, 25 Jan 2011 12:28:45 +0000 (12:28 +0000)]
Script changes so that we can build debug/release with
liveobjectlist=on/off and objectprint=on/off.

Patch by Mark Lam from Hewlett-Packard Development Company, LP

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

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

13 years agoFix bug 1070: set correct holder for primitive checks.
vitalyr@chromium.org [Tue, 25 Jan 2011 12:21:03 +0000 (12:21 +0000)]
Fix bug 1070: set correct holder for primitive checks.

Code generated for checks starting with primitive receivers skips one step
in the usual prototype checking algorithm, so the holder must always be set.

Not setting the holder did not cause an immediate failure because our
primitives have additional hidden prototypes before the real prototypes.
These extra objects in the chain usually contain no properties and so
allowed the right holders to be selected.

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

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

13 years agoDo not shuffle parameters when doing sub on ia32 and arm.
ricow@chromium.org [Tue, 25 Jan 2011 12:17:02 +0000 (12:17 +0000)]
Do not shuffle parameters when doing sub on ia32 and arm.

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

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

13 years agoIA32: Refactor common string add code.
sgjesse@chromium.org [Tue, 25 Jan 2011 12:14:56 +0000 (12:14 +0000)]
IA32: Refactor common string add code.
Review URL: http://codereview.chromium.org/6279011

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

13 years agoImplement x64 lithium instructions DoGlobalObject and DoSub
ricow@chromium.org [Tue, 25 Jan 2011 11:33:03 +0000 (11:33 +0000)]
Implement x64 lithium instructions DoGlobalObject and DoSub

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

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

13 years agoX64 Crankshaft: Added a bunch of operations.
lrn@chromium.org [Tue, 25 Jan 2011 11:30:47 +0000 (11:30 +0000)]
X64 Crankshaft: Added a bunch of operations.

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

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

13 years agoDisable MSVC warning that default array initializers now work properly.
whesse@chromium.org [Tue, 25 Jan 2011 11:25:30 +0000 (11:25 +0000)]
Disable MSVC warning that default array initializers now work properly.
Review URL: http://codereview.chromium.org/6272017

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

13 years agoPort to ARM and x64: Record the lazy deoptimization environmnent only at LLazyBailou...
fschneider@chromium.org [Tue, 25 Jan 2011 10:35:57 +0000 (10:35 +0000)]
Port to ARM and x64:  Record the lazy deoptimization environmnent only at LLazyBailout-instructions.

This is a port of the change http://codereview.chromium.org/6348016/
to ARM and x64 platform.

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

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

13 years agoPort new version of ParallelMove's LGapResolver to X64.
whesse@chromium.org [Tue, 25 Jan 2011 10:10:36 +0000 (10:10 +0000)]
Port new version of ParallelMove's LGapResolver to X64.
Review URL: http://codereview.chromium.org/6366003

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

13 years agoPort changes from x64 deoptimizer to ia32 and remove commented out code from last...
ricow@chromium.org [Tue, 25 Jan 2011 08:59:16 +0000 (08:59 +0000)]
Port changes from x64 deoptimizer to ia32 and remove commented out code from last patch.

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

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

13 years agoAnother fix for leaking error objects. User code can overwrite
ager@chromium.org [Tue, 25 Jan 2011 08:48:59 +0000 (08:48 +0000)]
Another fix for leaking error objects. User code can overwrite
ReferenceError.prototype.__proto__ which will make "error instanceof
Error" fail. However, the ReferenceError.prototype object itself
cannot be modified. Therefore, the error checks must check for
concrete error instances instead of only checking for Error.

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

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

13 years agoAdd support for deoptimization on x64.
ricow@chromium.org [Tue, 25 Jan 2011 07:57:56 +0000 (07:57 +0000)]
Add support for deoptimization on x64.

I did not take out the code relating to osr from the generate method
since this makes it easier to compare to ia32 (we will abort anyway when we hit the osr code so there should be no issues with having this in)

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

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

13 years agoChange ARM exit frame layout and alingment handling
sgjesse@chromium.org [Tue, 25 Jan 2011 07:49:39 +0000 (07:49 +0000)]
Change ARM exit frame layout and alingment handling

Change the ARM exit frame to have the same layout as the IA32 exit frame. This basically re-arranges the order of fp and sp and changes the sp location of the entry frame to hold the sp used by the gc and not the sp for popping the arguments. This removes the option of tearing down the frame and returning using one ldm instruction.

The main motivation for this is to avoid pushing an alignment word before generating the entry frame. The GC handling of optimized frames process the registers pushed as part of a safepoint and asumes that these are at the top of the frame, so if an alignment word is pushed this processing will be one off.

The alignment handling in the C entry stub have also been simplified. Now the value of lr is stored to a stack slot already reserved avoiding pushing it and keeping track of "frame skew".

This does result in more instructions in the exit frame on ARM, but we can look into improving this later.
Review URL: http://codereview.chromium.org/6247019

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

13 years agoFix bad assumption in object literal interpretation.
lrn@chromium.org [Tue, 25 Jan 2011 07:48:19 +0000 (07:48 +0000)]
Fix bad assumption in object literal interpretation.
We allow symbols that are array indices.

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

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

13 years agoStrict mode octal literals.
mmaly@chromium.org [Mon, 24 Jan 2011 18:13:18 +0000 (18:13 +0000)]
Strict mode octal literals.

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

13 years agoChange conformance test expectations.
kmillikin@chromium.org [Mon, 24 Jan 2011 15:18:49 +0000 (15:18 +0000)]
Change conformance test expectations.

We now conform to ES5 by not deleting variables that occur in a scope
shadowed by with or eval.

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

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

13 years agoMove stack check patching to the architecture dependent deoptimizer
ager@chromium.org [Mon, 24 Jan 2011 14:54:45 +0000 (14:54 +0000)]
Move stack check patching to the architecture dependent deoptimizer
files. On ARM it is not enough to iterate the relocation information
because that will only give us access to the constant pool and not to
the place in the instruction stream where the target in the constant
pool is called.

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

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