Skip to content
This repository has been archived by the owner on Oct 10, 2019. It is now read-only.

Normative: Permit atomic operations on BigInt64Arrays #80

Merged
merged 1 commit into from
Oct 12, 2017
Merged

Conversation

littledan
Copy link
Member

Previously, it was left up for future integration details to allow
BigInt64Array and BigUint64Array to use atomic operations. This patch
spells out the details of how these should work.

The semantics of Atomics.wait/wake are based on doing the wait/wake
on the relevant index of the underlying memory. For example, a
64-bit wait would be woken up by a 32-bit wake at twice the index.

Non-atomic writes to BigInt64Arrays can be torn, following the memory
model for Float64Array.

In some places in internal spec names, Int64 is replaced by BigInt64
for consistency.

Addresses #78

cc @lars-t-hansen

@anba anba mentioned this pull request Sep 6, 2017
Previously, it was left up for future integration details to allow
BigInt64Array and BigUint64Array to use atomic operations. This patch
spells out the details of how these should work.

The semantics of Atomics.wait/wake are based on doing the wait/wake
on the relevant index of the underlying memory. For example, a
64-bit wait would be woken up by a 32-bit wake at twice the index.

Non-atomic writes to BigInt64Arrays can be torn, following the memory
model for Float64Array.

In some places in internal spec names, `Int64` is replaced by `BigInt64`
for consistency.

Addresses #78
@littledan
Copy link
Member Author

This PR got consensus at the September 2017 TC39 meeting.

@littledan littledan merged commit b52a95b into master Oct 12, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant