platform/upstream/v8.git
15 years agoFixed wrong filename in Visual Studio project file.
sgjesse@chromium.org [Wed, 8 Oct 2008 07:36:44 +0000 (07:36 +0000)]
Fixed wrong filename in Visual Studio project file.
Review URL: http://codereview.chromium.org/6336

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

15 years agoMoved the function GetValue from the code generator to the Reference
kmillikin@chromium.org [Wed, 8 Oct 2008 07:24:06 +0000 (07:24 +0000)]
Moved the function GetValue from the code generator to the Reference
helper class.

As a consequence, also removed the optional Reference from the code
generator state and got rid of some state-dependent behavior in the
code generator.
Review URL: http://codereview.chromium.org/6538

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

15 years agoFix broken build.
kasperl@chromium.org [Tue, 7 Oct 2008 14:00:28 +0000 (14:00 +0000)]
Fix broken build.
Review URL: http://codereview.chromium.org/6305

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

15 years ago- Changed the stack size in PreallocatedMemoryThread from 16K to 32K
bak@chromium.org [Tue, 7 Oct 2008 13:26:24 +0000 (13:26 +0000)]
- Changed the stack size in PreallocatedMemoryThread from 16K to 32K
  to make flexo happy.

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

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

15 years agoKMP algorithm is still left in the source. If this change checks out to be faster...
lrn@chromium.org [Tue, 7 Oct 2008 13:25:49 +0000 (13:25 +0000)]
KMP algorithm is still left in the source. If this change checks out to be faster, it should be removed.

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

15 years agoRolled back eager hash calculation during flattening. Introduced
christian.plesner.hansen@gmail.com [Tue, 7 Oct 2008 13:04:56 +0000 (13:04 +0000)]
Rolled back eager hash calculation during flattening.  Introduced
eager flattening of really short strings and lookup of one-character
strings in the one-character symbol cache.

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

15 years ago-Fixed regression in S15.5.5.1_A5.js.
bak@chromium.org [Tue, 7 Oct 2008 12:06:48 +0000 (12:06 +0000)]
-Fixed regression in S15.5.5.1_A5.js.
 I eliminated the fast case check in ToPrimitive.

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

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

15 years agoMove code generation for storing to a reference out of the AST nodes, and
kmillikin@chromium.org [Tue, 7 Oct 2008 11:19:44 +0000 (11:19 +0000)]
Move code generation for storing to a reference out of the AST nodes, and
onto the platform-specific Reference class defined in codegen-*.cc.  This
removes all of the static code generator functions.
Review URL: http://codereview.chromium.org/6527

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

15 years ago- Added %IsArrayClass, %IsDateClass, and %IsStringClass.
bak@chromium.org [Tue, 7 Oct 2008 10:54:50 +0000 (10:54 +0000)]
- Added %IsArrayClass, %IsDateClass, and %IsStringClass.
- Added the FLOOR macro that only works on Number objects.
- Added LocalTimeNoCheck in the date code to eliminate some isNaN checks.
- Change computation of four_year_cycle_table to load time.
- Added fast case check to EQUALS and STRICT_EQUALS.

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

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

15 years ago- Fixed the parameter pasing to SharedStoreIC_ExtendStorage
bak@chromium.org [Tue, 7 Oct 2008 10:32:39 +0000 (10:32 +0000)]
- Fixed the parameter pasing to SharedStoreIC_ExtendStorage
  for keyed store ic.

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

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

15 years agoCalculate string hash during flattening and convert flat strings to
christian.plesner.hansen@gmail.com [Tue, 7 Oct 2008 10:10:03 +0000 (10:10 +0000)]
Calculate string hash during flattening and convert flat strings to
symbols.

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

15 years ago- Fixed Issue 3201: Embedded Google Calendar crashes the renderer
bak@chromium.org [Tue, 7 Oct 2008 09:28:04 +0000 (09:28 +0000)]
- Fixed Issue 3201: Embedded Google Calendar crashes the renderer
  ExtendStorage did not work with keyed store IC.
- Reduced instructions generated when performing a tail call to
  kSharedStoreIC_ExtendStorage
