platform/upstream/v8.git
15 years agoBoth thumb and optimized for size.
erik.corry@gmail.com [Tue, 31 Mar 2009 13:24:59 +0000 (13:24 +0000)]
Both thumb and optimized for size.
Review URL: http://codereview.chromium.org/57055

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

15 years agoSwitch to thumb mode for runtime system on Android.
erik.corry@gmail.com [Tue, 31 Mar 2009 13:19:59 +0000 (13:19 +0000)]
Switch to thumb mode for runtime system on Android.
Review URL: http://codereview.chromium.org/57054

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

15 years agoOptimize for size on Android.
erik.corry@gmail.com [Tue, 31 Mar 2009 13:18:43 +0000 (13:18 +0000)]
Optimize for size on Android.
Review URL: http://codereview.chromium.org/56110

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

15 years ago* Add rmdir, mkdir -p and umask to d8 on Unix.
erik.corry@gmail.com [Tue, 31 Mar 2009 12:45:33 +0000 (12:45 +0000)]
* Add rmdir, mkdir -p and umask to d8 on Unix.
* Remove the non-working methods from the os object on d8 on Windows
so you can test for their presence with if (os.system).
* Add a test (not run by default since it only works on d8).
* Fix incorrect use of wait that left defunct processes (zombies).
Review URL: http://codereview.chromium.org/56107

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

15 years agoFix developer shell build on Windows.
sgjesse@chromium.org [Tue, 31 Mar 2009 11:45:20 +0000 (11:45 +0000)]
Fix developer shell build on Windows.

Fixed the OS check in the SCons build. Moved SetEnvironment to platform file as Windows does not have setenv. Added the d8-windows.cc to the Visual Studio project.
Review URL: http://codereview.chromium.org/57050

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

15 years agoChange handling of debugger unloading.
sgjesse@chromium.org [Tue, 31 Mar 2009 11:24:59 +0000 (11:24 +0000)]
Change handling of debugger unloading.

Add a semaphore for accessing debugger varaibles which can be changed from a different thread. This is mainly the debug message handler which can be set to NULL to disconnect the debugger.

Control the unloading of the debugger from the V8 thread. Before the debugger unload was called from the thread setting the debug message handler to NULL. This was not safe as this involves calling into V8. This change handles the unloading of the debugger either when entering a debugger event and the debugger was disconnected while the debugger was not active or when leaving the debugger and the debugger was disconnected while the debugger was active.

Add a flag to avoid unloading the debugger if debugger code is used by the application for other purposes than debugging.

Added tests for clearing the debug message handler.
Review URL: http://codereview.chromium.org/56102

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

