I'm now looking at js78 because firefox-78.3.0 is out. For the moment I'm still using js68, but I can at least compare the js build against 78.2.0.
Looking at that, we have '--disable-jemalloc' with the explanation: This switch disables the internal memory allocator used in JS78. jemalloc causes a conflict with glibc. I suspect we have carried that for a long time, but I think it is now out of date. I am in the middle of playing with blender (a maze of nasty cmake packages, a couple of which can use jemalloc). When I first tried blender a few months ago, I avoided jemalloc (trying to get a build of as little as possible, for 3D rendering). At that time I only had 16GB DRAM, less the amount used for video, and even for 'barbershop' with only a couple of terms I was into swap so I gave up trying to learn how to use blender. Now I have 32GB on one machine, so I retried. One of the questions was whether I should use jemalloc: the answer was yes, on this machine the memory usage for barbeshop goes down dramatically. As part of that investigation I discovered that firefox DOES use its own local copy of jemalloc when configuring js: 0:22.50 js/src> running /scratch/working/firefox-78.3.0/configure.py --enable-project=js --host=x86_64-pc-linux-gnu --target=x86_64-pc-linux-gnu MOZILLA_OFFICIAL= MOZBUILD_STATE_PATH=/scratch/working/firefox-78.3.0/mozbuild --disable-tests --disable-debug --without-debug-label --disable-rust-debug MOZ_PGO= --enable-release --disable-optimize --without-ccache CCACHE_PREFIX= RUSTC_WRAPPER= --without-toolchain-prefix --disable-debug-symbols --disable-address-sanitizer --disable-memory-sanitizer --disable-thread-sanitizer --disable-undefined-sanitizer --disable-signed-overflow-sanitizer --disable-unsigned-overflow-sanitizer --enable-frame-pointers --disable-coverage RUSTC_OPT_LEVEL=2 --enable-cargo-incremental --disable-linker AS= --disable-clang-plugin --disable-clang-plugin-alpha --disable-mozsearch-plugin --disable-stdcxx-compat --disable-fuzzing --disable-cpp-rtti --enable-jemalloc --disable-replace-malloc --without-linux-headers --disable-warnings-as-errors --disable-profile-generate --disable-profile-use --without-pgo-profile-path --disable-lto MOZ_LD64_KNOWN_GOOD= --enable-new-pass-manager --disable-valgrind --disable-smoosh --with-system-nspr RUSTC= CARGO= RUSTDOC= RUSTFMT= --without-libclang-path --without-clang-path BINDGEN_CFLAGS= --disable-js-shell --enable-jit --disable-simulator --disable-instruments --disable-callgrind --disable-profiling --disable-vtune --disable-gc-probes --disable-gczeal --disable-small-chunk-size --disable-trace-logging --disable-oom-breakpoint --disable-perf --disable-jitspew --disable-masm-verbose --disable-more-deterministic --enable-ctypes --with-system-ffi --disable-pipeline-operator --disable-binast --disable-rust-simd --disable-cranelift --disable-wasm-codegen-debug --disable-typed-objects --disable-wasm-bulk-memory --disable-wasm-reftypes --disable-wasm-gc --disable-wasm-private-reftypes --enable-wasm-multi-value --enable-shared-memory --enable-new-regexp --disable-wasm-simd --without-qemu-exe --with-cross-lib=/usr/x86_64-pc-linux-gnu --without-sixgill --with-jitreport-granularity=3 --with-system-icu --with-intl-api --disable-dtrace --enable-icf --disable-strip --enable-install-strip STRIP_FLAGS= --with-system-zlib --prefix=/scratch/working/firefox-78.3.0/firefox-build-dir/dist JS_STANDALONE= and then one further reference: 12:35.42 [style 0.0.1] cargo:rerun-if-changed=/scratch/working/firefox-78.3.0/firefox-build-dir/dist/include/mozjemalloc_types.h I've now looked at fedora, https://src.fedoraproject.org/rpms/mozjs78/blob/master/f/mozjs78.spec It seems to me that they are not disabling jemalloc. ĸen -- A really good hydrophobe has to be trained on dehydrated water from birth. I mean, that costs a fortune in magic alone. But they make great weather magicians. Rain clouds just give up and go away. -- The Colour of Magic -- http://lists.linuxfromscratch.org/listinfo/blfs-dev FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page