mikhail.naganov@gmail.com
aa2c33126c
TickProcessor script reimplemented in JavaScript.
...
This is an effort to reuse profiler data processing code both in
TickProcessor and Dev Tools Profiler. The old Python implementation
will be removed.
The new TickProcessor works almost identical to the previous one.
However, it has some differences:
1. Not very useful "Call profile" section is replaced with a new
WebKit-like "Bottom up (heavy) profile" which shows the most
expensive functions together with their callers. I used it
personally in order to find and remove bottlenecks in the
tickprocessor script itself, and found it quite helpful.
2. Code entries with duplicate names (they occur for RegExes, stubs
and sometimes for anonymous Function objects) are now distinguished
by adding an occurence number inside curly brackets.
3. (Address -> code entry) mapping is more precise in boundary cases.
4. Windows version no more requires specifying .map file location.
5. Works faster.
Review URL: http://codereview.chromium.org/99054
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1802 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 13:50:42 +00:00
yurys@chromium.org
c56b22c72a
1. Send 'afterCompile' event to the debug message handler.2. Process messages from the debugger command queue on each event not only break and exception.3. auto_continue is always true for compilation events.
...
Review URL: http://codereview.chromium.org/100034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1801 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 12:38:20 +00:00
lrn@chromium.org
889eac7f13
Fix Issue 326. Handle sorting of non-array objects correctly.
...
Change handling of sorting to be the same for all JS-arrays.
Collect undefined values as well while removing holes.
Review URL: http://codereview.chromium.org/92123
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1800 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 11:16:59 +00:00
erik.corry@gmail.com
b1d09b32f9
Remove dependency on libstdc++ from test framework.
...
Review URL: http://codereview.chromium.org/99051
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 10:52:44 +00:00
erik.corry@gmail.com
f08b2a8898
Fix bugs 145 and 323, preemption and apply on ARM.
...
Review URL: http://codereview.chromium.org/93121
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1794 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 07:03:10 +00:00
sgjesse@chromium.org
d8daf5f817
Changed the ASSERT's in the cctest's to CHECK's.
...
There are no ASSERTS left in the cctest's.
Review URL: http://codereview.chromium.org/93120
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1793 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 14:29:42 +00:00
christian.plesner.hansen@gmail.com
4a909a7a62
- When cloning maps to set the 'lazy loading' bit remember to clone
...
the properties as well. This fixes some failing tests.
- Moved json parsing into native code.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 12:45:29 +00:00
sgjesse@chromium.org
8fefc769f5
Removed the debug message thread.
...
The debug message thread was introduced to make it possible to have the message handler callback be called from a different thread than the thread running V8 where the debug event occoured, but it never had any practical use, and prevents providing information to the message handler which is only available from the V8 thread.
In the future any thread decoupling will have do be done by the embedder.
This also removes the queue used for outbound messages.
Renamed the class Message to CommandMessage as it is only used for debugger commands from the client. Related message queue classes has also been renamed.
Review URL: http://codereview.chromium.org/93118
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1788 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 12:05:40 +00:00
mikhail.naganov@gmail.com
2060dc1512
Added ProfileView object for performing sorting, searching and filtering operations on a profile.
...
It will be used both in the new tickprocessor and Dev Tools profiler.
Review URL: http://codereview.chromium.org/92120
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1786 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 11:37:38 +00:00
kmillikin@chromium.org
cc0c8d178f
Materializing a frame element on the stack by pushing it can cause the
...
stack pointer to change by more than one in a corner case. If we push
a constant smi larger than 16 bits, we push it via a temporary
register. Allocating the temporary can cause a register to be spilled
from the frame somewhere above the stack pointer.
As a fix, do not use pushes to materialize ranges of elements of size
larger than one.
Review URL: http://codereview.chromium.org/92121
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1785 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 11:26:49 +00:00
christian.plesner.hansen@gmail.com
1f7e96743d
- Extended lazy loading to general objects, not just functions.
...
- Added lazily loaded JSON object.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1784 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 08:13:09 +00:00
lrn@chromium.org
a4d756a1c8
Move backend specific files to separate directories.
...
Move ia32 and arm specific files to subdirectories to make it easier to add more backends.
Review URL: http://codereview.chromium.org/92068
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1782 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-23 12:06:38 +00:00
kmillikin@chromium.org
cb9d66638b
Fix regression test by wrapping expression in a thunk^H^H^H^H^Hstring.
...
Review URL: http://codereview.chromium.org/95001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1776 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 17:44:28 +00:00
erik.corry@gmail.com
4f834546c7
Mark failing test on ARM.
...
Review URL: http://codereview.chromium.org/92014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1775 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 15:20:25 +00:00
pfeldman@chromium.org
a3a0d64305
DevTools: Add support for eventless host message dispatching.
...
Review URL: http://codereview.chromium.org/87026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1773 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 14:16:50 +00:00
erik.corry@gmail.com
561bd9861a
Make a test that excercises the preemption code in apply().
...
Review URL: http://codereview.chromium.org/93015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1772 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 14:09:50 +00:00
sgjesse@chromium.org
7fd0da52e7
Add setting break points by using handles.
...
Extend the D8 break command to handle script names with :line[:column] position specification and handles using #<id>#.
Review URL: http://codereview.chromium.org/92011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1770 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 13:59:48 +00:00
erik.corry@gmail.com
befbeba831
Small changes to improve test coverage in codegen-ia32.cc.
...
Review URL: http://codereview.chromium.org/92008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1769 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 13:34:35 +00:00
kmillikin@chromium.org
b39f4383dc
When merging a frame to an expected on at block entry, the static type
...
of elements is set to a safe lower bound. Move the setting of the
static type out of VirtualFrame::MergeTo (which is not necessarily run
for all frames) and into VirtualFrame::PrepareMergeTo (which is).
Review URL: http://codereview.chromium.org/92009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 13:19:38 +00:00
lrn@chromium.org
bfb33b1e2f
Fix for Issue 317 - bug in string.replace(string, "$foo").
...
Fix for Issue 317. Replace string with something containing dollar now works.
Review URL: http://codereview.chromium.org/94002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1764 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 11:43:05 +00:00
sgjesse@chromium.org
22612a516e
Change the expectations of the ARM debugger tests once more
...
A couple of the tests actually passes now.
Review URL: http://codereview.chromium.org/93011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1763 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 11:41:19 +00:00
sgjesse@chromium.org
3b84a19bfe
Enable flaky test that was fixed some time ago.
...
Review URL: http://codereview.chromium.org/80001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1760 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 09:01:13 +00:00
sgjesse@chromium.org
a8c1df9fa4
Change the expectations of the ARM debugger tests.
...
Previous change r1756 caused some ARM debugger tests to fail instead of crash in release mode.
Review URL: http://codereview.chromium.org/93005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1759 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 08:54:59 +00:00
sgjesse@chromium.org
5b394bf4d1
Handle breaks on keyed IC loads which can have an inlined version.
...
For keyed IC loads setting a break point now ensures that the inlined code is not used. When the break point is set the inlined map check is changed to fail causing the inlined code not to be used but the IC to be called. As long at the break point is set the map check will stay invalid.
Review URL: http://codereview.chromium.org/87025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1756 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 14:48:54 +00:00
yurys@chromium.org
7fc551ecc3
As long as all debugger messages are handled by a single static method we need a way to identify request sender to route the response to the right handler. To accomplish this clients can send some additional data along with command text and debugger will later pass this data to the message handler along with the response text.
...
Review URL: http://codereview.chromium.org/67266
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1755 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 14:06:48 +00:00
christian.plesner.hansen@gmail.com
d26e6dd0b4
force-set
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1751 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 13:28:11 +00:00
lrn@chromium.org
123f671a17
Reduced size of Array.reduce test.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1750 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 11:25:51 +00:00
lrn@chromium.org
97427d86e0
Add ES5 Array methods reduce and reduceRight, with test.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1749 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 09:57:30 +00:00
sgjesse@chromium.org
b8dc312b25
Make it possible to add a user data object to each script compiled.
...
Review URL: http://codereview.chromium.org/90003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1748 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 07:22:06 +00:00
ager@chromium.org
670a535b35
Correct the marking of tests that only fail on the simulator.
...
Review URL: http://codereview.chromium.org/80002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1743 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-20 09:40:08 +00:00
mikhail.naganov@gmail.com
6290e19716
Implemented a CSV parser in JavaScript.
...
Review URL: http://codereview.chromium.org/67253
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1740 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 17:58:14 +00:00
mikhail.naganov@gmail.com
dfe8af02a6
Implemented Profile object that processes profiling events and calculates profiling data.
...
Review URL: http://codereview.chromium.org/77014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1739 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 17:40:52 +00:00
erik.corry@gmail.com
fb303212b1
Improve coverage of line 619 in stub-cache-arm.cc
...
Review URL: http://codereview.chromium.org/77028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1738 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 14:34:35 +00:00
iposva@chromium.org
82ac3f3031
- Fix buffer overflow in the pre-allocated memory thread.
...
Review URL: http://codereview.chromium.org/67248
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1733 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 00:57:21 +00:00
mikhail.naganov@gmail.com
7aacf00933
Allow multiple function literals to be assigned to the same var / property.
...
In such a case all functions get the same name. I think it's a good performance / usability tradeoff. In case a developer wants more clarity, it's up to him to give names to functions.
Review URL: http://codereview.chromium.org/67168
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1727 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 16:34:24 +00:00
mikhail.naganov@gmail.com
5edf6f35bc
Reimplement (address -> code) mapping from tickprocessor.py in JS.
...
Found a pair of bugs concerned with border cases in the original implementation.
Review URL: http://codereview.chromium.org/67191
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1726 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 16:05:17 +00:00
ager@chromium.org
069a8c096f
Migrate a couple of old tests to mjsunit tests.
...
Review URL: http://codereview.chromium.org/67215
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1725 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 13:46:55 +00:00
ager@chromium.org
72294ca735
Change the enumeration order for unsigned integer keys to always be
...
numerical order independently of the representation of the object.
Exchanged the order of enumeration of integer and string keys so
integer keys are first instead of string keys to better match
WebKit/JSC behavior.
Added test cases that document our enumeration order choice.
Review URL: http://codereview.chromium.org/75035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1722 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 11:30:55 +00:00
erik.corry@gmail.com
4d18959446
Avoid a call to the runtime system when doing binary fp ops on ARM
...
(at the moment only if we do not need to allocate a heap number).
Find a few more oportunities to avoid heap number allocation on IA32.
Add some infrastructure to test coverage of generated ARM code in our
tests.
Review URL: http://codereview.chromium.org/67163
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1720 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 09:30:23 +00:00
yurys@chromium.org
b92740bf44
Lookup can now be performed for several handles.
...
Review URL: http://codereview.chromium.org/67155
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1719 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 06:03:17 +00:00
sgjesse@chromium.org
9f7ccacf86
Add debug command break flag for debugger host dispatch.
...
Ensure that debugger host dispatch is processed even though there are no debugger commands in the queue.
Review URL: http://codereview.chromium.org/67180
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1718 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 19:09:38 +00:00
kmillikin@chromium.org
22896c8304
Change the function name collector to tolerate expressions that contain
...
multiple anonymous function literals as subexpressions.
Choose the rightmost one the one to attach a name to.
Review URL: http://codereview.chromium.org/67165
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1715 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 13:14:23 +00:00
ager@chromium.org
0c52806f0d
Add mjsunit test for the overriding of read-only properties.
...
For compatibility, our behavior here does not match the spec. Added a
comment to that effect in the test.
Review URL: http://codereview.chromium.org/67164
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1714 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 12:31:02 +00:00
ager@chromium.org
0de8a28ea7
Fix crash bug when loading const variable in the presence of eval.
...
The problem was a missing 'uninitialized' check.
Review URL: http://codereview.chromium.org/73076
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1713 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 10:47:23 +00:00
kasperl@chromium.org
3b7f631e86
Allow using with and eval in JS extensions in debug mode by
...
getting rid of bogus assertion error.
Review URL: http://codereview.chromium.org/73072
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1710 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 06:28:07 +00:00
mikhail.naganov@gmail.com
e9aa21849b
Reimplement Splay Tree in JavaScript (and add unit tests!).
...
This is the first step in reimplementing tick processing scripts in
JavaScript. The goal is to have the same source both for Dev Tools and
Golem, so Python implementation will be removed to avoid code
duplication.
The implementation follows the Dev Tools style: namespaces and JSDocs
are used.
Review URL: http://codereview.chromium.org/67151
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1709 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 01:22:52 +00:00
sgjesse@chromium.org
8b4cfc3768
Fix the source position recorded for funtion return
...
Record the function return position as the end of the function source. Don't record function entry and return positions as statement positions.
Added a test for source position for break at function return.
Review URL: http://codereview.chromium.org/67109
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1706 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 14:56:03 +00:00
mikhail.naganov@gmail.com
3c2a7bdf21
Add name inference for anonymous functions to facilitate debugging and profiling of JS code.
...
Currently function name inference is wired with AST optimization pass to avoid introducing another pass over AST. A better solution would be to rewrite AST visitors so they can be naturally combined together in a single pass, as their current implementation doesn't allow it.
For examples of cases where function names can be inferred, see the tests file.
Review URL: http://codereview.chromium.org/62146
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1696 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 00:51:59 +00:00
iposva@chromium.org
b5ba35b742
- Fix lint failure.
...
- Add missing files d8-posix.cc and d8-windows.cc to Xcode project.
Review URL: http://codereview.chromium.org/68004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1690 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-09 23:17:45 +00:00
iposva@chromium.org
8ce3aae482
Workaround for http://crbug.com/9746 :
...
- Added special cutouts if a Vector has NULL data, which will now happen
if an external string's resource has been deleted.
- Added an verification phase before old gen GC to verify that all real
entries in the SymbolTable are valid symbols.
- Added test that verifies the correct behaviour of the workaround.
Review URL: http://codereview.chromium.org/66011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-09 23:04:00 +00:00
asargent@chromium.org
144cca7d3d
Fix v8::Object::DeleteHiddenValue to not bail when there are no hidden properties.
...
Review URL: http://codereview.chromium.org/58016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-08 21:05:29 +00:00
sgjesse@chromium.org
835b89b727
Fixed step in handling for function.call.
...
For function.call debug step in did not work as execution did not break in the function called. This has now been fixed using the same means as for function.apply in CL http://codereview.chromium.org/63055 .
Review URL: http://codereview.chromium.org/63058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-07 12:11:43 +00:00
sgjesse@chromium.org
a74fcf458c
Fixed the step in handling for function.apply.
...
The generic step-in mechanism floods the function called with break points to ensure a break is hit when entering the function. This generic mechanism was also used for function.apply. The code for function.apply contains a keyed load IC which was patched when stepping into function.apply. However function.apply enteres an internal frame not a JavaScript frame. This caused the logic for returning from the break in function.apply to fail as it forced a jump to the IC on the top JavaScript frame. The top JavaScript frame was the frame for the function calling function.apply not the frame for the apply function. Now returning from the break point in the keyed load IC in the apply code caused a jump to the code for the call IC for the function calling function.apply in the first place. Not a pretty sight.
Step-in now handles function.apply as a separate case where the actual JavaScript function called through apply is flodded with breakpoints instead of the function.apply function.
BUG=269
BUG=8210@chromium.org
Review URL: http://codereview.chromium.org/63055
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1683 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-07 09:54:53 +00:00
sgjesse@chromium.org
2336579a11
Apply Matt Hanselman's patch to fix issue 96.
...
Reviewed CL at http://codereview.chromium.org/42686 .
BUG=96
Review URL: http://codereview.chromium.org/62052
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1681 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-07 07:16:10 +00:00
whesse@chromium.org
5ccfe93c9e
Fix crash with indexed setter on objects without corresponding getter.
...
Review URL: http://codereview.chromium.org/63010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-06 14:55:01 +00:00
whesse@chromium.org
20a6e7e5e9
Rewrite of VisitCountOperation that should speed it up
...
Review URL: http://codereview.chromium.org/56151
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1677 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-03 13:27:14 +00:00
lrn@chromium.org
5dc51480c5
Quick pointer comparison, removed undetectable tests.
...
Special case for NaN in equality test.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-03 12:44:45 +00:00
lrn@chromium.org
3e55df5a57
Tracks static type of strings in frame elements and results.
...
Uses static string type to optimize string additions.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1675 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-03 12:01:56 +00:00
lrn@chromium.org
015164f0f2
String.match tests that wasn't included in the implementation change list.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1665 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-01 09:09:05 +00:00
ager@chromium.org
e39b80c743
The tests pass on the arm hardware of course.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1660 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-03-31 16:48:14 +00:00
ager@chromium.org
2ca0e90da5
Apparently, the --simulator=arm option is not always used when using
...
test.py for running the simulator tests. Mark the exception
propagation tests as failing on ARM in general for now. I'll dig into
it again tomorrow morning.
TRB=christian.plesner.hansen@gmail.com
Review URL: http://codereview.chromium.org/56112
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1659 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-03-31 16:43:51 +00:00
ager@chromium.org
aacd90314f
Reland exception propagation fix.
...
Fix exception propagation problem where undefined was returned instead
of an empty handle in case of an exception. This problem can break
C++ programs that are not interested in catching exceptions and just
want to propagate them out by testing for empty handles.
The issue is that exceptions are not rescheduled if they are
externally caught. Externally caught exceptions have to be
rescheduled if there is a JavaScript frame on the way to the C++ frame
that holds the external handler.
A couple of tests will fail on the ARM simulator because the simulator
has separate stacks for C++ and JavaScript. I have marked the tests
as failing only on the simulator.
Review URL: http://codereview.chromium.org/56105
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1657 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-03-31 15:23:58 +00:00
kmillikin@chromium.org
c80b013999
Fix issue 294 by ensuring that we don't lose the copy flag on memory
...
frame elements when allocating them to a register as a result of
popping one of their copies.
Review URL: http://codereview.chromium.org/57053
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1655 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-03-31 14:01:25 +00:00
erik.corry@gmail.com
c7925142e6
* 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
2009-03-31 12:45:33 +00:00
sgjesse@chromium.org
1f7a7d9c58
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
2009-03-31 11:24:59 +00:00
kmillikin@chromium.org
99ba650f71
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
2009-03-27 12:32:28 +00:00
mikhail.naganov@gmail.com
66d40652da
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
2009-03-27 11:56:30 +00:00
mikhail.naganov@gmail.com
d3c4a658f9
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
2009-03-27 11:22:52 +00:00
christian.plesner.hansen@gmail.com
9142c42df2
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
2009-03-27 00:24:49 +00:00
lrn@chromium.org
bd8816efb0
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
2009-03-25 12:14:10 +00:00
kmillikin@chromium.org
1ba34bf86b
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
2009-03-24 12:42:28 +00:00
kasperl@chromium.org
dd95e1d216
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
2009-03-24 10:49:25 +00:00
sgjesse@chromium.org
1bf46b6be0
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
2009-03-24 10:42:00 +00:00
kmillikin@chromium.org
4e74725681
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
2009-03-24 08:53:43 +00:00
kmillikin@chromium.org
5e2f3adfd0
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
2009-03-24 08:29:24 +00:00
ager@chromium.org
d4e6613760
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
2009-03-24 08:27:43 +00:00
christian.plesner.hansen
dbe4e4a644
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
2009-03-24 00:48:17 +00:00
christian.plesner.hansen
cff1d2715e
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
2009-03-23 23:49:58 +00:00
sgjesse@chromium.org
d8e53cf150
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
2009-03-23 22:23:39 +00:00
iposva@chromium.org
7b50c072f9
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
2009-03-23 19:51:10 +00:00
olehougaard
a8c50151fc
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
2009-03-23 07:27:47 +00:00
christian.plesner.hansen
3355c8130e
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
2009-03-23 02:25:40 +00:00
iposva@chromium.org
ce1fe3e465
- 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
2009-03-20 23:33:36 +00:00
iposva@chromium.org
1db91bee34
- 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
2009-03-20 22:13:50 +00:00
mikhail.naganov@gmail.com
3bd4c93d07
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
2009-03-20 14:49:12 +00:00
lrn@chromium.org
6fa2f4f0c9
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
2009-03-20 13:26:16 +00:00
sgjesse@chromium.org
b52848758a
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
2009-03-20 13:24:58 +00:00
sgjesse@chromium.org
32de098ef6
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
2009-03-20 09:03:36 +00:00
sgjesse@chromium.org
30f49d60c0
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
2009-03-19 21:46:12 +00:00
sgjesse@chromium.org
b3a4e60957
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
2009-03-19 21:07:07 +00:00
ager@chromium.org
4d6b3a54ad
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
2009-03-19 19:29:23 +00:00
iposva@chromium.org
ea653021fc
- 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
2009-03-19 18:50:00 +00:00
ager@chromium.org
2fcad0aec1
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
2009-03-19 15:06:00 +00:00
erik.corry@gmail.com
54d295bdef
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
2009-03-19 13:01:50 +00:00
sgjesse@chromium.org
881e01b245
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
2009-03-19 11:55:09 +00:00
erik.corry@gmail.com
2c84d84d5c
// 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
2009-03-19 08:23:00 +00:00
ager@chromium.org
2ff097e17f
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
2009-03-18 21:14:46 +00:00
mike@belshe.com
c5d777338a
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
2009-03-18 19:24:15 +00:00
sgjesse@chromium.org
b6640ad0b5
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
2009-03-18 13:32:22 +00:00
sgjesse@chromium.org
b226f1242e
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
2009-03-18 13:11:43 +00:00