platform/upstream/v8.git
13 years agoMake throw inlineable only if the exception is inlineable.
karlklose@chromium.org [Wed, 20 Apr 2011 09:15:52 +0000 (09:15 +0000)]
Make throw inlineable only if the exception is inlineable.

BUG=1337
TEST=regress-1337

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

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

13 years agoRevert r7665.
fschneider@chromium.org [Wed, 20 Apr 2011 09:08:26 +0000 (09:08 +0000)]
Revert r7665.
Review URL: http://codereview.chromium.org/6873106

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

13 years agoLithium LLabel instruction are no longer used as gap instructions.
fschneider@chromium.org [Tue, 19 Apr 2011 16:14:42 +0000 (16:14 +0000)]
Lithium LLabel instruction are no longer used as gap instructions.

Instead we use the first part of the first gap after
the label to insert gap-moves for resolving control-flow
and phis.
Review URL: http://codereview.chromium.org/6873075

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

13 years agoRevert revisions 7644 and 7632, they are causing assertion failures in interactive_ui...
ricow@chromium.org [Tue, 19 Apr 2011 16:04:49 +0000 (16:04 +0000)]
Revert revisions 7644 and 7632, they are causing assertion failures in interactive_ui_tests debug mode.
Review URL: http://codereview.chromium.org/6873076

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

13 years agoRevert r7662.
fschneider@chromium.org [Tue, 19 Apr 2011 13:43:36 +0000 (13:43 +0000)]
Revert r7662.
Review URL: http://codereview.chromium.org/6878042

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

13 years agoMake predicates on lithium instruction classes non-virtual.
fschneider@chromium.org [Tue, 19 Apr 2011 12:34:07 +0000 (12:34 +0000)]
Make predicates on lithium instruction classes non-virtual.

This is the lithium analog to the refactoring of the HIR classes in r7659.
Review URL: http://codereview.chromium.org/6877036

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

13 years agoSkip crashing cctests.
karlklose@chromium.org [Tue, 19 Apr 2011 10:34:34 +0000 (10:34 +0000)]
Skip crashing cctests.

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

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

13 years agoUse movaps instead of movsd in the gap resolver on ia32 as well.
fschneider@chromium.org [Tue, 19 Apr 2011 09:16:34 +0000 (09:16 +0000)]
Use movaps instead of movsd in the gap resolver on ia32 as well.

This is ok since we don't care about preserving the upper half
of xmm registers in Crankshaft code.
Review URL: http://codereview.chromium.org/6880007

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

13 years agoReduce the number of virtual function in hydrogen-instruction.h classes
fschneider@chromium.org [Tue, 19 Apr 2011 09:11:21 +0000 (09:11 +0000)]
Reduce the number of virtual function in hydrogen-instruction.h classes

Instead of using virtual type-tester functions we can just
generate non-virtual ones for all concrete IR classes.

This is changes reduces the V8 binary size by ~2%.

I also simplified the macros to declare new hydrogen instructions slightly.
The name used for debug output is no longer passed as a separate string.
Instead we just use the class name.
Review URL: http://codereview.chromium.org/6880014

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

13 years agoCorrect test names for the failing deserialization tests in cctest.status.
karlklose@chromium.org [Tue, 19 Apr 2011 07:50:46 +0000 (07:50 +0000)]
Correct test names for the failing deserialization tests in cctest.status.

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

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

13 years agoMaintain proper pointer map for branches when resolving phis.
vegorov@chromium.org [Mon, 18 Apr 2011 20:26:24 +0000 (20:26 +0000)]
Maintain proper pointer map for branches when resolving phis.

The same was done for gap moves connecting live ranges in r6858.

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

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

13 years agoARM: Optimisations for call, jump and untag.
karlklose@chromium.org [Mon, 18 Apr 2011 13:53:11 +0000 (13:53 +0000)]
ARM: Optimisations for call, jump and untag.

Improves some V8 benchmarks by a few % on A9.

Patch by ARM Ltd.

BUG=none
TEST=Added to test-assembler-arm.cc.

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

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

13 years agoMinor cosmetic changes.
antonm@chromium.org [Mon, 18 Apr 2011 13:28:00 +0000 (13:28 +0000)]
Minor cosmetic changes.

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

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

