OLD | NEW |
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 --nostress-opt --turbo | 5 // Flags: --allow-natives-syntax --nostress-opt --turbo |
| 6 // Flags: --nonative-context-specialization |
6 | 7 |
7 var p0 = new Object(); | 8 var p0 = new Object(); |
8 var p1 = new Object(); | 9 var p1 = new Object(); |
9 var p2 = new Object(); | 10 var p2 = new Object(); |
10 | 11 |
11 // Ensure 1 parameter passed straight-through is handled correctly | 12 // Ensure 1 parameter passed straight-through is handled correctly |
12 var count1 = 100000; | 13 var count1 = 100000; |
13 tailee1 = function() { | 14 tailee1 = function() { |
14 "use strict"; | 15 "use strict"; |
15 if (count1-- == 0) { | 16 if (count1-- == 0) { |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 tailee5 = function(px) { | 73 tailee5 = function(px) { |
73 "use strict"; | 74 "use strict"; |
74 if (count5-- == 0) { | 75 if (count5-- == 0) { |
75 return this; | 76 return this; |
76 } | 77 } |
77 return %_CallFunction(this, tailee5); | 78 return %_CallFunction(this, tailee5); |
78 }; | 79 }; |
79 | 80 |
80 %OptimizeFunctionOnNextCall(tailee5); | 81 %OptimizeFunctionOnNextCall(tailee5); |
81 assertThrows(function() { tailee5.call(p1, p2); }); | 82 assertThrows(function() { tailee5.call(p1, p2); }); |
OLD | NEW |