- Moved test/mjsunit/bugs/bug-109.js
  to test/mjsunit/keyed-storage-extend.js

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

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

15 years agoFixed typo
lrn@chromium.org [Tue, 7 Oct 2008 09:04:23 +0000 (09:04 +0000)]
Fixed typo

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

15 years agoDocument (and assert) some of the safe-but-brittle implicit assumptions
kmillikin@chromium.org [Tue, 7 Oct 2008 08:47:15 +0000 (08:47 +0000)]
Document (and assert) some of the safe-but-brittle implicit assumptions
about references in the code generators.
Review URL: http://codereview.chromium.org/6301

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

15 years agoFast direct-access version of KPM string match.
lrn@chromium.org [Tue, 7 Oct 2008 08:11:44 +0000 (08:11 +0000)]
Fast direct-access version of KPM string match.

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

15 years agoAdd reproducible failing test case for bug 109.
kasperl@chromium.org [Tue, 7 Oct 2008 08:11:38 +0000 (08:11 +0000)]
Add reproducible failing test case for bug 109.
Review URL: http://codereview.chromium.org/6300

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

15 years agoAdding Paolo Giarrusso to AUTHORS file for his hash code patch.
ager@chromium.org [Tue, 7 Oct 2008 07:26:06 +0000 (07:26 +0000)]
Adding Paolo Giarrusso to AUTHORS file for his hash code patch.

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

15 years agoRemoved some debug code related to issue 1308895 which was fixed in CL
sgjesse@chromium.org [Tue, 7 Oct 2008 07:23:24 +0000 (07:23 +0000)]
Removed some debug code related to issue 1308895 which was fixed in CL
http://codereview.chromium.org/6271.
Review URL: http://codereview.chromium.org/6299

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

15 years agoDeclareContextSlot took an extra completely random argument from the
kmillikin@chromium.org [Mon, 6 Oct 2008 16:57:38 +0000 (16:57 +0000)]
DeclareContextSlot took an extra completely random argument from the
stack which was returned and always pushed back.

Removed it.
Review URL: http://codereview.chromium.org/6802

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

15 years agoSkip the test debug-scripts-request on ARM in debug mode. It has consistently
sgjesse@chromium.org [Mon, 6 Oct 2008 15:16:53 +0000 (15:16 +0000)]
Skip the test debug-scripts-request on ARM in debug mode. It has consistently
been running for more than 3 minutes on Arm�g.g.
Review URL: http://codereview.chromium.org/6273

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

15 years agoMarked a test parsing on ARM as parsing.
sgjesse@chromium.org [Mon, 6 Oct 2008 14:30:24 +0000 (14:30 +0000)]
Marked a test parsing on ARM as parsing.

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

15 years agoFix lint issue.
kasperl@chromium.org [Mon, 6 Oct 2008 13:37:27 +0000 (13:37 +0000)]
Fix lint issue.

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

15 years agoFixed unsafe code where a GC could occour after a Handle had been deferenced.
sgjesse@chromium.org [Mon, 6 Oct 2008 13:20:27 +0000 (13:20 +0000)]
Fixed unsafe code where a GC could occour after a Handle had been deferenced.

  instances->set(i, *GetScriptWrapper(script));

GetScriptWrapper can call GC. The failure have only been seen on ARM, where
the g++ compiler pulls out the object from the instances handle to a register
before calling GetScriptWrapper causing set to be called on an object which
may have moved.

Marked a test on ARM as no longer flaky, whereas two other fails consistently
but that is no longer related to the problem fixed above.

BUG=1308895
Review URL: http://codereview.chromium.org/6271

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

15 years agoThe constructor properties on the prototypes of error objects should
ager@chromium.org [Mon, 6 Oct 2008 12:53:02 +0000 (12:53 +0000)]
The constructor properties on the prototypes of error objects should
not be enumerable.
Review URL: http://codereview.chromium.org/6270

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

15 years agoRefactor the arguments access code to make it easier to read.
kasperl@chromium.org [Mon, 6 Oct 2008 11:04:03 +0000 (11:04 +0000)]
Refactor the arguments access code to make it easier to read.
Review URL: http://codereview.chromium.org/6491

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