13 years agoPrepare push to trunk. Now working on version 3.3.1.
danno@chromium.org [Mon, 18 Apr 2011 12:37:57 +0000 (12:37 +0000)]
Prepare push to trunk.  Now working on version 3.3.1.

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

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

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

13 years agoFix x64 typefeedback for property assignments.
fschneider@chromium.org [Mon, 18 Apr 2011 10:51:57 +0000 (10:51 +0000)]
Fix x64 typefeedback for property assignments.

There was not ast-id recorded. I removed the default arguments
for the helper functions that emit IC calls to make sure
we are not missing other places.
Review URL: http://codereview.chromium.org/6878009

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

13 years agoRevert 7634, Fix experimental.gyp to include i18n-empty-js.cc so that js2c.py get...
ricow@chromium.org [Mon, 18 Apr 2011 08:01:50 +0000 (08:01 +0000)]
Revert 7634, Fix experimental.gyp to include i18n-empty-js.cc so that js2c.py get correct parameters.

This caused all chromium based builds to fail (e.g., DumpRenderTree)
Review URL: http://codereview.chromium.org/6882003

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

13 years agoStyle fix, remove semicolons from tools/test.py
ricow@chromium.org [Mon, 18 Apr 2011 07:23:48 +0000 (07:23 +0000)]
Style fix, remove semicolons from tools/test.py
Review URL: http://codereview.chromium.org/6882002

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

13 years agoInitialize ThreadLocalTop.
vitalyr@chromium.org [Fri, 15 Apr 2011 20:47:27 +0000 (20:47 +0000)]
Initialize ThreadLocalTop.

ThreadLocalTop used to be static and was zero initialized by the
linker. With isolates we have to give it a constructor.

BUG=http://crbug.com/79393

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

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

13 years agoFix experimental.gyp to include i18n-empty-js.cc so that js2c.py get correct parameters.
cira@chromium.org [Fri, 15 Apr 2011 20:31:30 +0000 (20:31 +0000)]
Fix experimental.gyp to include i18n-empty-js.cc so that js2c.py get correct parameters.
Bug occured somewhere in the merge process.
Review URL: http://codereview.chromium.org/6875013

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

13 years agoFix debuger evaluation on a breakpoint inside eval
yurys@chromium.org [Fri, 15 Apr 2011 14:09:45 +0000 (14:09 +0000)]
Fix debuger evaluation on a breakpoint inside eval

Corresponding Chromium issue: http://code.google.com/p/chromium/issues/detail?id=74412
Review URL: http://codereview.chromium.org/6875005

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

13 years agoRecord AST ids in relocation info at spots where we collect dynamic type feedback.
whesse@chromium.org [Fri, 15 Apr 2011 13:18:53 +0000 (13:18 +0000)]
Record AST ids in relocation info at spots where we collect dynamic type feedback.

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

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

13 years agoX64 tweaks.
lrn@chromium.org [Fri, 15 Apr 2011 13:06:41 +0000 (13:06 +0000)]
X64 tweaks.

Use movapd instead of movsd to move between xmm registers. Avoids partial
register writes and potential stalls.

Use xorps instead of xorpd to zero a register. Same effect and latency, but
one byte smaller.

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

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

13 years agoIntroduce experimental natives that are enabled by a runtime flag.
ager@chromium.org [Fri, 15 Apr 2011 12:31:03 +0000 (12:31 +0000)]
Introduce experimental natives that are enabled by a runtime flag.

Clean up the use of js2c. We generated two identical files.

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

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

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

13 years agoFix bug in X64 Math.abs optimization
lrn@chromium.org [Fri, 15 Apr 2011 11:43:53 +0000 (11:43 +0000)]
Fix bug in X64 Math.abs optimization

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

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

13 years agoCleanup of mjsunit.js code and make assertEquals more strict.
lrn@chromium.org [Fri, 15 Apr 2011 11:35:36 +0000 (11:35 +0000)]
Cleanup of mjsunit.js code and make assertEquals more strict.

Encapsulate the helper functions in mjsunit.js.
Now only exposes the exception class and the assertXXX functions.

Make assertEquals use === instead of ==.
This prevents a lot of possiblefalse positives in tests, and avoids
having to do assertTrue(expected === actual) when you need it.

Fixed some tests that were either buggy or assuming == test.

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

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

13 years agoARM: Implement correct rounding in the lithium codegenerator.
karlklose@chromium.org [Fri, 15 Apr 2011 11:29:01 +0000 (11:29 +0000)]
ARM: Implement correct rounding in the lithium codegenerator.

