platform/upstream/v8.git
15 years ago* Special case for last char in BM-match
lrn@chromium.org [Thu, 16 Oct 2008 11:33:19 +0000 (11:33 +0000)]
* Special case for last char in BM-match
* Patch from Erik Corry to separate BM-algoritm into special case
  functions. Also changes condition for bailing out of simple search.
* Added simple search with no bailout for very short patterns.

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

15 years agoUpdate ChangeLog and version number to prepare for new trunk version.
ager@chromium.org [Thu, 16 Oct 2008 08:02:51 +0000 (08:02 +0000)]
Update ChangeLog and version number to prepare for new trunk version.
We are now working on version 0.4.0.
Review URL: http://codereview.chromium.org/7433

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

15 years ago-Eliminated a excessive memory traffic in CopyObject.
bak@chromium.org [Thu, 16 Oct 2008 07:17:26 +0000 (07:17 +0000)]
-Eliminated a excessive memory traffic in CopyObject.

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

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

15 years agoAddressed review comment by Kasper:
iposva@chromium.org [Thu, 16 Oct 2008 05:58:09 +0000 (05:58 +0000)]
Addressed review comment by Kasper:
- Factor out property load from CALL_IC and LOAD_IC.

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

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

15 years ago- Fix instance size calculation to ensure that the object cannot
iposva@chromium.org [Thu, 16 Oct 2008 05:45:33 +0000 (05:45 +0000)]
- Fix instance size calculation to ensure that the object cannot
  overflow the maximum object size.
- Added a test that will crash previous revisions.

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

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

15 years agoFixes bug 1426704.
whesse@chromium.org [Wed, 15 Oct 2008 10:22:26 +0000 (10:22 +0000)]
Fixes bug 1426704.
Constructors no longer print out their source code.  They print [native code]
instead.  Some web applications don't like constructors with complex ToString
results.
Review URL: http://codereview.chromium.org/7345

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

15 years agoReview-related changes
christian.plesner.hansen@gmail.com [Wed, 15 Oct 2008 08:50:34 +0000 (08:50 +0000)]
Review-related changes

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

15 years agoAdded a way to add timestamps to the log file name
christian.plesner.hansen@gmail.com [Wed, 15 Oct 2008 08:50:22 +0000 (08:50 +0000)]
Added a way to add timestamps to the log file name

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

15 years agoFix CALL_IC to read properties out of the object in the presence
iposva@chromium.org [Wed, 15 Oct 2008 07:48:45 +0000 (07:48 +0000)]
Fix CALL_IC to read properties out of the object in the presence
of in-object properties instead of always going to read out of
the properties array.

TBR=ager

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

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

15 years agoFix lint problem.
iposva@chromium.org [Wed, 15 Oct 2008 06:14:39 +0000 (06:14 +0000)]
Fix lint problem.

TBR=kasperl

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

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

15 years agoAllocate room for expected number of properties based on the
iposva@chromium.org [Wed, 15 Oct 2008 06:03:26 +0000 (06:03 +0000)]
Allocate room for expected number of properties based on the
constructor in the JSObject. This removes the need to allocate
a properties array if the object is never assigned any extra
properties.

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

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

15 years agoMove code (already reviewed) around in the source file and change a
kmillikin@chromium.org [Tue, 14 Oct 2008 14:41:47 +0000 (14:41 +0000)]
Move code (already reviewed) around in the source file and change a
few pop instructions that were missed before.
Review URL: http://codereview.chromium.org/7296

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

15 years agoTest for non-ASCII character in a needle used on an ASCII string is now handled first
lrn@chromium.org [Tue, 14 Oct 2008 14:25:37 +0000 (14:25 +0000)]
Test for non-ASCII character in a needle used on an ASCII string is now handled first
instead of only in the unrelated table-construction of Boyer-Moore.

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

15 years agoSelecting between simple text search and Boyer-Moore now happens by trying
lrn@chromium.org [Tue, 14 Oct 2008 14:02:48 +0000 (14:02 +0000)]
Selecting between simple text search and Boyer-Moore now happens by trying
the simple search and bailing out and continuing with Boyer-Moore if the simple
version seems too expensive.

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

15 years agoThe BoyerMooreStringSearch now uses separate functions to build its tables.
lrn@chromium.org [Tue, 14 Oct 2008 13:25:54 +0000 (13:25 +0000)]
The BoyerMooreStringSearch now uses separate functions to build its tables.
This hightens readability.

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

15 years agoBoyer-Moore delayes computation of Good-Suffix table until bad-char has shown itself
lrn@chromium.org [Tue, 14 Oct 2008 12:45:06 +0000 (12:45 +0000)]
Boyer-Moore delayes computation of Good-Suffix table until bad-char has shown itself
to be insufficient.x
Changed order of tests in loop in simple text search.
Changed limit on pattern length for when we pick simple search.

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