15 years agoUse String::kHashShift instead of kHashShift. TBR=ager@chromium.org.
kasperl@chromium.org [Mon, 6 Oct 2008 09:43:24 +0000 (09:43 +0000)]
Use String::kHashShift instead of kHashShift. TBR=ager@chromium.org.

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

15 years agoExclude the bit-field bits from string hash codes. String hash codes
ager@chromium.org [Mon, 6 Oct 2008 09:35:52 +0000 (09:35 +0000)]
Exclude the bit-field bits from string hash codes.  String hash codes
are always odd if the bit-field bits are included.

Modified a couple of debugger tests that relied on the ordering of
elements in descriptor arrays.  Descriptor arrays are sorted by
hash-code values, so the order changes if we change the hash code.
Review URL: http://codereview.chromium.org/6489

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

15 years agoUpdate version to 0.3.5 in preparation for pushing
kasperl@chromium.org [Mon, 6 Oct 2008 08:07:59 +0000 (08:07 +0000)]
Update version to 0.3.5 in preparation for pushing
0.3.4 to trunk.
Review URL: http://codereview.chromium.org/6265

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

15 years agoLet the current state of the benchmarks be known to the
kasperl@chromium.org [Mon, 6 Oct 2008 07:55:10 +0000 (07:55 +0000)]
Let the current state of the benchmarks be known to the
world as version 2.
Review URL: http://codereview.chromium.org/6487

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

15 years agoAdapt the test expectations on ARM to make ARMu pass
kasperl@chromium.org [Mon, 6 Oct 2008 07:37:24 +0000 (07:37 +0000)]
Adapt the test expectations on ARM to make ARMu pass
in debug mode.
Review URL: http://codereview.chromium.org/6264

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

15 years agoFix ARMu debug mode failure by handling runtime calls
kasperl@chromium.org [Mon, 6 Oct 2008 06:41:10 +0000 (06:41 +0000)]
Fix ARMu debug mode failure by handling runtime calls
with the wrong number of arguments on ARM in the same
way it's done on IA32. Make sure to remove arguments
on both platforms and return the illegal result in
register eax or r0.
Review URL: http://codereview.chromium.org/6263

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

15 years agoImprove performance of arguments object allocation by taking
kasperl@chromium.org [Mon, 6 Oct 2008 06:08:15 +0000 (06:08 +0000)]
Improve performance of arguments object allocation by taking
care of arguments adaptor frames in the generated code.
Review URL: http://codereview.chromium.org/6262

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

15 years agoUpdate v8natives to use InstallFunctions to get the correct function
ager@chromium.org [Fri, 3 Oct 2008 18:00:28 +0000 (18:00 +0000)]
Update v8natives to use InstallFunctions to get the correct function
names for library functions.
Review URL: http://codereview.chromium.org/6447

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

15 years agoFix lint error.
erik.corry@gmail.com [Fri, 3 Oct 2008 16:58:28 +0000 (16:58 +0000)]
Fix lint error.

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

15 years agoRecommit reverted change, now with fixes to make it work with gcc-4.2.
erik.corry@gmail.com [Fri, 3 Oct 2008 15:53:44 +0000 (15:53 +0000)]
Recommit reverted change, now with fixes to make it work with gcc-4.2.
Allow gcc to use strict (type-based) aliasing when optimizing.

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

15 years agoRevert 428. Breaks 64-bit compilation.
kasperl@chromium.org [Fri, 3 Oct 2008 13:32:43 +0000 (13:32 +0000)]
Revert 428. Breaks 64-bit compilation.
Review URL: http://codereview.chromium.org/6446

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

15 years agoFix lint issues.
kasperl@chromium.org [Fri, 3 Oct 2008 13:26:00 +0000 (13:26 +0000)]
Fix lint issues.

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

15 years agoAllow gcc to use strict-aliasing rules to control pointer aliasing when
erik.corry@gmail.com [Fri, 3 Oct 2008 13:11:19 +0000 (13:11 +0000)]
Allow gcc to use strict-aliasing rules to control pointer aliasing when
optimizing.  Obfuscate a few casts with bit_cast to avoid warnings from
gcc.
Review URL: http://codereview.chromium.org/6236

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