This patch provides testing for values that have a fraction part of 0.5 and uses a different rounding method for them. The original method of VFPTruncating the value with round-to-nearest is not correct because it does not round to the larger number in case of a tie.

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

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

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

13 years agoReapply 7581, Fix tools/test.py to allow CTRL+C to work correctly again.
ricow@chromium.org [Fri, 15 Apr 2011 09:41:09 +0000 (09:41 +0000)]
Reapply 7581, Fix tools/test.py to allow CTRL+C to work correctly again.

Buildbot now has python 2.6

Also, remove some semicolons.
Review URL: http://codereview.chromium.org/6871007

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

13 years agoFix presubmit.
ricow@chromium.org [Fri, 15 Apr 2011 08:40:16 +0000 (08:40 +0000)]
Fix presubmit.
Review URL: http://codereview.chromium.org/6869006

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

13 years agoLand Kevin's patch for supporting %_CallFunction in Crankshaft.
fschneider@chromium.org [Fri, 15 Apr 2011 07:58:22 +0000 (07:58 +0000)]
Land Kevin's patch for supporting %_CallFunction in Crankshaft.

Original code review: http://codereview.chromium.org/6838018/

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

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

13 years agoRemove support for inlined property loads and stores.
fschneider@chromium.org [Fri, 15 Apr 2011 07:48:58 +0000 (07:48 +0000)]
Remove support for inlined property loads and stores.

The full code generator does not generate inline code for
property loads and stores. All this code is unused with
Crankshaft.
Review URL: http://codereview.chromium.org/6850015

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

13 years agoSupport string add in crankshaft:
vitalyr@chromium.org [Fri, 15 Apr 2011 06:39:36 +0000 (06:39 +0000)]
Support string add in crankshaft:

o The type recording binary stub got a new type for string + string.

o Added HStringAdd and LStringAdd based on the new type info.

o Started using HValue types to avoid unneccesary checks.

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

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

13 years agoMake HConstant a bit more compact.
vitalyr@chromium.org [Fri, 15 Apr 2011 06:04:50 +0000 (06:04 +0000)]
Make HConstant a bit more compact.

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

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

13 years agoAdd v8Locale.Collator
cira@chromium.org [Thu, 14 Apr 2011 19:10:51 +0000 (19:10 +0000)]
Add v8Locale.Collator

This is a partial implementation of Collator per what's agreed upon at the last
ECMAScript meeting + mailing list. Only the following three options are implemented: ignoreAccent, ignoreCase, numeric.

ChromeOS and Chrome need this feature for M12. This could be added as chrome extension API. Giiven that we have a rough agreement on the collation part of ECMAScript API, we thought it'd save us some duplicated work adding this to v8 (experimental i18n api) now rather than implementing it in Chrome now and moving it later.

BUG=28604
TEST=http://i18nl10n.com/chrome/coll2.html
Review URL: http://codereview.chromium.org/6673011

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

13 years agoRemove unused AssignedVariableAnalyzer.
fschneider@chromium.org [Thu, 14 Apr 2011 14:31:43 +0000 (14:31 +0000)]
Remove unused AssignedVariableAnalyzer.

Not used in Crankshaft anymore.
Review URL: http://codereview.chromium.org/6849023

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

13 years agoFix presubmit errors in bootstrapper.cc.
karlklose@chromium.org [Thu, 14 Apr 2011 12:05:03 +0000 (12:05 +0000)]
Fix presubmit errors in bootstrapper.cc.

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

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

13 years agoRefine allocation policy for input operands at calls.
fschneider@chromium.org [Thu, 14 Apr 2011 11:10:00 +0000 (11:10 +0000)]
Refine allocation policy for input operands at calls.

For instructions that are marked as calls we can use:

1. Fixed input registers

2. Use-at-start policy (register, memory or constant).

(Memory or constant would not need the use-at-start policy, but
not specifying use-at-start prevents the allocator from using
a register even if there is one available. That's why use-at-start
is required and guarded by assertion)
Review URL: http://codereview.chromium.org/6853010

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

13 years agoX64: Use roundsd for DoMathFloor.
lrn@chromium.org [Thu, 14 Apr 2011 09:05:43 +0000 (09:05 +0000)]
X64: Use roundsd for DoMathFloor.

TEST=mjsunit/math-floor

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

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