15 years agoReduced the string length and rounds in the extensive indexOf-test in string-indexof.js.
lrn@chromium.org [Tue, 14 Oct 2008 10:56:40 +0000 (10:56 +0000)]
Reduced the string length and rounds in the extensive indexOf-test in string-indexof.js.

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

15 years agoTesting that sorting behaves reasonably with a bad comparison function.
olehougaard [Tue, 14 Oct 2008 10:50:44 +0000 (10:50 +0000)]
Testing that sorting behaves reasonably with a bad comparison function.
Review URL: http://codereview.chromium.org/7137

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

15 years agoFixed bug 114
christian.plesner.hansen@gmail.com [Tue, 14 Oct 2008 09:13:23 +0000 (09:13 +0000)]
Fixed bug 114

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

15 years agoMost operations are faster than before.
lrn@chromium.org [Tue, 14 Oct 2008 08:57:31 +0000 (08:57 +0000)]
Most operations are faster than before.

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

15 years agoFix a missing peephole optimization in ia32 code exposed with Kevin's
iposva@chromium.org [Mon, 13 Oct 2008 20:15:17 +0000 (20:15 +0000)]
Fix a missing peephole optimization in ia32 code exposed with Kevin's
change.

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

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

15 years agoFix lint error in codegen-ia32.cc.
whesse@chromium.org [Mon, 13 Oct 2008 10:46:11 +0000 (10:46 +0000)]
Fix lint error in codegen-ia32.cc.
Review URL: http://codereview.chromium.org/7264

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

15 years agoAdd a VirtualFrame class to the IA32 code generator. All frame
kmillikin@chromium.org [Mon, 13 Oct 2008 07:56:13 +0000 (07:56 +0000)]
Add a VirtualFrame class to the IA32 code generator.  All frame
accesses (eg, parameters, locals, and the expression stack elements)
and mutation (pushes and pops) go through the virtual frame.

The frame initially contains no state, and directly emits instructions
in the obvious way.  It is not currently used for deferred code.
Review URL: http://codereview.chromium.org/7076

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

15 years ago- Omit frame pointers when using GCC.
bak@chromium.org [Fri, 10 Oct 2008 13:15:59 +0000 (13:15 +0000)]
- Omit frame pointers when using GCC.

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

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

15 years ago- Inlined JSArray::SetContent.
bak@chromium.org [Fri, 10 Oct 2008 10:27:44 +0000 (10:27 +0000)]
- Inlined JSArray::SetContent.
- Implemented Runtime_KeyedGetProperty to make slow case faster.

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

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

15 years agoImprove profiler output to make it easier to see the
kasperl@chromium.org [Fri, 10 Oct 2008 09:26:40 +0000 (09:26 +0000)]
Improve profiler output to make it easier to see the
anonymous functions.
Review URL: http://codereview.chromium.org/7075

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

15 years agoIntroduce a special kind of frames for construct frames, e.g.
kasperl@chromium.org [Fri, 10 Oct 2008 09:09:38 +0000 (09:09 +0000)]
Introduce a special kind of frames for construct frames, e.g.
the trampoline frames introduced for invoking functions through
the new keyword.
Review URL: http://codereview.chromium.org/7223

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

15 years agoMove const qualifies around to avoid GCC warnings. (GCC 4.3.2)
erik.corry@gmail.com [Fri, 10 Oct 2008 08:33:06 +0000 (08:33 +0000)]
Move const qualifies around to avoid GCC warnings. (GCC 4.3.2)
Patch by Seo Sanghyeon sanxiyn@gmail.com, reviewed by Erik Corry.

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

15 years agoAdd codegen-arm.h and codegen-ia32.h to VS project file.
kasperl@chromium.org [Fri, 10 Oct 2008 06:40:11 +0000 (06:40 +0000)]
Add codegen-arm.h and codegen-ia32.h to VS project file.
Review URL: http://codereview.chromium.org/7063

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

15 years agoFix typo.
kasperl@chromium.org [Fri, 10 Oct 2008 06:37:49 +0000 (06:37 +0000)]
Fix typo.

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

15 years agoMake strict equality checks faster on IA32 by doing
kasperl@chromium.org [Fri, 10 Oct 2008 06:26:35 +0000 (06:26 +0000)]
Make strict equality checks faster on IA32 by doing
more work in the CompareStub. I'll port this to ARM
once I'm satisfied with the performance improvements.
Review URL: http://codereview.chromium.org/7014

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

