platform/upstream/v8.git
15 years ago- Add missing files to the Xcode project.
iposva@chromium.org [Thu, 26 Mar 2009 05:43:54 +0000 (05:43 +0000)]
- Add missing files to the Xcode project.

TBR=mark@chromium.org
Review URL: http://codereview.chromium.org/53087

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

15 years agoFix and cleanup ARM port:
feng@chromium.org [Wed, 25 Mar 2009 18:23:04 +0000 (18:23 +0000)]
Fix and cleanup ARM port:
1) removed unused function, PcStoreOffset;
2) use macro instruction, Jump, when branching from JS code to C code.

This CL replaces http://codereview.chromium.org/53039/show, per our discussion.

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

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

15 years agoSimplify the way the code generator handles calls to IC stubs. Before
kmillikin@chromium.org [Wed, 25 Mar 2009 14:08:41 +0000 (14:08 +0000)]
Simplify the way the code generator handles calls to IC stubs.  Before
we dispatched on the IC stub kind in a generic CallCodeObject
function.  Now, we have special functions for the load and store IC
stubs.

We also (for the load and store ICs) handle moving register arguments
into place only after the stack is prepared for the call.  This
replaces some memory-to-memory moves (for copies whose backing store
is occupied by a register needed for the arguments) with
memory-to-register moves.
Review URL: http://codereview.chromium.org/42602

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

15 years agoAdd another check in profiler's stack iterator to ensure stability.
mikhail.naganov@gmail.com [Wed, 25 Mar 2009 14:07:52 +0000 (14:07 +0000)]
Add another check in profiler's stack iterator to ensure stability.
I made a test run of benchmarks and found another weak point. After
fixing it, benchmarks are able to run for a 100 times in a row
successfully in both builds.

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

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

15 years agoAdded more checks to SafeStackFrameIterator to prevent crashes when profiling.
mikhail.naganov@gmail.com [Wed, 25 Mar 2009 12:59:25 +0000 (12:59 +0000)]
Added more checks to SafeStackFrameIterator to prevent crashes when profiling.
Tested by profiling 3d-morph.js a 100 times both in debug and release builds.

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

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

15 years agoMove reference to variable that isn't used on ARM.
lrn@chromium.org [Wed, 25 Mar 2009 12:37:49 +0000 (12:37 +0000)]
Move reference to variable that isn't used on ARM.

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

15 years agoIntroduce splaytree.KeyNotFoundError and use it for reporting
kasperl@chromium.org [Wed, 25 Mar 2009 12:14:13 +0000 (12:14 +0000)]
Introduce splaytree.KeyNotFoundError and use it for reporting
issues when removing non-existing nodes from a SplayTree.
Review URL: http://codereview.chromium.org/42599

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

15 years agoMoved String.prototype.match implementation to C++.
lrn@chromium.org [Wed, 25 Mar 2009 12:14:10 +0000 (12:14 +0000)]
Moved String.prototype.match implementation to C++.
Some extra runtime assertions added.

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

15 years agoThe code generator doesn't need to put the argument count in eax for
kmillikin@chromium.org [Wed, 25 Mar 2009 11:05:36 +0000 (11:05 +0000)]
The code generator doesn't need to put the argument count in eax for
call ICs.  Refactor CallRuntime on ARM to match the structure of IA32.
Update some comments.
Review URL: http://codereview.chromium.org/42598

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

15 years agoMake sure to generate a CodeCreateEvent for the CPU features
kasperl@chromium.org [Wed, 25 Mar 2009 10:29:22 +0000 (10:29 +0000)]
Make sure to generate a CodeCreateEvent for the CPU features
probe code object, and really raise an exception if SplayTree.Remove
is called with a key that cannot be found.
Review URL: http://codereview.chromium.org/42597

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

15 years agoRemove register counts from VirtualFrame, use register indices instead.
whesse@chromium.org [Wed, 25 Mar 2009 10:00:52 +0000 (10:00 +0000)]
Remove register counts from VirtualFrame, use register indices instead.
Review URL: http://codereview.chromium.org/42565

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

