platform/upstream/v8.git
13 years agoCleanup usage of HEAP in mark-compact.
karlklose@chromium.org [Fri, 1 Apr 2011 11:59:00 +0000 (11:59 +0000)]
Cleanup usage of HEAP in mark-compact.

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

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

13 years agoIncrease coverage of global loads in optimized code
sgjesse@chromium.org [Fri, 1 Apr 2011 11:54:04 +0000 (11:54 +0000)]
Increase coverage of global loads in optimized code

In the cases where a global property cell cannot be used in the optimized code
use standard load ic to get the property instead of bailing out.

This is re-committing r7212 and r7215 which where reverted in r7239 with the addition of recoring the source position in the hydrogen code for the LoadGlobalCell instruction. To record that position an optional position field has been added to the variable proxy AST node.
Review URL: http://codereview.chromium.org/6758007

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

13 years agoDo not try to execute empty programs.
karlklose@chromium.org [Fri, 1 Apr 2011 11:47:42 +0000 (11:47 +0000)]
Do not try to execute empty programs.

After failing to read a non-existing file, the shell tried to execute the resulting empty program, which resulted in a null pointer dereference. This patch avoids execution of empty programs.

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

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

13 years agoFix SlotRef::SlotAddress for parameters indices.
vegorov@chromium.org [Fri, 1 Apr 2011 11:41:36 +0000 (11:41 +0000)]
Fix SlotRef::SlotAddress for parameters indices.

Fix %NewObjectFromBound to correctly handle optimized frames (including those with inlined functions).

Fix %_IsConstructCall handling in hydrogen: when called from inlined function return false constant directly instead of emiting HIsConstructCall.

Fix success case in TraceInline.

BUG=v8:1229
TEST=test/mjsunit/regress/regress-1229.js

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

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

13 years agoFix Win64 build isolate problem
danno@chromium.org [Fri, 1 Apr 2011 11:21:46 +0000 (11:21 +0000)]
Fix Win64 build isolate problem

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

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

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

13 years agoMinor cleanup in StaticMarkingVisitor.
vegorov@chromium.org [Fri, 1 Apr 2011 11:21:36 +0000 (11:21 +0000)]
Minor cleanup in StaticMarkingVisitor.

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

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

13 years agoNever use classic code generator.
ager@chromium.org [Fri, 1 Apr 2011 10:52:18 +0000 (10:52 +0000)]
Never use classic code generator.

Crankshaft is now the default on all platforms. This is the first
patch on the way to removing the classic code generator from the
system.

R=kmillikin@chromium.org
BUG=
TEST=

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

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

13 years agoFix pc offset calculation for stack traces
sgjesse@chromium.org [Fri, 1 Apr 2011 10:30:09 +0000 (10:30 +0000)]
Fix pc offset calculation for stack traces

Use the correct address of the code object to calculate the offset from the code object start to a pc for an optimized frame.

BUG=
TEST=

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

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

13 years agoDo not create a SharedFunctionInfo for closures on each recompilation.
antonm@chromium.org [Fri, 1 Apr 2011 10:20:39 +0000 (10:20 +0000)]
Do not create a SharedFunctionInfo for closures on each recompilation.

Unoptimized code should already keep a reference to the SharedFunctionInfo,
let's use it instead of allocating a new object and prohibiting SharedFunctionInfo
specific optimizations.

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

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

13 years agoFix minor issues in typed array load/store implementation
danno@chromium.org [Fri, 1 Apr 2011 08:03:34 +0000 (08:03 +0000)]
Fix minor issues in typed array load/store implementation

BUG=none
TEST=none

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

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

13 years agoImplement %_IsStringWrapperSafeForDefaultValue in full code generators.
ager@chromium.org [Fri, 1 Apr 2011 08:02:12 +0000 (08:02 +0000)]
Implement %_IsStringWrapperSafeForDefaultValue in full code generators.

R=sgjesse@chromium.org

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

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

13 years agoCleanup of Isolate::Current() and FACTORY macro usage in execution.cc.
ager@chromium.org [Fri, 1 Apr 2011 08:01:33 +0000 (08:01 +0000)]
Cleanup of Isolate::Current() and FACTORY macro usage in execution.cc.

