blob: aec40e05e5ac39d03a0b41d8872163bbba10eb84 [file] [log] [blame]
// Copyright (C) 2017 Robin Templeton. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-multiplicative-operators-runtime-semantics-evaluation
description: BigInt division arithmetic
features: [BigInt]
---*/
assert.sameValue(
0xFEDCBA9876543210n / 0xFEDCBA9876543210n,
0x1n,
'The result of (0xFEDCBA9876543210n / 0xFEDCBA9876543210n) is 0x1n'
);
assert.sameValue(
0xFEDCBA9876543210n / 0xFEDCBA987654320Fn,
0x1n,
'The result of (0xFEDCBA9876543210n / 0xFEDCBA987654320Fn) is 0x1n'
);
assert.sameValue(
0xFEDCBA9876543210n / 0xFEDCBA98n,
0x100000000n,
'The result of (0xFEDCBA9876543210n / 0xFEDCBA98n) is 0x100000000n'
);
assert.sameValue(
0xFEDCBA9876543210n / 0xFEDCBA97n,
0x100000001n,
'The result of (0xFEDCBA9876543210n / 0xFEDCBA97n) is 0x100000001n'
);
assert.sameValue(
0xFEDCBA9876543210n / 0x1234n,
0xE0042813BE5DCn,
'The result of (0xFEDCBA9876543210n / 0x1234n) is 0xE0042813BE5DCn'
);
assert.sameValue(
0xFEDCBA9876543210n / 0x3n,
0x54F43E32D21C10B0n,
'The result of (0xFEDCBA9876543210n / 0x3n) is 0x54F43E32D21C10B0n'
);
assert.sameValue(
0xFEDCBA9876543210n / 0x2n,
0x7F6E5D4C3B2A1908n,
'The result of (0xFEDCBA9876543210n / 0x2n) is 0x7F6E5D4C3B2A1908n'
);
assert.sameValue(
0xFEDCBA9876543210n / 0x1n,
0xFEDCBA9876543210n,
'The result of (0xFEDCBA9876543210n / 0x1n) is 0xFEDCBA9876543210n'
);
assert.sameValue(
0xFEDCBA9876543210n / -0x1n,
-0xFEDCBA9876543210n,
'The result of (0xFEDCBA9876543210n / -0x1n) is -0xFEDCBA9876543210n'
);
assert.sameValue(
0xFEDCBA9876543210n / -0x2n,
-0x7F6E5D4C3B2A1908n,
'The result of (0xFEDCBA9876543210n / -0x2n) is -0x7F6E5D4C3B2A1908n'
);
assert.sameValue(
0xFEDCBA9876543210n / -0x3n,
-0x54F43E32D21C10B0n,
'The result of (0xFEDCBA9876543210n / -0x3n) is -0x54F43E32D21C10B0n'
);
assert.sameValue(
0xFEDCBA9876543210n / -0x1234n,
-0xE0042813BE5DCn,
'The result of (0xFEDCBA9876543210n / -0x1234n) is -0xE0042813BE5DCn'
);
assert.sameValue(
0xFEDCBA9876543210n / -0xFEDCBA97n,
-0x100000001n,
'The result of (0xFEDCBA9876543210n / -0xFEDCBA97n) is -0x100000001n'
);
assert.sameValue(
0xFEDCBA9876543210n / -0xFEDCBA98n,
-0x100000000n,
'The result of (0xFEDCBA9876543210n / -0xFEDCBA98n) is -0x100000000n'
);
assert.sameValue(
0xFEDCBA9876543210n / -0xFEDCBA987654320Fn,
-0x1n,
'The result of (0xFEDCBA9876543210n / -0xFEDCBA987654320Fn) is -0x1n'
);
assert.sameValue(
0xFEDCBA9876543210n / -0xFEDCBA9876543210n,
-0x1n,
'The result of (0xFEDCBA9876543210n / -0xFEDCBA9876543210n) is -0x1n'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0xFEDCBA9876543210n,
0x0n,
'The result of (0xFEDCBA987654320Fn / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0xFEDCBA987654320Fn,
0x1n,
'The result of (0xFEDCBA987654320Fn / 0xFEDCBA987654320Fn) is 0x1n'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0xFEDCBA98n,
0x100000000n,
'The result of (0xFEDCBA987654320Fn / 0xFEDCBA98n) is 0x100000000n'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0xFEDCBA97n,
0x100000001n,
'The result of (0xFEDCBA987654320Fn / 0xFEDCBA97n) is 0x100000001n'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0x1234n,
0xE0042813BE5DCn,
'The result of (0xFEDCBA987654320Fn / 0x1234n) is 0xE0042813BE5DCn'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0x3n,
0x54F43E32D21C10AFn,
'The result of (0xFEDCBA987654320Fn / 0x3n) is 0x54F43E32D21C10AFn'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0x2n,
0x7F6E5D4C3B2A1907n,
'The result of (0xFEDCBA987654320Fn / 0x2n) is 0x7F6E5D4C3B2A1907n'
);
assert.sameValue(
0xFEDCBA987654320Fn / 0x1n,
0xFEDCBA987654320Fn,
'The result of (0xFEDCBA987654320Fn / 0x1n) is 0xFEDCBA987654320Fn'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0x1n,
-0xFEDCBA987654320Fn,
'The result of (0xFEDCBA987654320Fn / -0x1n) is -0xFEDCBA987654320Fn'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0x2n,
-0x7F6E5D4C3B2A1907n,
'The result of (0xFEDCBA987654320Fn / -0x2n) is -0x7F6E5D4C3B2A1907n'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0x3n,
-0x54F43E32D21C10AFn,
'The result of (0xFEDCBA987654320Fn / -0x3n) is -0x54F43E32D21C10AFn'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0x1234n,
-0xE0042813BE5DCn,
'The result of (0xFEDCBA987654320Fn / -0x1234n) is -0xE0042813BE5DCn'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0xFEDCBA97n,
-0x100000001n,
'The result of (0xFEDCBA987654320Fn / -0xFEDCBA97n) is -0x100000001n'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0xFEDCBA98n,
-0x100000000n,
'The result of (0xFEDCBA987654320Fn / -0xFEDCBA98n) is -0x100000000n'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0xFEDCBA987654320Fn,
-0x1n,
'The result of (0xFEDCBA987654320Fn / -0xFEDCBA987654320Fn) is -0x1n'
);
assert.sameValue(
0xFEDCBA987654320Fn / -0xFEDCBA9876543210n,
0x0n,
'The result of (0xFEDCBA987654320Fn / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0xFEDCBA98n / 0xFEDCBA9876543210n,
0x0n,
'The result of (0xFEDCBA98n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0xFEDCBA98n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (0xFEDCBA98n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0xFEDCBA98n / 0xFEDCBA98n,
0x1n,
'The result of (0xFEDCBA98n / 0xFEDCBA98n) is 0x1n'
);
assert.sameValue(
0xFEDCBA98n / 0xFEDCBA97n,
0x1n,
'The result of (0xFEDCBA98n / 0xFEDCBA97n) is 0x1n'
);
assert.sameValue(
0xFEDCBA98n / 0x1234n,
0xE0042n,
'The result of (0xFEDCBA98n / 0x1234n) is 0xE0042n'
);
assert.sameValue(
0xFEDCBA98n / 0x3n,
0x54F43E32n,
'The result of (0xFEDCBA98n / 0x3n) is 0x54F43E32n'
);
assert.sameValue(
0xFEDCBA98n / 0x2n,
0x7F6E5D4Cn,
'The result of (0xFEDCBA98n / 0x2n) is 0x7F6E5D4Cn'
);
assert.sameValue(
0xFEDCBA98n / 0x1n,
0xFEDCBA98n,
'The result of (0xFEDCBA98n / 0x1n) is 0xFEDCBA98n'
);
assert.sameValue(
0xFEDCBA98n / -0x1n,
-0xFEDCBA98n,
'The result of (0xFEDCBA98n / -0x1n) is -0xFEDCBA98n'
);
assert.sameValue(
0xFEDCBA98n / -0x2n,
-0x7F6E5D4Cn,
'The result of (0xFEDCBA98n / -0x2n) is -0x7F6E5D4Cn'
);
assert.sameValue(
0xFEDCBA98n / -0x3n,
-0x54F43E32n,
'The result of (0xFEDCBA98n / -0x3n) is -0x54F43E32n'
);
assert.sameValue(
0xFEDCBA98n / -0x1234n,
-0xE0042n,
'The result of (0xFEDCBA98n / -0x1234n) is -0xE0042n'
);
assert.sameValue(
0xFEDCBA98n / -0xFEDCBA97n,
-0x1n,
'The result of (0xFEDCBA98n / -0xFEDCBA97n) is -0x1n'
);
assert.sameValue(
0xFEDCBA98n / -0xFEDCBA98n,
-0x1n,
'The result of (0xFEDCBA98n / -0xFEDCBA98n) is -0x1n'
);
assert.sameValue(
0xFEDCBA98n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (0xFEDCBA98n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0xFEDCBA98n / -0xFEDCBA9876543210n,
0x0n,
'The result of (0xFEDCBA98n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0xFEDCBA97n / 0xFEDCBA9876543210n,
0x0n,
'The result of (0xFEDCBA97n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0xFEDCBA97n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (0xFEDCBA97n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0xFEDCBA97n / 0xFEDCBA98n,
0x0n,
'The result of (0xFEDCBA97n / 0xFEDCBA98n) is 0x0n'
);
assert.sameValue(
0xFEDCBA97n / 0xFEDCBA97n,
0x1n,
'The result of (0xFEDCBA97n / 0xFEDCBA97n) is 0x1n'
);
assert.sameValue(
0xFEDCBA97n / 0x1234n,
0xE0042n,
'The result of (0xFEDCBA97n / 0x1234n) is 0xE0042n'
);
assert.sameValue(
0xFEDCBA97n / 0x3n,
0x54F43E32n,
'The result of (0xFEDCBA97n / 0x3n) is 0x54F43E32n'
);
assert.sameValue(
0xFEDCBA97n / 0x2n,
0x7F6E5D4Bn,
'The result of (0xFEDCBA97n / 0x2n) is 0x7F6E5D4Bn'
);
assert.sameValue(
0xFEDCBA97n / 0x1n,
0xFEDCBA97n,
'The result of (0xFEDCBA97n / 0x1n) is 0xFEDCBA97n'
);
assert.sameValue(
0xFEDCBA97n / -0x1n,
-0xFEDCBA97n,
'The result of (0xFEDCBA97n / -0x1n) is -0xFEDCBA97n'
);
assert.sameValue(
0xFEDCBA97n / -0x2n,
-0x7F6E5D4Bn,
'The result of (0xFEDCBA97n / -0x2n) is -0x7F6E5D4Bn'
);
assert.sameValue(
0xFEDCBA97n / -0x3n,
-0x54F43E32n,
'The result of (0xFEDCBA97n / -0x3n) is -0x54F43E32n'
);
assert.sameValue(
0xFEDCBA97n / -0x1234n,
-0xE0042n,
'The result of (0xFEDCBA97n / -0x1234n) is -0xE0042n'
);
assert.sameValue(
0xFEDCBA97n / -0xFEDCBA97n,
-0x1n,
'The result of (0xFEDCBA97n / -0xFEDCBA97n) is -0x1n'
);
assert.sameValue(
0xFEDCBA97n / -0xFEDCBA98n,
0x0n,
'The result of (0xFEDCBA97n / -0xFEDCBA98n) is 0x0n'
);
assert.sameValue(
0xFEDCBA97n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (0xFEDCBA97n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0xFEDCBA97n / -0xFEDCBA9876543210n,
0x0n,
'The result of (0xFEDCBA97n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x1234n / 0xFEDCBA9876543210n,
0x0n,
'The result of (0x1234n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x1234n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (0x1234n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(0x1234n / 0xFEDCBA98n, 0x0n, 'The result of (0x1234n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(0x1234n / 0xFEDCBA97n, 0x0n, 'The result of (0x1234n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(0x1234n / 0x1234n, 0x1n, 'The result of (0x1234n / 0x1234n) is 0x1n');
assert.sameValue(0x1234n / 0x3n, 0x611n, 'The result of (0x1234n / 0x3n) is 0x611n');
assert.sameValue(0x1234n / 0x2n, 0x91An, 'The result of (0x1234n / 0x2n) is 0x91An');
assert.sameValue(0x1234n / 0x1n, 0x1234n, 'The result of (0x1234n / 0x1n) is 0x1234n');
assert.sameValue(0x1234n / -0x1n, -0x1234n, 'The result of (0x1234n / -0x1n) is -0x1234n');
assert.sameValue(0x1234n / -0x2n, -0x91An, 'The result of (0x1234n / -0x2n) is -0x91An');
assert.sameValue(0x1234n / -0x3n, -0x611n, 'The result of (0x1234n / -0x3n) is -0x611n');
assert.sameValue(0x1234n / -0x1234n, -0x1n, 'The result of (0x1234n / -0x1234n) is -0x1n');
assert.sameValue(0x1234n / -0xFEDCBA97n, 0x0n, 'The result of (0x1234n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(0x1234n / -0xFEDCBA98n, 0x0n, 'The result of (0x1234n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
0x1234n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (0x1234n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0x1234n / -0xFEDCBA9876543210n,
0x0n,
'The result of (0x1234n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x3n / 0xFEDCBA9876543210n,
0x0n,
'The result of (0x3n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x3n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (0x3n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(0x3n / 0xFEDCBA98n, 0x0n, 'The result of (0x3n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(0x3n / 0xFEDCBA97n, 0x0n, 'The result of (0x3n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(0x3n / 0x1234n, 0x0n, 'The result of (0x3n / 0x1234n) is 0x0n');
assert.sameValue(0x3n / 0x3n, 0x1n, 'The result of (0x3n / 0x3n) is 0x1n');
assert.sameValue(0x3n / 0x2n, 0x1n, 'The result of (0x3n / 0x2n) is 0x1n');
assert.sameValue(0x3n / 0x1n, 0x3n, 'The result of (0x3n / 0x1n) is 0x3n');
assert.sameValue(0x3n / -0x1n, -0x3n, 'The result of (0x3n / -0x1n) is -0x3n');
assert.sameValue(0x3n / -0x2n, -0x1n, 'The result of (0x3n / -0x2n) is -0x1n');
assert.sameValue(0x3n / -0x3n, -0x1n, 'The result of (0x3n / -0x3n) is -0x1n');
assert.sameValue(0x3n / -0x1234n, 0x0n, 'The result of (0x3n / -0x1234n) is 0x0n');
assert.sameValue(0x3n / -0xFEDCBA97n, 0x0n, 'The result of (0x3n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(0x3n / -0xFEDCBA98n, 0x0n, 'The result of (0x3n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
0x3n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (0x3n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0x3n / -0xFEDCBA9876543210n,
0x0n,
'The result of (0x3n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x2n / 0xFEDCBA9876543210n,
0x0n,
'The result of (0x2n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x2n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (0x2n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(0x2n / 0xFEDCBA98n, 0x0n, 'The result of (0x2n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(0x2n / 0xFEDCBA97n, 0x0n, 'The result of (0x2n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(0x2n / 0x1234n, 0x0n, 'The result of (0x2n / 0x1234n) is 0x0n');
assert.sameValue(0x2n / 0x3n, 0x0n, 'The result of (0x2n / 0x3n) is 0x0n');
assert.sameValue(0x2n / 0x2n, 0x1n, 'The result of (0x2n / 0x2n) is 0x1n');
assert.sameValue(0x2n / 0x1n, 0x2n, 'The result of (0x2n / 0x1n) is 0x2n');
assert.sameValue(0x2n / -0x1n, -0x2n, 'The result of (0x2n / -0x1n) is -0x2n');
assert.sameValue(0x2n / -0x2n, -0x1n, 'The result of (0x2n / -0x2n) is -0x1n');
assert.sameValue(0x2n / -0x3n, 0x0n, 'The result of (0x2n / -0x3n) is 0x0n');
assert.sameValue(0x2n / -0x1234n, 0x0n, 'The result of (0x2n / -0x1234n) is 0x0n');
assert.sameValue(0x2n / -0xFEDCBA97n, 0x0n, 'The result of (0x2n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(0x2n / -0xFEDCBA98n, 0x0n, 'The result of (0x2n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
0x2n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (0x2n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0x2n / -0xFEDCBA9876543210n,
0x0n,
'The result of (0x2n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x1n / 0xFEDCBA9876543210n,
0x0n,
'The result of (0x1n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
0x1n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (0x1n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(0x1n / 0xFEDCBA98n, 0x0n, 'The result of (0x1n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(0x1n / 0xFEDCBA97n, 0x0n, 'The result of (0x1n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(0x1n / 0x1234n, 0x0n, 'The result of (0x1n / 0x1234n) is 0x0n');
assert.sameValue(0x1n / 0x3n, 0x0n, 'The result of (0x1n / 0x3n) is 0x0n');
assert.sameValue(0x1n / 0x2n, 0x0n, 'The result of (0x1n / 0x2n) is 0x0n');
assert.sameValue(0x1n / 0x1n, 0x1n, 'The result of (0x1n / 0x1n) is 0x1n');
assert.sameValue(0x1n / -0x1n, -0x1n, 'The result of (0x1n / -0x1n) is -0x1n');
assert.sameValue(0x1n / -0x2n, 0x0n, 'The result of (0x1n / -0x2n) is 0x0n');
assert.sameValue(0x1n / -0x3n, 0x0n, 'The result of (0x1n / -0x3n) is 0x0n');
assert.sameValue(0x1n / -0x1234n, 0x0n, 'The result of (0x1n / -0x1234n) is 0x0n');
assert.sameValue(0x1n / -0xFEDCBA97n, 0x0n, 'The result of (0x1n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(0x1n / -0xFEDCBA98n, 0x0n, 'The result of (0x1n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
0x1n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (0x1n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
0x1n / -0xFEDCBA9876543210n,
0x0n,
'The result of (0x1n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x1n / 0xFEDCBA9876543210n,
0x0n,
'The result of (-0x1n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x1n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x1n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(-0x1n / 0xFEDCBA98n, 0x0n, 'The result of (-0x1n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(-0x1n / 0xFEDCBA97n, 0x0n, 'The result of (-0x1n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x1n / 0x1234n, 0x0n, 'The result of (-0x1n / 0x1234n) is 0x0n');
assert.sameValue(-0x1n / 0x3n, 0x0n, 'The result of (-0x1n / 0x3n) is 0x0n');
assert.sameValue(-0x1n / 0x2n, 0x0n, 'The result of (-0x1n / 0x2n) is 0x0n');
assert.sameValue(-0x1n / 0x1n, -0x1n, 'The result of (-0x1n / 0x1n) is -0x1n');
assert.sameValue(-0x1n / -0x1n, 0x1n, 'The result of (-0x1n / -0x1n) is 0x1n');
assert.sameValue(-0x1n / -0x2n, 0x0n, 'The result of (-0x1n / -0x2n) is 0x0n');
assert.sameValue(-0x1n / -0x3n, 0x0n, 'The result of (-0x1n / -0x3n) is 0x0n');
assert.sameValue(-0x1n / -0x1234n, 0x0n, 'The result of (-0x1n / -0x1234n) is 0x0n');
assert.sameValue(-0x1n / -0xFEDCBA97n, 0x0n, 'The result of (-0x1n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x1n / -0xFEDCBA98n, 0x0n, 'The result of (-0x1n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
-0x1n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x1n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0x1n / -0xFEDCBA9876543210n,
0x0n,
'The result of (-0x1n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x2n / 0xFEDCBA9876543210n,
0x0n,
'The result of (-0x2n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x2n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x2n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(-0x2n / 0xFEDCBA98n, 0x0n, 'The result of (-0x2n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(-0x2n / 0xFEDCBA97n, 0x0n, 'The result of (-0x2n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x2n / 0x1234n, 0x0n, 'The result of (-0x2n / 0x1234n) is 0x0n');
assert.sameValue(-0x2n / 0x3n, 0x0n, 'The result of (-0x2n / 0x3n) is 0x0n');
assert.sameValue(-0x2n / 0x2n, -0x1n, 'The result of (-0x2n / 0x2n) is -0x1n');
assert.sameValue(-0x2n / 0x1n, -0x2n, 'The result of (-0x2n / 0x1n) is -0x2n');
assert.sameValue(-0x2n / -0x1n, 0x2n, 'The result of (-0x2n / -0x1n) is 0x2n');
assert.sameValue(-0x2n / -0x2n, 0x1n, 'The result of (-0x2n / -0x2n) is 0x1n');
assert.sameValue(-0x2n / -0x3n, 0x0n, 'The result of (-0x2n / -0x3n) is 0x0n');
assert.sameValue(-0x2n / -0x1234n, 0x0n, 'The result of (-0x2n / -0x1234n) is 0x0n');
assert.sameValue(-0x2n / -0xFEDCBA97n, 0x0n, 'The result of (-0x2n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x2n / -0xFEDCBA98n, 0x0n, 'The result of (-0x2n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
-0x2n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x2n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0x2n / -0xFEDCBA9876543210n,
0x0n,
'The result of (-0x2n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x3n / 0xFEDCBA9876543210n,
0x0n,
'The result of (-0x3n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x3n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x3n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(-0x3n / 0xFEDCBA98n, 0x0n, 'The result of (-0x3n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(-0x3n / 0xFEDCBA97n, 0x0n, 'The result of (-0x3n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x3n / 0x1234n, 0x0n, 'The result of (-0x3n / 0x1234n) is 0x0n');
assert.sameValue(-0x3n / 0x3n, -0x1n, 'The result of (-0x3n / 0x3n) is -0x1n');
assert.sameValue(-0x3n / 0x2n, -0x1n, 'The result of (-0x3n / 0x2n) is -0x1n');
assert.sameValue(-0x3n / 0x1n, -0x3n, 'The result of (-0x3n / 0x1n) is -0x3n');
assert.sameValue(-0x3n / -0x1n, 0x3n, 'The result of (-0x3n / -0x1n) is 0x3n');
assert.sameValue(-0x3n / -0x2n, 0x1n, 'The result of (-0x3n / -0x2n) is 0x1n');
assert.sameValue(-0x3n / -0x3n, 0x1n, 'The result of (-0x3n / -0x3n) is 0x1n');
assert.sameValue(-0x3n / -0x1234n, 0x0n, 'The result of (-0x3n / -0x1234n) is 0x0n');
assert.sameValue(-0x3n / -0xFEDCBA97n, 0x0n, 'The result of (-0x3n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x3n / -0xFEDCBA98n, 0x0n, 'The result of (-0x3n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
-0x3n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x3n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0x3n / -0xFEDCBA9876543210n,
0x0n,
'The result of (-0x3n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x1234n / 0xFEDCBA9876543210n,
0x0n,
'The result of (-0x1234n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0x1234n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x1234n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(-0x1234n / 0xFEDCBA98n, 0x0n, 'The result of (-0x1234n / 0xFEDCBA98n) is 0x0n');
assert.sameValue(-0x1234n / 0xFEDCBA97n, 0x0n, 'The result of (-0x1234n / 0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x1234n / 0x1234n, -0x1n, 'The result of (-0x1234n / 0x1234n) is -0x1n');
assert.sameValue(-0x1234n / 0x3n, -0x611n, 'The result of (-0x1234n / 0x3n) is -0x611n');
assert.sameValue(-0x1234n / 0x2n, -0x91An, 'The result of (-0x1234n / 0x2n) is -0x91An');
assert.sameValue(-0x1234n / 0x1n, -0x1234n, 'The result of (-0x1234n / 0x1n) is -0x1234n');
assert.sameValue(-0x1234n / -0x1n, 0x1234n, 'The result of (-0x1234n / -0x1n) is 0x1234n');
assert.sameValue(-0x1234n / -0x2n, 0x91An, 'The result of (-0x1234n / -0x2n) is 0x91An');
assert.sameValue(-0x1234n / -0x3n, 0x611n, 'The result of (-0x1234n / -0x3n) is 0x611n');
assert.sameValue(-0x1234n / -0x1234n, 0x1n, 'The result of (-0x1234n / -0x1234n) is 0x1n');
assert.sameValue(-0x1234n / -0xFEDCBA97n, 0x0n, 'The result of (-0x1234n / -0xFEDCBA97n) is 0x0n');
assert.sameValue(-0x1234n / -0xFEDCBA98n, 0x0n, 'The result of (-0x1234n / -0xFEDCBA98n) is 0x0n');
assert.sameValue(
-0x1234n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (-0x1234n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0x1234n / -0xFEDCBA9876543210n,
0x0n,
'The result of (-0x1234n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA97n / 0xFEDCBA9876543210n,
0x0n,
'The result of (-0xFEDCBA97n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA97n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (-0xFEDCBA97n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0xFEDCBA97n / 0xFEDCBA98n,
0x0n,
'The result of (-0xFEDCBA97n / 0xFEDCBA98n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA97n / 0xFEDCBA97n,
-0x1n,
'The result of (-0xFEDCBA97n / 0xFEDCBA97n) is -0x1n'
);
assert.sameValue(
-0xFEDCBA97n / 0x1234n,
-0xE0042n,
'The result of (-0xFEDCBA97n / 0x1234n) is -0xE0042n'
);
assert.sameValue(
-0xFEDCBA97n / 0x3n,
-0x54F43E32n,
'The result of (-0xFEDCBA97n / 0x3n) is -0x54F43E32n'
);
assert.sameValue(
-0xFEDCBA97n / 0x2n,
-0x7F6E5D4Bn,
'The result of (-0xFEDCBA97n / 0x2n) is -0x7F6E5D4Bn'
);
assert.sameValue(
-0xFEDCBA97n / 0x1n,
-0xFEDCBA97n,
'The result of (-0xFEDCBA97n / 0x1n) is -0xFEDCBA97n'
);
assert.sameValue(
-0xFEDCBA97n / -0x1n,
0xFEDCBA97n,
'The result of (-0xFEDCBA97n / -0x1n) is 0xFEDCBA97n'
);
assert.sameValue(
-0xFEDCBA97n / -0x2n,
0x7F6E5D4Bn,
'The result of (-0xFEDCBA97n / -0x2n) is 0x7F6E5D4Bn'
);
assert.sameValue(
-0xFEDCBA97n / -0x3n,
0x54F43E32n,
'The result of (-0xFEDCBA97n / -0x3n) is 0x54F43E32n'
);
assert.sameValue(
-0xFEDCBA97n / -0x1234n,
0xE0042n,
'The result of (-0xFEDCBA97n / -0x1234n) is 0xE0042n'
);
assert.sameValue(
-0xFEDCBA97n / -0xFEDCBA97n,
0x1n,
'The result of (-0xFEDCBA97n / -0xFEDCBA97n) is 0x1n'
);
assert.sameValue(
-0xFEDCBA97n / -0xFEDCBA98n,
0x0n,
'The result of (-0xFEDCBA97n / -0xFEDCBA98n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA97n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (-0xFEDCBA97n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0xFEDCBA97n / -0xFEDCBA9876543210n,
0x0n,
'The result of (-0xFEDCBA97n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA98n / 0xFEDCBA9876543210n,
0x0n,
'The result of (-0xFEDCBA98n / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA98n / 0xFEDCBA987654320Fn,
0x0n,
'The result of (-0xFEDCBA98n / 0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0xFEDCBA98n / 0xFEDCBA98n,
-0x1n,
'The result of (-0xFEDCBA98n / 0xFEDCBA98n) is -0x1n'
);
assert.sameValue(
-0xFEDCBA98n / 0xFEDCBA97n,
-0x1n,
'The result of (-0xFEDCBA98n / 0xFEDCBA97n) is -0x1n'
);
assert.sameValue(
-0xFEDCBA98n / 0x1234n,
-0xE0042n,
'The result of (-0xFEDCBA98n / 0x1234n) is -0xE0042n'
);
assert.sameValue(
-0xFEDCBA98n / 0x3n,
-0x54F43E32n,
'The result of (-0xFEDCBA98n / 0x3n) is -0x54F43E32n'
);
assert.sameValue(
-0xFEDCBA98n / 0x2n,
-0x7F6E5D4Cn,
'The result of (-0xFEDCBA98n / 0x2n) is -0x7F6E5D4Cn'
);
assert.sameValue(
-0xFEDCBA98n / 0x1n,
-0xFEDCBA98n,
'The result of (-0xFEDCBA98n / 0x1n) is -0xFEDCBA98n'
);
assert.sameValue(
-0xFEDCBA98n / -0x1n,
0xFEDCBA98n,
'The result of (-0xFEDCBA98n / -0x1n) is 0xFEDCBA98n'
);
assert.sameValue(
-0xFEDCBA98n / -0x2n,
0x7F6E5D4Cn,
'The result of (-0xFEDCBA98n / -0x2n) is 0x7F6E5D4Cn'
);
assert.sameValue(
-0xFEDCBA98n / -0x3n,
0x54F43E32n,
'The result of (-0xFEDCBA98n / -0x3n) is 0x54F43E32n'
);
assert.sameValue(
-0xFEDCBA98n / -0x1234n,
0xE0042n,
'The result of (-0xFEDCBA98n / -0x1234n) is 0xE0042n'
);
assert.sameValue(
-0xFEDCBA98n / -0xFEDCBA97n,
0x1n,
'The result of (-0xFEDCBA98n / -0xFEDCBA97n) is 0x1n'
);
assert.sameValue(
-0xFEDCBA98n / -0xFEDCBA98n,
0x1n,
'The result of (-0xFEDCBA98n / -0xFEDCBA98n) is 0x1n'
);
assert.sameValue(
-0xFEDCBA98n / -0xFEDCBA987654320Fn,
0x0n,
'The result of (-0xFEDCBA98n / -0xFEDCBA987654320Fn) is 0x0n'
);
assert.sameValue(
-0xFEDCBA98n / -0xFEDCBA9876543210n,
0x0n,
'The result of (-0xFEDCBA98n / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0xFEDCBA9876543210n,
0x0n,
'The result of (-0xFEDCBA987654320Fn / 0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0xFEDCBA987654320Fn,
-0x1n,
'The result of (-0xFEDCBA987654320Fn / 0xFEDCBA987654320Fn) is -0x1n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0xFEDCBA98n,
-0x100000000n,
'The result of (-0xFEDCBA987654320Fn / 0xFEDCBA98n) is -0x100000000n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0xFEDCBA97n,
-0x100000001n,
'The result of (-0xFEDCBA987654320Fn / 0xFEDCBA97n) is -0x100000001n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0x1234n,
-0xE0042813BE5DCn,
'The result of (-0xFEDCBA987654320Fn / 0x1234n) is -0xE0042813BE5DCn'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0x3n,
-0x54F43E32D21C10AFn,
'The result of (-0xFEDCBA987654320Fn / 0x3n) is -0x54F43E32D21C10AFn'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0x2n,
-0x7F6E5D4C3B2A1907n,
'The result of (-0xFEDCBA987654320Fn / 0x2n) is -0x7F6E5D4C3B2A1907n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / 0x1n,
-0xFEDCBA987654320Fn,
'The result of (-0xFEDCBA987654320Fn / 0x1n) is -0xFEDCBA987654320Fn'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0x1n,
0xFEDCBA987654320Fn,
'The result of (-0xFEDCBA987654320Fn / -0x1n) is 0xFEDCBA987654320Fn'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0x2n,
0x7F6E5D4C3B2A1907n,
'The result of (-0xFEDCBA987654320Fn / -0x2n) is 0x7F6E5D4C3B2A1907n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0x3n,
0x54F43E32D21C10AFn,
'The result of (-0xFEDCBA987654320Fn / -0x3n) is 0x54F43E32D21C10AFn'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0x1234n,
0xE0042813BE5DCn,
'The result of (-0xFEDCBA987654320Fn / -0x1234n) is 0xE0042813BE5DCn'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0xFEDCBA97n,
0x100000001n,
'The result of (-0xFEDCBA987654320Fn / -0xFEDCBA97n) is 0x100000001n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0xFEDCBA98n,
0x100000000n,
'The result of (-0xFEDCBA987654320Fn / -0xFEDCBA98n) is 0x100000000n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0xFEDCBA987654320Fn,
0x1n,
'The result of (-0xFEDCBA987654320Fn / -0xFEDCBA987654320Fn) is 0x1n'
);
assert.sameValue(
-0xFEDCBA987654320Fn / -0xFEDCBA9876543210n,
0x0n,
'The result of (-0xFEDCBA987654320Fn / -0xFEDCBA9876543210n) is 0x0n'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0xFEDCBA9876543210n,
-0x1n,
'The result of (-0xFEDCBA9876543210n / 0xFEDCBA9876543210n) is -0x1n'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0xFEDCBA987654320Fn,
-0x1n,
'The result of (-0xFEDCBA9876543210n / 0xFEDCBA987654320Fn) is -0x1n'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0xFEDCBA98n,
-0x100000000n,
'The result of (-0xFEDCBA9876543210n / 0xFEDCBA98n) is -0x100000000n'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0xFEDCBA97n,
-0x100000001n,
'The result of (-0xFEDCBA9876543210n / 0xFEDCBA97n) is -0x100000001n'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0x1234n,
-0xE0042813BE5DCn,
'The result of (-0xFEDCBA9876543210n / 0x1234n) is -0xE0042813BE5DCn'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0x3n,
-0x54F43E32D21C10B0n,
'The result of (-0xFEDCBA9876543210n / 0x3n) is -0x54F43E32D21C10B0n'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0x2n,
-0x7F6E5D4C3B2A1908n,
'The result of (-0xFEDCBA9876543210n / 0x2n) is -0x7F6E5D4C3B2A1908n'
);
assert.sameValue(
-0xFEDCBA9876543210n / 0x1n,
-0xFEDCBA9876543210n,
'The result of (-0xFEDCBA9876543210n / 0x1n) is -0xFEDCBA9876543210n'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0x1n,
0xFEDCBA9876543210n,
'The result of (-0xFEDCBA9876543210n / -0x1n) is 0xFEDCBA9876543210n'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0x2n,
0x7F6E5D4C3B2A1908n,
'The result of (-0xFEDCBA9876543210n / -0x2n) is 0x7F6E5D4C3B2A1908n'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0x3n,
0x54F43E32D21C10B0n,
'The result of (-0xFEDCBA9876543210n / -0x3n) is 0x54F43E32D21C10B0n'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0x1234n,
0xE0042813BE5DCn,
'The result of (-0xFEDCBA9876543210n / -0x1234n) is 0xE0042813BE5DCn'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0xFEDCBA97n,
0x100000001n,
'The result of (-0xFEDCBA9876543210n / -0xFEDCBA97n) is 0x100000001n'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0xFEDCBA98n,
0x100000000n,
'The result of (-0xFEDCBA9876543210n / -0xFEDCBA98n) is 0x100000000n'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0xFEDCBA987654320Fn,
0x1n,
'The result of (-0xFEDCBA9876543210n / -0xFEDCBA987654320Fn) is 0x1n'
);
assert.sameValue(
-0xFEDCBA9876543210n / -0xFEDCBA9876543210n,
0x1n,
'The result of (-0xFEDCBA9876543210n / -0xFEDCBA9876543210n) is 0x1n'
);