Samsung / walrus

WebAssembly Lightweight RUntime
Apache License 2.0
37 stars 10 forks source link

Add atomic read-modify-write operations #95

Closed matetokodi closed 5 months ago

matetokodi commented 1 year ago

This patch adds atomic read-modify-write operations to the interpreter:

The test included from https://github.com/WebAssembly/threads/blob/main/test/core/atomic.wast currently does not pass, because it includes the following instructions not implemented in this patch:

Excluding these, all other test cases pass.

zherczeg commented 1 year ago

@clover2123 are you interested in atomic operation support?

clover2123 commented 1 year ago

It seems that threads feature is still in draft status. I think that we need to support official wasm release first. For now, release 2.0 is the latest spec (https://webassembly.github.io/spec/core/index.html) Is there any specific reason for implementing atomic operations? And are you going to update JITC support as well?

zherczeg commented 1 year ago

JIT has some atomic support now, and we wanted to try it, but no other reason. It is not important so this work can be postponed.

clover2123 commented 1 year ago

IMHO it's better to postpone this patch. We can merge it when it is really required later :)

zherczeg commented 8 months ago

Maybe we should close this issue.