Implement Atomics API
authorbinji <binji@chromium.org>
Wed, 3 Jun 2015 17:58:29 +0000 (10:58 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 3 Jun 2015 17:58:42 +0000 (17:58 +0000)
commite59e40a3542f6611dcf4696321feea4d135169ff
treef802bc37b61b5aacfe40402236502afc34eea775
parent614d6a3ba4b79321b08e7b68f1c07133bdbf59a7
Implement Atomics API

This is behind the flag "--harmony-atomics", and it only works on
SharedArrayBuffers. This implementation only includes the runtime functions.
The TurboFan implementation will be next.

The draft spec for Atomics can be found here:
https://docs.google.com/document/d/1NDGA_gZJ7M7w1Bh8S0AoDyEqwDdRh4uSoTPSNn77PFk

BUG=
LOG=n

Review URL: https://codereview.chromium.org/1162503002

Cr-Commit-Position: refs/heads/master@{#28796}
21 files changed:
BUILD.gn
src/bootstrapper.cc
src/flag-definitions.h
src/harmony-atomics.js [new file with mode: 0644]
src/messages.h
src/objects.h
src/runtime/runtime-atomics.cc [new file with mode: 0644]
src/runtime/runtime-typedarray.cc
src/runtime/runtime-utils.h
src/runtime/runtime.h
test/mjsunit/asm/atomics-add.js [new file with mode: 0644]
test/mjsunit/asm/atomics-and.js [new file with mode: 0644]
test/mjsunit/asm/atomics-compareexchange.js [new file with mode: 0644]
test/mjsunit/asm/atomics-exchange.js [new file with mode: 0644]
test/mjsunit/asm/atomics-load.js [new file with mode: 0644]
test/mjsunit/asm/atomics-or.js [new file with mode: 0644]
test/mjsunit/asm/atomics-store.js [new file with mode: 0644]
test/mjsunit/asm/atomics-sub.js [new file with mode: 0644]
test/mjsunit/asm/atomics-xor.js [new file with mode: 0644]
test/mjsunit/harmony/atomics.js [new file with mode: 0644]
tools/gyp/v8.gyp