13 years agoIn ProfilerSignalHandler ensure that thread we are trying to sample locked the isolate.
vegorov@chromium.org [Thu, 14 Apr 2011 08:53:50 +0000 (08:53 +0000)]
In ProfilerSignalHandler ensure that thread we are trying to sample locked the isolate.

BUG=http://crbug.com/77725

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

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

13 years agoIsolates: Cleanup usage of FACTORY in code stubs and bootstrapper.
karlklose@chromium.org [Thu, 14 Apr 2011 08:01:19 +0000 (08:01 +0000)]
Isolates: Cleanup usage of FACTORY in code stubs and bootstrapper.

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

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

13 years agoFixing svn:eol-style (from native to LF).
cira@chromium.org [Wed, 13 Apr 2011 21:34:20 +0000 (21:34 +0000)]
Fixing svn:eol-style (from native to LF).
Review URL: http://codereview.chromium.org/6837034

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

13 years agoMoving locale code from i18n-extension.cc. Each part of the API now has separate...
cira@chromium.org [Wed, 13 Apr 2011 21:09:22 +0000 (21:09 +0000)]
Moving locale code from i18n-extension.cc. Each part of the API now has separate cc file, and only extension related code is left in i18n-extension.{cc,h}.
There are no functional changes in this CL.
Review URL: http://codereview.chromium.org/6840024

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

13 years agoAdjust mjsunit.status to account for math-round test passing on ARM when crankshaft...
whesse@chromium.org [Wed, 13 Apr 2011 14:03:24 +0000 (14:03 +0000)]
Adjust mjsunit.status to account for math-round test passing on ARM when crankshaft is disabled.
Review URL: http://codereview.chromium.org/6840013

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

13 years agoEnable inlining functions containing throw.
fschneider@chromium.org [Wed, 13 Apr 2011 13:09:58 +0000 (13:09 +0000)]
Enable inlining functions containing throw.

After Kevin's change to the graph builder to allow aborting graph construction
inside arbitrary expressions this just works.

BUG=v8:1143
Review URL: http://codereview.chromium.org/6839017

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

13 years agoFix a just-introduced bug in polymorphic inlining.
kmillikin@chromium.org [Wed, 13 Apr 2011 11:59:23 +0000 (11:59 +0000)]
Fix a just-introduced bug in polymorphic inlining.

When inlining a polymorphic variant, the inlined function indicates we
should bailout of the entire compilation by setting the stack overflow flag
on the visitor.  We need to check this flag and bailout if a call to
TryInline succeeds and it is not in tail position in a graph builder
function.

R=fschneider@chromium.org

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

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

13 years agoARM: Fix a number of issues with running without VFPv3 support
sgjesse@chromium.org [Wed, 13 Apr 2011 11:59:17 +0000 (11:59 +0000)]
ARM: Fix a number of issues with running without VFPv3 support

The type recording binary operations stub contained a number of issues which broke V8 when running without VFPv3 supoort.

1. The order of the high/low words of doubles in core register pairs where wrong
2. Missing allocation of a heap number for the result
3. Missing call to runtime

Added the option for printing the double values in register pairs to the simulator.

R=karlklose@chromium.org

BUG=v8:1315
TEST=

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

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

13 years agoFix typo which broke build.
kmillikin@chromium.org [Wed, 13 Apr 2011 11:30:36 +0000 (11:30 +0000)]
Fix typo which broke build.

TBR=fschneider@chromium.org

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

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

13 years agoRelax assumptions about control flow in the hydrogen graph.
kmillikin@chromium.org [Wed, 13 Apr 2011 11:24:06 +0000 (11:24 +0000)]
Relax assumptions about control flow in the hydrogen graph.

Previously we assumed that control was always live after visiting an
expression, and that control was live to both basic block targets of an
expression in a test context.

Now we allow any expression to exit the graph.

R=fschneider@chromium.org,danno@chromium.org

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

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

13 years agoFix optimized code for Math.round on ia32 platform.
whesse@chromium.org [Wed, 13 Apr 2011 10:32:05 +0000 (10:32 +0000)]
Fix optimized code for Math.round on ia32 platform.
Review URL: http://codereview.chromium.org/6838012

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

13 years agoFix Math.round in runtime.cc and x64 optimized code.
lrn@chromium.org [Wed, 13 Apr 2011 09:35:56 +0000 (09:35 +0000)]
Fix Math.round in runtime.cc and x64 optimized code.

