Home | History | Annotate | Download | only in compiler
      1 // Copyright 2014 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: --allow-natives-syntax
      6 
      7 // Check the results of `left >>> right`. The result is always unsigned (and
      8 // therefore positive).
      9 function test_shr(left) {
     10   var errors = 0;
     11 
     12   for (var i = 1; i < 1024; i++) {
     13     var temp = left >>> i;
     14     if (temp < 0) {
     15       errors++;
     16     }
     17   }
     18 
     19   return errors;
     20 }
     21 
     22 assertEquals(0, test_shr(1));
     23 %OptimizeFunctionOnNextCall(test_shr);
     24 for (var i = 5; i >= -5; i--) {
     25   assertEquals(0, test_shr(i));
     26 }
     27