Skip to content
This repository has been archived by the owner on Apr 22, 2023. It is now read-only.

Commit

Permalink
Browse files Browse the repository at this point in the history
Upgrade V8 to 3.9.24.6
  • Loading branch information
isaacs committed Mar 29, 2012
1 parent 8a15147 commit 4b64542
Show file tree
Hide file tree
Showing 199 changed files with 6,023 additions and 2,240 deletions.
1 change: 1 addition & 0 deletions deps/v8/AUTHORS
Expand Up @@ -51,3 +51,4 @@ Tobias Burnus <burnus@net-b.de>
Vlad Burlik <vladbph@gmail.com>
Yuqiang Xian <yuqiang.xian@intel.com>
Zaheer Ahmad <zahmad@codeaurora.org>
Zhongping Wang <kewpie.w.zp@gmail.com>
81 changes: 81 additions & 0 deletions deps/v8/ChangeLog
@@ -1,3 +1,84 @@
2012-03-23: Version 3.9.24

Activated count-based profiler for ARM.

Fixed use of proxies as f.prototype properties. (issue 2021)

Enabled snapshots on MIPS.

Performance and stability improvements on all platforms.


2012-03-21: Version 3.9.23

Use correct arguments adaptation environment when inlining function
containing arguments. (Issue 2014)

Performance and stability improvements on all platforms.


2012-03-20: Version 3.9.22

Enabled count-based profiler by default.

Implemented a hash based look-up to speed up address checks
in large object space (issue 853).

Performance and stability improvements on all platforms.


2012-03-19: Version 3.9.21

Fixed push-to-trunk script (and re-push).

Added API call that identifies strings that are guaranteed only to
contain ASCII characters.


2012-03-19: Version 3.9.20

Fixed declarations escaping global strict eval. (Issue 1624)

Fixed wrapping of receiver for non-strict callbacks. (Issue 1973)

Fixed function declarations overwriting read-only global properties.
(Chromium issue 115452)

Fixed --use-strict flag in combination with --harmony[-scoping].

Debugger: naive implementation of "step into Function.prototype.bind".

Debugger: added ability to set script source from within OnBeforeCompile

Added flag to always call DebugBreak on abort.

Re-enabled constructor inlining and inline === comparison with boolean
constants. (Issue 2009)

Don't use an explicit s0 in ClampDoubleToUint8. (Issue 2004)

Performance and stability improvements on all platforms.


2012-03-14: Version 3.9.19

Ensure there is a smi check of the receiver for global load and call
ICs (Chromium issue 117794).

Performance and stability improvements on all platforms.


2012-03-13: Version 3.9.18

Ensure consistency of Math.sqrt on Intel platforms.

Remove static initializers in v8. (issue 1859)

Add explicit dependency on v8_base in the GYP-based build.

Performance and stability improvements on all platforms.


2012-03-12: Version 3.9.17

