| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -43,6 +43,7 @@ const { | |||
| 43 | 43 | isBooleanObject, | |
| 44 | 44 | isBigIntObject, | |
| 45 | 45 | isSymbolObject, | |
| 46 | + isFloat16Array, | ||
| 46 | 47 | isFloat32Array, | |
| 47 | 48 | isFloat64Array, | |
| 48 | 49 | isKeyObject, | |
@@ -245,7 +246,8 @@ function innerDeepEqual(val1, val2, mode, memos) { | |||
| 245 | 246 | if (!isPartialArrayBufferView(val1, val2)) { | |
| 246 | 247 | return false; | |
| 247 | 248 | } | |
| 248 | - } else if (mode === kLoose && (isFloat32Array(val1) || isFloat64Array(val1))) { | ||
| 249 | + } else if (mode === kLoose && | ||
| 250 | + (isFloat32Array(val1) || isFloat64Array(val1) || isFloat16Array(val1))) { | ||
| 249 | 251 | if (!areSimilarFloatArrays(val1, val2)) { | |
| 250 | 252 | return false; | |
| 251 | 253 | } | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,10 +1,15 @@ | |||
| 1 | + // Flags: --js-float16array | ||
| 2 | + // TODO(LiviaMedeiros): once `Float16Array` is unflagged in v8, remove the line above | ||
| 1 | 3 | 'use strict'; | |
| 2 | 4 | ||
| 3 | 5 | const common = require('../common'); | |
| 4 | 6 | const vm = require('node:vm'); | |
| 5 | 7 | const assert = require('node:assert'); | |
| 6 | 8 | const { describe, it } = require('node:test'); | |
| 7 | 9 | ||
| 10 | + // TODO(LiviaMedeiros): once linter recognizes `Float16Array`, remove next line | ||
| 11 | + const { Float16Array } = globalThis; | ||
| 12 | + | ||
| 8 | 13 | const x = ['x']; | |
| 9 | 14 | ||
| 10 | 15 | function createCircularObject() { | |
@@ -484,6 +489,11 @@ describe('Object Comparison Tests', () => { | |||
| 484 | 489 | actual: { dataView: new Uint8Array(3) }, | |
| 485 | 490 | expected: { dataView: new DataView(new ArrayBuffer(3)) }, | |
| 486 | 491 | }, | |
| 492 | + { | ||
| 493 | + description: 'throws when comparing Float16Array([+0.0]) with Float16Array([-0.0])', | ||
| 494 | + actual: new Float16Array([+0.0]), | ||
| 495 | + expected: new Float16Array([-0.0]), | ||
| 496 | + }, | ||
| 487 | 497 | { | |
| 488 | 498 | description: 'throws when comparing Float32Array([+0.0]) with Float32Array([-0.0])', | |
| 489 | 499 | actual: new Float32Array([+0.0]), | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,9 +1,14 @@ | |||
| 1 | + // Flags: --js-float16array | ||
| 2 | + // TODO(LiviaMedeiros): once `Float16Array` is unflagged in v8, remove the line above | ||
| 1 | 3 | 'use strict'; | |
| 2 | 4 | ||
| 3 | 5 | require('../common'); | |
| 4 | 6 | const assert = require('assert'); | |
| 5 | 7 | const { test, suite } = require('node:test'); | |
| 6 | 8 | ||
| 9 | + // TODO(LiviaMedeiros): once linter recognizes `Float16Array`, remove next line | ||
| 10 | + const { Float16Array } = globalThis; | ||
| 11 | + | ||
| 7 | 12 | function makeBlock(f) { | |
| 8 | 13 | const args = Array.prototype.slice.call(arguments, 1); | |
| 9 | 14 | return function() { | |
@@ -20,6 +25,7 @@ suite('equalArrayPairs', () => { | |||
| 20 | 25 | [new Int8Array(1e5), new Int8Array(1e5)], | |
| 21 | 26 | [new Int16Array(1e5), new Int16Array(1e5)], | |
| 22 | 27 | [new Int32Array(1e5), new Int32Array(1e5)], | |
| 28 | + [new Float16Array(1e5), new Float16Array(1e5)], | ||
| 23 | 29 | [new Float32Array(1e5), new Float32Array(1e5)], | |
| 24 | 30 | [new Float64Array(1e5), new Float64Array(1e5)], | |
| 25 | 31 | [new Float32Array([+0.0]), new Float32Array([+0.0])], | |
@@ -41,6 +47,7 @@ suite('equalArrayPairs', () => { | |||
| 41 | 47 | ||
| 42 | 48 | suite('looseEqualArrayPairs', () => { | |
| 43 | 49 | const looseEqualArrayPairs = [ | |
| 50 | + [new Float16Array([+0.0]), new Float16Array([-0.0])], | ||
| 44 | 51 | [new Float32Array([+0.0]), new Float32Array([-0.0])], | |
| 45 | 52 | [new Float64Array([+0.0]), new Float64Array([-0.0])], | |
| 46 | 53 | ]; | |
@@ -71,6 +78,8 @@ suite('notEqualArrayPairs', () => { | |||
| 71 | 78 | [new Int16Array([0]), new Uint16Array([256])], | |
| 72 | 79 | [new Int16Array([-256]), new Uint16Array([0xff00])], // same bits | |
| 73 | 80 | [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])], | ||
| 74 | 83 | [new Float32Array([0.1]), new Float32Array([0.0])], | |
| 75 | 84 | [new Float32Array([0.1]), new Float32Array([0.1, 0.2])], | |
| 76 | 85 | [new Float64Array([0.1]), new Float64Array([0.0])], | |
| Back | FazBrowse Home | New Git URL |
0 commit comments