Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(534)

Side by Side Diff: test/mjsunit/compiler/osr-regex-id.js

Issue 906243002: Make it easier to test OSR with %OptimizeOsr() runtime call. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « test/mjsunit/compiler/osr-manual2.js ('k') | test/mjsunit/compiler/osr-simple.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Flags: --allow-natives-syntax --use-osr --turbo-osr 5 // Flags: --allow-natives-syntax --use-osr --turbo-osr
6 6
7 function id(f) { return f; } 7 function id(f) { return f; }
8 8
9 function foo(a) { 9 function foo(a) {
10 var r = /\0/; 10 var r = /\0/;
11 for (var i = 0; i < 10; i++) { 11 for (var i = 0; i < 10; i++) {
12 if (a) %OptimizeFunctionOnNextCall(foo, "osr"); 12 if (a) %OptimizeOsr();
13 } 13 }
14 return r; 14 return r;
15 } 15 }
16 16
17 function bar(a) { 17 function bar(a) {
18 for (var i = 0; i < 10; i++) { 18 for (var i = 0; i < 10; i++) {
19 if (a) %OptimizeFunctionOnNextCall(bar, "osr"); 19 if (a) %OptimizeOsr();
20 var r = /\0/; 20 var r = /\0/;
21 } 21 }
22 return r; 22 return r;
23 } 23 }
24 24
25 function baz(a) { 25 function baz(a) {
26 for (var i = 0; i < 10; i++) { 26 for (var i = 0; i < 10; i++) {
27 if (a) %OptimizeFunctionOnNextCall(baz, "osr"); 27 if (a) %OptimizeOsr();
28 } 28 }
29 return /\0/; 29 return /\0/;
30 } 30 }
31 31
32 function qux(a) { 32 function qux(a) {
33 for (var i = 0; i < 10; i++) { 33 for (var i = 0; i < 10; i++) {
34 if (i > 5 && a) { 34 if (i > 5 && a) {
35 %OptimizeFunctionOnNextCall(qux, "osr"); 35 %OptimizeOsr();
36 } else { 36 } else {
37 var r = /\0/; 37 var r = /\0/;
38 } 38 }
39 } 39 }
40 return r; 40 return r;
41 } 41 }
42 42
43 function test(f) { 43 function test(f) {
44 // Test the reference equality of regex's created in OSR'd function. 44 // Test the reference equality of regex's created in OSR'd function.
45 var x = f(false); 45 var x = f(false);
46 assertEquals(x, f(true)); 46 assertEquals(x, f(true));
47 assertEquals(x, f(true)); 47 assertEquals(x, f(true));
48 assertEquals(x, f(true)); 48 assertEquals(x, f(true));
49 } 49 }
50 50
51 test(foo); 51 test(foo);
52 test(bar); 52 test(bar);
53 test(baz); 53 test(baz);
54 test(qux); 54 test(qux);
OLDNEW
« no previous file with comments | « test/mjsunit/compiler/osr-manual2.js ('k') | test/mjsunit/compiler/osr-simple.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698