MCPcopy Create free account
hub / github.com/nodejs/node / testFct

Function testFct

deps/v8/test/mjsunit/wasm/bit-shift-right.js:72–120  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

70let wasm = instance.exports;
71
72let testFct = () => {
73 // i64.shr_u
74 assertEquals(0n, wasm.i64_shr_u_dynamic(0n, 0n));
75 assertEquals(1n, wasm.i64_shr_u_dynamic(3n, 1n));
76 assertEquals(-1n, wasm.i64_shr_u_dynamic(-1n, 64n));
77 assertEquals(-1n, wasm.i64_shr_u_dynamic(-1n, -64n));
78 assertEquals(1n, wasm.i64_shr_u_dynamic(-1n, 63n));
79 assertEquals(1n, wasm.i64_shr_u_dynamic(-1n, -1n));
80 assertEquals(BigInt(2 ** 32 - 1), wasm.i64_shr_u_dynamic(-1n, -32n));
81 assertEquals(8n, wasm.i64_shr_u_dynamic(16n, 65n));
82 assertEquals(8n, wasm.i64_shr_u_dynamic(16n, -127n));
83
84 assertEquals(0n, wasm.i64_shr_u_by_negative_48(123n));
85 assertEquals(BigInt(2 ** 48 - 1), wasm.i64_shr_u_by_negative_48(-1n));
86 assertEquals(4n, wasm.i64_shr_u_by_negative_48(BigInt(2 ** 18)))
87
88 // i64.shr_s
89 assertEquals(0n, wasm.i64_shr_s_dynamic(0n, 0n));
90 assertEquals(1n, wasm.i64_shr_s_dynamic(3n, 1n));
91 assertEquals(-1n, wasm.i64_shr_s_dynamic(-1n, 64n));
92 assertEquals(-1n, wasm.i64_shr_s_dynamic(-1n, -64n));
93 assertEquals(-1n, wasm.i64_shr_s_dynamic(-8n, 63n));
94 assertEquals(-4n, wasm.i64_shr_s_dynamic(-8n, -63n));
95 assertEquals(-1n, wasm.i64_shr_s_dynamic(-16n, -2n));
96
97 assertEquals(0n, wasm.i64_shr_s_by_negative_48(123n));
98 assertEquals(-BigInt(2 ** 16),
99 wasm.i64_shr_s_by_negative_48(-BigInt(2 ** 32)));
100
101 // i32.shr_u
102 assertEquals(0, wasm.i32_shr_u_dynamic(0, 0));
103 assertEquals(1, wasm.i32_shr_u_dynamic(3, 1));
104 assertEquals(-1, wasm.i32_shr_u_dynamic(-1, 32));
105 assertEquals(-1, wasm.i32_shr_u_dynamic(-1, -32));
106 assertEquals((1 << 17) - 1, wasm.i32_shr_u_dynamic(-1, 15));
107
108 assertEquals(123, wasm.i32_shr_u_by_negative_22((123 << 10) + 456));
109 assertEquals((1 << 22) - 123, wasm.i32_shr_u_by_negative_22(-123 << 10));
110
111 // i32.shr_s
112 assertEquals(0, wasm.i32_shr_s_dynamic(0, 0));
113 assertEquals(1, wasm.i32_shr_s_dynamic(3, 1));
114 assertEquals(-1, wasm.i32_shr_s_dynamic(-1, 32));
115 assertEquals(-1, wasm.i32_shr_s_dynamic(-1, -32));
116 assertEquals(-123, wasm.i32_shr_s_dynamic(-123 << 15, 15));
117
118 assertEquals(123, wasm.i32_shr_s_by_negative_22((123 << 10) + 456));
119 assertEquals(-123, wasm.i32_shr_s_by_negative_22((-123 << 10) + 456));
120};
121
122for (let i = 0; i < 20; i++) testFct();
123for (let fct of fcts) {

Callers 2

bit-shift-right.jsFile · 0.85
TestStackTraceFunction · 0.85

Calls 1

assertEqualsFunction · 0.50

Tested by

no test coverage detected