BUG=none
TEST=none

Patch from Peter Varga <pvarga@inf.u-szeged.hu>.

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

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

13 years agoAdd missing #ifdef to lithium-gap-resolver-ia32.cc. This fixes the GYP-based
mark@chromium.org [Thu, 31 Mar 2011 20:09:45 +0000 (20:09 +0000)]
Add missing #ifdef to lithium-gap-resolver-ia32.cc. This fixes the GYP-based
64-bit Mac build.
Review URL: http://codereview.chromium.org/6728035

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

13 years agoVM initialization refactoring.
vitalyr@chromium.org [Thu, 31 Mar 2011 16:17:37 +0000 (16:17 +0000)]
VM initialization refactoring.

This patch introduces global once per-process initialization and moves
the OS and CPU setup there. This makes CPU features isolate-independent.

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

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

13 years agoRemove counters from generated isolate-independent MemCopy on ia32 platform.
whesse@chromium.org [Thu, 31 Mar 2011 12:04:00 +0000 (12:04 +0000)]
Remove counters from generated isolate-independent MemCopy on ia32 platform.

BUG=
TEST=

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

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

13 years agoUntank build after last commit.
erik.corry@gmail.com [Thu, 31 Mar 2011 11:52:51 +0000 (11:52 +0000)]
Untank build after last commit.
Review URL: http://codereview.chromium.org/6728021

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

13 years agoMicrooptimizations to the way we get the current heap.
erik.corry@gmail.com [Thu, 31 Mar 2011 10:55:53 +0000 (10:55 +0000)]
Microoptimizations to the way we get the current heap.
Review URL: http://codereview.chromium.org/6759030

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

13 years agoImprove property access with keys that can always be converted into a symbol string.
fschneider@chromium.org [Thu, 31 Mar 2011 10:33:45 +0000 (10:33 +0000)]
Improve property access with keys that can always be converted into a symbol string.
Review URL: http://codereview.chromium.org/6670115

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

13 years agoReapply changelist r7436.
lrn@chromium.org [Thu, 31 Mar 2011 08:12:17 +0000 (08:12 +0000)]
Reapply changelist r7436.

Remove test for existence of VM. Not all tests need the VM.

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

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

13 years agoRemove unused variable to please GCC 4.6.
vegorov@chromium.org [Wed, 30 Mar 2011 20:14:55 +0000 (20:14 +0000)]
Remove unused variable to please GCC 4.6.
Review URL: http://codereview.chromium.org/6777024

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

13 years agoOnly pass isolate parameter to C helper functions that need it.
vitalyr@chromium.org [Wed, 30 Mar 2011 18:05:16 +0000 (18:05 +0000)]
Only pass isolate parameter to C helper functions that need it.

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

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

13 years agoAutodetect no-strict-aliasing, propagate toolchain option to SCons
vegorov@chromium.org [Wed, 30 Mar 2011 17:33:18 +0000 (17:33 +0000)]
Autodetect no-strict-aliasing, propagate toolchain option to SCons

Patch by Bert Belder.

BUG=v8:884

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

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

13 years agoTry fix build.
vitalyr@chromium.org [Wed, 30 Mar 2011 17:19:44 +0000 (17:19 +0000)]
Try fix build.

TBR=slava

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

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

13 years agoFix the Cygwin build after isolates merge.
vegorov@chromium.org [Wed, 30 Mar 2011 17:16:36 +0000 (17:16 +0000)]
Fix the Cygwin build after isolates merge.

Patch by Bert Belder.

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

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

13 years agoFix the bug in the bug fix.
whesse@chromium.org [Wed, 30 Mar 2011 16:04:37 +0000 (16:04 +0000)]
Fix the bug in the bug fix.

BUG=
TEST=

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

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

13 years agoFix unused variable bug in r7444.
whesse@chromium.org [Wed, 30 Mar 2011 15:56:29 +0000 (15:56 +0000)]
Fix unused variable bug in r7444.

BUG=
TEST=

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

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

