js/src/jit-test/tests/baseline/try-finally-3.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 // Test optimized RetSub stubs.
     2 var count = 0;
     3 function f(x) {
     4     try {
     5 	if (x < 0)
     6 	    throw "negative";
     7 	if (x & 1)
     8 	    return "odd";
     9 	count++;
    10     } finally {
    11 	count += 3;
    12     }
    14     return "even";
    15 }
    16 for (var i=0; i<15; i++) {
    17     var res = f(i);
    18     if ((i % 2) === 0)
    19 	assertEq(res, "even");
    20     else
    21 	assertEq(res, "odd");
    22 }
    23 try {
    24     f(-1);
    25     assertEq(0, 1);
    26 } catch(e) {
    27     assertEq(e, "negative");
    28 }
    30 assertEq(count, 56);

mercurial