Make math-round.js test check both normal and optimized version.
Add some cases to the tests.

BUG=v8:958
TEST=mjsunit/math-round

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

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

13 years agoPrepare push to trunk. Now working on version 3.3.0.
ager@chromium.org [Wed, 13 Apr 2011 08:34:46 +0000 (08:34 +0000)]
Prepare push to trunk. Now working on version 3.3.0.
Review URL: http://codereview.chromium.org/6833021

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

13 years agoRevert revision 7582.
karlklose@chromium.org [Wed, 13 Apr 2011 08:00:59 +0000 (08:00 +0000)]
Revert revision 7582.

The changes caused mozilla date test failures on ARM.

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

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

13 years agoAdd global setup for runtime profiler.
vitalyr@chromium.org [Tue, 12 Apr 2011 19:15:53 +0000 (19:15 +0000)]
Add global setup for runtime profiler.

Whether it's enabled or not must not change while we're running. Let's
not waste time recomputing it. This also makes the VM state tracking
code slightly more lightweight.

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

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

13 years agoFit Representation and HType in one word to make HValue smaller.
vitalyr@chromium.org [Tue, 12 Apr 2011 19:05:48 +0000 (19:05 +0000)]
Fit Representation and HType in one word to make HValue smaller.

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

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

13 years agoMoving JavaScript code from i18n-extension.cc into i18n.js file using
cira@chromium.org [Tue, 12 Apr 2011 18:19:40 +0000 (18:19 +0000)]
Moving JavaScript code from i18n-extension.cc into i18n.js file using
tools/js2c.py script.
Added new type I18N to natives.h enum.
Review URL: http://codereview.chromium.org/6825049

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

13 years agoFix load/store of external float arrays on ARM
jkummerow@chromium.org [Tue, 12 Apr 2011 15:20:26 +0000 (15:20 +0000)]
Fix load/store of external float arrays on ARM

BUG=1323
TEST=mjsunit/regress/regress-1323.js, run with simulator=arm

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

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

13 years agoX64: Tweak code generation slightly.
lrn@chromium.org [Tue, 12 Apr 2011 13:20:51 +0000 (13:20 +0000)]
X64: Tweak code generation slightly.

Uses a shorter opcode for movl and movb with immediates.
Make movl preferable to movq in Set(register, int64_t) and use Set in more places.

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

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

13 years agoARM: Set expectations for failing deserializations tests to turn the bot green
sgjesse@chromium.org [Tue, 12 Apr 2011 12:30:13 +0000 (12:30 +0000)]
ARM: Set expectations for failing deserializations tests to turn the bot green

R=karl.klose@chromium.org

BUG=v8:1075
TEST=

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

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

13 years agoEnable inlining of functions containing loops.
fschneider@chromium.org [Tue, 12 Apr 2011 10:27:09 +0000 (10:27 +0000)]
Enable inlining of functions containing loops.
Review URL: http://codereview.chromium.org/6813107

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

13 years agoChange the list of statements that are inlineable into a black-list.
fschneider@chromium.org [Tue, 12 Apr 2011 08:37:29 +0000 (08:37 +0000)]
Change the list of statements that are inlineable into a black-list.

Before we had a white-list of things that we allow inside inlined functions.

This way we can enable new constructs one-by-one.
Review URL: http://codereview.chromium.org/6825042

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

13 years agoCleanup of ScannerConstants, now named UnicodeCache.
lrn@chromium.org [Tue, 12 Apr 2011 08:27:38 +0000 (08:27 +0000)]
Cleanup of ScannerConstants, now named UnicodeCache.

The ScannerConstants class was originally static fields on the scanner class.
During creation of the stand-alone preparser and later isolates, it has been
moved into a separate class with a per-isolate instance.
It is used to hold caching unicode Predicate values.

This change renames the class to UnicodeCache, and passes a reference
to the instance down to methods that doesn't have an easy access to
an isolate (to avoid, e.g., having to do an Isolate::Current() for every
number parsed).

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

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

13 years agoRevert 7581, you can't have try except finally toghetter until python 2.5
ricow@chromium.org [Tue, 12 Apr 2011 07:46:17 +0000 (07:46 +0000)]
Revert 7581, you can't have try except finally toghetter until python 2.5

