mirror of
https://github.com/roytam1/palemoon27.git
synced 2026-05-26 14:18:48 +00:00
8e21711781
- remove some hacks (5a020c69f1) - fix misspatch in 1188129 (3f533c3b35) - pointer style (c001547d31) - No bug - Fix typo in MissingScopeKey comment. No review. (bdddaf5243) - pointer style (d29bf7eddc) - Bug 1201051 - Add ObjectWeakMap::init() rather than crashing in constructor on OOM r=terrence (632b865197) - Bug 1193039 - Fix assertion failure related to ObjectValueMap and OOM r=terrence (7110da6cee) - pointer style and spaces (30193d1c6b) - Bug 1205255 - Force inline and use relaxed atomic. r=terrence (c14013330f) - Bug 1206300 - Allow immutable prototypes to be disabled at compile time with a single-line change, but don't actually disable them. r=jorendorff (f61ff0c6ab) - Bug 1195058 - Handle pa_context_new returning NULL in OOM situations. r=padenot (93c2acd8c9) - Bug 1144087 - "Audio glitches on OpenBSD caused by rounding errors." r=kinetik (ff963727a9) - apply/partially revert to Bug 979705 - Re-write the upmixing functions in the WASAPI cubeb backend to fix mono audio and surround compatibility. r=padenot (9dda58fe7f) - Bug 1195061 - Correctly restore audio hardware mix format after attempting to use an alternative format. r=padenot (c971f0f27a) - Bug 1197049 - Retain stream volume across device changes. r=padenot (c8631d230b) - Bug 1199794 - Add NULL checks to avoid crashing during media playback if the audio device removed. r=padenot (2f70698942) - Bug 1204913 - IonMonkey: MIPS32: Fix build erros in defineSinCos. r=sunfish (70235d955b) - fix misspatch and pointer style (6d732302ae) - Missing bit of Bug 1141121 (3ba5331859) - Bug 1176288 - Part 3: Rename CompareV to CompareBitwise, r=jandem (790ee9496d) - pointer style (ec9e8c4c35) - Bug 1135047 - IonMonkey: Fix range before bailouts of MToInt32, r=nbp,sunfish (c6732433d0) - Bug 1105574 - Range Analysis: Keep folded bitwise instructions alive for bailouts. r=sunfish (5e31e0f772) - Bug 1135047 - IonMonkey: Use output range when taking range from operands, r=nbp,sunfish (67d297dbae) - Bug 1201459: IonMonkey - Fix typepolicy of MFilterTypeSet with MIRType_Float32, r=bbouvier,nbp (9c25aa23e1) - Bug 1204073 - Optimize GETELEM with constant string-or-symbol index better in Ion. r=bhackett (9d8acd6d87) - pointer style (3d06794b72) - misspatch (88b8faeda5) - Bug 1187511 - IonMonkey: Refine type sets for unbox operations based on unbox type r=jandem (42effad799) - Bug 1188586 - Temporarily disable recovery of MPow to unblock fuzzers. (rs=jandem) (322fa7267c) - Bug 1186424: Get rid of the tokenStream in the ModuleCompiler; r=luke (736c957b1a) - Bug 1186424: Remove usage of ExclusiveContext from the ModuleCompiler; r=luke (502be345de) - Bug 1186424: Remove perf blocks annotations in OdinMonkey; r=luke (cedf212c9c) - pointer style (746fb0ec36) - Bug 1199719 werr.2 - Remove some of the uninitialized variable noise. r=bbouvier (07cde27868) - code style (30fb139d82) - Bug 1146895 - Remove redundant __asan_default_options from JS shell. r=jandem (da2b735b57) - Bug 1176240: IonMonkey: Try to fold phis containing MFilterTypeSet, r=nbp (eea905a46f) - pointer style (406a7024db) - Bug 1181142 - Part 2: Make the minimum jemalloc4 allocation size 16 bytes on Windows 64. r=glandium (a7838e7b97) - Bug 1176313. Reland the changes to make Attr handling follow the spec again. This is a relanding of bug 1075702, effectively. r=smaug (958248e30d) - Bug 1205424 - Use swap instead of NS_RELEASE in UnbindFromTree. r=baku (b2be0ec231) - bug 1171072 - make libcubeb build on iOS. r=kinetik (0edfad1a4a)
106 lines
4.2 KiB
Plaintext
106 lines
4.2 KiB
Plaintext
dnl This Source Code Form is subject to the terms of the Mozilla Public
|
|
dnl License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
dnl file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
AC_DEFUN([MOZ_SUBCONFIGURE_JEMALLOC], [
|
|
|
|
if test -z "$BUILDING_JS" -o -n "$JS_STANDALONE"; then
|
|
|
|
# Run jemalloc configure script
|
|
|
|
if test -z "$MOZ_NATIVE_JEMALLOC" -a "$MOZ_MEMORY" && test -n "$MOZ_JEMALLOC4" -o -n "$MOZ_REPLACE_MALLOC"; then
|
|
ac_configure_args="--build=$build --host=$target --enable-stats --with-jemalloc-prefix=je_ --disable-valgrind"
|
|
# We're using memalign for _aligned_malloc in memory/build/mozmemory_wrap.c
|
|
# on Windows, so just export memalign on all platforms.
|
|
ac_configure_args="$ac_configure_args ac_cv_func_memalign=yes"
|
|
if test -n "$MOZ_REPLACE_MALLOC"; then
|
|
# When using replace_malloc, we always want valloc exported from jemalloc.
|
|
ac_configure_args="$ac_configure_args ac_cv_func_valloc=yes"
|
|
if test "${OS_ARCH}" = Darwin; then
|
|
# We also need to enable pointer validation on Mac because jemalloc's
|
|
# zone allocator is not used.
|
|
ac_configure_args="$ac_configure_args --enable-ivsalloc"
|
|
fi
|
|
fi
|
|
if test -n "$MOZ_JEMALLOC4"; then
|
|
case "${OS_ARCH}" in
|
|
WINNT|Darwin)
|
|
# We want jemalloc functions to be kept hidden on both Mac and Windows
|
|
# See memory/build/mozmemory_wrap.h for details.
|
|
ac_configure_args="$ac_configure_args --without-export"
|
|
;;
|
|
esac
|
|
if test "${OS_ARCH}" = WINNT; then
|
|
# Lazy lock initialization doesn't play well with lazy linking of
|
|
# mozglue.dll on Windows XP (leads to startup crash), so disable it.
|
|
ac_configure_args="$ac_configure_args --disable-lazy-lock"
|
|
|
|
# 64-bit Windows builds require a minimum 16-byte alignment.
|
|
if test -n "$HAVE_64BIT_BUILD"; then
|
|
ac_configure_args="$ac_configure_args --with-lg-tiny-min=4"
|
|
fi
|
|
fi
|
|
elif test "${OS_ARCH}" = Darwin; then
|
|
# When building as a replace-malloc lib, disabling the zone allocator
|
|
# forces to use pthread_atfork.
|
|
ac_configure_args="$ac_configure_args --disable-zone-allocator"
|
|
fi
|
|
_MANGLE="malloc posix_memalign aligned_alloc calloc realloc free memalign valloc malloc_usable_size"
|
|
JEMALLOC_WRAPPER=
|
|
if test -z "$MOZ_REPLACE_MALLOC"; then
|
|
case "$OS_ARCH" in
|
|
Linux|DragonFly|FreeBSD|NetBSD|OpenBSD)
|
|
MANGLE=$_MANGLE
|
|
;;
|
|
esac
|
|
elif test -z "$MOZ_JEMALLOC4"; then
|
|
MANGLE=$_MANGLE
|
|
JEMALLOC_WRAPPER=replace_
|
|
fi
|
|
if test -n "$MANGLE"; then
|
|
MANGLED=
|
|
for mangle in ${MANGLE}; do
|
|
if test -n "$MANGLED"; then
|
|
MANGLED="$mangle:$JEMALLOC_WRAPPER$mangle,$MANGLED"
|
|
else
|
|
MANGLED="$mangle:$JEMALLOC_WRAPPER$mangle"
|
|
fi
|
|
done
|
|
ac_configure_args="$ac_configure_args --with-mangling=$MANGLED"
|
|
fi
|
|
unset CONFIG_FILES
|
|
if test -z "$MOZ_TLS"; then
|
|
ac_configure_args="$ac_configure_args --disable-tls"
|
|
fi
|
|
EXTRA_CFLAGS="$CFLAGS"
|
|
for var in AS CC CXX CPP LD AR RANLIB STRIP CPPFLAGS EXTRA_CFLAGS LDFLAGS; do
|
|
ac_configure_args="$ac_configure_args $var='`eval echo \\${${var}}`'"
|
|
done
|
|
# Force disable DSS support in jemalloc.
|
|
ac_configure_args="$ac_configure_args ac_cv_func_sbrk=false"
|
|
|
|
# Make Linux builds munmap freed chunks instead of recycling them.
|
|
ac_configure_args="$ac_configure_args --enable-munmap"
|
|
|
|
# Disable cache oblivious behavior that appears to have a performance
|
|
# impact on Firefox.
|
|
ac_configure_args="$ac_configure_args --disable-cache-oblivious"
|
|
|
|
if ! test -e memory/jemalloc; then
|
|
mkdir -p memory/jemalloc
|
|
fi
|
|
|
|
# jemalloc's configure runs git to determine the version. But when building
|
|
# from a gecko git clone, the git commands it uses is going to pick gecko's
|
|
# information, not jemalloc's, which is useless. So pretend we don't have git
|
|
# at all. That will make jemalloc's configure pick the in-tree VERSION file.
|
|
(PATH="$srcdir/memory/jemalloc/helper:$PATH";
|
|
AC_OUTPUT_SUBDIRS(memory/jemalloc/src)
|
|
) || exit 1
|
|
ac_configure_args="$_SUBDIR_CONFIG_ARGS"
|
|
fi
|
|
|
|
fi
|
|
|
|
])
|