Skip to content

Update musl to 1.1.15 - #4813

Merged
jgravelle-google merged 69 commits into
emscripten-core:incomingfrom
jgravelle-google:update_musl
Mar 13, 2017
Merged

Update musl to 1.1.15#4813
jgravelle-google merged 69 commits into
emscripten-core:incomingfrom
jgravelle-google:update_musl

Conversation

@jgravelle-google

Copy link
Copy Markdown
Contributor

This updates Emscripten's musl libc from 1.0.5 to 1.1.15

This was done by copying 1.0.5 into the emscripten source in order to revert all emscripten-specific changes (jgravelle-google@6993081), copying the new 1.1.15 in (jgravelle-google@3f0a2b4), and then reverting the first commit to reapply all emscripten changes at once (jgravelle-google@60dacbf). After that, all that was left to do was fix merge conflicts, and change any emscripten-specific workarounds to apply to new musl.

Of note is the assumption in newer versions of musl that __pthread_self always exists. bpowers/musl@19a1fe6 makes this explicit, and caused problems when compiling without -s USE_PTHREADS=1, because that would use library_pthread_stub.js, which used to stub __pthread_self at 0. Now we need to explicitly allocate a pthread (jgravelle-google@cc078e5) and initialize its dynamic fields (jgravelle-google@cce0512). We'd also like to make sure the whole thing is available entirely in the asm module (jgravelle-google@db9ce62) so that -s EVAL_CTORS=1 can handle calls that use it, in particular most iostream constructors rely on CURRENT_LOCALE, which is thread-specific.

This passes the entire core testsuite on my machine (for asmjs, asm2wasm, and s2wasm).

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants