Open Bug 1225033 Opened 4 years ago Updated 11 months ago
Operations from the engine
These operations are (a) compatible with the JIT's use of mutual exclusion and can be used to implement mutual exclusion with jitted and interpreted code and (b) safe for data races when used from C++. Client code will want to use these when accessing shared memory; for example, where WebGL opts in to shared memory it currently uses memcpy() to move bits to/from shared memory but this creates a danger of C++ Undefined Behavior. It should instead use AtomicOperations::memcpySafeWhenRacy(), but that function is not currently available to it.
When bug 1176214 lands, it will land with comments in dom/bindings/TypedArray.h and in dom/canvas/WebGL2ContextBuffers.cpp that reference the present bug, saying that the API provided here is forthcoming. When the present bug lands and provides that API those comments should be updated, and the code in WebGL2ContextBuffers.cpp should actually use this API.
There will be similar comments + issues in dom/canvas/WebGLContextBuffers.cpp and dom/canvas/WebGLElementArrayCache.cpp. In all cases, search for "bug 1225033".
It would be nice to get this into FF53.
Priority: P2 → P1
Moving to p3 because no activity for at least 1 year(s). See https://github.com/mozilla/bug-handling/blob/master/policy/triage-bugzilla.md#how-do-you-triage for more information
Priority: P2 → P3
You need to log in before you can comment on or make changes to this bug.