kmillikin@chromium.org
c68db5a389
Fix lint failure.
...
TBR=ager@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 10:25:55 +00:00
deanm@chromium.org
b432613622
Use our own macros for 64-bit constants.
...
Review URL: http://codereview.chromium.org/109017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 10:21:28 +00:00
ager@chromium.org
5a4e24fe0f
Revert workaround for http://crbug.com/9746 .
...
Review URL: http://codereview.chromium.org/109015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 10:15:05 +00:00
lrn@chromium.org
3fa2a67ffb
Changed definition of INT64_C and UINT64_C to use the one in stdint.h.
...
Since Chromium build system appears to define __STDC_CONSTANT_MACROS, we might as well use the macro definitions from stdint.h in all cases.
Review URL: http://codereview.chromium.org/109016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 09:50:29 +00:00
sgjesse@chromium.org
3cdb194c56
Add the ability to set embedder data on created contexts from the API.
...
Expose the active context where a break event occoured through the debug message handler.
Review URL: http://codereview.chromium.org/109013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 09:38:45 +00:00
kmillikin@chromium.org
74472a1bab
Some cleanup of the mark-sweep/compact collector following the symbol
...
table debacle.
Review URL: http://codereview.chromium.org/109012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 09:26:06 +00:00
ager@chromium.org
4973c84241
Prepare to push version 1.2.2 to trunk.
...
Review URL: http://codereview.chromium.org/109005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1852 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 07:08:56 +00:00
kmillikin@chromium.org
abfee85871
Clean up comment.
...
TBR=iposva@chromium.org
Review URL: http://codereview.chromium.org/108003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 05:17:39 +00:00
kmillikin@chromium.org
3af69aed22
Improved, safer handling of the symbol table. The symbols themselves
...
are not treated as roots, but all their subparts are.
Review URL: http://codereview.chromium.org/108002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-05 05:13:09 +00:00
erik.corry@gmail.com
282bc7a7b4
Reverty 1842 (see http://code.google.com/p/chromium/issues/detail?id=1717 )
...
Review URL: http://codereview.chromium.org/99346
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 19:35:46 +00:00
deanm@chromium.org
4a4f95bddd
Fix a guard style inconsistency in regexp-stack.h.
...
Two spaces before the endif guard comment.
Review URL: http://codereview.chromium.org/99363
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 19:31:36 +00:00
kmillikin@chromium.org
e01f3a9ee8
More special handling of the symbol table during garbage collection.
...
Mark all objects reachable from the symbols except the symbols
themselves as live (and reachable from strong roots). This ensures
that if the symbol itself remains alive for any reason, and if it was
a sliced string or cons string backed by an external string, then the
external string will be strongly reachable and therefore not get a
weak reference callback.
Review URL: http://codereview.chromium.org/100344
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 18:47:50 +00:00
deanm@chromium.org
eb906555fc
Cleanup include guards:
...
- Fix some typos / guards that didn't match the filename.
- Fix some style inconsistencies.
- Add guards to files that were missing them.
- Add the directory name to the guard.
Review URL: http://codereview.chromium.org/99343
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 13:36:43 +00:00
whesse@chromium.org
aa5f53101f
Include 64-bit pointer and constant types in include/v8.h.
...
Make some definitions in globals.h 64-bit safe
Review URL: http://codereview.chromium.org/100336
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 13:29:29 +00:00
lrn@chromium.org
d423dea519
Changed some int casts to intptr_t.
...
Removed a drop in an ocean of compile errors in x64 mode.
Review URL: http://codereview.chromium.org/100337
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 13:11:38 +00:00
erik.corry@gmail.com
8a15c49974
Fix http://code.google.com/p/chromium/issues/detail?id=1717
...
undeletable functions on some prototypes.
Review URL: http://codereview.chromium.org/100335
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 12:34:20 +00:00
lrn@chromium.org
32686a11f0
Added empty files in the x64 directory.
...
Added initially empty files for x64 development.
Review URL: http://codereview.chromium.org/100327
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-04 07:16:10 +00:00
feng@chromium.org
ecd705813f
A simple fix of issue http://code.google.com/p/chromium/issues/detail?id=3285
...
NPN_Construct allows a NPObject to be called as a construct. For example, the
test case
var s = new app.Packages.java.lang.Integer(5);
app.Packages.java.lang.Integer is a NPObject, and it implements NPN_Construct.
This fix allows a JSObject created by an API function be called as a construct
if it can be called
as a function. This is done by generating the same code for
var s = new app.Packages.java.lang.Integer(5); as
var s = app.Packages.java.lang.Integer(5);
and the caller handles both case correctly. A more sophiscated fix is to one
extra JSConstructCall
frame and allow CallAsConstructor in Builtin::HandleApiCallAsFunction.
This change itself shouldn't affect the semantic of normal case such as:
var a = {};
var s = new a();
A TypeError exception will be thrown in CALL_NON_FUNCTION (runtime.js).
Another part of fix is in the binding code, V8NPObject, which makes
NPN_InvokeDefault or NPN_Construct
call depending on which function is available.
Review URL: http://codereview.chromium.org/100243
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-01 19:01:19 +00:00
whesse@chromium.org
1ddaea61be
Stop inlining of list reallocation in virtual frames.
...
Review URL: http://codereview.chromium.org/100253
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-01 14:37:28 +00:00
erik.corry@gmail.com
7fa09c0aca
Add change accidentally omitted from last changelist.
...
Review URL: http://codereview.chromium.org/100252
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-01 12:20:31 +00:00
erik.corry@gmail.com
ad23017469
When strings can change from an ASCII representation to a
...
UC16 representation we need to be careful about flat strings.
Flat strings can be sliced or cons strings that have a flat
string under them, so when we ask a flat cons or a slice whether
it is ASCII or not we should ask the underlying string about
its representation. This should fix
http://code.google.com/p/chromium/issues/detail?id=10971
Review URL: http://codereview.chromium.org/100249
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1830 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-01 11:16:29 +00:00
lrn@chromium.org
83d1d02df7
Made sort on non-arrays also affect elements on the prototype, for JSC compatability.
...
Made sort on non-objects with inherited elements JSC compatible.
Review URL: http://codereview.chromium.org/99272
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-01 10:06:55 +00:00
sgjesse@chromium.org
a470847226
Added better version information
...
The current version is now held in src/version.cc in a number of defines which needs to be modified when changing version.
The following defines make up the version information:
MAJOR_VERSION
MINOR_VERSION
BUILD_NUMBER
PATCH_LEVEL
CANDIDATE_VERSION
The first four are numbers and the fifth is a boolean. Besides these five the define
SONAME
can be used to set a specific soname when building the a shared library (see below). This will most likely be used on stable branches where binary compatibility is ensured between different versions. This define is a string.
This version information is now read by the SCons build to support setting the soname for a Linux shared library. This requires passing the option soname=on to the SCons build.
When soname=on is specified the soname for the shared library can be set in two different ways. Either it will be the full versioned library name (e.g. libv8-1.2.2.so) or a specific soname defined in src/version.cc. Whenever a shared library is build with an soname the filename of the library will hold the full version name (e.g. libv8-1.2.2.so).
I did not update the xcode project with the new files.
BUG=151
Review URL: http://codereview.chromium.org/100104
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1826 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-30 09:29:15 +00:00
whesse@chromium.org
714e525b40
Improve register allocation of left shift operation. Add tests
...
for all shift operations.
Review URL: http://codereview.chromium.org/101016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-30 09:21:50 +00:00
asargent@chromium.org
ec3beee2bf
Make Object::GetIdentityHash() never return 0.
...
This is convenient when using identity hashes in data structures that
want to reserve 0 as a sentinel value, such as WebKit's WTF::HashMap.
Review URL: http://codereview.chromium.org/100147
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1821 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 21:44:13 +00:00
lrn@chromium.org
ea56336518
Create build structure for X64.
...
Possible to attempt to build for X64.
Build will be unsuccessful, since all x64 source files are
missing and pointers are reinterpreted as integers everywhere.
Review URL: http://codereview.chromium.org/99186
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1817 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 13:11:48 +00:00
sgjesse@chromium.org
2beedf1181
Create a transition API for the debug message handler.
...
Kept the previous message handler API to avoid breaking clients depending on it.
The new message handler API uses a new name ending with 2.
Review URL: http://codereview.chromium.org/100158
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1816 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 12:54:07 +00:00
erik.corry@gmail.com
9a9e09ee73
Unbreak IA32 generated code coverage.
...
Review URL: http://codereview.chromium.org/100156
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1814 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 11:04:28 +00:00
sgjesse@chromium.org
f8319c3cba
Re-submit http://codereview.chromium.org/99122 after fixing compilation issues.
...
TBR=yurys@chromium.org
Review URL: http://codereview.chromium.org/100155
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1813 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 09:04:20 +00:00
sgjesse@chromium.org
974734bedb
Reverting 1811.
...
Review URL: http://codereview.chromium.org/99175
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 08:33:01 +00:00
sgjesse@chromium.org
95288e916e
Changed the debugger message API to receive an object instead of a JSON string.
...
The object delivered to the debug message handler contains additional information on the current break handling the messages.
Clients which require just JSON message parsing can simply get the JSON using the GetJSON message on the message object to still have the previous behaviour.
NewMessageHangler(const v8::Debug::Message& message) {
v8::String::Value val(message.GetJSON());
OldMessageHandler(Vector<uint16_t>(const_cast<uint16_t*>(*val), val.length()));
}
Refactored some of the debugger code to use internal handles instead of API handles. Also changed Object to JSObject is some places.
The access to the active context when the break occurred is still not implemented. I will add this in a new CL, as this one is quite big already.
Review URL: http://codereview.chromium.org/99122
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1811 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 08:23:58 +00:00
whesse@chromium.org
bd45424f02
Fix lint error
...
Review URL: http://codereview.chromium.org/100105
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1809 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-28 15:14:44 +00:00
whesse@chromium.org
62c4153442
Change MergeTo code for virtual frames to use register indices.
...
Review URL: http://codereview.chromium.org/99052
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1808 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-28 13:53:15 +00:00
kmillikin@chromium.org
aa04659a82
Add stubbed-out versions of missing member functions on ARM.
...
TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/99123
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-28 10:53:47 +00:00
kmillikin@chromium.org
d30bc90b9c
Inline the inobject property case for named property loads.
...
Review URL: http://codereview.chromium.org/99120
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1806 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-28 10:40:36 +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
22d6cc9d4b
Lint.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1798 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 09:27:18 +00:00
ager@chromium.org
f6bafbfb09
Prepare push of version 1.2.1 to trunk. The main reason for this push
...
is to get the chromium V8-latest builder working again and to move the
gyp file used for the chromium build to V8 to make it easier to roll
V8 DEPS.
Review URL: http://codereview.chromium.org/99049
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1796 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 09:14:19 +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
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
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
erik.corry@gmail.com
e5a1973d3c
2nd try at fixing coverage of inline keyed access on IA32.
...
Review URL: http://codereview.chromium.org/92067
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1780 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-23 07:52:38 +00:00
ager@chromium.org
35e78919eb
Prepare to push version 1.2.0 to trunk. Now worker on version 1.2.1.
...
Review URL: http://codereview.chromium.org/92066
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1779 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-23 07:32:25 +00:00
erik.corry@gmail.com
9425b17b8e
Remove if inside contradictory if.
...
Review URL: http://codereview.chromium.org/93059
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1777 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-23 05:45:40 +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
sgjesse@chromium.org
60f13875f1
Use CollectAllGarbage for the gc() extension.
...
Review URL: http://codereview.chromium.org/5666
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1771 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 14:00:12 +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
yurys@chromium.org
344d68a938
This issue was introduced by http://codereview.chromium.org/67266
...
Review URL: http://codereview.chromium.org/93014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1766 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 13:04:19 +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
erik.corry@gmail.com
f78fbf0c56
Abolish kDebug and use ifdef DEBUG throughout for consistency.
...
Review URL: http://codereview.chromium.org/94001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1761 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 09:25:41 +00:00
ager@chromium.org
7d4fed590f
Adding hidden values always turned the object slow case because the
...
hidden symbol is not an identifier. Make sure to keep objects fast
case when adding hidden values if possible.
Review URL: http://codereview.chromium.org/93004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1758 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-22 07:38:08 +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
erik.corry@gmail.com
0efd83c916
* Add code to check coverage of generated code on IA32 port.
...
* Move ARM coverage code to ARM-specific file and add missing
file to cover.
Review URL: http://codereview.chromium.org/88025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 13:42:12 +00:00
christian.plesner.hansen@gmail.com
0d21e7b3b0
review
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1753 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-21 13:28:34 +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
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
feng@chromium.org
19c95ff39a
Fix style issues caught by presubmit script.
...
TBR = erikcorry
Review URL: http://codereview.chromium.org/83004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1746 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-20 17:44:39 +00:00
feng@chromium.org
ea48d53bad
Add ENABLE_DEBUGGER_SUPPORT macro.
...
ENABLE_DEBUGGER_SUPPORT is enabled by default unless it is on Android platform.
On Android platform, it can also enabled by passing -DENABLE_DEBUGGER_SUPPORT flag to the compiler.
This should not affect any existing build (I hope, cross my fingers) except the build in real Android environment (in other word, it only affects me now).
There are lot of room for code refactoring in stead of using #ifdef all over the place. I will leave this to v8 folks.
Review URL: http://codereview.chromium.org/77035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1745 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-20 16:36:13 +00:00
sgjesse@chromium.org
f5eb2cbe65
Remove unused runtime function.
...
The CompileScript runtime function is not used by any builtins any more.
Review URL: http://codereview.chromium.org/80003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1744 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-20 12:15:27 +00:00
iposva@chromium.org
8775634598
Add a "read" extension to the shell programs. This global function
...
reads the contents of a file into a string and returns it.
Review URL: http://codereview.chromium.org/67262
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1741 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 21:04:34 +00:00
erik.corry@gmail.com
413bd7a91c
Lint.
...
Review URL: http://codereview.chromium.org/77026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1737 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 13:57:15 +00:00
erik.corry@gmail.com
8f911a2f5d
* Remove unused code from codegen-arm.cc
...
* Fix fp ops on pre-EABI ARM targets.
* Fix missing TIMEVAL_TO_TIMESPEC on Android.
Review URL: http://codereview.chromium.org/77025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1736 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 13:27:36 +00:00
ager@chromium.org
59d4539f38
If an external string enters the symbol table, make sure to set the
...
resource to NULL when removing it from the symbol table. This makes
sure that the debugger can recognize the external string as being
"deleted". Now, whenever an external resource is deleted, the
resource pointer is set to NULL.
This is really a workaround of a debugger problem. We need to make
sure that the debugger only finds scripts in the heap that are
actually live.
Review URL: http://codereview.chromium.org/69029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1734 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 09:17:04 +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
iposva@chromium.org
7dece760ad
- Fix delta time calculation in LinuxSemaphore::Wait.
...
Review URL: http://codereview.chromium.org/69024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1732 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-17 00:56:52 +00:00
iposva@chromium.org
e05c2e3693
Start addressing massive arrays on the stack. There is hardly ever
...
a reason to stack allocate large chunks of stack space.
- Runtime_GetCFrames used to allocate a frame size of 52040 bytes.
- PreallocatedMemoryThread::Run used to allocate 32784 bytes.
- Fixed StringStream overflow conditions.
Review URL: http://codereview.chromium.org/67197
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1729 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 21:01:05 +00:00
mikhail.naganov@gmail.com
4ff39b7a7d
Remove unused CodeRegion class and corresponding logging functions.
...
Review URL: http://codereview.chromium.org/67221
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1728 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 17:30:27 +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
ager@chromium.org
4cfdb57104
Fix lint. Accidentally commited a reindentation of a parameter list
...
that introduced line that was too long.
Review URL: http://codereview.chromium.org/67214
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1724 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 12:58:14 +00:00
erik.corry@gmail.com
4db9cb3a7f
Don't blindly use blx instruction without knowing whether the CPU supports it.
...
Review URL: http://codereview.chromium.org/67213
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1723 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 12:12:47 +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
kmillikin@chromium.org
5d8a34e0c8
Remove some unused macros from objects.cc.
...
Review URL: http://codereview.chromium.org/67211
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1721 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-16 11:30:00 +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
kasperl@chromium.org
e97c387ec8
Prepare a push to trunk (version 1.1.10).
...
Review URL: http://codereview.chromium.org/67167
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1716 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 13:16:51 +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
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
kmillikin@chromium.org
2f0013ebbf
A few small changes to --print-ast behavior:
...
* Remove two horizontal spaces per indent
* Don't print an extra space between "VAR" and "(" for parameters
* Call the name on named property accesses "NAME"
Review URL: http://codereview.chromium.org/67124
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1712 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 07:41:04 +00:00
erik.corry@gmail.com
93132e1b5d
Timeout of os.system() in d8 was timing out too soon.
...
Review URL: http://codereview.chromium.org/63062
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1711 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 07:15:41 +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
yurys@chromium.org
a6e3d992ba
To resolve functions from the call stack we need at least ids for the scripts of those functions. The information on the scripts is now included into the response.
...
Review URL: http://codereview.chromium.org/65006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1708 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-15 01:17:00 +00:00
sgjesse@chromium.org
be7f110adf
Remove definition of _HAS_EXCEPTIONS from source files.
...
The define _HAS_EXCEPTIONS=0 is only required on Windows and is already set in the SCons build file and Visual Studio project files.
Review URL: http://codereview.chromium.org/67116
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1707 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 14:58:23 +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
sgjesse@chromium.org
0668a2a355
Fix VirtualFrame::is_used for ARM
...
Caused a compiler warning when compiling on Windows.
Review URL: http://codereview.chromium.org/67108
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1705 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 14:54:41 +00:00
kasperl@chromium.org
66f7a367f7
Fix build issue on Mac.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1703 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 14:01:00 +00:00
kasperl@chromium.org
383821854b
Prepare a push to trunk (version 1.1.9).
...
Review URL: http://codereview.chromium.org/73031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 13:29:23 +00:00
kasperl@chromium.org
5decd39b51
Move STATIC_ASSERT to IsShortcutCandidate to fix the
...
broken build.
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/67126
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1700 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 12:10:32 +00:00
kasperl@chromium.org
bca37da6af
Verify the symbol table contents before and after all
...
GCs (not just mark-compacts) and make the mark-compact
shortcutting of cons-strings identical to the scavenge
version.
Review URL: http://codereview.chromium.org/67125
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1699 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 12:00:56 +00:00
kasperl@chromium.org
850d5ed380
Fixed issue 303 by not shortcutting cons-symbols and added
...
symbol table verification after mark-compact GCs.
Review URL: http://codereview.chromium.org/73029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1698 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 09:58:42 +00:00
mikhail.naganov@gmail.com
c77875113c
Fixed presubmit errors.
...
TBR=sgjesse@chromium.org
Review URL: http://codereview.chromium.org/73025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1697 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 01:33:15 +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
davemoore@chromium.org
69bdfe255b
Reenable d8 stats timers, using the histogram mechanism
...
Review URL: http://codereview.chromium.org/67100
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1695 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-14 00:30:44 +00:00
mikhail.naganov@gmail.com
0eb4dea12d
Implemented "no heap access" mode for JSFrame which is used for stack sampling in profiler.
...
As I discovered that JSFrame accesses SharedFunctionInfo only to calculate caller SP and the latter is not used in profiler's stack sampling, I disabled accessing heap objects in JSFrame when doing stack sampling. This finally made V8's profiling stable when used from Chrome on a real web app.
Review URL: http://codereview.chromium.org/73020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1694 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-13 23:12:04 +00:00
mikhail.naganov@gmail.com
ce6d2916b8
Added another check in SafeStackFrameIterator.
...
While playing with profiling in debug version of Chrome, I encontered a
case when assertion in StackHandlerIterator failed.
Review URL: http://codereview.chromium.org/65005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1693 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-13 14:42:01 +00:00
kasperl@chromium.org
3b80ddac19
Prepare a push to trunk (version 1.1.8).
...
Review URL: http://codereview.chromium.org/71001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1691 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-11 09:01: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
erik.corry@gmail.com
59d3cf8403
Fix profiling on Android.
...
Review URL: http://codereview.chromium.org/62102
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-07 13:33:39 +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
kasperl@chromium.org
9c8b187658
Prepare a push to trunk (version 1.1.7).
...
Review URL: http://codereview.chromium.org/62091
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-07 06:00:21 +00:00
davemoore@chromium.org
500281afde
Put back compilation cache
...
Review URL: http://codereview.chromium.org/56185
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-06 18:08:06 +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
kmillikin@chromium.org
339e2e5244
Add two more invocations of ENTER_V8 to places where we need to write
...
to V8's heap.
Review URL: http://codereview.chromium.org/60089
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-03 10:30:21 +00:00
kmillikin@chromium.org
2c5ce41876
Move some more ENTER_V8 invocations. The biggest one is to move the
...
one in v8::V8::Initialize to after the early bailout.
Review URL: http://codereview.chromium.org/60083
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1673 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-03 08:18:24 +00:00
kmillikin@chromium.org
35d6c8fb03
Remove ENTER_V8 from small API functions that do not need access to
...
V8's heap or only need read access.
This means that IsDeadCeck and EnsureInitialized could sometimes be
called without having already entered the VM. To simplify things,
this is made always the case. A couple of error callbacks do not need
to leave V8 because they haven't entered.
Consistently enter V8 after LOG_API (since LOG_API is sometimes before
EnsureInitialized or IsDeadCheck).
This all should have no effect unless V8 is built with
ENABLE_HEAP_PROTECTION and run with --protect-heap.
Review URL: http://codereview.chromium.org/56211
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1672 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-03 07:49:20 +00:00
kmillikin@chromium.org
8389e4f9f8
When computing pairwise merges of frame elements, we should allow
...
constants and copies below the watermark on backward jump targets
(that's the whole point!).
Review URL: http://codereview.chromium.org/60044
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1670 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-02 12:23:49 +00:00
kmillikin@chromium.org
06860982a9
Clean up return statements in the code generator by explicitly
...
counting the reference to the return value and passing it to the
return label. This requires threading it through try/catch and
try/finally. The return value is loaded into eax more lazily than
before.
Also, perform some related refactoring of jump targets.
Review URL: http://codereview.chromium.org/56172
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1669 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-02 08:58:18 +00:00
ager@chromium.org
9bc64e657a
Prepare another push to trunk (version 1.1.6). We pushed an unsafe
...
compiler optimization which has now been reverted.
Review URL: http://codereview.chromium.org/60011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1667 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-01 10:41:37 +00:00
ager@chromium.org
deb0d4cc37
Revert change 1656 which was unsafe until it can be properly fixed.
...
TBR=whesse@chromium.org
Review URL: http://codereview.chromium.org/60010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1666 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-01 10:35:20 +00:00
ager@chromium.org
185aa082c4
Prepare to push version 1.1.5 to trunk. This version contains a
...
number of bug fixes.
Review URL: http://codereview.chromium.org/60004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1661 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-01 06:39:18 +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
whesse@chromium.org
e2ed40a1eb
Keep the result of postfix increment and decrement in a register.
...
Review URL: http://codereview.chromium.org/56106
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1656 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-03-31 15:03:02 +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
745cccdcba
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
2009-03-31 11:45:20 +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
87d8bcf7ee
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
2009-03-31 09:07:57 +00:00
mikhail.naganov@gmail.com
e88d1e475e
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
2009-03-31 09:06:37 +00:00
kmillikin@chromium.org
d0b7f84ec0
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
2009-03-31 09:02:40 +00:00
erik.corry@gmail.com
b9c5232c1d
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
2009-03-31 06:51:25 +00:00
kmillikin@chromium.org
d3ee29a7f6
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
2009-03-30 13:32:28 +00:00
whesse@chromium.org
0f9253b537
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
2009-03-30 13:03:32 +00:00
ager@chromium.org
ab845fd829
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
2009-03-30 12:58:45 +00:00
yurys@chromium.org
9a9194584c
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
2009-03-30 11:50:17 +00:00
sgjesse@chromium.org
d97a72c606
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
2009-03-30 08:16:14 +00:00
whesse@chromium.org
952179e323
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
2009-03-27 14:35:24 +00:00
erik.corry@gmail.com
a038698ead
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
2009-03-27 13:50:26 +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
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
kmillikin@chromium.org
b8af68b03f
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
2009-03-27 10:29:37 +00:00
sgjesse@chromium.org
6feb0d9a8f
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
2009-03-27 10:17:50 +00:00
sgjesse@chromium.org
8b7a288e48
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
2009-03-27 09:56:53 +00:00
sgjesse@chromium.org
8e34544bd1
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
2009-03-27 08:38:02 +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
whesse@chromium.org
d970e04e04
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
2009-03-26 13:14:10 +00:00
kmillikin@chromium.org
f8bf152c89
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
2009-03-26 13:02:00 +00:00
kmillikin@chromium.org
4dceb3c87f
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
2009-03-26 13:00:03 +00:00
whesse@chromium.org
7d23b48a02
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
2009-03-26 10:25:49 +00:00
sgjesse@chromium.org
dedd811806
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
2009-03-26 09:43:14 +00:00
sgjesse@chromium.org
0e5999efae
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
2009-03-26 09:28:27 +00:00
feng@chromium.org
0a5a8e8854
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
2009-03-25 18:23:04 +00:00
kmillikin@chromium.org
03419c8369
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
2009-03-25 14:08:41 +00:00
mikhail.naganov@gmail.com
49af176623
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
2009-03-25 14:07:52 +00:00
mikhail.naganov@gmail.com
9f5de7d9da
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
2009-03-25 12:59:25 +00:00
lrn@chromium.org
eb3bf2083c
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
2009-03-25 12:37: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
7c35a5d820
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
2009-03-25 11:05:36 +00:00
kasperl@chromium.org
4d8ea7143f
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
2009-03-25 10:29:22 +00:00
whesse@chromium.org
36853c83d1
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
2009-03-25 10:00:52 +00:00
mikhail.naganov@gmail.com
68d9782c01
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
2009-03-25 09:35:11 +00:00
kasperl@chromium.org
898297b0b7
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
2009-03-24 14:42:35 +00:00
erik.corry@gmail.com
62a7f913a2
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
2009-03-24 14:29:49 +00:00
kmillikin@chromium.org
f38dc917b0
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
2009-03-24 14:25:22 +00:00
erik.corry@gmail.com
944258f979
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
2009-03-24 13:33:54 +00:00
kmillikin@chromium.org
89a43b8f18
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
2009-03-24 13:21:34 +00:00
whesse@chromium.org
1d5f94c71e
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
2009-03-24 13:11:34 +00:00
kmillikin@chromium.org
bc3fb11881
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
2009-03-24 12:47:53 +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
whesse@chromium.org
bbd21a59fd
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
2009-03-24 11:52:33 +00:00
ager@chromium.org
efba01b86f
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
2009-03-24 11:07:09 +00:00
lrn@chromium.org
c8c5d9820d
Test a few assertions that should hold.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-03-24 10:16:30 +00:00
sgjesse@chromium.org
cf8c7cc3e4
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
2009-03-24 10:15:02 +00:00
kasperl@chromium.org
70aa1fde83
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
2009-03-24 08:55:11 +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
sgjesse@chromium.org
96088babe7
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
2009-03-24 06:32:00 +00:00
sgjesse@chromium.org
b5d265a3a2
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
2009-03-23 22:35:01 +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
whesse@chromium.org
34f71b1149
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
2009-03-23 15:03:39 +00:00
whesse@chromium.org
010443b985
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
2009-03-23 13:51:41 +00:00
whesse@chromium.org
ba16099e40
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
2009-03-23 13:37:55 +00:00
erik.corry@gmail.com
aa81281b3d
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
2009-03-23 12:37:53 +00:00
erik.corry@gmail.com
5fb08f90f7
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
2009-03-23 10:06:20 +00:00
lrn@chromium.org
9ca7c8af2c
Fix bug in regexp the breaks interpreter.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-03-23 08:44:33 +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
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
erik.corry@gmail.com
80ce1b2500
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
2009-03-20 17:01:15 +00:00
erik.corry@gmail.com
77b963ca04
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
2009-03-20 16:37:18 +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
c35bacb2dc
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
2009-03-20 14:09:48 +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
kmillikin@chromium.org
6565243504
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
2009-03-20 12:58:14 +00:00
kmillikin@chromium.org
9752bf90b5
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
2009-03-20 09:35:31 +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
83111deb97
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
2009-03-20 08:53:57 +00:00