From 11ac92d6fc265dd71febdc4a5571aee291163d00 Mon Sep 17 00:00:00 2001 From: Renegade334 Date: Wed, 4 Jun 2025 19:50:35 +0100 Subject: [PATCH 1/2] typings: add Atomics primordials --- typings/primordials.d.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/typings/primordials.d.ts b/typings/primordials.d.ts index d340225f554eac..13fed5b39eb395 100644 --- a/typings/primordials.d.ts +++ b/typings/primordials.d.ts @@ -46,6 +46,19 @@ declare namespace primordials { export import decodeURIComponent = globalThis.decodeURIComponent; export import encodeURI = globalThis.encodeURI; export import encodeURIComponent = globalThis.encodeURIComponent; + export const AtomicsAdd: typeof Atomics.add + export const AtomicsAnd: typeof Atomics.and + export const AtomicsCompareExchange: typeof Atomics.compareExchange + export const AtomicsExchange: typeof Atomics.exchange + export const AtomicsIsLockFree: typeof Atomics.isLockFree + export const AtomicsLoad: typeof Atomics.load + export const AtomicsNotify: typeof Atomics.notify + export const AtomicsOr: typeof Atomics.or + export const AtomicsStore: typeof Atomics.store + export const AtomicsSub: typeof Atomics.sub + export const AtomicsWait: typeof Atomics.wait + export const AtomicsWaitAsync: typeof Atomics.waitAsync + export const AtomicsXor: typeof Atomics.xor export const JSONParse: typeof JSON.parse export const JSONStringify: typeof JSON.stringify export const MathAbs: typeof Math.abs From 34347ff5ead925d13e298027d67898a02322e199 Mon Sep 17 00:00:00 2001 From: Renegade334 Date: Wed, 4 Jun 2025 19:53:53 +0100 Subject: [PATCH 2/2] lib: prefer Atomics primordials --- lib/internal/test_runner/mock/loader.js | 8 ++------ lib/internal/test_runner/mock/mock.js | 6 ++---- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/lib/internal/test_runner/mock/loader.js b/lib/internal/test_runner/mock/loader.js index 6739bded60ff44..ddde5599df509a 100644 --- a/lib/internal/test_runner/mock/loader.js +++ b/lib/internal/test_runner/mock/loader.js @@ -1,13 +1,9 @@ 'use strict'; const { + AtomicsNotify, + AtomicsStore, JSONStringify, SafeMap, - globalThis: { - Atomics: { - notify: AtomicsNotify, - store: AtomicsStore, - }, - }, } = primordials; const { kBadExportsMessage, diff --git a/lib/internal/test_runner/mock/mock.js b/lib/internal/test_runner/mock/mock.js index 178da37efc16c8..19acb67f8873c4 100644 --- a/lib/internal/test_runner/mock/mock.js +++ b/lib/internal/test_runner/mock/mock.js @@ -2,6 +2,8 @@ const { ArrayPrototypePush, ArrayPrototypeSlice, + AtomicsStore, + AtomicsWait, Error, FunctionPrototypeBind, FunctionPrototypeCall, @@ -18,10 +20,6 @@ const { StringPrototypeSlice, StringPrototypeStartsWith, globalThis: { - Atomics: { - store: AtomicsStore, - wait: AtomicsWait, - }, SharedArrayBuffer, }, } = primordials;