1+ // Flags: --js-float16array
2+ // TODO(LiviaMedeiros): once `Float16Array` is unflagged in v8, remove the line above
13'use strict' ;
24
35require ( '../common' ) ;
46const assert = require ( 'assert' ) ;
57const { test, suite } = require ( 'node:test' ) ;
68
9+ // TODO(LiviaMedeiros): once linter recognizes `Float16Array`, remove next line
10+ const { Float16Array } = globalThis ;
11+
712function makeBlock ( f ) {
813 const args = Array . prototype . slice . call ( arguments , 1 ) ;
914 return function ( ) {
@@ -20,6 +25,7 @@ suite('equalArrayPairs', () => {
2025 [ new Int8Array ( 1e5 ) , new Int8Array ( 1e5 ) ] ,
2126 [ new Int16Array ( 1e5 ) , new Int16Array ( 1e5 ) ] ,
2227 [ new Int32Array ( 1e5 ) , new Int32Array ( 1e5 ) ] ,
28+ [ new Float16Array ( 1e5 ) , new Float16Array ( 1e5 ) ] ,
2329 [ new Float32Array ( 1e5 ) , new Float32Array ( 1e5 ) ] ,
2430 [ new Float64Array ( 1e5 ) , new Float64Array ( 1e5 ) ] ,
2531 [ new Float32Array ( [ + 0.0 ] ) , new Float32Array ( [ + 0.0 ] ) ] ,
@@ -41,6 +47,7 @@ suite('equalArrayPairs', () => {
4147
4248suite ( 'looseEqualArrayPairs' , ( ) => {
4349 const looseEqualArrayPairs = [
50+ [ new Float16Array ( [ + 0.0 ] ) , new Float16Array ( [ - 0.0 ] ) ] ,
4451 [ new Float32Array ( [ + 0.0 ] ) , new Float32Array ( [ - 0.0 ] ) ] ,
4552 [ new Float64Array ( [ + 0.0 ] ) , new Float64Array ( [ - 0.0 ] ) ] ,
4653 ] ;
@@ -71,6 +78,8 @@ suite('notEqualArrayPairs', () => {
7178 [ new Int16Array ( [ 0 ] ) , new Uint16Array ( [ 256 ] ) ] ,
7279 [ new Int16Array ( [ - 256 ] ) , new Uint16Array ( [ 0xff00 ] ) ] , // same bits
7380 [ new Int32Array ( [ - 256 ] ) , new Uint32Array ( [ 0xffffff00 ] ) ] , // ditto
81+ [ new Float16Array ( [ 0.1 ] ) , new Float16Array ( [ 0.0 ] ) ] ,
82+ [ new Float16Array ( [ 0.1 ] ) , new Float16Array ( [ 0.1 , 0.2 ] ) ] ,
7483 [ new Float32Array ( [ 0.1 ] ) , new Float32Array ( [ 0.0 ] ) ] ,
7584 [ new Float32Array ( [ 0.1 ] ) , new Float32Array ( [ 0.1 , 0.2 ] ) ] ,
7685 [ new Float64Array ( [ 0.1 ] ) , new Float64Array ( [ 0.0 ] ) ] ,
0 commit comments