Update musl to 1.1.15 - #4813
Merged
jgravelle-google merged 69 commits intoMar 13, 2017
Merged
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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_selfalways exists. bpowers/musl@19a1fe6 makes this explicit, and caused problems when compiling without-s USE_PTHREADS=1, because that would uselibrary_pthread_stub.js, which used to stub__pthread_selfat 0. Now we need to explicitly allocate apthread(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=1can handle calls that use it, in particular most iostream constructors rely onCURRENT_LOCALE, which is thread-specific.This passes the entire core testsuite on my machine (for asmjs, asm2wasm, and s2wasm).