sink-arguments-past-invalid-check-int32.js   [plain text]


function foo(p) {
    var result = 42;
    var o = arguments;
    if (p)
        result = isInt32(o);
    return result;
}

noInline(foo);

var result = foo(true);
if (result !== false)
    throw "Error: bad result at beginning: " + result;

for (var i = 0; i < 10000; ++i) {
    var result = foo(false);
    if (result !== 42)
        throw "Error: bad result: " + result;
}

var result = foo(true);
if (result !== false)
    throw "Error: bad result at end: " + result;