Skip to content

Commit 2072925

Browse files
committed
Upgrade V8 to 2.2.21
1 parent 94cd83e commit 2072925

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+1486
-347
lines changed

deps/v8/ChangeLog

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
2010-06-30: Version 2.2.21
2+
3+
Fix bug in externalizing some ASCII strings (Chromium issue 47824).
4+
5+
Update JSON.stringify to floor the space parameter (issue 753).
6+
7+
Update the Mozilla test expectations to the newest version.
8+
9+
Update the ES5 Conformance Test expectations to the latest version.
10+
11+
Update the V8 benchmark suite.
12+
13+
Provide actual breakpoints locations in response to setBreakpoint
14+
and listBreakpoints requests.
15+
116
2010-06-28: Version 2.2.20
217
Fix bug with for-in on x64 platform (issue 748).
318

deps/v8/benchmarks/README.txt

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,12 @@ extensions enabled.
6666
Changes from Version 5 to Version 6
6767
===================================
6868

69-
Removed dead code from the RayTrace benchmark and changed the Splay
70-
benchmark to avoid converting the same numeric key to a string over
71-
and over again.
69+
Removed dead code from the RayTrace benchmark and fixed a couple of
70+
typos in the DeltaBlue implementation. Changed the Splay benchmark to
71+
avoid converting the same numeric key to a string over and over again
72+
and to avoid inserting and removing the same element repeatedly thus
73+
increasing pressure on the memory subsystem.
74+
75+
Furthermore, the benchmark runner was changed to run the benchmarks
76+
for at least a few times to stabilize the reported numbers on slower
77+
machines.

deps/v8/benchmarks/base.js