15 years agoMark a bunch of places where we enter or leave V8 through the API.
kmillikin@chromium.org [Tue, 31 Mar 2009 09:07:57 +0000 (09:07 +0000)]
Mark a bunch of places where we enter or leave V8 through the API.
Indiscriminately mark every place with EnsureInitialized, ON_BAILOUT,
or IsDeadCheck (even if they cannot write to V8's heap).  Also mark
callbacks, and one other place (Function::SetName) hit in Chromium.
Review URL: http://codereview.chromium.org/57049

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

15 years agoFixed numerous issues that were causing errors in profiler log processing
mikhail.naganov@gmail.com [Tue, 31 Mar 2009 09:06:37 +0000 (09:06 +0000)]
Fixed numerous issues that were causing errors in profiler log processing
on a real web application loaded in the test shell.

Also implemented output of JSON-encoded call stacks for profiler
prototype.

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

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

15 years agoUse the AST optimizer on the bodies of function literals. Notify the
kmillikin@chromium.org [Tue, 31 Mar 2009 09:02:40 +0000 (09:02 +0000)]
Use the AST optimizer on the bodies of function literals.  Notify the
oprofile agent when we compile the body of a function literal.
Review URL: http://codereview.chromium.org/57048

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

15 years agoAdd os.chdir and os.setenv to d8. Move system() to os.system().
erik.corry@gmail.com [Tue, 31 Mar 2009 06:51:25 +0000 (06:51 +0000)]
Add os.chdir and os.setenv to d8.  Move system() to os.system().
Protect os.chdir, os.setenv, os.system against string conversion
failures.  Add comment about the issue to include/v8.h.
Review URL: http://codereview.chromium.org/57005

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

15 years agoAdd just enough state changes from EXTERNAL (outside V8) to OTHER
kmillikin@chromium.org [Mon, 30 Mar 2009 13:32:28 +0000 (13:32 +0000)]
Add just enough state changes from EXTERNAL (outside V8) to OTHER
(generic state inside V8) in the API to allow the V8 shell to run all
the mjsunit tests with heap protection on.

These state changes are only taken when built with
ENABLE_HEAP_PROTECTION.  The two states OTHER and EXTERNAL are treated
the same because we will not properly reenter OTHER through the API.
Review URL: http://codereview.chromium.org/56060

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

15 years agoInitialize list of frame elements to proper size.
whesse@chromium.org [Mon, 30 Mar 2009 13:03:32 +0000 (13:03 +0000)]
Initialize list of frame elements to proper size.
Review URL: http://codereview.chromium.org/57006

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

15 years agoPrepare to push version 1.1.4 to trunk.
ager@chromium.org [Mon, 30 Mar 2009 12:58:45 +0000 (12:58 +0000)]
Prepare to push version 1.1.4 to trunk.
Review URL: http://codereview.chromium.org/56059

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

15 years agoReenable interactive use of the shell sample.
kmillikin@chromium.org [Mon, 30 Mar 2009 12:13:08 +0000 (12:13 +0000)]
Reenable interactive use of the shell sample.
Review URL: http://codereview.chromium.org/57008

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

15 years agoWhen devtools window is opening it requests all scripts parsed by the moment. Current...
yurys@chromium.org [Mon, 30 Mar 2009 11:50:17 +0000 (11:50 +0000)]
When devtools window is opening it requests all scripts parsed by the moment. Currently 'scripts' response contains only first 80 chars of the scripts sources. I added an argument to the protocol that allows to include full source text into the response.
Review URL: http://codereview.chromium.org/55011

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

15 years agoCorrect debugger active check.
sgjesse@chromium.org [Mon, 30 Mar 2009 08:16:14 +0000 (08:16 +0000)]
Correct debugger active check.

With r1627 (http://code.google.com/p/v8/source/detail?r=1627) the use of the debugger message thread was made optional. However the check for active debugger still included a check for the message thread. This is fixed by this change.
Review URL: http://codereview.chromium.org/58001

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

15 years agoFormatting changes and some slight improvements to revision 1621, issue 42006.
whesse@chromium.org [Fri, 27 Mar 2009 14:35:24 +0000 (14:35 +0000)]
Formatting changes and some slight improvements to revision 1621, issue 42006.
Review URL: http://codereview.chromium.org/51007

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

15 years agoAdd a system() call to the d8 shell (Unix only).
erik.corry@gmail.com [Fri, 27 Mar 2009 13:50:26 +0000 (13:50 +0000)]
Add a system() call to the d8 shell (Unix only).
Review URL: http://codereview.chromium.org/42641

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

15 years agoMark some of the places we leave V8 via callbacks as transitions to
kmillikin@chromium.org [Fri, 27 Mar 2009 12:32:28 +0000 (12:32 +0000)]
Mark some of the places we leave V8 via callbacks as transitions to
state EXTERNAL rather than OTHER.
Review URL: http://codereview.chromium.org/55007

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

15 years agoFixed lint errors in test-debug. Sorry for that.
mikhail.naganov@gmail.com [Fri, 27 Mar 2009 11:56:30 +0000 (11:56 +0000)]
Fixed lint errors in test-debug. Sorry for that.

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

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

15 years agoFix issue 289: check external source strings validity in Runtime_DebugGetLoadedScripts
mikhail.naganov@gmail.com [Fri, 27 Mar 2009 11:22:52 +0000 (11:22 +0000)]
Fix issue 289: check external source strings validity in Runtime_DebugGetLoadedScripts

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

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

15 years agoMake VirtualFrame::CallStub on IA32 responsible for moving arguments
kmillikin@chromium.org [Fri, 27 Mar 2009 10:29:37 +0000 (10:29 +0000)]
Make VirtualFrame::CallStub on IA32 responsible for moving arguments
into the appropriate registers for the stub call.  Since stubs that
take arguments in registers do not (currently) take any arguments on
the stack, the unused generality has been removed (it's easy to put
back in later).
Review URL: http://codereview.chromium.org/55003

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

15 years agoFixed lint.
sgjesse@chromium.org [Fri, 27 Mar 2009 10:17:50 +0000 (10:17 +0000)]
Fixed lint.

Removed one space added by Visual Studio.

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

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

15 years agoDebugger message handler can be called from V8 thread.
sgjesse@chromium.org [Fri, 27 Mar 2009 09:56:53 +0000 (09:56 +0000)]
Debugger message handler can be called from V8 thread.

The message handler function set through the debugger API is normally called in a different thread than the V8 thread where execution is stopped due to debugger event. This change adds an option to the API for specifying that the message handler should be called directly from the V8 thread. For an application like Chrome where thread dispatching is already in place this makes more sense.

Add an option to the message handler debugger API to process messages in the thread where V8 is running instead of posting it to a queue for processing on a additional thread.
Review URL: http://codereview.chromium.org/42643

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

15 years agoMoved stdio and string functions to POSIX platform file.
sgjesse@chromium.org [Fri, 27 Mar 2009 08:38:02 +0000 (08:38 +0000)]
Moved stdio and string functions to POSIX platform file.
Review URL: http://codereview.chromium.org/45063

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

15 years agoFixed second problem with special commands.
christian.plesner.hansen@gmail.com [Fri, 27 Mar 2009 03:27:04 +0000 (03:27 +0000)]
Fixed second problem with special commands.

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

15 years agoFixed special command problem I just introduced. Guess I should have
christian.plesner.hansen@gmail.com [Fri, 27 Mar 2009 03:22:06 +0000 (03:22 +0000)]
Fixed special command problem I just introduced.  Guess I should have
waited for review eh.

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

15 years agoAdded url decoding of special commands.
christian.plesner.hansen@gmail.com [Fri, 27 Mar 2009 03:13:46 +0000 (03:13 +0000)]
Added url decoding of special commands.

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

15 years agoFixed a bunch of memory leaks in tests, including:
christian.plesner.hansen@gmail.com [Fri, 27 Mar 2009 00:24:49 +0000 (00:24 +0000)]
Fixed a bunch of memory leaks in tests, including:
 - String traversal test data (now in a zone)
 - Debug message thread (now joined on exit)
 - Threading test threads (now joined on exit)
 - Changed message tests framework to cope with valgrind
Also, fixed a bug where we'd try to delete stack-allocated objects
when tearing down v8.  Good times.

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

15 years agoOptimize binary operations in which one or both operands is a constant smi.
whesse@chromium.org [Thu, 26 Mar 2009 13:14:10 +0000 (13:14 +0000)]
Optimize binary operations in which one or both operands is a constant smi.
Review URL: http://codereview.chromium.org/42006

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

15 years agoChange the arguments access stub to take both arguments in registers
kmillikin@chromium.org [Thu, 26 Mar 2009 13:02:00 +0000 (13:02 +0000)]
Change the arguments access stub to take both arguments in registers
rathern than one in a register and one on the stack.

Fix a stack height bug in the case that the arguments access stub hit
its slow case.
Review URL: http://codereview.chromium.org/49037

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

15 years agoIn the IA32 code genrator, handle call ICs and constructor calls the
kmillikin@chromium.org [Thu, 26 Mar 2009 13:00:03 +0000 (13:00 +0000)]
In the IA32 code genrator, handle call ICs and constructor calls the
same as load and store ICs.  Eliminate the general function used to
call any IC.
Review URL: http://codereview.chromium.org/42638

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

15 years agoInline part of RawSyncElementAt, split the rest into two
whesse@chromium.org [Thu, 26 Mar 2009 10:25:49 +0000 (10:25 +0000)]
Inline part of RawSyncElementAt, split the rest into two
functions.  Improve PrepareForCall, SyncRange, and SyncElementAt.

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

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

15 years agoSet svn:eol-style for platform-posix.cc to native.
sgjesse@chromium.org [Thu, 26 Mar 2009 09:43:14 +0000 (09:43 +0000)]
Set svn:eol-style for platform-posix.cc to native.

The svn:eol-style property for platform-posix.cc is now set to native. This should get rid of the CR characters in the file added by comitting from Windows and make file lint again.

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

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

15 years agoMove time related functions to POSIX platform file.
sgjesse@chromium.org [Thu, 26 Mar 2009 09:28:27 +0000 (09:28 +0000)]
Move time related functions to POSIX platform file.

The functions getrusage, gettimeofday and localtime are in POSIX.1-2001.
Review URL: http://codereview.chromium.org/53045

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

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