tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

bigint.js (850B)


      1 // |jit-test| skip-if: !('BigInt' in this)
      2 load(libdir + 'bytecode-cache.js');
      3 
      4 let test = `
      5  assertEq(2n**64n - 1n, BigInt("0xffffFFFFffffFFFF"));
      6 
      7  // BigInt constants near INT64_MAX
      8  assertEq(0x7fff_ffff_ffff_ffffn + 1n, BigInt("0x8000000000000000"));
      9  assertEq(0x8000_0000_0000_0000n + 2n, BigInt("0x8000000000000002"));
     10 
     11  // BigInt constants near INT64_MIN
     12  assertEq(-0x7fff_ffff_ffff_ffffn - 1n, -BigInt("0x8000000000000000"));
     13  assertEq(-0x8000_0000_0000_0000n - 2n, -BigInt("0x8000000000000002"));
     14  assertEq(-0x8000_0000_0000_0001n - 3n, -BigInt("0x8000000000000004"));
     15 
     16  // BigInt constants near UINT64_MAX
     17  assertEq(0xffff_ffff_ffff_ffffn + 1n, BigInt("0x10000000000000000"));
     18  assertEq(0x1_0000_0000_0000_0000n + 2n, BigInt("0x10000000000000002"));
     19 `;
     20 evalWithCache(test, {
     21  assertEqBytecode: true,
     22  assertEqResult : true
     23 });