We have some 2.4 versions on the windows buildbots, I will try to have these updated and reapply.
Review URL: http://codereview.chromium.org/6821069

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

13 years agoARM: Add optimization for constant RHS in DoMulI.
karlklose@chromium.org [Tue, 12 Apr 2011 06:44:15 +0000 (06:44 +0000)]
ARM: Add optimization for constant RHS in DoMulI.

Patch by ARM Ltd.

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

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

13 years agoFix tools/test.py to allow CTRL+C to work correctly again.
ricow@chromium.org [Tue, 12 Apr 2011 06:26:38 +0000 (06:26 +0000)]
Fix tools/test.py to allow CTRL+C to work correctly again.

This also changes the AfterRun functions to allow None as the passed in parameter.
Review URL: http://codereview.chromium.org/6824040

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

13 years agoARM: Always enable ARMv7 when VFPv3 is enabled.
sgjesse@chromium.org [Tue, 12 Apr 2011 06:12:45 +0000 (06:12 +0000)]
ARM: Always enable ARMv7 when VFPv3 is enabled.

R=vegorov@chromium.org, rodolph.perfetta@gmail.com

BUG=v8:1317
TEST=

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

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

13 years agoFix retained object info leak.
vitalyr@chromium.org [Tue, 12 Apr 2011 05:08:13 +0000 (05:08 +0000)]
Fix retained object info leak.

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

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

13 years agoAnother attempt to fix Win build.
dimich@chromium.org [Tue, 12 Apr 2011 00:49:30 +0000 (00:49 +0000)]
Another attempt to fix Win build.
Review URL: http://codereview.chromium.org/6825061

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

13 years agoFix build borkage due to r7575
dimich@chromium.org [Tue, 12 Apr 2011 00:42:27 +0000 (00:42 +0000)]
Fix build borkage due to r7575
(landing for Dmitry Lomov)
Review URL: http://codereview.chromium.org/6823065

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

13 years agoDo not rely on uniqueness of pthread_t
vitalyr@chromium.org [Mon, 11 Apr 2011 23:46:22 +0000 (23:46 +0000)]
Do not rely on uniqueness of pthread_t

Patch by Dmitry Lomov.

pthreads implementations are free to reuse pthread_t (thread id) after
the thread has died. This change gets rid of ThreadHandle class and
replaces it with v8-managed thread identifiers.

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

13 years agoAllow recursive messages reporting as it is already used.
antonm@chromium.org [Mon, 11 Apr 2011 16:16:52 +0000 (16:16 +0000)]
Allow recursive messages reporting as it is already used.

Instead discard unhandled exceptions thown while running
message listeners.

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

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

13 years agoBring test262 expectations up-to-date.
mmaly@chromium.org [Mon, 11 Apr 2011 13:54:30 +0000 (13:54 +0000)]
Bring test262 expectations up-to-date.
Add missing *.js files into Xcode project.

BUG=
TEST=

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

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

13 years agoIntroduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization.
jkummerow@chromium.org [Mon, 11 Apr 2011 13:24:50 +0000 (13:24 +0000)]
Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization.

TEST=existing unit tests still pass

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

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

13 years agoPrepare push to trunk. Now working on version 3.2.10.
karlklose@chromium.org [Mon, 11 Apr 2011 12:14:53 +0000 (12:14 +0000)]
Prepare push to trunk. Now working on version 3.2.10.
Review URL: http://codereview.chromium.org/6820029

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

13 years agoFix x64 build after r7567
mikhail.naganov@gmail.com [Mon, 11 Apr 2011 11:49:55 +0000 (11:49 +0000)]
Fix x64 build after r7567

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

13 years agoMark single-argument inline constructors as 'explicit'.
mikhail.naganov@gmail.com [Mon, 11 Apr 2011 11:38:34 +0000 (11:38 +0000)]
Mark single-argument inline constructors as 'explicit'.

There is currently a bug in cpplint.py hiding this problem.

R=sgjesse@chromium.org
BUG=1304
TEST=none

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

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

13 years agoRemove code from the deprecated GenericBinaryOpStub.
fschneider@chromium.org [Mon, 11 Apr 2011 09:39:21 +0000 (09:39 +0000)]
Remove code from the deprecated GenericBinaryOpStub.

All platforms are now using the TypeRecordingBinaryOpStub.

I also removed the ARM IntegerModStub which was called from
the GenericBinaryOpStub.
Review URL: http://codereview.chromium.org/6826032

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

