Browse Source

Remove support for system jemalloc.

pull/1/head
wolfbeast 4 years ago committed by Roy Tam
parent
commit
c76d18a40d
  1. 2
      build/autoconf/jemalloc.m4
  2. 4
      memory/build/jemalloc_config.cpp
  3. 3
      memory/build/moz.build
  4. 6
      memory/build/mozjemalloc_compat.c
  5. 57
      memory/build/mozmemory_wrap.h
  6. 4
      memory/build/replace_malloc.c
  7. 3
      memory/moz.build
  8. 2
      mozglue/build/moz.build
  9. 12
      old-configure.in
  10. 3
      storage/moz.build

2
build/autoconf/jemalloc.m4

@ -8,7 +8,7 @@ if test "$MOZ_BUILD_APP" != js -o -n "$JS_STANDALONE"; then
# Run jemalloc configure script
if test -z "$MOZ_SYSTEM_JEMALLOC" -a "$MOZ_MEMORY" && test -n "$MOZ_JEMALLOC4" -o -n "$MOZ_REPLACE_MALLOC"; then
if test "$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.

4
memory/build/jemalloc_config.cpp

@ -11,12 +11,8 @@
#include <mozilla/Assertions.h>
#include "mozilla/Types.h"
#if defined(MOZ_SYSTEM_JEMALLOC)
#include MALLOC_H
#else
#define DLLEXPORT
#include "jemalloc/jemalloc.h"
#endif
#ifdef XP_WIN
#include <windows.h>

3
memory/build/moz.build

@ -46,8 +46,7 @@ if CONFIG['MOZ_GLUE_IN_PROGRAM']:
DIST_INSTALL = True
# Keep jemalloc separated when mozglue is statically linked
if CONFIG['MOZ_MEMORY'] and (CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android') or
CONFIG['MOZ_SYSTEM_JEMALLOC']):
if CONFIG['MOZ_MEMORY'] and CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android'):
FINAL_LIBRARY = 'mozglue'
if CONFIG['MOZ_REPLACE_MALLOC'] and CONFIG['OS_TARGET'] == 'Darwin':

6
memory/build/mozjemalloc_compat.c

@ -14,11 +14,7 @@
#include <stdbool.h>
#if defined(MOZ_SYSTEM_JEMALLOC)
# include MALLOC_H
#else
# include "jemalloc/jemalloc.h"
#endif
#include "jemalloc/jemalloc.h"
/*
* CTL_* macros are from memory/jemalloc/src/src/stats.c with changes:

57
memory/build/mozmemory_wrap.h

@ -125,43 +125,38 @@
#include "mozilla/Types.h"
#if !defined(MOZ_SYSTEM_JEMALLOC)
# ifdef MOZ_MEMORY_IMPL
# if defined(MOZ_JEMALLOC_IMPL) && defined(MOZ_REPLACE_MALLOC) && !defined(MOZ_REPLACE_JEMALLOC)
# define mozmem_malloc_impl(a) je_ ## a
# define mozmem_jemalloc_impl(a) je_ ## a
# else
# define MOZ_JEMALLOC_API MFBT_API
# ifdef MOZ_REPLACE_JEMALLOC
# define MOZ_MEMORY_API MFBT_API
# define mozmem_malloc_impl(a) replace_ ## a
# define mozmem_jemalloc_impl(a) replace_ ## a
# elif (defined(XP_WIN) || defined(XP_DARWIN))
# if defined(MOZ_REPLACE_MALLOC)
# define mozmem_malloc_impl(a) a ## _impl
# else
# define mozmem_malloc_impl(a) je_ ## a
# endif
#ifdef MOZ_MEMORY_IMPL
# if defined(MOZ_JEMALLOC_IMPL) && defined(MOZ_REPLACE_MALLOC) && !defined(MOZ_REPLACE_JEMALLOC)
# define mozmem_malloc_impl(a) je_ ## a
# define mozmem_jemalloc_impl(a) je_ ## a
# else
# define MOZ_JEMALLOC_API MFBT_API
# ifdef MOZ_REPLACE_JEMALLOC
# define MOZ_MEMORY_API MFBT_API
# define mozmem_malloc_impl(a) replace_ ## a
# define mozmem_jemalloc_impl(a) replace_ ## a
# elif (defined(XP_WIN) || defined(XP_DARWIN))
# if defined(MOZ_REPLACE_MALLOC)
# define mozmem_malloc_impl(a) a ## _impl
# else
# define MOZ_MEMORY_API MFBT_API
# if defined(MOZ_WIDGET_ANDROID) || defined(MOZ_WIDGET_GONK)
# define MOZ_WRAP_NEW_DELETE
# endif
# define mozmem_malloc_impl(a) je_ ## a
# endif
# else
# define MOZ_MEMORY_API MFBT_API
# if defined(MOZ_WIDGET_ANDROID) || defined(MOZ_WIDGET_GONK)
# define MOZ_WRAP_NEW_DELETE
# endif
# endif
# ifdef XP_WIN
# define mozmem_dup_impl(a) wrap_ ## a
# endif
# endif
/* All other jemalloc3 functions are prefixed with "je_", except when
* building against an unprefixed system jemalloc library */
# define je_(a) je_ ## a
#else /* defined(MOZ_SYSTEM_JEMALLOC) */
# define je_(a) a
# ifdef XP_WIN
# define mozmem_dup_impl(a) wrap_ ## a
# endif
#endif
#if !defined(MOZ_MEMORY_IMPL) || defined(MOZ_SYSTEM_JEMALLOC)
/* All other jemalloc3 functions are prefixed with "je_" */
#define je_(a) je_ ## a
#if !defined(MOZ_MEMORY_IMPL)
# define MOZ_MEMORY_API MFBT_API
# define MOZ_JEMALLOC_API MFBT_API
#endif