15 years agoSimplify CodeGenerator hierarchy by not using a base class.
iposva@chromium.org [Fri, 10 Oct 2008 00:00:52 +0000 (00:00 +0000)]
Simplify CodeGenerator hierarchy by not using a base class.
There is nothing virtual about a CodeGenerator since we
either generate code for one platform or for the other.

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

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

15 years ago- Optimized JSArray allocation in runtime system by using NewJSArrayWithElements.
bak@chromium.org [Thu, 9 Oct 2008 13:34:17 +0000 (13:34 +0000)]
- Optimized JSArray allocation in runtime system by using NewJSArrayWithElements.

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

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

15 years agoReverted the changes to jscre because the arm cross-compiler dies with
christian.plesner.hansen@gmail.com [Thu, 9 Oct 2008 12:18:48 +0000 (12:18 +0000)]
Reverted the changes to jscre because the arm cross-compiler dies with
an internal error when compiling templateified jscre.  We really need
to update that damn arm compiler.

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

15 years agoIf an allocation is so huge that we cannot code the size needed in the failure
erik.corry@gmail.com [Thu, 9 Oct 2008 11:26:37 +0000 (11:26 +0000)]
If an allocation is so huge that we cannot code the size needed in the failure
object then we just return an out of memory failure object (instead of a retry
after GC failure object).  Not all places that checked for retry-after-GC were
able to handle an immediate out of memory failure.

This fixes http://code.google.com/p/v8/issues/detail?id=70
Review URL: http://codereview.chromium.org/6340

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

15 years ago- Specialized jscre on the type of the string involved.
christian.plesner.hansen@gmail.com [Thu, 9 Oct 2008 10:30:33 +0000 (10:30 +0000)]
- Specialized jscre on the type of the string involved.
- Specialized jscre on the type of the string involved.

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

15 years agoThis change rewrites some of the code to add properties to an object.
whesse@chromium.org [Thu, 9 Oct 2008 08:57:32 +0000 (08:57 +0000)]
This change rewrites some of the code to add properties to an object.
It removes the ReplaceConstantFunction code, and replaces it with
new ConvertDescriptorToField code, that is also used in other places.
Functions CopyRemove and CopyReplace on DescriptorArray are removed.
Function AddFastProperty is simplified by removing the
CONSTANT_TRANSITION case.
Review URL: http://codereview.chromium.org/6528

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

15 years ago- Specialized slow-case string equality nine ways based on the
christian.plesner.hansen@gmail.com [Thu, 9 Oct 2008 08:08:04 +0000 (08:08 +0000)]
- Specialized slow-case string equality nine ways based on the
  underlying string representation of the two strings involved.
- Renamed ascii and two byte string classes to sequential ascii and
  sequential two byte, and renamed IsAscii and friends to
  IsAsciiRepresentation.  This is to make a clear distinction between
  strings with an ascii/two-byte representation, of which there is
  four, and flat sequential ascii/two-byte string.

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

15 years agoFix typo in comment (issue 108).
kasperl@chromium.org [Thu, 9 Oct 2008 06:55:08 +0000 (06:55 +0000)]
Fix typo in comment (issue 108).

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

15 years agoFix typo in include/v8.h (issue 108) and mark test-spaces/LargeObjectSpace as flaky...
kasperl@chromium.org [Thu, 9 Oct 2008 05:39:00 +0000 (05:39 +0000)]
Fix typo in include/v8.h (issue 108) and mark test-spaces/LargeObjectSpace as flaky on ARM (issue 113). TBR=ager@chromium.org

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

15 years agoMake sure to check that the function prototype is a
kasperl@chromium.org [Wed, 8 Oct 2008 14:03:53 +0000 (14:03 +0000)]
Make sure to check that the function prototype is a
real JavaScript object before looking for it in the
prototype chain during instanceof checks.
Review URL: http://codereview.chromium.org/6579

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

15 years agoImprove the generated code for the instanceof operator,
kasperl@chromium.org [Wed, 8 Oct 2008 13:33:16 +0000 (13:33 +0000)]
Improve the generated code for the instanceof operator,
and extended the instanceof test case.
Review URL: http://codereview.chromium.org/6341

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

15 years agoMinor adjustments to the object migration code: When copying
kasperl@chromium.org [Wed, 8 Oct 2008 09:01:10 +0000 (09:01 +0000)]
Minor adjustments to the object migration code: When copying
large objects we use memcpy. If this turns out to be a wash
on the benchmarks, I'd be happy to rip it out again.
Review URL: http://codereview.chromium.org/6576

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

15 years agoFix incorrect short cut test that assumed ASCII strings could be Latin1.
erik.corry@gmail.com [Wed, 8 Oct 2008 08:05:14 +0000 (08:05 +0000)]
Fix incorrect short cut test that assumed ASCII strings could be Latin1.
Review URL: http://codereview.chromium.org/6542

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

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