15 years agoUse OpenThread instead of DuplicateHandle in Win32 profiler implementation.
mikhail.naganov@gmail.com [Wed, 25 Mar 2009 09:35:11 +0000 (09:35 +0000)]
Use OpenThread instead of DuplicateHandle in Win32 profiler implementation.

OpenThread doesn't fail in Chrome sandbox, while DuplicateHandle does.

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

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

15 years agoPreparing push of version 1.1.3 to trunk.
kasperl@chromium.org [Tue, 24 Mar 2009 14:42:35 +0000 (14:42 +0000)]
Preparing push of version 1.1.3 to trunk.
Review URL: http://codereview.chromium.org/53012

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

15 years agoStrcmp thinko and SConstruct improvement for d8 on Android.
erik.corry@gmail.com [Tue, 24 Mar 2009 14:29:49 +0000 (14:29 +0000)]
Strcmp thinko and SConstruct improvement for d8 on Android.
Review URL: http://codereview.chromium.org/42560

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

15 years agoMake the "has function literal" default value for loops conservative.
kmillikin@chromium.org [Tue, 24 Mar 2009 14:25:22 +0000 (14:25 +0000)]
Make the "has function literal" default value for loops conservative.
It defaults to true so that if the analysis is not run we get a safe
analysis result.

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

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

15 years agoRemove stl dependencies from d8.
erik.corry@gmail.com [Tue, 24 Mar 2009 13:33:54 +0000 (13:33 +0000)]
Remove stl dependencies from d8.
Review URL: http://codereview.chromium.org/42559

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

15 years agoFix ARM simulator. Unless building for the actual ARM hardware,
kmillikin@chromium.org [Tue, 24 Mar 2009 13:21:34 +0000 (13:21 +0000)]
Fix ARM simulator.  Unless building for the actual ARM hardware,
inline assembler in C++ code should be IA32 assembly, not ARM.

TBR=erik.corry@gmail.com

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

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

15 years agoFix ARM build for changes to VirtualFrame
whesse@chromium.org [Tue, 24 Mar 2009 13:11:34 +0000 (13:11 +0000)]
Fix ARM build for changes to VirtualFrame
Review URL: http://codereview.chromium.org/53009

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

15 years agoAdd basic infrastructure for protecting V8's heap when leaving the VM
kmillikin@chromium.org [Tue, 24 Mar 2009 12:47:53 +0000 (12:47 +0000)]
Add basic infrastructure for protecting V8's heap when leaving the VM
and unprotecting it when (re)entering.  The functionality is enabled
by the flag --protect-heap and requires V8 to be built with
ENABLE_HEAP_PROTECTION and ENABLE_LOGGING_AND_PROFILING defined.

Implemented on Linux and Windows but not yet for other platforms.

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

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

15 years agoFix issue 286. Ensure frame elements are invalidated by
kmillikin@chromium.org [Tue, 24 Mar 2009 12:42:28 +0000 (12:42 +0000)]
Fix issue 286.  Ensure frame elements are invalidated by
InvalidateFrameSlotAt.

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

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

15 years agoAdd pointers to a VirtualFrame that keep track of the indexes of register
whesse@chromium.org [Tue, 24 Mar 2009 11:52:33 +0000 (11:52 +0000)]
Add pointers to a VirtualFrame that keep track of the indexes of register
frame elements.
Review URL: http://codereview.chromium.org/53005

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

15 years agoPreparing push of version 1.1.2 to trunk.
ager@chromium.org [Tue, 24 Mar 2009 11:07:09 +0000 (11:07 +0000)]
Preparing push of version 1.1.2 to trunk.
Review URL: http://codereview.chromium.org/42556

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

15 years agoAdd newline at end of test-debug.cc file. TBR=sgjesse@chromium.org
kasperl@chromium.org [Tue, 24 Mar 2009 10:49:25 +0000 (10:49 +0000)]
Add newline at end of test-debug.cc file. TBR=sgjesse@chromium.org

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