15 years agoMark a test as flaky on ARM. Fails on hardware but passes in simulator.Z
sgjesse@chromium.org [Fri, 3 Oct 2008 12:15:32 +0000 (12:15 +0000)]
Mark a test as flaky on ARM. Fails on hardware but passes in simulator.Z

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

15 years agoThis change removes the %AddProperty native JavaScript function from V8.
whessev8 [Fri, 3 Oct 2008 12:14:29 +0000 (12:14 +0000)]
This change removes the %AddProperty native JavaScript function from V8.
All uses of %AddProperty are replaced by %SetProperty.  A few uses of
IgnoreAttributesAndSetLocalProperty are added, and the runtime version
of it adds a PropertyAttributes argument.  Only the JSObject class
in objects.cc now uses AddProperty, and it can become private.

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

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

15 years agoFixed whitespace. Remember to run presubmit before submitting.
lrn@chromium.org [Fri, 3 Oct 2008 12:07:42 +0000 (12:07 +0000)]
Fixed whitespace. Remember to run presubmit before submitting.

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

15 years agoAdded fast-case switch to ARM.
lrn@chromium.org [Fri, 3 Oct 2008 12:04:59 +0000 (12:04 +0000)]
Added fast-case switch to ARM.
Refactored to reuse code between ia32 and ARM.
Added tests for switch.

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

15 years agoLog ticks when the prof flag is set. Avoid letting --prof
kasperl@chromium.org [Fri, 3 Oct 2008 10:51:08 +0000 (10:51 +0000)]
Log ticks when the prof flag is set. Avoid letting --prof
imply --log.
Review URL: http://codereview.chromium.org/6444

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

15 years agoChanged so that --log-code implies --log.
christian.plesner.hansen@gmail.com [Fri, 3 Oct 2008 10:42:53 +0000 (10:42 +0000)]
Changed so that --log-code implies --log.

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

15 years agoRefactored the logic for entering the debugger into one abstraction EnterDebugger.
sgjesse@chromium.org [Fri, 3 Oct 2008 09:57:18 +0000 (09:57 +0000)]
Refactored the logic for entering the debugger into one abstraction EnterDebugger.

Removed the static initializer for Top::break_access_.
Review URL: http://codereview.chromium.org/6234

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

15 years ago- Added fast case for extending the JSObject properties storage.
bak@chromium.org [Fri, 3 Oct 2008 09:16:12 +0000 (09:16 +0000)]
- Added fast case for extending the JSObject properties storage.
- Changed date to compute local_time_offset at load time.

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

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

15 years agoUpdated the snapshot builder to reflect the removed extensions in http://codereview...
sgjesse@chromium.org [Fri, 3 Oct 2008 09:05:58 +0000 (09:05 +0000)]
Updated the snapshot builder to reflect the removed extensions in codereview.chromium.org/6233.
Review URL: http://codereview.chromium.org/6440

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

15 years agoFixed the path for include files v8.h and v8-debug.h in Visual Studio project.
sgjesse@chromium.org [Fri, 3 Oct 2008 08:31:19 +0000 (08:31 +0000)]
Fixed the path for include files v8.h and v8-debug.h in Visual Studio project.
Review URL: http://codereview.chromium.org/6601

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

15 years agoRemoved the print, load, quit and version extensions from the VM. Moved the print...
sgjesse@chromium.org [Fri, 3 Oct 2008 08:30:22 +0000 (08:30 +0000)]
Removed the print, load, quit and version extensions from the VM. Moved the print extension to the compiler test as it was used there. Changed the serializer tests to only use the gc extension.

This also gets rid of 8 static initializers.
Review URL: http://codereview.chromium.org/6233

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

15 years agoCleanup string builtins.
ager@chromium.org [Fri, 3 Oct 2008 07:58:18 +0000 (07:58 +0000)]
Cleanup string builtins.
Review URL: http://codereview.chromium.org/6602

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

