Skip to content

Tags: dos1/emscripten

Tags

1.38.21

Toggle 1.38.21's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Implement Musl's atomic primitives for wasm backend (emscripten-core#…

…7594)

Use clang's C11 atomic builtins instead of the emscripten-specific functions.
Keep the emscripten versions, but just use them for fastcomp.

1.38.20

Toggle 1.38.20's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Always implement getTempRet0/setTempRet0 in JS (emscripten-core#7358)

Export them as library functions so compiled code can access them.
Remove them from system/lib/compiler-rt/extras.c.

This is part of a 4 part change:
LLVM: https://reviews.llvm.org/D53240
fastcomp: emscripten-core/emscripten-fastcomp#237
emscripten: emscripten-core#7358
binaryen: WebAssembly/binaryen#1709

Bump binaryen and fastcomp versions to include the relevant
changes from those projects.

Fixes: emscripten-core#7273

1.38.19

Toggle 1.38.19's commit message
OffscreenCanvas + proxied Canvas support (emscripten-core#6254)

This PR improves supports for OffscreenCanvas, allowing pthreads to resize canvases from threads, and also creating proxied canvases on the main thread when OffscreenCanvas is not present.

Proxying GL has the benefit of enabling support for eglMakeCurrent(), for true multithreaded WebGL access, i.e. threads can acquire and release access to a single GL context.

Additionally this PR optimizes the proxied GL calls to run asynchronously whenever possible, to avoid synchronous blocking. For example UE4 runs in general without having to block to wait for sync GL calls at all.

Proxying naturally has a performance impact compared to native OffscreenCanvas. That is why proxying is optional, and codebases explicitly need to enable it via OFFSCREEN_FRAMEBUFFER flag when desired.

Codebases will want to choose whether to do true OffscreenCanvas, whether to proxy, or whether to do both, with proxying as a fallback to OffscreenCanvas, so this PR follows an "all options open" type of approach so that codebases can experiment, to find bugs and gauge performance.

This is the last PR of the Multithreading series, and also the largest, given that the WebGL proxying part touches all GL functions. This should be looked at very last after all of the other Multithreading PRs have landed.

1.38.18

Toggle 1.38.18's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Rename tableBase/memoryBase to __table_base/__memory_base (emscripten…

…-core#7467)

1.38.17

Toggle 1.38.17's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
HTML5 Event Backproxying. Bump version to 1.38.17 to rebuild cache af…

…ter adding new field to struct info. (emscripten-core#6202)

1.38.15

Toggle 1.38.15's commit message
Fix import of no_wasm_backend in tests/test_browser.py

My initial fix in emscripten-core#7391 was wrong