15 years agoAdded a test for debugger agent protocol message.
sgjesse@chromium.org [Tue, 24 Mar 2009 10:42:00 +0000 (10:42 +0000)]
Added a test for debugger agent protocol message.
Review URL: http://codereview.chromium.org/42555

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

15 years agoTest a few assertions that should hold.
lrn@chromium.org [Tue, 24 Mar 2009 10:16:30 +0000 (10:16 +0000)]
Test a few assertions that should hold.

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

15 years agoChange the debugger agent protocol to be RFC-822 compilant.
sgjesse@chromium.org [Tue, 24 Mar 2009 10:15:02 +0000 (10:15 +0000)]
Change the debugger agent protocol to be RFC-822 compilant.

All headers are now terminated with CRLF and not jusr LF. The beginning of the body is indicated by an empty header (just CRLF).
Review URL: http://codereview.chromium.org/42553

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

15 years agoFix ARM performance regression on constructing array
kasperl@chromium.org [Tue, 24 Mar 2009 08:55:11 +0000 (08:55 +0000)]
Fix ARM performance regression on constructing array
and object literals by using the same logic as we use
on IA-32.
Review URL: http://codereview.chromium.org/53001

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

15 years agoUpdate test expectation.
kmillikin@chromium.org [Tue, 24 Mar 2009 08:53:43 +0000 (08:53 +0000)]
Update test expectation.

TBR=plesner

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

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

15 years agoFix issue 284.
kmillikin@chromium.org [Tue, 24 Mar 2009 08:29:24 +0000 (08:29 +0000)]
Fix issue 284.

The problem was continuing out of the body of a for/in (where we do
register allocation) to the loop update (where we do not).  Variables
allocated to registers where not preserved.

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

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

15 years agoFix bug in context stores, where the store was ignored if there was a
ager@chromium.org [Tue, 24 Mar 2009 08:27:43 +0000 (08:27 +0000)]
Fix bug in context stores, where the store was ignored if there was a
read-only property in the prototype chain.  Stores should only be
ignored if there is a read-only property on the object itself.
Review URL: http://codereview.chromium.org/42508

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

15 years agoAdd a new "pseudo" platform for POSIX. It it will contain code shared by the platform...
sgjesse@chromium.org [Tue, 24 Mar 2009 06:32:00 +0000 (06:32 +0000)]
Add a new "pseudo" platform for POSIX. It it will contain code shared by the platforms supporting POSIX. Currently Linux, Mac OS and FreeBSD are considered POSIX platforms using the POSIX implementation.

Initially the platform socket implementation has been moved from the Linux, Mac OS and FreeBSD platforms to the POSIX platform.

If implementation which ends up in the POSIX platform at some point cannot be the same across POSIX platforms the implementation can easily be moved back into the individual POSIX "complient" platforms.
Review URL: http://codereview.chromium.org/51001

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

15 years agoMarked bug 284 as passing on arm.
christian.plesner.hansen [Tue, 24 Mar 2009 00:48:17 +0000 (00:48 +0000)]
Marked bug 284 as passing on arm.

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

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

15 years agoAdded test case for issue 284.
christian.plesner.hansen [Mon, 23 Mar 2009 23:49:58 +0000 (23:49 +0000)]
Added test case for issue 284.

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

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

15 years agoFixed Linux compiler warning.
sgjesse@chromium.org [Mon, 23 Mar 2009 22:35:01 +0000 (22:35 +0000)]
Fixed Linux compiler warning.

TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/49010

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

15 years agoExtend debugger agent protocol with a connect message.Added a name of the embedding...
sgjesse@chromium.org [Mon, 23 Mar 2009 22:23:39 +0000 (22:23 +0000)]
Extend debugger agent protocol with a connect message.Added a name of the embedding application when enabeling the debugger agent.Send a connection message from the debugger agent to the remote debugger when connecting. This message contains the V8 version, the protcol version (currently 1) and the name of the embedding application. Currently this information is just printed raw as received.
Review URL: http://codereview.chromium.org/52012

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

15 years agoAdd a new C++ pointer wrapping API to External to not dilute the
iposva@chromium.org [Mon, 23 Mar 2009 19:51:10 +0000 (19:51 +0000)]
Add a new C++ pointer wrapping API to External to not dilute the
External::Cast.

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

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

