//@ skip if $model == "Apple Watch Series 3" # added by mark-jsc-stress-test.py
function sumOfArithSeries(limit) {
    return limit * (limit + 1) / 2;
}

var n = 10000000;

function bar() { }

function foo(b) {
    var result = 0;
    for (var i = 0; i < n; ++i) {
        var iter = ([i, i + 1])[Symbol.iterator]();
        if (b) {
            bar(o, p);
            return;
        }
        for (x of iter)
            result += x;
    }
    return result;
}

noInline(bar);
noInline(foo);

var result = foo(false);
if (result != sumOfArithSeries(n - 1) + sumOfArithSeries(n))
    throw "Error: bad result: " + result;
