michael@0: function t() { michael@0: var x = 0x123456789abcd; michael@0: x = x + x; // x = 640511947003802 michael@0: x = x + x; // x = 1281023894007604 michael@0: x = x + x; // x = 2562047788015208 michael@0: x = x + x; // x = 5124095576030416 michael@0: x = x + x; // x = 10248191152060832 michael@0: assertEq(x+1 | 0, -248153696) michael@0: } michael@0: t() michael@0: michael@0: function t2() { michael@0: var x = -0x123456789abcd; michael@0: x = x + x; michael@0: x = x + x; michael@0: x = x + x; michael@0: x = x + x; michael@0: x = x + x; michael@0: assertEq(x + 7 | 0, 248153704) michael@0: } michael@0: t2() michael@0: michael@0: function t() { michael@0: var x = 4294967296+1; michael@0: assertEq(x|0, 1); michael@0: }