15 years agoFix flaw in VirtualFrame::SetElementAt handling multiple copies of elements.
whesse@chromium.org [Mon, 23 Mar 2009 15:03:39 +0000 (15:03 +0000)]
Fix flaw in VirtualFrame::SetElementAt handling multiple copies of elements.
Review URL: http://codereview.chromium.org/47006

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

15 years agoFix build
whesse@chromium.org [Mon, 23 Mar 2009 13:51:41 +0000 (13:51 +0000)]
Fix build
TBR=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/52013

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

15 years agoChange VirtualFrame::AdjustCopies to mark target as invalid.
whesse@chromium.org [Mon, 23 Mar 2009 13:37:55 +0000 (13:37 +0000)]
Change VirtualFrame::AdjustCopies to mark target as invalid.
Change its name to VirtualFrame::InvalidateFrameSlot
Review URL: http://codereview.chromium.org/50012

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

15 years agoReapply portability fixes, this time without 64 bit system bug.
erik.corry@gmail.com [Mon, 23 Mar 2009 12:37:53 +0000 (12:37 +0000)]
Reapply portability fixes, this time without 64 bit system bug.
Review URL: http://codereview.chromium.org/52010

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

15 years agoProfiler ticks every 1ms instead of every 10ms.
erik.corry@gmail.com [Mon, 23 Mar 2009 10:06:20 +0000 (10:06 +0000)]
Profiler ticks every 1ms instead of every 10ms.
Review URL: http://codereview.chromium.org/42498

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

15 years agoFix bug in regexp the breaks interpreter.
lrn@chromium.org [Mon, 23 Mar 2009 08:44:33 +0000 (08:44 +0000)]
Fix bug in regexp the breaks interpreter.

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

15 years agoReapply revisions 1432, 1433, 1469 and 1472 while fixing issue 279.
olehougaard [Mon, 23 Mar 2009 07:27:47 +0000 (07:27 +0000)]
Reapply revisions 1432, 1433, 1469 and 1472 while fixing issue 279.
Review URL: http://codereview.chromium.org/48006

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

15 years agoFixed windows build.
christian.plesner.hansen [Mon, 23 Mar 2009 02:25:40 +0000 (02:25 +0000)]
Fixed windows build.

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

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

15 years ago- Fix constness in tests.
iposva@chromium.org [Fri, 20 Mar 2009 23:33:36 +0000 (23:33 +0000)]
- Fix constness in tests.
Review URL: http://codereview.chromium.org/42472

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

15 years ago- Do not allocate proxy objects if the pointer can be wrapped in a Smi representation.
iposva@chromium.org [Fri, 20 Mar 2009 22:13:50 +0000 (22:13 +0000)]
- Do not allocate proxy objects if the pointer can be wrapped in a Smi representation.

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

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

15 years agoReverse latest build tweaks since they fail on some 64 bit systems
erik.corry@gmail.com [Fri, 20 Mar 2009 17:01:15 +0000 (17:01 +0000)]
Reverse latest build tweaks since they fail on some 64 bit systems
TBR=ager

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

15 years agoMore compatibility changes.
erik.corry@gmail.com [Fri, 20 Mar 2009 16:37:18 +0000 (16:37 +0000)]
More compatibility changes.
Review URL: http://codereview.chromium.org/47004

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

15 years agoSupport profiler stack sampling in any situation. After this change, almost all profi...
mikhail.naganov@gmail.com [Fri, 20 Mar 2009 14:49:12 +0000 (14:49 +0000)]
Support profiler stack sampling in any situation. After this change, almost all profiler ticks (except GC ones) have a stack sample data associated.

Tested under Linux, OS X, and Windows.

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

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

15 years agoNow compiles when not in debug mode. Whoops.
lrn@chromium.org [Fri, 20 Mar 2009 14:09:48 +0000 (14:09 +0000)]
Now compiles when not in debug mode. Whoops.

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