15 years agoMinor cleanups to macros.py.
kasperl@chromium.org [Fri, 3 Oct 2008 07:36:03 +0000 (07:36 +0000)]
Minor cleanups to macros.py.
Review URL: http://codereview.chromium.org/6232

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

15 years agoMake sure that the name accessor on functions return the expected
ager@chromium.org [Fri, 3 Oct 2008 07:14:31 +0000 (07:14 +0000)]
Make sure that the name accessor on functions return the expected
names.

- Set the correct name of library functions.
- Set the name of C++ callback functions.
- Clean up a couple of out-dated comments related to literal creation.

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

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

15 years ago- Case-sensitive atomic regular expressions now use the same code as
christian.plesner.hansen@gmail.com [Thu, 2 Oct 2008 15:35:28 +0000 (15:35 +0000)]
- Case-sensitive atomic regular expressions now use the same code as
  String.indexOf to do matching.
- The --log option is no longer automatically enabled by the other log
  options.

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

15 years agoPrint one line when pushing an immediate followed by a pop is
kmillikin@chromium.org [Thu, 2 Oct 2008 14:23:20 +0000 (14:23 +0000)]
Print one line when pushing an immediate followed by a pop is
eliminated.
Review URL: http://codereview.chromium.org/6078

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

15 years agoReplaces two non-private uses of AddProperty with IgnoreAttributesAndSetLocalProperty...
whessev8 [Thu, 2 Oct 2008 13:45:21 +0000 (13:45 +0000)]
Replaces two non-private uses of AddProperty with IgnoreAttributesAndSetLocalProperty.  Adds attributes parameter to IgnoreAtt..Property().  Makes IgnoreAtt..Property() an exact clone of SetProperty(), with explicit changes.

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

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

15 years agoIn the code generator, avoid loading the arguments object to the
kmillikin@chromium.org [Thu, 2 Oct 2008 12:44:47 +0000 (12:44 +0000)]
In the code generator, avoid loading the arguments object to the
expression stack when it is already there.  Also, cleanup up the
(two!) extra copies of the arguments object left on the stack.
Review URL: http://codereview.chromium.org/5667

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

15 years agoMove code for code generator static member functions, code generation
kmillikin@chromium.org [Thu, 2 Oct 2008 11:54:32 +0000 (11:54 +0000)]
Move code for code generator static member functions, code generation
functions on AST nodes, and helper class member functions (eg, stub
classes) toward the bottom of the codegen*.cc files.  The macro __ is
now #define'd exactly twice and #undef'd twice.
Review URL: http://codereview.chromium.org/6075

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

15 years agoSmall cleanup of the code generator: make the static code gen
kmillikin@chromium.org [Thu, 2 Oct 2008 11:14:50 +0000 (11:14 +0000)]
Small cleanup of the code generator: make the static code gen
functions and the ones defined on the AST nodes take a code generator,
rather than a macro assembler and (sometimes) scope.

Uniformly use the __ macro for masm_/masm in the codegen*.cc files.
Review URL: http://codereview.chromium.org/5663

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