13 years agoReduce handle usage in type-info.cc PopulateMap.
whesse@chromium.org [Wed, 30 Mar 2011 15:31:16 +0000 (15:31 +0000)]
Reduce handle usage in type-info.cc PopulateMap.

BUG=none
TEST=none

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

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

13 years agoSpecialize ScavengingVisitor for the case when all logging and profiling is disabled.
vegorov@chromium.org [Wed, 30 Mar 2011 15:17:10 +0000 (15:17 +0000)]
Specialize ScavengingVisitor for the case when all logging and profiling is disabled.

By default use specialized static visitor and fallback to more generic one when one of the isolates with enabled logging/profiling hits GC.

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

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

13 years agoRevert changelist r7436.
whesse@chromium.org [Wed, 30 Mar 2011 14:42:47 +0000 (14:42 +0000)]
Revert changelist r7436.

BUG=
TEST=

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

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

13 years agoFix strict-aliasing violation in compilation of r7437.
whesse@chromium.org [Wed, 30 Mar 2011 14:31:32 +0000 (14:31 +0000)]
Fix strict-aliasing violation in compilation of r7437.

BUG=
TEST=

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

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

13 years agoClean up runtime functions.
vitalyr@chromium.org [Wed, 30 Mar 2011 14:17:39 +0000 (14:17 +0000)]
Clean up runtime functions.

Make all functions called from generated code declared using
RUNTIME_FUNCTION macro. This makes them all look consistent and allows
experimenting with various calling conventions.

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

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

13 years agoHeap profiler: emit more descriptive names for system objects and properties.
mikhail.naganov@gmail.com [Wed, 30 Mar 2011 14:04:50 +0000 (14:04 +0000)]
Heap profiler: emit more descriptive names for system objects and properties.

BUG=none
TEST=none

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

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

13 years agoAdd thread-safety to creation of MemCopy and modulo functions.
whesse@chromium.org [Wed, 30 Mar 2011 14:04:26 +0000 (14:04 +0000)]
Add thread-safety to creation of MemCopy and modulo functions.

BUG=
TEST=release test-api MultipleIsolatesOnIndividualThreads on Windows X64 build.

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

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

13 years agoAdd test suite for the preparser.
lrn@chromium.org [Wed, 30 Mar 2011 14:00:36 +0000 (14:00 +0000)]
Add test suite for the preparser.

The test suite builds the preparser test program and runs it on each .js file in
the test/preparser directory.
Currently it only checks that preparsing runs without crashing or erroring.
This also implicitly tests that the preparser library can be built.

