Home | History | Annotate | Download | only in compiler
      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
      3 // found in the LICENSE file.
      4 
      5 // Flags: --use-osr
      6 
      7 function id(f) { return f; }
      8 
      9 function foo() {
     10   var sum = 0;
     11   var r = id(foo);
     12   for (var i = 0; i < 100000; i++) {
     13     sum += i;
     14   }
     15   return foo == r;
     16 }
     17 
     18 assertEquals(true, foo());
     19 assertEquals(true, foo());
     20 assertEquals(true, foo());
     21 
     22 
     23 function bar() {
     24   var sum = 0;
     25   for (var i = 0; i < 90000; i++) {
     26     sum += i;
     27   }
     28   return id(bar,sum);
     29 }
     30 
     31 assertEquals(bar, bar());
     32 assertEquals(bar, bar());
     33 assertEquals(bar, bar());
     34