Commit Graph

1418 Commits

Author SHA1 Message Date
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
iposva@chromium.org
dc6a6f71b8 Add version.cc and version.h to Xcode project.
Review URL: http://codereview.chromium.org/100211

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1828 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-30 17:06:02 +00:00
sgjesse@chromium.org
b34e190df2 Fixed SCons build when not running from the V8 root directory.
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/100201

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-30 10:30:44 +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
ager@chromium.org
328dc180ba svn ignore gyp generated files
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-30 08:12:32 +00:00
mikhail.naganov@gmail.com
178a656429 Enhancing profiling data processing code with functionality needed for the Dev Tools Profiler.
Details:

 - added properties / functions in view objects needed for WebKit's ProfileView;

 - added ability to count profiles for specific functions.

The tickprocessor functionality does not affected.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-30 08:10:27 +00:00
lrn@chromium.org
9156ed9e04 Added architecture properties to Windows Scons build.
Made scons build work on windows.

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


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1822 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-30 07:21:54 +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
976a9025e4 Fix .gyp file and avoid adding -m32 on 32 bit systems.
Fix SConstruct to only add -m32 if the compiler needs it.

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


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1820 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 15:20:37 +00:00
ager@chromium.org
774d0d504b Fix the xcode project to define the correct V8_ARCH_*.
TBR=lrn@chromium.org
Review URL: http://codereview.chromium.org/99188

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1819 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 14:06:10 +00:00
whesse@chromium.org
732e3999e4 Add a mjsunit test to cover more paths in the ia32 code generator.
Review URL: http://codereview.chromium.org/99187

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1818 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 13:57:48 +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
sgjesse@chromium.org
37036ff446 Remove tab to satisfy lint
TBR=ager@chromium.org

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



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 11:12:58 +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
iposva@chromium.org
a6434ab5e4 Fix names after move of architecture dependent files.
TBR=lrn

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1810 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-29 00:01:51 +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
mikhail.naganov@gmail.com
bffdfa3552 Rename profileview.js -> profile_view.js because WebInspector already has ProfileView.js.
Review URL: http://codereview.chromium.org/100102

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1805 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-28 09:15:31 +00:00
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
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
ager@chromium.org
e3e50f7070 Add gyp file to v8 repository.
Gyp is used to generate project files used to build chromium.  Moving
the v8.gyp file to the v8 repository makes it easier to have V8 and
the v8.gyp file synchronized (so a DEPS update in chromium gets the
right v8.gyp file associated with that revision of V8).

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



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1795 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-27 09:04:39 +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
ager@chromium.org
5efbfcff22 Fix V8 xcode build.
Let xcode fix a couple of things and add json-delay.js to the project.
Review URL: http://codereview.chromium.org/93122

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1792 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 13:18:40 +00:00
erik.corry@gmail.com
cb23cbb15c Fix Android build after arch-subdir reorganisation.
Review URL: http://codereview.chromium.org/94008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1791 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-04-24 12:56:58 +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
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
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
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