TEST=test/preparser/*.js

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

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

13 years agoAdd initialization for has_external_callback field.
mikhail.naganov@gmail.com [Wed, 30 Mar 2011 13:30:52 +0000 (13:30 +0000)]
Add initialization for has_external_callback field.

It looks like we initialize TickSample values twice in some
situations, but I will fix this in a separate change list.

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

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

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

13 years agoFix a number of GC-unsafe evaluation order dependent places.
vegorov@chromium.org [Wed, 30 Mar 2011 10:46:55 +0000 (10:46 +0000)]
Fix a number of GC-unsafe evaluation order dependent places.

Also change places which are triggering false positive alert in our static analysis tool.

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

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

13 years agoFix another x64 compilation error due to some dead code.
whesse@chromium.org [Wed, 30 Mar 2011 10:38:25 +0000 (10:38 +0000)]
Fix another x64 compilation error due to some dead code.

BUG=v8:1286
TEST=compile V8 with gcc-4.5.x

Patch from Peter Varga <pvarga@inf.u-szeged.hu>.

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

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

13 years agoPreParser build fix
lrn@chromium.org [Wed, 30 Mar 2011 10:13:11 +0000 (10:13 +0000)]
PreParser build fix

Patch from Peter Varga <pvarga@inf.u-szeged.hu>.

BUG=none
TEST=none

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

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

13 years agoPass in isolate when reporting deletion of objects.
ager@chromium.org [Wed, 30 Mar 2011 09:37:26 +0000 (09:37 +0000)]
Pass in isolate when reporting deletion of objects.

R=erik.corry@gmail.com

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

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

13 years agoFix a couple of TLS isolate accesses in mark-compact.
ager@chromium.org [Wed, 30 Mar 2011 08:43:02 +0000 (08:43 +0000)]
Fix a couple of TLS isolate accesses in mark-compact.

R=erik.corry@gmail.com

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

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

13 years agoFix presubmit.
ager@chromium.org [Wed, 30 Mar 2011 08:24:46 +0000 (08:24 +0000)]
Fix presubmit.

TBR=karlklose@chromium.org

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

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

13 years agoPrepare push to trunk. Now working on version 3.2.7.
lrn@chromium.org [Wed, 30 Mar 2011 08:24:29 +0000 (08:24 +0000)]
Prepare push to trunk. Now working on version 3.2.7.

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

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

13 years agoCleanup usage of HEAP and FACTORY in the cache stub compiler.
ager@chromium.org [Wed, 30 Mar 2011 08:18:56 +0000 (08:18 +0000)]
Cleanup usage of HEAP and FACTORY in the cache stub compiler.

Review URL: http://codereview.chromium.org/6770011
Patch from Karl Klose <karlklose@chromium.org>.

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

13 years agoFix conditional on sse2 support in CompileMathFloor
ricow@chromium.org [Wed, 30 Mar 2011 07:22:53 +0000 (07:22 +0000)]
Fix conditional on sse2 support in CompileMathFloor

We should test that there is NO sse2 support and return undefined in
that case.
Review URL: http://codereview.chromium.org/6759021

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

13 years agoFixing build on Mac
lrn@chromium.org [Wed, 30 Mar 2011 07:00:35 +0000 (07:00 +0000)]
Fixing build on Mac

BUG=
TEST=

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

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

13 years agoFix xcode build warning in shell.cc
mmaly@chromium.org [Wed, 30 Mar 2011 04:36:41 +0000 (04:36 +0000)]
Fix xcode build warning in shell.cc
(out of order initialization).

BUG=
TEST=

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

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

13 years agoFix gyp files for d8 console. Include build/gyp in .gitignore.
mmaly@chromium.org [Tue, 29 Mar 2011 17:54:44 +0000 (17:54 +0000)]
Fix gyp files for d8 console. Include build/gyp in .gitignore.

BUG=
TEST=

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

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

13 years agoUse a fixed input register where we require a byte register.
fschneider@chromium.org [Tue, 29 Mar 2011 15:19:42 +0000 (15:19 +0000)]
Use a fixed input register where we require a byte register.

Currently we can't specify a set of registers as a register constraint.
This change forces a fixed register (eax) in places that need
a byte register.

BUG=77752
Review URL: http://codereview.chromium.org/6708109

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

13 years agoRemove redundant usages of some macros and functions in debug.cc
ager@chromium.org [Tue, 29 Mar 2011 14:00:41 +0000 (14:00 +0000)]
Remove redundant usages of some macros and functions in debug.cc

Cleanup of HEAP and FACTORY macros and use isolate_ member of classes where it is possible.
Cleanup of debugger(), debug() and global_handles() functions.
Pass the isolate pointer to the HandleScope constructor.

BUG=none
TEST=none

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

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

13 years agoCleanup of HEAP and LOGGER macro usage in cpu-profiler.cc.
ager@chromium.org [Tue, 29 Mar 2011 13:41:06 +0000 (13:41 +0000)]
Cleanup of HEAP and LOGGER macro usage in cpu-profiler.cc.

BUG=none
TEST=none

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

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

13 years agoDecrease number of runs in mjsunit/compiler/pic.js (Test still gets optimized, even...
ricow@chromium.org [Tue, 29 Mar 2011 13:20:05 +0000 (13:20 +0000)]
Decrease number of runs in mjsunit/compiler/pic.js (Test still gets optimized, even without --stress-opt)
Review URL: http://codereview.chromium.org/6731049

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

13 years agoMake the preparser standalone library and process build in debug mode.
lrn@chromium.org [Tue, 29 Mar 2011 13:06:48 +0000 (13:06 +0000)]
Make the preparser standalone library and process build in debug mode.

It should now be possible to build the preparser using 'scons preparser' in both release and debug modes.
Remove v8.h include from scanner-base.h and other files.
Remove NativeAllocationChecker and all of its kind.
Moved Isolate::PreallocatedStorage* to isolate.cc

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

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

13 years agoRemove snapshots-related code that is implemented in DevTools heap profiler.
mikhail.naganov@gmail.com [Tue, 29 Mar 2011 12:52:07 +0000 (12:52 +0000)]
Remove snapshots-related code that is implemented in DevTools heap profiler.

Diffs and retaining paths are implemented on JS side. There is no need
to maintain native implementation.

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

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

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

13 years agoFix null-pointer dereference in the compiler when running without sse3 support.
fschneider@chromium.org [Tue, 29 Mar 2011 10:51:35 +0000 (10:51 +0000)]
Fix null-pointer dereference in the compiler when running without sse3 support.

BUG=77654
Review URL: http://codereview.chromium.org/6731046

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

13 years agoFix x64 compilation error due to some dead code, by deleting the dead code.
whesse@chromium.org [Tue, 29 Mar 2011 10:48:28 +0000 (10:48 +0000)]
Fix x64 compilation error due to some dead code, by deleting the dead code.

BUG=1286
TEST=compile V8 with gcc-4.4.x.

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

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

13 years agoIntroduce scons target to build preparser libraray and proof-of-concept command line...
lrn@chromium.org [Tue, 29 Mar 2011 09:21:25 +0000 (09:21 +0000)]
Introduce scons target to build preparser libraray and proof-of-concept command line process.

The target doesn't compile yet, due to v8 dependencies introduced by isolates.

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

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

13 years agoRemove an extra comma from "tick" log records.
mikhail.naganov@gmail.com [Tue, 29 Mar 2011 09:18:08 +0000 (09:18 +0000)]
Remove an extra comma from "tick" log records.

This fixes VM state fetching from "tick" log records.

TBR=vitalyr@chromium.org
BUG=1287
TEST=none

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

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

13 years agoRename local variable in api.cc to avoid using C++0x keyword thread_local.
ager@chromium.org [Tue, 29 Mar 2011 08:04:26 +0000 (08:04 +0000)]
Rename local variable in api.cc to avoid using C++0x keyword thread_local.

Also, the name thread_local did not make much sense.

R=karlklose@chromium.org
BUG=1280

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

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

13 years agoFix reference to masm_ after delete in RegExpMacroAssemblerX64.
lrn@chromium.org [Tue, 29 Mar 2011 07:53:33 +0000 (07:53 +0000)]
Fix reference to masm_ after delete in RegExpMacroAssemblerX64.

BUG=77633

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

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

13 years agoARM: Check for minus zero when converting binary operation result to smi
sgjesse@chromium.org [Tue, 29 Mar 2011 07:43:27 +0000 (07:43 +0000)]
ARM: Check for minus zero when converting binary operation result to smi

The result of an Int32 binary operation will be converted to a smi if it fits. However a minus zero check was missing.

BUG=v8:1278
TEST=test/mjsunit/regress/regress-1278.js

R=ager@chromium.org
Review URL: http://codereview.chromium.org/6755009

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

13 years agoCleanup of HEAP and FACTORY macro usage in accessors.cc.
vitalyr@chromium.org [Tue, 29 Mar 2011 07:34:23 +0000 (07:34 +0000)]
Cleanup of HEAP and FACTORY macro usage in accessors.cc.

Patch by Peter Varga.

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

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

13 years agoBuild and pass all tests on FreeBSD.
ager@chromium.org [Tue, 29 Mar 2011 06:18:16 +0000 (06:18 +0000)]
Build and pass all tests on FreeBSD.

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

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

13 years agoAdd binary-op stub variant to handle oddball objects more efficiently.
fschneider@chromium.org [Mon, 28 Mar 2011 16:36:08 +0000 (16:36 +0000)]
Add binary-op stub variant to handle oddball objects more efficiently.
Review URL: http://codereview.chromium.org/6744006

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

13 years agoFix presubmit errors in r7388
sgjesse@chromium.org [Mon, 28 Mar 2011 13:37:09 +0000 (13:37 +0000)]
Fix presubmit errors in r7388

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

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

13 years agoRemove unused method, this is not used anymore after 7360.
ricow@chromium.org [Mon, 28 Mar 2011 13:34:10 +0000 (13:34 +0000)]
Remove unused method, this is not used anymore after 7360.
Review URL: http://codereview.chromium.org/6735012

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

13 years agoCleanup of FACTORY and HEAP macro usage in code-stubs.cc.
ager@chromium.org [Mon, 28 Mar 2011 13:33:48 +0000 (13:33 +0000)]
Cleanup of FACTORY and HEAP macro usage in code-stubs.cc.

BUG=
TEST=

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

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

13 years agoCleanup of Isolate::Current(), FACTORY and HEAP usage in bootstrapper.cc.
ager@chromium.org [Mon, 28 Mar 2011 13:09:37 +0000 (13:09 +0000)]
Cleanup of Isolate::Current(), FACTORY and HEAP usage in bootstrapper.cc.

BUG=
TEST=

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

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

13 years agoRe-establish mips basic infrastructure.
sgjesse@chromium.org [Mon, 28 Mar 2011 13:05:36 +0000 (13:05 +0000)]
Re-establish mips basic infrastructure.

This commit adds current working versions of assembler, macro-assembler,
disassembler, and simulator.

All other mips arch files are replaced with stubbed-out versions that
will build.

Arch independent files are updated as needed to support building and
running mips.

The only test is cctest/test-assembler-mips, and this passes on the
simulator and on mips hardware.

TEST=none
BUG=none

Patch by Paul Lind from MIPS.

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

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

13 years agoAdd more details the --trace-deopt output
sgjesse@chromium.org [Mon, 28 Mar 2011 12:27:56 +0000 (12:27 +0000)]
Add more details the --trace-deopt output

R=ager@chromium.org
Review URL: http://codereview.chromium.org/6735007

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

13 years agoPrepare push to trunk. Now working on version 3.2.6.
fschneider@chromium.org [Mon, 28 Mar 2011 09:33:40 +0000 (09:33 +0000)]
Prepare push to trunk. Now working on version 3.2.6.
Review URL: http://codereview.chromium.org/6755006

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

13 years agoFix arm compilation on OS X 10.5 gcc.
vitalyr@chromium.org [Mon, 28 Mar 2011 09:32:11 +0000 (09:32 +0000)]
Fix arm compilation on OS X 10.5 gcc.

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

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

13 years agoCleanup of HEAP and LOGGER macros usage in api.cc.
vitalyr@chromium.org [Mon, 28 Mar 2011 09:11:14 +0000 (09:11 +0000)]
Cleanup of HEAP and LOGGER macros usage in api.cc.

Patch by Peter Varga.

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

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

13 years agoRun array-length less times to make the builder green.
ricow@chromium.org [Mon, 28 Mar 2011 08:51:08 +0000 (08:51 +0000)]
Run array-length less times to make the builder green.

We still get this method optimized even without --always-opt flag.
Review URL: http://codereview.chromium.org/6719029

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

13 years agoRemove more TLS hurting Dromaeo DOM.
vitalyr@chromium.org [Mon, 28 Mar 2011 08:44:30 +0000 (08:44 +0000)]
Remove more TLS hurting Dromaeo DOM.

Patch by Dmitry Lomov.

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

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

13 years agoFollow jsc on not throwing when trying to add a property to a non-extensible object.
ricow@chromium.org [Mon, 28 Mar 2011 06:11:08 +0000 (06:11 +0000)]
Follow jsc on not throwing when trying to add a property to a non-extensible object.

This change makes us compatible with Safari on not throwing when trying to add a property to a non-extensible object.
Review URL: http://codereview.chromium.org/6712059

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

13 years agoSet optimizable to false on code object if shared function info says so.
ricow@chromium.org [Mon, 28 Mar 2011 05:57:27 +0000 (05:57 +0000)]
Set optimizable to false on code object if shared function info says so.

Because we might throw away code when doing code flushing we need to
set the optimizable flag to false in CompileLaze if this has been set
on the shared function info. This is the only place where this can
happen, since we always exchange the code with the laze compile stub
when doing code flushing.

The comment in AbortAndDisable actually states that this is already
the case (and that comment should now be ok).

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

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

13 years agoFast TLS support on mac.
vitalyr@chromium.org [Sun, 27 Mar 2011 18:40:48 +0000 (18:40 +0000)]
Fast TLS support on mac.

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

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

13 years agoAdd files missing from last commit.
vitalyr@chromium.org [Sun, 27 Mar 2011 16:18:34 +0000 (16:18 +0000)]
Add files missing from last commit.

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

13 years agoFast TLS support.
vitalyr@chromium.org [Sun, 27 Mar 2011 16:14:20 +0000 (16:14 +0000)]
Fast TLS support.

This patch adds common infrastructure for fast TLS support and
implementation on win32. More implementations will be added soon.

Fast TLS is controlled by V8_FAST_TLS define which is enabled by
default in our gyp and scons builds. The scons build has
fasttls={on,off} option so that we can see the effects of slow TLS
when needed.

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

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

13 years agoRemove unneeded TLS reads from v8::Null() and friends.
vitalyr@chromium.org [Fri, 25 Mar 2011 14:09:14 +0000 (14:09 +0000)]
Remove unneeded TLS reads from v8::Null() and friends.

Patch by Dmitry Lomov.

Code review: http://codereview.chromium.org/6737003/

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

13 years agoFix test that can fail for small denormals.
lrn@chromium.org [Fri, 25 Mar 2011 14:03:42 +0000 (14:03 +0000)]
Fix test that can fail for small denormals.

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

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

13 years agoFix typo in math-sqrt.js
lrn@chromium.org [Fri, 25 Mar 2011 13:48:17 +0000 (13:48 +0000)]
Fix typo in math-sqrt.js

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

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

13 years agoRemove TLS read from ON_BAILOUT.
vitalyr@chromium.org [Fri, 25 Mar 2011 13:32:06 +0000 (13:32 +0000)]
Remove TLS read from ON_BAILOUT.

Patch by Dmitry Lomov.

Original review: http://codereview.chromium.org/6731030/

TBR=ager@chromium.org

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

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

13 years agoDon't rely on C++ object padding across platforms
sgjesse@chromium.org [Fri, 25 Mar 2011 13:26:55 +0000 (13:26 +0000)]
Don't rely on C++ object padding across platforms

The use of sizeof on FrameDescription to get to the additional allocated memory for the frame content relies on the padding of the FrameDescription. On IA32 Linux the FrameDescription is not padded but on ARM Linux it is padded to become 8 byte aligned. With a snapshot generated with the ARM simulator on IA32 Linux that contains one or more of the deoptimization tables the deoptimization did not work as the access to the frame content was one off between the C++ code and the generated code.

R=ager@chromium.org
Review URL: http://codereview.chromium.org/6744004

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

13 years agoAdd more tests to mul-exhaustive for constant left/right operands.
lrn@chromium.org [Fri, 25 Mar 2011 13:24:20 +0000 (13:24 +0000)]
Add more tests to mul-exhaustive for constant left/right operands.

Make MJSUnit able to distinguish 0 and -0.

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

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

13 years agoCleanup more isolate usage in ia32 files.
ager@chromium.org [Fri, 25 Mar 2011 13:21:30 +0000 (13:21 +0000)]
Cleanup more isolate usage in ia32 files.

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

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

13 years agoCheck for SSE2 support in FullCodeGenerator::EmitMathPow.
vegorov@chromium.org [Fri, 25 Mar 2011 12:51:32 +0000 (12:51 +0000)]
Check for SSE2 support in FullCodeGenerator::EmitMathPow.

Do not emit call to the MathPowStub when SSE2 is not available because it requires SSE2.

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

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

13 years agoFix prettyprinter for --print-ast option.
lrn@chromium.org [Fri, 25 Mar 2011 11:53:29 +0000 (11:53 +0000)]
Fix prettyprinter for --print-ast option.

Was broken since isolates merge.

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

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

13 years agoFix ARM external array crankshaft bailout
danno@chromium.org [Fri, 25 Mar 2011 11:16:29 +0000 (11:16 +0000)]
Fix ARM external array crankshaft bailout

BUG=none
TEST=none

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

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

13 years agoCorrect order of arguments to CHECK_EQ in an API test.
ager@chromium.org [Fri, 25 Mar 2011 10:34:39 +0000 (10:34 +0000)]
Correct order of arguments to CHECK_EQ in an API test.

R=karlklose@chromium.org
BUG=1275
TEST=

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

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

13 years agoReimplement the padding of relocation information for lazy deoptimization on ia32.
ager@chromium.org [Fri, 25 Mar 2011 10:29:34 +0000 (10:29 +0000)]
Reimplement the padding of relocation information for lazy deoptimization on ia32.

The previous implementation attempted to keep track of the needed
relocation size for deoptimization while generating the optimized
code. That was error prone. This patch moves the relocation resizing
to the deoptimizer as the last step of creating an optimized code
object.

The down side to this approach is that two relocation information byte
arrays are created for all optimized functions that do not have enough
relocation space for lazy deoptimization.

R=sgjesse@chromium.org

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

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

13 years agoFix hydrogen statistics output when no code gets optimized.
fschneider@chromium.org [Fri, 25 Mar 2011 10:02:42 +0000 (10:02 +0000)]
Fix hydrogen statistics output when no code gets optimized.

In that case print 0 instead of NaN for normalized time and bytes allocated.

R=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/6696070

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

13 years agomprove code generation for DoAddI, DoSubI and DoBitI when the right hand
sgjesse@chromium.org [Fri, 25 Mar 2011 07:41:35 +0000 (07:41 +0000)]
mprove code generation for DoAddI, DoSubI and DoBitI when the right hand
side is a constant.

TEST=none
BUG=none

Patch by Rodolph Perfetta from ARM Ltd.

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

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

13 years agoFix build
danno@chromium.org [Thu, 24 Mar 2011 22:30:53 +0000 (22:30 +0000)]
Fix build

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

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

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

13 years agoSupport external arrays in Crankshaft
danno@chromium.org [Thu, 24 Mar 2011 22:14:15 +0000 (22:14 +0000)]
Support external arrays in Crankshaft

Add specialized hydrogen and lithium instructions to support loading and storing to external arrays.

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

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

13 years agoAllow calling stats API functions before we have an isolate.
vitalyr@chromium.org [Thu, 24 Mar 2011 19:05:49 +0000 (19:05 +0000)]
Allow calling stats API functions before we have an isolate.

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

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

13 years agoGet rid of more TLS fetches in API implementation.
vitalyr@chromium.org [Thu, 24 Mar 2011 18:49:45 +0000 (18:49 +0000)]
Get rid of more TLS fetches in API implementation.

Patch by Dmitry Lomov.

Original review: http://codereview.chromium.org/6715016/

TBR=dimich

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

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

13 years agoFix bug in test-macro-assembler-x64 which is the probable cause for hanging on Win64.
lrn@chromium.org [Thu, 24 Mar 2011 13:01:16 +0000 (13:01 +0000)]
Fix bug in test-macro-assembler-x64 which is the probable cause for hanging on Win64.

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

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

13 years agoImplemented FastAsciiStringJoin in X64 full codegen.
lrn@chromium.org [Thu, 24 Mar 2011 12:24:28 +0000 (12:24 +0000)]
Implemented FastAsciiStringJoin in X64 full codegen.

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

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

13 years agoFix bug that caused invalid code motion for certain loads instructions.
fschneider@chromium.org [Thu, 24 Mar 2011 11:37:24 +0000 (11:37 +0000)]
Fix bug that caused invalid code motion for certain loads instructions.

The dependency flags of instructions depending on a previous check have to
be a super-set of the flags of the check instructions.
Review URL: http://codereview.chromium.org/6730025

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