Lines changed: 30 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -198,15 +198,33 @@ BenchmarkSuite.prototype.NotifyError = function(error) {
198198

199199
// Runs a single benchmark for at least a second and computes the
200200
// average time it takes to run a single iteration.
201-
BenchmarkSuite.prototype.RunSingleBenchmark = function(benchmark) {
202-
var elapsed = 0;
203-
var start = new Date();
204-
for (var n = 0; elapsed < 1000; n++) {
205-
benchmark.run();
206-
elapsed = new Date() - start;
201+
BenchmarkSuite.prototype.RunSingleBenchmark = function(benchmark, data) {
202+
function Measure(data) {
203+
var elapsed = 0;
204+
var start = new Date();
205+
for (var n = 0; elapsed < 1000; n++) {
206+
benchmark.run();
207+
elapsed = new Date() - start;
208+
}
209+
if (data != null) {
210+
data.runs += n;
211+
data.elapsed += elapsed;
212+
}
213+
}
214+
215+
if (data == null) {
216+
// Measure the benchmark once for warm up and throw the result
217+
// away. Return a fresh data object.
218+
Measure(null);
219+
return { runs: 0, elapsed: 0 };
220+
} else {
221+
Measure(data);
222+
// If we've run too few iterations, we continue for another second.
223+
if (data.runs < 32) return data;
224+
var usec = (data.elapsed * 1000) / data.runs;
225+
this.NotifyStep(new BenchmarkResult(benchmark, usec));
226+
return null;
207227
}
208-
var usec = (elapsed * 1000) / n;
209-
this.NotifyStep(new BenchmarkResult(benchmark, usec));
210228
}
211229

212230

@@ -220,6 +238,7 @@ BenchmarkSuite.prototype.RunStep = function(runner) {
220238
var length = this.benchmarks.length;
221239
var index = 0;
222240
var suite = this;
241+
var data;
223242

224243
// Run the setup, the actual benchmark, and the tear down in three
225244
// separate steps to allow the framework to yield between any of the
@@ -241,12 +260,13 @@ BenchmarkSuite.prototype.RunStep = function(runner) {
241260

242261
function RunNextBenchmark() {
243262
try {
244-
suite.RunSingleBenchmark(suite.benchmarks[index]);
263+
data = suite.RunSingleBenchmark(suite.benchmarks[index], data);
245264
} catch (e) {
246265
suite.NotifyError(e);
247266
return null;
248267
}
249-
return RunNextTearDown;
268+
// If data is null, we're done with this benchmark.
269+
return (data == null) ? RunNextTearDown : RunNextBenchmark();
250270
}
251271

252272
function RunNextTearDown() {

deps/v8/benchmarks/crypto.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131

3232

3333
// The code has been adapted for use as a benchmark by Google.
34-
var Crypto = new BenchmarkSuite('Crypto', 203037, [
34+
var Crypto = new BenchmarkSuite('Crypto', 110465, [
3535
new Benchmark("Encrypt", encrypt),
3636
new Benchmark("Decrypt", decrypt)
3737
]);

deps/v8/benchmarks/deltablue.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@
2323
// more like a JavaScript program.
2424

2525

26-
var DeltaBlue = new BenchmarkSuite('DeltaBlue', 71104, [
26+
var DeltaBlue = new BenchmarkSuite('DeltaBlue', 30282, [
2727
new Benchmark('DeltaBlue', deltaBlue)
2828
]);
2929

3030

3131
/**
32-
* A JavaScript implementation of the DeltaBlue constrain-solving
32+
* A JavaScript implementation of the DeltaBlue constraint-solving
3333
* algorithm, as described in:
3434
*
3535
* "The DeltaBlue Algorithm: An Incremental Constraint Hierarchy Solver"
@@ -349,13 +349,13 @@ function BinaryConstraint(var1, var2, strength) {
349349
BinaryConstraint.inheritsFrom(Constraint);
350350

351351
/**
352-
* Decides if this constratint can be satisfied and which way it
352+
* Decides if this constraint can be satisfied and which way it
353353
* should flow based on the relative strength of the variables related,
354354
* and record that decision.
355355
*/
356356
BinaryConstraint.prototype.chooseMethod = function (mark) {
357357
if (this.v1.mark == mark) {
358-
this.direction = (this.v1.mark != mark && Strength.stronger(this.strength, this.v2.walkStrength))
358+
this.direction = (this.v2.mark != mark && Strength.stronger(this.strength, this.v2.walkStrength))
359359
? Direction.FORWARD
360360
: Direction.NONE;
361361
}

deps/v8/benchmarks/earley-boyer.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// This file is automatically generated by scheme2js, except for the
22
// benchmark harness code at the beginning and end of the file.
33

4-
var EarleyBoyer = new BenchmarkSuite('EarleyBoyer', 765819, [
4+
var EarleyBoyer = new BenchmarkSuite('EarleyBoyer', 280581, [
55
new Benchmark("Earley", function () { BgL_earleyzd2benchmarkzd2(); }),
66
new Benchmark("Boyer", function () { BgL_nboyerzd2benchmarkzd2(); })
77
]);

deps/v8/benchmarks/raytrace.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
// untouched. This file also contains a copy of parts of the Prototype
99
// JavaScript framework which is used by the ray tracer.
1010

11-
var RayTrace = new BenchmarkSuite('RayTrace', 932666, [
11+
var RayTrace = new BenchmarkSuite('RayTrace', 533115, [
1212
new Benchmark('RayTrace', renderScene)
1313
]);
1414

deps/v8/benchmarks/regexp.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
// letters in the data are encoded using ROT13 in a way that does not
3636
// affect how the regexps match their input.
3737

38-
var RegRxp = new BenchmarkSuite('RegExp', 995230, [
38+
var RegRxp = new BenchmarkSuite('RegExp', 601250, [
3939
new Benchmark("RegExp", runRegExpBenchmark)
4040
]);
4141

deps/v8/benchmarks/revisions.html

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,15 @@
2222

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

25-
<p>Removed dead code from the RayTrace benchmark and changed the Splay
26-
benchmark to avoid converting the same numeric key to a string over
27-
and over again.
28-
</p>
25+
<p>Removed dead code from the RayTrace benchmark and fixed a couple of
26+
typos in the DeltaBlue implementation. Changed the Splay benchmark to
27+
avoid converting the same numeric key to a string over and over again
28+
and to avoid inserting and removing the same element repeatedly thus
29+
increasing pressure on the memory subsystem.</p>
30+
31+
<p>Furthermore, the benchmark runner was changed to run the benchmarks
32+
for at least a few times to stabilize the reported numbers on slower
33+
machines.</p>
2934

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

deps/v8/benchmarks/richards.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
// Martin Richards.
3636

3737

38-
var Richards = new BenchmarkSuite('Richards', 34886, [
38+
var Richards = new BenchmarkSuite('Richards', 20687, [
3939
new Benchmark("Richards", runRichards)
4040
]);
4141

0 commit comments

Comments
 (0)