15 years agoChanged optimization from /Ox to the (more) commonly used /O2 (which includes
sgjesse@chromium.org [Thu, 2 Oct 2008 09:41:01 +0000 (09:41 +0000)]
Changed optimization from /Ox to the (more) commonly used /O2 (which includes
/GF) in both SCons and Visual Studio build. There is not mesurable difference
neither in speed nor in code size.

Added whole program optimization to the SCons release build. This clutters the
linking of the samples a little with the option /LTCG. This option is not
strictly needed for linking, but if it is not specified the linker complaints
as it can see object files compiled with /GL and then restarts itself with
/LTCG which dosen't look very pretty.
Review URL: http://codereview.chromium.org/5664

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

15 years agoFixed use of undefined in ArraySort.
olehougaard [Thu, 2 Oct 2008 08:58:03 +0000 (08:58 +0000)]
Fixed use of undefined in ArraySort.

Changed 'undefined' in ArraySort to 'void 0'. Also added regression test to catch the error.
Review URL: http://codereview.chromium.org/6073

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

15 years agoVarious minor improvements of sort.
olehougaard [Thu, 2 Oct 2008 08:15:20 +0000 (08:15 +0000)]
Various minor improvements of sort.
Review URL: http://codereview.chromium.org/6035

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

15 years agoRemoved the use of Math.random() and new Date() for building
kasperl@chromium.org [Thu, 2 Oct 2008 07:43:46 +0000 (07:43 +0000)]
Removed the use of Math.random() and new Date() for building
the RNG pool in the crypto benchmark.
Review URL: http://codereview.chromium.org/6071

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

15 years agoFollow up to change 402:
iposva@chromium.org [Wed, 1 Oct 2008 20:21:34 +0000 (20:21 +0000)]
Follow up to change 402:
- Remove unused symbol finally_state_symbol.

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

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

15 years agoGet rid of the local variable we use to keep the state
kasperl@chromium.org [Wed, 1 Oct 2008 10:57:37 +0000 (10:57 +0000)]
Get rid of the local variable we use to keep the state
during the execution of a finally block by just pushing
the state on the execution stack instead.
Review URL: http://codereview.chromium.org/5626

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

15 years agoAdded test timing.
christian.plesner.hansen@gmail.com [Wed, 1 Oct 2008 09:07:45 +0000 (09:07 +0000)]
Added test timing.

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

15 years agoFix issue 86 by keeping track of the fact that finally blocks
kasperl@chromium.org [Wed, 1 Oct 2008 07:43:00 +0000 (07:43 +0000)]
Fix issue 86 by keeping track of the fact that finally blocks
are evaluated with an extra element on the stack, which needs
to be taken into account when breaking and continuing.

I'll clean up the code and add an abstraction for manipulating
the break stack height in a future CL -- I want to try to get
rid of the separate local variable we keep around for the "state"
when running in a finally block.
Review URL: http://codereview.chromium.org/5625

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

15 years agoAdded option to parallelize test runs.
christian.plesner.hansen@gmail.com [Tue, 30 Sep 2008 15:32:07 +0000 (15:32 +0000)]
Added option to parallelize test runs.

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

15 years agoDisallow copy and assigning a few public objects.
deanm@chromium.org [Tue, 30 Sep 2008 11:43:18 +0000 (11:43 +0000)]
Disallow copy and assigning a few public objects.

BUG=97

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

15 years agoRemove some craaaazy trailing whitespace.
deanm@chromium.org [Tue, 30 Sep 2008 11:41:58 +0000 (11:41 +0000)]
Remove some craaaazy trailing whitespace.

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

15 years agoRemove an ARM jump elimination test.
deanm@chromium.org [Tue, 30 Sep 2008 10:20:58 +0000 (10:20 +0000)]
Remove an ARM jump elimination test.

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

15 years agoFaster sort.
olehougaard [Tue, 30 Sep 2008 09:58:22 +0000 (09:58 +0000)]
Faster sort.

Using insertion sort below a certain threshold to give faster sorting of arrays (esp. short ones).
Review URL: http://codereview.chromium.org/6006

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

15 years agoRemove the ARM jump elimination. This completely removes jump elimination.
deanm@chromium.org [Tue, 30 Sep 2008 09:42:08 +0000 (09:42 +0000)]
Remove the ARM jump elimination.  This completely removes jump elimination.

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

15 years agoRemove x86 jump elimination. This was just complicated enough to make it annoying...
deanm@chromium.org [Mon, 29 Sep 2008 07:33:58 +0000 (07:33 +0000)]
Remove x86 jump elimination.  This was just complicated enough to make it annoying to support short jump encoding.  I measured a code size increase of 5 bytes on the V8 benchmark, from missing one jump to next elimination possibility.

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

15 years agoClean up some naming to be consistent between runtime and JS code.
deanm@chromium.org [Sun, 28 Sep 2008 13:21:41 +0000 (13:21 +0000)]
Clean up some naming to be consistent between runtime and JS code.

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

15 years agoRemove two cases of needlessly jumping to the next instruction. The jump eliminator...
deanm@chromium.org [Sun, 28 Sep 2008 12:21:12 +0000 (12:21 +0000)]
Remove two cases of needlessly jumping to the next instruction.  The jump eliminator will remove these cases, but it's easy enough to just do statically in the code, and not require the eliminator to do it at runtime.

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

15 years agoRemove ComparisonDeferred and inline the non-smi case. ARM is doing it's own thing...
deanm@chromium.org [Sun, 28 Sep 2008 09:38:09 +0000 (09:38 +0000)]
Remove ComparisonDeferred and inline the non-smi case.  ARM is doing it's own thing here.  This should cut down on code size, and open up two possiblities for short jump encoding.

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

15 years agoFix failing test caused by extra precision in register allocated fp values.
erik.corry@gmail.com [Fri, 26 Sep 2008 23:14:43 +0000 (23:14 +0000)]
Fix failing test caused by extra precision in register allocated fp values.
Review URL: http://codereview.chromium.org/5019

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

15 years agoFix build breakage on ARM by removing IA32 flags
erik.corry@gmail.com [Fri, 26 Sep 2008 16:14:22 +0000 (16:14 +0000)]
Fix build breakage on ARM by removing IA32 flags

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

15 years agoUse -O9, tune for nocoma, assume at least a Pentium when generating code.
erik.corry@gmail.com [Fri, 26 Sep 2008 15:53:42 +0000 (15:53 +0000)]
Use -O9, tune for nocoma, assume at least a Pentium when generating code.
Review URL: http://codereview.chromium.org/4298

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

15 years agoAdded new test type, message, to test error reporting.
christian.plesner.hansen@gmail.com [Fri, 26 Sep 2008 13:06:49 +0000 (13:06 +0000)]
Added new test type, message, to test error reporting.

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

15 years agoFix stack check wraparound problem for ARM simulator.
erik.corry@gmail.com [Fri, 26 Sep 2008 12:11:35 +0000 (12:11 +0000)]
Fix stack check wraparound problem for ARM simulator.
Review URL: http://codereview.chromium.org/2926

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

15 years agoStack checks in generated code for function apply is now controlled
sgjesse@chromium.org [Fri, 26 Sep 2008 10:27:39 +0000 (10:27 +0000)]
Stack checks in generated code for function apply is now controlled
by the check-stack flag. Changed the condition code from greater to
above_equal as the SP should be unsigned (this matches the stack
check in function entry).
Review URL: http://codereview.chromium.org/4296

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

15 years agoAdding comment to the fix of issue 95.
olehougaard [Fri, 26 Sep 2008 10:25:14 +0000 (10:25 +0000)]
Adding comment to the fix of issue 95.
Review URL: http://codereview.chromium.org/5003

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

15 years agoFix for issue 95.
olehougaard [Fri, 26 Sep 2008 09:15:02 +0000 (09:15 +0000)]
Fix for issue 95.

Fixed QuickSort so it doesn't overflow the stack with non-reflexsive comparison functions.
Review URL: http://codereview.chromium.org/4297

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

15 years agoMark test test-debug/ThreadedDebugging as flaky.
sgjesse@chromium.org [Fri, 26 Sep 2008 07:57:11 +0000 (07:57 +0000)]
Mark test test-debug/ThreadedDebugging as flaky.
Review URL: http://codereview.chromium.org/5001

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

15 years agowhich it now does.
christian.plesner.hansen@gmail.com [Fri, 26 Sep 2008 03:44:09 +0000 (03:44 +0000)]
which it now does.

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

15 years agoIntroduce some checks to indicate that the benchmarks have run correctly.
erik.corry@gmail.com [Thu, 25 Sep 2008 13:48:27 +0000 (13:48 +0000)]
Introduce some checks to indicate that the benchmarks have run correctly.
This change affects the results by around 2% so the version number has been
bumped to 2 to avoid confusion.
Review URL: http://codereview.chromium.org/4401

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

15 years agoTuning quick sort.
olehougaard [Thu, 25 Sep 2008 13:21:56 +0000 (13:21 +0000)]
Tuning quick sort.

Tuning the quick sort algorithm to avoid degenerating to an n^2 algorithm when all elements are the same.
Review URL: http://codereview.chromium.org/4083

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

15 years agoAdded copyright headers to tests.
christian.plesner.hansen@gmail.com [Thu, 25 Sep 2008 13:14:23 +0000 (13:14 +0000)]
Added copyright headers to tests.

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

15 years agoFixed problem where the test framework would assume that .svn was a
christian.plesner.hansen@gmail.com [Thu, 25 Sep 2008 13:01:26 +0000 (13:01 +0000)]
Fixed problem where the test framework would assume that .svn was a
test suite and then fail.

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

15 years ago- Added support for warnings on unused test rules.
christian.plesner.hansen@gmail.com [Thu, 25 Sep 2008 12:38:34 +0000 (12:38 +0000)]
- Added support for warnings on unused test rules.
- Added automatic loading of test suites

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

15 years agoUsing quick sort for arrays.
olehougaard [Thu, 25 Sep 2008 11:28:02 +0000 (11:28 +0000)]
Using quick sort for arrays.

Using quick sort in ArraySort instead of heap sort for better performance.
Review URL: http://codereview.chromium.org/4065

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

15 years agoUpdate version string and ChangeLog. We are now working on version
ager@chromium.org [Thu, 25 Sep 2008 08:45:38 +0000 (08:45 +0000)]
Update version string and ChangeLog.  We are now working on version
0.3.4.
Review URL: http://codereview.chromium.org/4272

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

15 years ago- Added a map cache for literal objects. This will
bak@chromium.org [Thu, 25 Sep 2008 07:46:07 +0000 (07:46 +0000)]
- Added a map cache for literal objects. This will
  canonicalize maps for object literals. JSON objects
  with the same set of properties names will then
  share the same map.
  This reduces the amount of generated code associated
  with object literals.
- Added a flag canonicalize_object_literal_maps.
  (default true)
- Changed the format of a function's literal array.
  Only the global context is now stored in the literal prefix.

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

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

15 years agoMake sure that the body of the function created by calling Function is
ager@chromium.org [Thu, 25 Sep 2008 07:35:45 +0000 (07:35 +0000)]
Make sure that the body of the function created by calling Function is
on a line of its own.  This allows the body to be terminated by a
single-line comment.

Also, make sure to set the name of the function to anonymous after the
fact so that recursion through the name anonymous is not allowed and
so that global variables called anonymous are not shadowed.

This is a fix for http://code.google.com/p/v8/issues/detail?id=85
Review URL: http://codereview.chromium.org/4248

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

15 years agoDon't defer the stack check failure code. It is a CallStub, which will be a single...
deanm@chromium.org [Wed, 24 Sep 2008 16:34:00 +0000 (16:34 +0000)]
Don't defer the stack check failure code.  It is a CallStub, which will be a single 5 byte call instruction.  This should cause equivalent code size now, but opens up the opportunity to make one of the most common jcc's to use short encoding in the future.

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

15 years agoThis is a fix of issue http://b/issue?id=1381845.
feng@chromium.org [Wed, 24 Sep 2008 15:47:34 +0000 (15:47 +0000)]
This is a fix of issue http://b/issue?id=1381845.

Check domain security on prototypes in for-in loop.

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

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

15 years agoAdded a profiling option (prof) to the SCons build. Currently
sgjesse@chromium.org [Wed, 24 Sep 2008 08:47:39 +0000 (08:47 +0000)]
Added a profiling option (prof) to the SCons build. Currently
it just makes the linker generate a MAP file for the shell
sample on Windows.
Review URL: http://codereview.chromium.org/4064

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

15 years agoAdded some peephole optimizaitions regarding push of immediate followed
sgjesse@chromium.org [Tue, 23 Sep 2008 13:31:14 +0000 (13:31 +0000)]
Added some peephole optimizaitions regarding push of immediate followed
by pop eax.
Review URL: http://codereview.chromium.org/4212

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

15 years agoEnable string pooling in the VS release build. This saves 46k for a v8_shell_sample...
deanm@chromium.org [Tue, 23 Sep 2008 12:32:43 +0000 (12:32 +0000)]
Enable string pooling in the VS release build.  This saves 46k for a v8_shell_sample.exe, I didn't measure performance or the overall change to a Chromium build.  I think this option should always make sense anyway, unless we're using some string constants incorrectly.

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