Fixed VFP detection through compiler defines. (issue 1996)
Expand Down
35 changes: 32 additions & 3 deletions deps/v8/SConstruct
Expand Up @@ -185,6 +185,9 @@ LIBRARY_FLAGS = {
'mips_arch_variant:mips32r2': {
'CPPDEFINES': ['_MIPS_ARCH_MIPS32R2']
},
'mips_arch_variant:loongson': {
'CPPDEFINES': ['_MIPS_ARCH_LOONGSON']
},
'simulator:none': {
'CCFLAGS': ['-EL'],
'LINKFLAGS': ['-EL'],
Expand All @@ -194,6 +197,9 @@ LIBRARY_FLAGS = {
'mips_arch_variant:mips32r1': {
'CCFLAGS': ['-mips32', '-Wa,-mips32']
},
'mips_arch_variant:loongson': {
'CCFLAGS': ['-march=mips3', '-Wa,-march=mips3']
},
'library:static': {
'LINKFLAGS': ['-static', '-static-libgcc']
},
Expand All @@ -212,9 +218,12 @@ LIBRARY_FLAGS = {
'LINKFLAGS': ['-m32'],
'mipsabi:softfloat': {
'CPPDEFINES': ['__mips_soft_float=1'],
'fpu:on': {
'CPPDEFINES' : ['CAN_USE_FPU_INSTRUCTIONS']
}
},
'mipsabi:hardfloat': {
'CPPDEFINES': ['__mips_hard_float=1'],
'CPPDEFINES': ['__mips_hard_float=1', 'CAN_USE_FPU_INSTRUCTIONS'],
}
},
'arch:x64': {
Expand Down Expand Up @@ -545,6 +554,9 @@ SAMPLE_FLAGS = {
'mips_arch_variant:mips32r2': {
'CPPDEFINES': ['_MIPS_ARCH_MIPS32R2']
},
'mips_arch_variant:loongson': {
'CPPDEFINES': ['_MIPS_ARCH_LOONGSON']
},
'simulator:none': {
'CCFLAGS': ['-EL'],
'LINKFLAGS': ['-EL'],
Expand All @@ -554,6 +566,9 @@ SAMPLE_FLAGS = {
'mips_arch_variant:mips32r1': {
'CCFLAGS': ['-mips32', '-Wa,-mips32']
},
'mips_arch_variant:loongson': {
'CCFLAGS': ['-march=mips3', '-Wa,-march=mips3']
},
'library:static': {
'LINKFLAGS': ['-static', '-static-libgcc']
},
Expand All @@ -563,7 +578,10 @@ SAMPLE_FLAGS = {
},
'mipsabi:hardfloat': {
'CCFLAGS': ['-mhard-float'],
'LINKFLAGS': ['-mhard-float']
'LINKFLAGS': ['-mhard-float'],
'fpu:on': {
'CPPDEFINES' : ['CAN_USE_FPU_INSTRUCTIONS']
}
}
}
},
Expand Down Expand Up @@ -697,6 +715,9 @@ PREPARSER_FLAGS = {
'mips_arch_variant:mips32r2': {
'CPPDEFINES': ['_MIPS_ARCH_MIPS32R2']
},
'mips_arch_variant:loongson': {
'CPPDEFINES': ['_MIPS_ARCH_LOONGSON']
},
'simulator:none': {
'CCFLAGS': ['-EL'],
'LINKFLAGS': ['-EL'],
Expand All @@ -706,6 +727,9 @@ PREPARSER_FLAGS = {
'mips_arch_variant:mips32r1': {
'CCFLAGS': ['-mips32', '-Wa,-mips32']
},
'mips_arch_variant:loongson': {
'CCFLAGS': ['-march=mips3', '-Wa,-march=mips3']
},
'library:static': {
'LINKFLAGS': ['-static', '-static-libgcc']
},
Expand Down Expand Up @@ -1114,7 +1138,7 @@ SIMPLE_OPTIONS = {
'help': 'generate calling conventiont according to selected mips ABI'
},
'mips_arch_variant': {
'values': ['mips32r2', 'mips32r1'],
'values': ['mips32r2', 'mips32r1', 'loongson'],
'default': 'mips32r2',
'help': 'mips variant'
},
Expand All @@ -1128,6 +1152,11 @@ SIMPLE_OPTIONS = {
'default': 'on',
'help': 'use vfp3 instructions when building the snapshot [Arm only]'
},
'fpu': {
'values': ['on', 'off'],
'default': 'on',
'help': 'use fpu instructions when building the snapshot [MIPS only]'
},

}

Expand Down
7 changes: 7 additions & 0 deletions deps/v8/benchmarks/README.txt
Expand Up @@ -77,3 +77,10 @@ input strings.
Furthermore, the benchmark runner was changed to run the benchmarks
for at least a few times to stabilize the reported numbers on slower
machines.


Changes from Version 6 to Version 7
===================================

Added the Navier-Stokes benchmark, a 2D differential equation solver
that stresses arithmetic computations on double arrays.
4 changes: 4 additions & 0 deletions deps/v8/benchmarks/revisions.html
Expand Up @@ -19,6 +19,10 @@
the benchmark suite.

</p>
<div class="subtitle"><h3>Version 7 (<a href="http://v8.googlecode.com/svn/data/benchmarks/v7/run.html">link</a>)</h3></div>

<p>This version includes the new Navier-Stokes benchmark, a 2D differential
equation solver that stresses arithmetic computations on double arrays.</p>

<div class="subtitle"><h3>Version 6 (<a href="http://v8.googlecode.com/svn/data/benchmarks/v6/run.html">link</a>)</h3></div>

Expand Down
20 changes: 10 additions & 10 deletions deps/v8/benchmarks/run.html
Expand Up @@ -53,16 +53,16 @@
BenchmarkSuite.RunSuites({ NotifyStep: ShowProgress,
NotifyError: AddError,
NotifyResult: AddResult,
NotifyScore: AddScore });
NotifyScore: AddScore });
}

function ShowWarningIfObsolete() {
// If anything goes wrong we will just catch the exception and no
// If anything goes wrong we will just catch the exception and no
// warning is shown, i.e., no harm is done.
try {
var xmlhttp;
var next_version = parseInt(BenchmarkSuite.version) + 1;
var next_version_url = "../v" + next_version + "/run.html";
var next_version = parseInt(BenchmarkSuite.version) + 1;
var next_version_url = "../v" + next_version + "/run.html";
if (window.XMLHttpRequest) {
xmlhttp = new window.XMLHttpRequest();
} else if (window.ActiveXObject) {
Expand All @@ -76,27 +76,27 @@
};
xmlhttp.send(null);
} catch(e) {
// Ignore exception if check for next version fails.
// Ignore exception if check for next version fails.
// Hence no warning is displayed.
}
}

function Load() {
var version = BenchmarkSuite.version;
document.getElementById("version").innerHTML = version;
ShowWarningIfObsolete();
ShowWarningIfObsolete();
setTimeout(Run, 200);
}
</script>
</head>
<body onload="Load()">
<div>
<div class="title"><h1>V8 Benchmark Suite - version <span id="version">?</span></h1></div>
<div class="warning" id="obsolete">
<div class="warning" id="obsolete">
Warning! This is not the latest version of the V8 benchmark
suite. Consider running the
suite. Consider running the
<a href="http://v8.googlecode.com/svn/data/benchmarks/current/run.html">
latest version</a>.
latest version</a>.
</div>
<table>
<tr>
Expand All @@ -118,7 +118,7 @@
(<i>1761 lines</i>).
</li>
<li><b>Splay</b><br>Data manipulation benchmark that deals with splay trees and exercises the automatic memory management subsystem (<i>394 lines</i>).</li>
<li><b>NavierStokes (beta)</b><br>Solves NavierStokes equations in 2D, heavily manipulating double precision arrays. Based on Oliver Hunt's code (<i>396 lines</i>).</li>
<li><b>NavierStokes</b><br>Solves NavierStokes equations in 2D, heavily manipulating double precision arrays. Based on Oliver Hunt's code (<i>387 lines</i>).</li>
</ul>

<p>
Expand Down
12 changes: 11 additions & 1 deletion deps/v8/build/common.gypi
Expand Up @@ -62,6 +62,9 @@
# Similar to the ARM hard float ABI but on MIPS.
'v8_use_mips_abi_hardfloat%': 'true',

# Default arch variant for MIPS.
'mips_arch_variant%': 'mips32r2',

'v8_enable_debugger_support%': 1,

'v8_enable_disassembler%': 0,
Expand Down Expand Up @@ -184,6 +187,9 @@
}],
['mips_arch_variant=="mips32r2"', {
'cflags': ['-mips32r2', '-Wa,-mips32r2'],
}],
['mips_arch_variant=="loongson"', {
'cflags': ['-mips3', '-Wa,-mips3'],
}, {
'cflags': ['-mips32', '-Wa,-mips32'],
}],
Expand All @@ -209,6 +215,9 @@
['mips_arch_variant=="mips32r2"', {
'defines': ['_MIPS_ARCH_MIPS32R2',],
}],
['mips_arch_variant=="loongson"', {
'defines': ['_MIPS_ARCH_LOONGSON',],
}],
# The MIPS assembler assumes the host is 32 bits,
# so force building 32-bit host tools.
['host_arch=="x64"', {
Expand Down Expand Up @@ -305,7 +314,7 @@
'cflags': [ '-I/usr/pkg/include' ],
}],
['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', {
'cflags': [ '-Wno-unused-parameter',
'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
'-Wnon-virtual-dtor', '-Woverloaded-virtual' ],
}],
],
Expand Down Expand Up @@ -352,6 +361,7 @@
}], # OS=="mac"
['OS=="win"', {
'msvs_configuration_attributes': {
'OutputDirectory': '<(DEPTH)\\build\\$(ConfigurationName)',
'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)',
'CharacterSet': '1',
},
Expand Down
3 changes: 1 addition & 2 deletions deps/v8/build/mipsu.gypi
@@ -1,4 +1,4 @@
# Copyright 2011 the V8 project authors. All rights reserved.
# Copyright 2012 the V8 project authors. All rights reserved.
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
Expand Down Expand Up @@ -29,6 +29,5 @@
'variables': {
'target_arch': 'ia32',
'v8_target_arch': 'mips',
'mips_arch_variant': 'mips32r2',
},
}
8 changes: 8 additions & 0 deletions deps/v8/include/v8.h
Expand Up @@ -1020,6 +1020,14 @@ class String : public Primitive {
*/
V8EXPORT int Utf8Length() const;

/**
* A fast conservative check for non-ASCII characters. May
* return true even for ASCII strings, but if it returns
* false you can be sure that all characters are in the range
* 0-127.
*/
V8EXPORT bool MayContainNonAscii() const;

/**
* Write the contents of the string to an external buffer.
* If no arguments are given, expects the buffer to be large
Expand Down
1 change: 1 addition & 0 deletions deps/v8/src/SConscript
Expand Up @@ -101,6 +101,7 @@ SOURCES = {
objects.cc
objects-printer.cc
objects-visiting.cc
once.cc
parser.cc
preparser.cc
preparse-data.cc
Expand Down

0 comments on commit 4b64542

Please sign in to comment.