15 years agoRegExps now restart if their input string changes representation during preemption.
lrn@chromium.org [Fri, 20 Mar 2009 13:26:16 +0000 (13:26 +0000)]
RegExps now restart if their input string changes representation during preemption.
Cleaned up the handling of strings moving, so strings moved by GC and strings changing representation are handled equivalently.

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

15 years agoChange expectations for DebuggerAgent test.
sgjesse@chromium.org [Fri, 20 Mar 2009 13:24:58 +0000 (13:24 +0000)]
Change expectations for DebuggerAgent test.
Review URL: http://codereview.chromium.org/42444

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

15 years agoInline the Result::Unuse member function and change the Result
kmillikin@chromium.org [Fri, 20 Mar 2009 12:58:14 +0000 (12:58 +0000)]
Inline the Result::Unuse member function and change the Result
destructor to no longer invalidate the result.

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

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

15 years agoRemove a bunch of unnecessary includes from header files in favor of
kmillikin@chromium.org [Fri, 20 Mar 2009 09:35:31 +0000 (09:35 +0000)]
Remove a bunch of unnecessary includes from header files in favor of
forward declarations.

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

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

15 years agoAllow the debugger agent to reuse ports stuck in TIME_WAIT for listening.
sgjesse@chromium.org [Fri, 20 Mar 2009 09:03:36 +0000 (09:03 +0000)]
Allow the debugger agent to reuse ports stuck in TIME_WAIT for listening.

When the debugger agent terminates the used port can be stuck in TIME_WAIT for some time depending on the OS and the state of the socket. With this change will allow the debug agent to start listening on a port still in TIME_WAIT. During development of both V8 and embedding applications this makes it much easier to restart an application using the debugger agent.

This also makes it possible to run the tests involving the debugger agent multiple times without failure.
Review URL: http://codereview.chromium.org/50050

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

15 years agoAdd support for setting the SO_REUSEADDR option for sockets.
sgjesse@chromium.org [Fri, 20 Mar 2009 08:53:57 +0000 (08:53 +0000)]
Add support for setting the SO_REUSEADDR option for sockets.
Review URL: http://codereview.chromium.org/50036

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

15 years agoAdd a public API for using an empty sring.
mike@belshe.com [Thu, 19 Mar 2009 23:35:09 +0000 (23:35 +0000)]
Add a public API for using an empty sring.

v8::String::Empty()

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

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

15 years agoMake sure that the d8 shell calls OnExit in case of exceptions.
ager@chromium.org [Thu, 19 Mar 2009 22:09:14 +0000 (22:09 +0000)]
Make sure that the d8 shell calls OnExit in case of exceptions.
Review URL: http://codereview.chromium.org/42415

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

15 years agoDisable a test that fails on some Linux versions.
sgjesse@chromium.org [Thu, 19 Mar 2009 21:46:12 +0000 (21:46 +0000)]
Disable a test that fails on some Linux versions.

TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/50032

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

15 years agoBetter handling of startup and shutdown of the debugger agent.
sgjesse@chromium.org [Thu, 19 Mar 2009 21:07:07 +0000 (21:07 +0000)]
Better handling of startup and shutdown of the debugger agent.

During bind and listen socket errors are now handled. If the listen socket is occoupied the agent will retry its bind operation until success or shutdown.

Added orderly shutdown of the debugger agent both with and without a client connected.
Review URL: http://codereview.chromium.org/50007

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

15 years agoFix lint.
ager@chromium.org [Thu, 19 Mar 2009 19:29:23 +0000 (19:29 +0000)]
Fix lint.

TBR=iposva
Review URL: http://codereview.chromium.org/50026

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

15 years ago- Allow hidden properties to be set on any JSObject through the V8 C++ API.
iposva@chromium.org [Thu, 19 Mar 2009 18:50:00 +0000 (18:50 +0000)]
- Allow hidden properties to be set on any JSObject through the V8 C++ API.
- Use the hidden properties to expose a IdentityHash accessor.

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

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

15 years agoLanding http://codereview.chromium.org/42374
ager@chromium.org [Thu, 19 Mar 2009 17:09:07 +0000 (17:09 +0000)]
Landing http://codereview.chromium.org/42374

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