13 years agoARM: Remove support for ABI prior to EABI
sgjesse@chromium.org [Mon, 11 Apr 2011 09:04:30 +0000 (09:04 +0000)]
ARM: Remove support for ABI prior to EABI

The support for the old ABI is known to be broken and has been deprecated for some time now. Removed the instructions for loading and storing co-processor registers as they where only used to support the old ABI.

R=karlklose@chromium.org

BUG=v8:1316
TEST=

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

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

13 years agoARM: Fix wrong fall through handling
sgjesse@chromium.org [Mon, 11 Apr 2011 08:59:29 +0000 (08:59 +0000)]
ARM: Fix wrong fall through handling

Looks like a copy/paste mistake.

R=kmillikin@chromium.org

BUG=
TEST=

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

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

13 years agoFix JS ratio computation on startup.
vitalyr@chromium.org [Sun, 10 Apr 2011 08:29:18 +0000 (08:29 +0000)]
Fix JS ratio computation on startup.

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

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

13 years agoStrict mode fixes.
mmaly@chromium.org [Fri, 8 Apr 2011 14:30:10 +0000 (14:30 +0000)]
Strict mode fixes.
- mutual inlining strict and non-strict functions in crankshaft.
- assignment to undefined variable with eval in scope.
- propagation of strict mode through lazy compilation.

BUG=
TEST=test/mjsunit/strict-mode.js test/mjsunit/strict-mode-opt.js

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

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

13 years agoX64: Convert HeapNumbers that contain valid smi values to smis in binop-stub.
lrn@chromium.org [Fri, 8 Apr 2011 12:34:00 +0000 (12:34 +0000)]
X64: Convert HeapNumbers that contain valid smi values to smis in binop-stub.

When the TypeRecordingBinaryOpStub expect smi values as input, they might
sometimes come as HeapNumbers. The transition code will detect the heap numbers
as holding values that are valid smi values, and will not change the expectations.
However, the stub didn't handle HeapNumbers and always tried to transition again.

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

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

13 years agoRemoving old codegen from Xcode project.
mmaly@chromium.org [Fri, 8 Apr 2011 12:22:43 +0000 (12:22 +0000)]
Removing old codegen from Xcode project.

TBR=ager@chromium.org

BUG=
TEST=

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

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

13 years agoARM: Fix a crash bug in code for %_IsStringWrapperSafeForDefaultValueOf
sgjesse@chromium.org [Fri, 8 Apr 2011 11:37:30 +0000 (11:37 +0000)]
ARM: Fix a crash bug in code for %_IsStringWrapperSafeForDefaultValueOf

Turned out out that the setting of bit Map::kStringWrapperSafeForDefaultValueOf in Map::kStringWrapperSafeForDefaultValueOf was not done on the map but in some other memory location causing crashes.

R=vegorov@chromium.org

BUG=none
TEST=mozilla/data/js1_2/String/slice.js (crashed only on ARM hardware)

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

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

13 years agoFix compilation with gdbjit=on.
vegorov@chromium.org [Fri, 8 Apr 2011 11:25:19 +0000 (11:25 +0000)]
Fix compilation with gdbjit=on.

Ensure mutual exclusion on access to GDBJITInterface internal structures to make it work correctly with several isolates.

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

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

13 years agoFix some presumbmit failures.
yurys@chromium.org [Fri, 8 Apr 2011 10:02:01 +0000 (10:02 +0000)]
Fix some presumbmit failures.
Review URL: http://codereview.chromium.org/6801070

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

13 years agoReport stack overflow exceptions to V8 message listeners
yurys@chromium.org [Fri, 8 Apr 2011 09:39:45 +0000 (09:39 +0000)]
Report stack overflow exceptions to V8 message listeners

Stack overflow exceptions like other JavaScript exceptions should be reported to listeners added via V8::AddMessageListener
Review URL: http://codereview.chromium.org/6816021

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

13 years agoAdd ToBoolean-conversion of constants in Crankshaft and use it when generating a...
fschneider@chromium.org [Fri, 8 Apr 2011 06:54:50 +0000 (06:54 +0000)]
Add ToBoolean-conversion of constants in Crankshaft and use it when generating a branch based on a constant.
Review URL: http://codereview.chromium.org/6801050

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

