Skip to content

Commit

Permalink
deps: upgrade v8 to 3.18.4
Browse files Browse the repository at this point in the history
  • Loading branch information
bnoordhuis committed Apr 29, 2013
1 parent 5ddf7f4 commit 2f75785
Show file tree
Hide file tree
Showing 225 changed files with 8,583 additions and 3,787 deletions.
1 change: 1 addition & 0 deletions deps/v8/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
*~
.cpplint-cache
.d8_history
bsuite
d8
d8_g
shell
Expand Down
1 change: 1 addition & 0 deletions deps/v8/AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ ARM Ltd.
Hewlett-Packard Development Company, LP
Igalia, S.L.
Joyent, Inc.
Bloomberg Finance L.P.

Akinori MUSHA <knu@FreeBSD.org>
Alexander Botero-Lowry <alexbl@FreeBSD.org>
Expand Down
32 changes: 32 additions & 0 deletions deps/v8/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,35 @@
2013-04-26: Version 3.18.4

Added a preliminary API for ES6 ArrayBuffers

Replaced qsort with std::sort. (Chromium issue 2639)

Performance and stability improvements on all platforms.


2013-04-24: Version 3.18.3

Exposed the GC under a name that is less collision prone than window.gc.
(issue 2641)

Do not emit double values at their use sites. (Chromium issue 234101)

Added methods to allow resuming execution after calling
TerminateExecution(). (issue 2361)

Performance and stability improvements on all platforms.


2013-04-22: Version 3.18.2

OS::MemMove/OS::MemCopy: Don't call through to generated code when size
== 0 to avoid prefetching invalid memory (Chromium issue 233500)

Removed heap snapshot size limit. (Chromium issue 232305)

Performance and stability improvements on all platforms.


2013-04-18: Version 3.18.1

Removed SCons related files and deprecated test suite configurations.
Expand Down
69 changes: 6 additions & 63 deletions deps/v8/build/README.txt
Original file line number Diff line number Diff line change
@@ -1,66 +1,9 @@
This directory contains the V8 GYP files used to generate actual project files
for different build systems.
For build instructions, please refer to:

This is currently work in progress but this is expected to replace the SCons
based build system.
https://code.google.com/p/v8/wiki/BuildingWithGYP

To use this a checkout of GYP is needed inside this directory. From the root of
the V8 project do the following:
TL;DR version on *nix:
$ make dependencies # Only needed once.
$ make ia32.release -j8
$ make ia32.release.check # Optionally: run tests.

$ svn co http://gyp.googlecode.com/svn/trunk build/gyp

Note for the command lines below that Debug is the default configuration,
so specifying that on the command lines is not required.


To generate Makefiles on Linux:
-------------------------------

$ build/gyp_v8

This will build makefiles for ia32, x64 and the ARM simulator with names
Makefile-ia32, Makefile-x64 and Makefile-armu respectively.

To build and run for ia32 in debug and release version do:

$ make -f Makefile-ia32
$ out/Debug/shell
$ make -f Makefile-ia32 BUILDTYPE=Release
$ out/Release/shell

Change the makefile to build and run for the other architectures.


To generate Xcode project files on Mac OS:
------------------------------------------

$ build/gyp_v8

This will make an Xcode project for the ia32 architecture. To build and run do:

$ xcodebuild -project build/all.xcodeproj
$ samples/build/Debug/shell
$ xcodebuild -project build/all.xcodeproj -configuration Release
$ samples/build/Release/shell


To generate Visual Studio solution and project files on Windows:
----------------------------------------------------------------

On Windows an additional third party component is required. This is cygwin in
the same version as is used by the Chromium project. This can be checked out
from the Chromium repository. From the root of the V8 project do the following:

> svn co http://src.chromium.org/svn/trunk/deps/third_party/cygwin@66844 third_party/cygwin

To run GYP Python is required and it is recommended to use the same version as
is used by the Chromium project. This can also be checked out from the Chromium
repository. From the root of the V8 project do the following:

> svn co http://src.chromium.org/svn/trunk/tools/third_party/python_26@89111 third_party/python_26

Now generate Visual Studio solution and project files for the ia32 architecture:

> third_party\python_26\python build/gyp_v8

Now open build\All.sln in Visual Studio.
9 changes: 9 additions & 0 deletions deps/v8/build/common.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -454,6 +454,15 @@
}],
['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd" \
or OS=="android"', {
'cflags!': [
'-O2',
'-Os',
],
'cflags': [
'-fdata-sections',
'-ffunction-sections',
'-O3',
],
'conditions': [
[ 'gcc_version==44 and clang==0', {
'cflags': [
Expand Down
6 changes: 2 additions & 4 deletions deps/v8/build/gyp_v8
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@

import glob
import os
import platform
import shlex
import sys

Expand All @@ -43,9 +44,6 @@ if __name__ == '__main__':
script_dir = os.path.dirname(__file__)
v8_root = '.'

sys.path.insert(0, os.path.join(v8_root, 'tools'))
import utils

sys.path.insert(0, os.path.join(v8_root, 'build', 'gyp', 'pylib'))
import gyp

Expand Down Expand Up @@ -164,6 +162,6 @@ if __name__ == '__main__':

# Generate for the architectures supported on the given platform.
gyp_args = list(args)
if utils.GuessOS() == 'linux':
if platform.system() == 'Linux':
gyp_args.append('--generator-output=out')
run_gyp(gyp_args)
5 changes: 5 additions & 0 deletions deps/v8/include/v8-profiler.h
Original file line number Diff line number Diff line change
Expand Up @@ -554,6 +554,11 @@ class V8EXPORT HeapProfiler {
/** Returns memory used for profiler internal data and snapshots. */
size_t GetProfilerMemorySize();

/**
* Sets a RetainedObjectInfo for an object group (see V8::SetObjectGroupId).
*/
void SetRetainedObjectInfo(UniqueId id, RetainedObjectInfo* info);

private:
HeapProfiler();
~HeapProfiler();
Expand Down
Loading

0 comments on commit 2f75785

Please sign in to comment.