15 years agoRevert change 1509 that flush ICs when adding setters on an object or
ager@chromium.org [Thu, 19 Mar 2009 15:06:00 +0000 (15:06 +0000)]
Revert change 1509 that flush ICs when adding setters on an object or
when setting a __proto__ to an object that holds a setter.

This seems to cause a major page load regression, so we need to tune
the clearing.
Review URL: http://codereview.chromium.org/50011

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

15 years agoSpeed up slow test that times out on ARM.
erik.corry@gmail.com [Thu, 19 Mar 2009 13:01:50 +0000 (13:01 +0000)]
Speed up slow test that times out on ARM.
Review URL: http://codereview.chromium.org/50008

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

15 years agoAdd a copied flag to virtual frame elements that tells if a copy has
kmillikin@chromium.org [Thu, 19 Mar 2009 11:57:18 +0000 (11:57 +0000)]
Add a copied flag to virtual frame elements that tells if a copy has
been made of the element.  Set it when copying an element, clear it
when writing to an element marked copied and discovering that it is
not copied.

The copied flags on entry frames are exact.  Preparing a frame for
merging set the copied flags to be exact (to increase the likelihood
of matching the entry frame or another frame).
Review URL: http://codereview.chromium.org/50005

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

15 years agoChange the socket close to shutdown.
sgjesse@chromium.org [Thu, 19 Mar 2009 11:55:09 +0000 (11:55 +0000)]
Change the socket close to shutdown.

Removed the close method for socket and added shutdown instead. The shutdown method is the one to use when terminating socket communication. The close call is in the destructor.
Review URL: http://codereview.chromium.org/42387

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

15 years agoReuse output array instead of creating a new one for each call in Date.parse
lrn@chromium.org [Thu, 19 Mar 2009 09:40:38 +0000 (09:40 +0000)]
Reuse output array instead of creating a new one for each call in Date.parse

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

15 years agoSpolling.
erik.corry@gmail.com [Thu, 19 Mar 2009 09:12:24 +0000 (09:12 +0000)]
Spolling.
Review URL: http://codereview.chromium.org/42327

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

15 years ago// Test that we can make large object literals that work.
erik.corry@gmail.com [Thu, 19 Mar 2009 08:23:00 +0000 (08:23 +0000)]
// Test that we can make large object literals that work.
// Also test that we can attempt to make even larger object
// literals without crashing.
Review URL: http://codereview.chromium.org/48133

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

15 years agoMinor build and code style issues.
ager@chromium.org [Wed, 18 Mar 2009 21:14:46 +0000 (21:14 +0000)]
Minor build and code style issues.

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

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

15 years agoExpose Cloning through API.
mike@belshe.com [Wed, 18 Mar 2009 19:24:15 +0000 (19:24 +0000)]
Expose Cloning through API.

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

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

15 years agoInline the fast path for handle creation.
ager@chromium.org [Wed, 18 Mar 2009 18:50:35 +0000 (18:50 +0000)]
Inline the fast path for handle creation.

Simplify the interceptor IC code by using raw pointers instead of handles.
Review URL: http://codereview.chromium.org/49001

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

15 years agoMisc. portability fixes.
erik.corry@gmail.com [Wed, 18 Mar 2009 15:20:26 +0000 (15:20 +0000)]
Misc. portability fixes.
Review URL: http://codereview.chromium.org/42337

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

15 years agoDon't pollute API-users' namespaces with overly generic "EXPORT" define.
erik.corry@gmail.com [Wed, 18 Mar 2009 13:54:33 +0000 (13:54 +0000)]
Don't pollute API-users' namespaces with overly generic "EXPORT" define.
Review URL: http://codereview.chromium.org/42334

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

15 years agoFixed memory leaks in socket implementation.
sgjesse@chromium.org [Wed, 18 Mar 2009 13:32:22 +0000 (13:32 +0000)]
Fixed memory leaks in socket implementation.

Fixed memory leaks reported by valgring in the socket implementation and socket tests.

