summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/cacheir/unaryarith-null-undef-bool.js
blob: cb4894ea897d12b43083379b4542f0becb7c860e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function test(input, resPos, resNeg, resToNumeric, resInc, resDec) {
    assertEq(+input, resPos);
    assertEq(-input, resNeg);

    var input1 = input;
    assertEq(input1++, resToNumeric);
    assertEq(input1, resInc);

    var input2 = input;
    assertEq(++input2, resInc);
    assertEq(input1, resInc);

    var input3 = input;
    assertEq(input3--, resToNumeric);
    assertEq(input3, resDec);

    var input4 = input;
    assertEq(--input4, resDec);
    assertEq(input4, resDec);
}
for (var i = 0; i < 50; i++) {
    test(null, 0, -0, 0, 1, -1);
    test(undefined, NaN, NaN, NaN, NaN, NaN);
    test(true, 1, -1, 1, 2, 0);
    test(false, 0, -0, 0, 1, -1);
}