13 years agoFix auto suspension of the sampler thread.
vitalyr@chromium.org [Thu, 7 Apr 2011 20:57:07 +0000 (20:57 +0000)]
Fix auto suspension of the sampler thread.

BUG=http://crbug.com/78267

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

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

13 years agoMake exception thrown via v8 public API propagate to v8::TryCatch as JS thrown except...
antonm@chromium.org [Thu, 7 Apr 2011 19:52:24 +0000 (19:52 +0000)]
Make exception thrown via v8 public API propagate to v8::TryCatch as JS thrown exceptions do.

Correctly process failures which can be returned by Object::GetProperty
when performing GetRealNamedProperty* queries.

Callback properties can produce exceptions so we need to wrap access to them
into exception checks.  However, despite of many other methods with exception
checks, property access doesn't mandatroy go via JavaScript and hence we
need to inject code to propagate exception to public API TryCatch handlers.

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

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

13 years agoFix win64 compile failure.
ricow@chromium.org [Thu, 7 Apr 2011 16:10:56 +0000 (16:10 +0000)]
Fix win64 compile failure.
Review URL: http://codereview.chromium.org/6810021

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

13 years agoFix v8.gyp.
ager@chromium.org [Thu, 7 Apr 2011 15:02:38 +0000 (15:02 +0000)]
Fix v8.gyp.

R=kmillikin@chromium.org
BUG=
TEST=
TBR=

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

13 years agooops
whesse@chromium.org [Thu, 7 Apr 2011 15:01:50 +0000 (15:01 +0000)]
oops

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

13 years agoFix cow fixed array map check in optimized arm code.
danno@chromium.org [Thu, 7 Apr 2011 15:01:20 +0000 (15:01 +0000)]
Fix cow fixed array map check in optimized arm code.

R=ager@chromium.org
BUG=
TEST=

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

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

13 years agoRestart AST node numbering when we enter a function.
whesse@chromium.org [Thu, 7 Apr 2011 14:45:34 +0000 (14:45 +0000)]
Restart AST node numbering when we enter a function.

BUG=
TEST=

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

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

13 years agoRemove some dead code.
ager@chromium.org [Thu, 7 Apr 2011 14:42:37 +0000 (14:42 +0000)]
Remove some dead code.

- virtual-frame*
- register-allocator*
- jump-target*
- most of codegen*
- AstOptimizer and fields on AST

There is a lot of additional cleanup that we should do but this gets
rid of a lot.

R=kmillikin@chromium.org
BUG=
TEST=

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

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

13 years agoIn LCodeGen::DoDeferredLInstanceOfKnownGlobal emit safepoint with registers for the...
vegorov@chromium.org [Thu, 7 Apr 2011 13:32:45 +0000 (13:32 +0000)]
In LCodeGen::DoDeferredLInstanceOfKnownGlobal emit safepoint with registers for the call to stub.

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

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

13 years agoAdd GCMole to the repository.
vegorov@chromium.org [Thu, 7 Apr 2011 12:38:16 +0000 (12:38 +0000)]
Add GCMole to the repository.

GCMole is a simple static analysis tool that searches for GC-usafe evaluation order dependent callsites.

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

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

13 years agoFix --print-code-stubs during VM initialization
peterhal@chromium.org [Thu, 7 Apr 2011 11:29:40 +0000 (11:29 +0000)]
Fix --print-code-stubs during VM initialization

BUG=
TEST=

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

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

13 years agoFix bad deoptimization tests for double-to-int conversion.
lrn@chromium.org [Thu, 7 Apr 2011 10:44:39 +0000 (10:44 +0000)]
Fix bad deoptimization tests for double-to-int conversion.

Deopted on zero result, not just bad cvttsi2sd conversion.
Add inline floating point result for SHR in Smi TypeRecordingBinaryOpStub.
Small optimizations.

Adding rightshift to case handled by floating point result in type-recording binary op stub.

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

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

13 years agoFix opmitized external array access for compound assignments and count operations...
danno@chromium.org [Thu, 7 Apr 2011 09:51:25 +0000 (09:51 +0000)]
Fix opmitized external array access for compound assignments and count operations, also implement missing ARM typed array Hydrogen loads and stores.

BUG=none
TEST=none

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

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

13 years agoFix build break on Mac.
mmaly@chromium.org [Thu, 7 Apr 2011 09:18:06 +0000 (09:18 +0000)]
Fix build break on Mac.

BUG=
TEST=

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

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