BUG=276
Review URL: http://codereview.chromium.org/42331

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

15 years agoAdd a close method to sockets.
sgjesse@chromium.org [Wed, 18 Mar 2009 13:11:43 +0000 (13:11 +0000)]
Add a close method to sockets.

Now the destructor is not the only way of closing a socket, which was a bit to limited.
Review URL: http://codereview.chromium.org/42330

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

15 years agoGetting rid of OS::StrDup and OS::StrNDup which were sometimes misused.
olehougaard [Wed, 18 Mar 2009 12:50:13 +0000 (12:50 +0000)]
Getting rid of OS::StrDup and OS::StrNDup which were sometimes misused.
Review URL: http://codereview.chromium.org/42329

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

15 years agoRevert r1529, which failed on some of the benchmarks.
kmillikin@chromium.org [Wed, 18 Mar 2009 12:35:42 +0000 (12:35 +0000)]
Revert r1529, which failed on some of the benchmarks.
Review URL: http://codereview.chromium.org/48128

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

15 years agoIntroducing a new StrNDup function that uses new[] for when we dispose the result...
olehougaard [Wed, 18 Mar 2009 12:27:37 +0000 (12:27 +0000)]
Introducing a new StrNDup function that uses new[] for when we dispose the result using delete[].
Review URL: http://codereview.chromium.org/48127

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

15 years agoFixing potentially problematic usage of OS::StrDup that caused some strings to be...
olehougaard [Wed, 18 Mar 2009 11:55:40 +0000 (11:55 +0000)]
Fixing potentially problematic usage of OS::StrDup that caused some strings to be allocated with malloc() but freed with delete[].
Review URL: http://codereview.chromium.org/48126

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

15 years agoCircumvent a bug in older glibc.
sgjesse@chromium.org [Wed, 18 Mar 2009 10:48:06 +0000 (10:48 +0000)]
Circumvent a bug in older glibc.

In glibc prior to 2.3.4 the return value from sem_timedwait is not -1
when it fails, but the actual error code.

Turned out that our ARM setup uses glibc 2.3.2.

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

15 years agoAdd a bit to a virtual frame element telling if it's been copied. Set
kmillikin@chromium.org [Wed, 18 Mar 2009 10:37:37 +0000 (10:37 +0000)]
Add a bit to a virtual frame element telling if it's been copied.  Set
it when a copy is made, clear it when the element is next written.
Review URL: http://codereview.chromium.org/42324

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

15 years agoSpeed up the inner loop of free register allocation.
whesse@chromium.org [Wed, 18 Mar 2009 10:31:31 +0000 (10:31 +0000)]
Speed up the inner loop of free register allocation.
Review URL: http://codereview.chromium.org/42296

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

15 years agoFix static overrun.
kmillikin@chromium.org [Wed, 18 Mar 2009 09:49:11 +0000 (09:49 +0000)]
Fix static overrun.
Review URL: http://codereview.chromium.org/48124

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

15 years agoAdded a wait with timeout to the platform semaphore class.
sgjesse@chromium.org [Wed, 18 Mar 2009 09:04:24 +0000 (09:04 +0000)]
Added a wait with timeout to the platform semaphore class.

The code has been compiled and tested on Windows, Linux and Mac OS.

The FreeBSD version is a copy of the Linux version which should work on FreeBSD as well. According to the FreeBSD documentation clock_gettime is part of the standard C library so the assumption is that no additional link libraries is required for FreeBSD.
Review URL: http://codereview.chromium.org/48123

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

15 years agoFlatten strings before parsing them as Date strings, and work on Vector of chars...
lrn@chromium.org [Tue, 17 Mar 2009 13:27:21 +0000 (13:27 +0000)]
Flatten strings before parsing them as Date strings, and work on Vector of chars instead.

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

15 years agoMoved subject and index before matches in RegExp lastMatchInfo.
lrn@chromium.org [Tue, 17 Mar 2009 12:44:20 +0000 (12:44 +0000)]
Moved subject and index before matches in RegExp lastMatchInfo.
Some minor changes, and removed the new handlescope in the inner loop of replace. Only really affects replaces on extremely long strings.

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