4
memory/build/replace_malloc.c

@ -10,10 +10,6 @@
# error Should not compile this file when replace-malloc is disabled
#endif
#ifdef MOZ_SYSTEM_JEMALLOC
# error Should not compile this file when we want to use native jemalloc
#endif
#include "mozmemory_wrap.h"
/* Declare all je_* functions */

3
memory/moz.build

@ -21,8 +21,7 @@ if CONFIG['MOZ_MEMORY']:
]
if CONFIG['MOZ_JEMALLOC4'] or CONFIG['MOZ_REPLACE_MALLOC']:
if not CONFIG['MOZ_SYSTEM_JEMALLOC']:
DIRS += ['jemalloc']
DIRS += ['jemalloc']
if CONFIG['MOZ_REPLACE_MALLOC']:
DIRS += ['replace']

2
mozglue/build/moz.build

@ -32,7 +32,7 @@ if CONFIG['OS_TARGET'] == 'WINNT':
if not CONFIG['JS_STANDALONE']:
if CONFIG['MOZ_MEMORY'] and (CONFIG['MOZ_SYSTEM_JEMALLOC'] or FORCE_SHARED_LIB):
if CONFIG['MOZ_MEMORY'] and FORCE_SHARED_LIB:
pass
# TODO: SHARED_LIBRARY_LIBS go here
else:

12
old-configure.in

@ -4345,8 +4345,6 @@ Android|WINNT|Darwin)
esac
if test -n "$MOZ_REPLACE_MALLOC"; then
MOZ_SYSTEM_JEMALLOC=
dnl Replace-malloc Mac linkage quirks
if test -n "$MACOSX_DEPLOYMENT_TARGET"; then
AC_CACHE_CHECK([how to do weak dynamic linking],
@ -4413,15 +4411,6 @@ if test -z "$MOZ_MEMORY"; then
;;
esac
else
if test -n "$MOZ_JEMALLOC4" -a -z "$MOZ_REPLACE_MALLOC"; then
MOZ_SYSTEM_JEMALLOC=1
AC_CHECK_FUNCS(mallctl nallocx,,
[MOZ_SYSTEM_JEMALLOC=
break])
if test -n "$MOZ_SYSTEM_JEMALLOC"; then
AC_DEFINE(MOZ_SYSTEM_JEMALLOC)
fi
fi
if test "x$MOZ_DEBUG" = "x1"; then
AC_DEFINE(MOZ_MEMORY_DEBUG)
fi
@ -4434,7 +4423,6 @@ else
;;
esac
fi # MOZ_MEMORY
AC_SUBST(MOZ_SYSTEM_JEMALLOC)
AC_SUBST(MOZ_GLUE_IN_PROGRAM)
# Allow the application to provide a subconfigure script.

3
storage/moz.build

@ -98,8 +98,7 @@ FINAL_LIBRARY = 'xul'
# Note: On Windows our sqlite build assumes we use jemalloc. If you disable
# MOZ_STORAGE_MEMORY on Windows, you will also need to change the "ifdef
# MOZ_MEMORY" options in db/sqlite3/src/Makefile.in.
if CONFIG['MOZ_MEMORY'] and (not CONFIG['MOZ_SYSTEM_SQLITE']
or CONFIG['MOZ_SYSTEM_JEMALLOC']):
if CONFIG['MOZ_MEMORY'] and not CONFIG['MOZ_SYSTEM_SQLITE']:
if CONFIG['OS_TARGET'] != 'Android':
DEFINES['MOZ_STORAGE_MEMORY'] = True

Loading…
Cancel
Save