15 years agoAdd thread information to the debugger.
sgjesse@chromium.org [Tue, 17 Mar 2009 11:40:47 +0000 (11:40 +0000)]
Add thread information to the debugger.

Each thread running V8 code is assigned an id in thread local storage the first time V8 code is run in it. The thread information returned to the debugger contains the number of threads, the id of each of these threads and which one is the current thread.

Added a threads command to the developer shell debugger for showing information on threads.
Review URL: http://codereview.chromium.org/48009

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

15 years agoLint...
erik.corry@gmail.com [Tue, 17 Mar 2009 10:46:53 +0000 (10:46 +0000)]
Lint...
Review URL: http://codereview.chromium.org/42276

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

15 years agoRemove all uses of StringShape variables, since that has proven
erik.corry@gmail.com [Tue, 17 Mar 2009 09:33:06 +0000 (09:33 +0000)]
Remove all uses of StringShape variables, since that has proven
to be error-prone and of little benefit in terms of performance.
Review URL: http://codereview.chromium.org/45010

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

15 years agoChanged preemption related stuff in debugger entry.
sgjesse@chromium.org [Tue, 17 Mar 2009 09:28:01 +0000 (09:28 +0000)]
Changed preemption related stuff in debugger entry.

Fixed an assertion which did not hold when the debugger was recursively entered.

Removed the clearing of the preemption flag in debugger entry as there was no need for it. The handling of preemption by the stack guard takes care of the in debugger situation anyway.
Review URL: http://codereview.chromium.org/48004

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

15 years agoSimplify the construction of virtual frame elements in preparation for
kmillikin@chromium.org [Mon, 16 Mar 2009 14:49:55 +0000 (14:49 +0000)]
Simplify the construction of virtual frame elements in preparation for
switching to a linked representation of copied elements.  This change
avoids initializing frame elements to invalid unless they need to be.

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

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

15 years agoThe method yield is now available in the context created for threads in the developer...
sgjesse@chromium.org [Mon, 16 Mar 2009 10:08:59 +0000 (10:08 +0000)]
The method yield is now available in the context created for threads in the developer shell.

Added options --preemption/--no-preemption and --preemption-interval to control preemption in the developer shell when running several threads. Default is still to enable preemption with interval 1ms if threads are created.
Review URL: http://codereview.chromium.org/48001

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

15 years agoReplaceRegExpWithString: Avoid extending handle scope by adding scope inside loop.
lrn@chromium.org [Mon, 16 Mar 2009 09:49:14 +0000 (09:49 +0000)]
ReplaceRegExpWithString: Avoid extending handle scope by adding scope inside loop.

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

15 years agoFixed some memory leaks in unit tests.
olehougaard [Mon, 16 Mar 2009 07:53:20 +0000 (07:53 +0000)]
Fixed some memory leaks in unit tests.
Review URL: http://codereview.chromium.org/46103

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

15 years agoMissed a few comment changes in r1508.
sgjesse@chromium.org [Mon, 16 Mar 2009 07:36:52 +0000 (07:36 +0000)]
Missed a few comment changes in r1508.
Review URL: http://codereview.chromium.org/42175

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

15 years agoAdd copyright notice to new test case.
kasperl@chromium.org [Sun, 15 Mar 2009 22:44:23 +0000 (22:44 +0000)]
Add copyright notice to new test case.
Review URL: http://codereview.chromium.org/42216

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

15 years agoFix GC related crash bug in search-replace.
erik.corry@gmail.com [Sun, 15 Mar 2009 22:28:26 +0000 (22:28 +0000)]
Fix GC related crash bug in search-replace.
Review URL: http://codereview.chromium.org/42214

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

15 years agoRevert 1432, 1433, 1469 and 1472 due to a bug with literal objects.
erik.corry@gmail.com [Sun, 15 Mar 2009 16:18:20 +0000 (16:18 +0000)]
Revert 1432, 1433, 1469 and 1472 due to a bug with literal objects.
Review URL: http://codereview.chromium.org/46088

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