Commit Graph

565 Commits

Author SHA1 Message Date
Andrew McCreight
2a6798b3dd Bug 1004609, part 9 - Rename DMDLocationService to CodeAddressService. r=njn 2014-07-31 16:39:26 -07:00
Andrew McCreight
793d2b091c Bug 1004609, part 7 - Move LocationService into xpcom. r=njn,froydnj 2014-07-31 16:39:25 -07:00
Andrew McCreight
43a9a0c54c Bug 1004609, part 5 - Templatize LocationService over the lock. r=njn 2014-07-31 16:39:25 -07:00
Andrew McCreight
16542c4db5 Bug 1004609, part 4 - Templatize LocationService over the string allocator. r=njn 2014-07-31 16:39:25 -07:00
Andrew McCreight
1f0e0d3eb4 Bug 1004609, part 3 - Templatize LocationService over the string interner. r=njn 2014-07-31 16:39:24 -07:00
Andrew McCreight
2944aa5618 Bug 1004609, part 2 - Templatize LocationService over the writer. r=njn 2014-07-31 16:39:24 -07:00
Andrew McCreight
85d3a846af Bug 1004609, part 1 - Inline the W() macro in LocationService. r=njn
This will make it easier to move it later.
2014-07-31 16:39:24 -07:00
Andrew McCreight
31144f5c89 Bug 1045241 - Make memory reporting for LocationService more normal. r=njn 2014-07-31 16:39:24 -07:00
Mike Hommey
1e79fe55c2 Bug 1043802 - Remove TOOLS_DIRS and TEST_TOOLS_DIRS. r=gps 2014-07-29 08:55:55 +09:00
Nicholas Nethercote
810ad2f254 Bug 1035570 (part 3) - DMD: Add DMDAnalyzeHeap(), a heap snapshot function. r=erahm,mccr8.
The patch also adds DMDAnalyzeReports() as a synonym for DMDReportAndDump(),
and deprecates the latter.

--HG--
extra : rebase_source : 651246aa7a0a301f804c124f25beb0e8ed6cd67f
2014-05-29 23:46:09 -07:00
Nicholas Nethercote
cb229a5b17 Bug 1035570 (part 2) - DMD: make output easier for machines to parse. r=erahm.
There are likely to be post-processing scripts for DMD added in the future. In
anticipation, this patch tweaks DMD's output to be a little more conducive to
machine parsing.

The basic idea is this:

- Lines beginning with '#' are comments and can be ignored, as can blank lines.

- All top level blocks consist of a string ending with '{', and then one or
  more indented lines, and then a closing '}' on its own line. Any multi-line
  things within a block are themselves enclosed in braces.

The diff for memory/replace/dmd/test-expected.dmd shows what this looks like in
practice.

It's a long way from a formal grammar or anything like that, but that would be
overkill. In this form it's quite easy to parse with simple scripts that just
do line-based regexp matching, rather than proper parsing. And it's still very
readable to humans, so I think it's a reasonable balance overall.

--HG--
extra : rebase_source : 64085babd79de3cce13295aa5f16a34dc3ad7697
2014-06-05 19:06:50 -07:00
Nicholas Nethercote
55e087d8b5 Bug 1035570 (part 1) - DMD: Rename TraceRecord as Record. r=erahm.
DMD used to have "stack trace records" and "stack frame records". Bug 1013011
removed the latter, and now "stack trace record" and |TraceRecord| are a bit
unwieldy. This patch changes them to "heap block record" and |Record|.

--HG--
extra : rebase_source : 1d674db9866221f6a170d0eb05aa77fc9f4a1924
2014-06-05 18:57:02 -07:00
Mike Hommey
ad9b49263a Bug 1041936 part 2 - Directly use the static library "xul" to link into "xul-gtest" instead of having an intermediate library "xul" used by "xul-shared" and "xul-gtest". r=gps 2014-07-23 13:33:09 +09:00
Mike Hommey
e5c43ef995 Bug 1036894 part 8 - Move most in-tree library linkage information to moz.build, as USE_LIBS. r=gps 2014-07-23 13:30:52 +09:00
Mike Hommey
90c742edc2 Bug 1036894 part 6 - Emit SimplePrograms for CPP_UNIT_TESTs, and make the corresponding moz.build config look like that of SIMPLE_PROGRAMS. r=gps 2014-07-23 13:29:44 +09:00
Mike Hommey
31cd528278 Bug 1036894 part 1 - Move MAKE_FRAMEWORK, SDK_LIBRARY, SHARED_LIBRARY_NAME and STATIC_LIBRARY_NAME to moz.build. r=gps
At the same time, make the Library data more useful in the build frontend.
2014-07-23 13:29:09 +09:00
Makoto Kato
a36a49ac44 Bug 1030899 - Remove issetugid usage on jemalloc. r=glandium 2014-07-08 17:52:09 +09:00
Chris Peterson
01fc5ee208 Bug 1033188 - #include <stdlib.h> for getenv() function declaration. r=glandium 2014-07-01 18:49:52 -07:00
Patrick Wang (Chih-Kai Wang)
942764c5d4 Bug 1026864: prevent malloc from calling wrapped pthread_mutex_lock and get rid of LibcAllocator. r=cyu,r=glandium,r=khuey 2014-06-25 10:44:58 +08:00
Ehsan Akhgari
63f4850e13 Bug 1028684 - Fix the signature of _msize in jemalloc.c; r=glandium
This function accepts a void* argument, not a const void*.

--HG--
extra : rebase_source : 9c5cd5066b3730871e06465a84f9a27a6adc6204
2014-06-24 07:20:22 -07:00
Jed Davis
8c3089a811 Bug 1011350 - Use TaggedAnonymousMemory to distinguish our various mmap call sites. r=njn
We can probably get more granular information than this, given that we
can re-tag memory after the initial mapping, or tag subregions of an
individual mmap() call differently.  But this is a start.
2014-06-17 17:55:00 +02:00
Ehsan Akhgari
784b77dfdc Bug 1025906 - Include intrin.h in jemalloc.c; r=glandium
This fixes a linking error with clang-cl.
2014-06-16 22:34:26 -04:00
Mike Hommey
3ab90154fe Bug 1024097 - Allow jemalloc to build with clang-cl. r=njn 2014-06-13 08:44:19 +09:00
Mike Hommey
32cc5addf8 Bug 1019881 - Ensure the default purgeable zone is after the default zone on OS X. rs=njn 2014-06-11 11:07:27 +09:00
Michael Wu
46a592e4f4 Bug 994081 - [1/3] Make VolatileBufferPtrs more flexible, r=glandium 2014-04-18 12:26:49 -04:00
Chris Peterson
1dedb7419e Bug 1019381 - Cherrypick clang and gcc warning fixes from upstream jemalloc. r=glandium 2014-05-28 19:02:11 -07:00
Mike Hommey
c890f096ea Bug 965870 - Check for __builtin_ffsl before ffsl. r=mshal
Cherry-picked from 1a3eafd1b0
2014-06-06 08:17:02 +09:00
Mike Hommey
e1a1aa0ab1 Bug 965870 - Try to use __builtin_ffsl if ffsl is unavailable. r=mshal
Cherry-picked from 9c3a10fdf6
2014-06-06 08:15:58 +09:00
Mike Hommey
55d3c4f46c Bug 945582 - Don't use jemalloc3 C99 headers with MSVC versions that have (some) C99 support. r=mshal
--HG--
rename : memory/jemalloc/src/include/msvc_compat/inttypes.h => memory/jemalloc/src/include/msvc_compat/C99/inttypes.h
rename : memory/jemalloc/src/include/msvc_compat/stdbool.h => memory/jemalloc/src/include/msvc_compat/C99/stdbool.h
rename : memory/jemalloc/src/include/msvc_compat/stdint.h => memory/jemalloc/src/include/msvc_compat/C99/stdint.h
2014-05-31 09:54:23 +09:00
Nicholas Nethercote
88fb6846d5 Bug 1017911 - DMD: don't use alloca(), because it's a pain to get working on multiple platforms. r=mccr8.
DONTBUILD because DMD is NPOTB.

--HG--
extra : rebase_source : 0b400b76583032f30a9a4b8c935b03c015fc9772
2014-05-29 17:04:23 -07:00
Jan Beich
54ad6dccae Bug 1015602 - Populate chunksize/bin_unused for MOZ_JEMALLOC3 as they're now used after bug 1006769. r=erahm 2014-05-24 06:41:00 -04:00
Ehsan Akhgari
dfcd2ea785 Bug 1015012 - Make the VolatileBuffer constructors explicit; r=froydnj 2014-05-25 21:25:33 -04:00
Eric Rahm
82ada0062b Bug 1006769 - Part 2: Backport jemalloc3 run_size_calc logic. r=glandium 2014-05-21 17:34:07 -07:00
Eric Rahm
fd5aaf36e7 Bug 1006769 - Part 1: Improve heap-overhead memory reporting. r=njn 2014-05-21 17:34:06 -07:00
Nicholas Nethercote
b8e23eaf85 Bug 1014249 - Beef up the "is DMD enabled?" and "is DMD running?" checks. r=mccr8.
--HG--
extra : rebase_source : 868ce1a1e470e45f51447f5126982aaeb51905f1
2014-05-22 19:45:14 -07:00
Nicholas Nethercote
9fcf40eb03 Bug 1013014 (attempt 2) - Disable Trace Malloc on TBPL debug builds. r=glandium.
--HG--
extra : rebase_source : 08fa200fd205225f85b9845bf8c18ac38fe26e0d
2014-05-19 18:16:42 -07:00
Mike Hommey
1943d1c9ce Bug 1014308 - Update jemalloc3 to upstream 3.6.0. r=njn,r=mshal 2014-05-23 07:26:40 +09:00
Mike Hommey
24c25012d5 Bug 1014300 - Ship replace_jemalloc library (jemalloc3) when replace-malloc is enabled. r=mshal 2014-05-23 07:24:22 +09:00
Nicholas Nethercote
9555dea14a Bug 1013011 - DMD: Remove stack frame records. r=erahm.
DONTBUILD because DMD is NPOTB.
2014-05-19 19:57:50 -07:00
Eric Rahm
78fb9239ae Bug 1000621 - Check if DMD is enabled before dumping. r=njn. DONTBUILD 2014-04-24 12:43:11 -07:00
Nathan Froyd
f12cb6c9f8 Bug 993522 - fix comment in DMD.h; r=njn 2014-04-08 13:07:46 -04:00
Michael Wu
2604c0561e Bug 985017 - [1/2] Support null VolatileBufferPtrs, r=glandium 2014-04-02 21:32:54 -04:00
Mike Hommey
788e0bbe6c Bug 984447 - Properly handle forks in mozjemalloc after bug 694896. r=smichaud 2014-03-29 16:53:49 +09:00
Thomas Zimmermann
080d80adff Bug 979887: Fix GCC warning about undeclared function |vsnprintf|, r=glandium 2014-03-06 11:20:00 +01:00
Thomas Zimmermann
ba12020eb1 Bug 979887: Fix GCC warnings about inline variable declarations, r=glandium
Some code is compiled in C90 mode, where inline declarations of
variables are not allowed.
2014-03-06 11:19:57 +01:00
Ehsan Akhgari
bf09c6f469 Bug 976896 - Port STL_FLAGS to moz.build; r=mshal 2014-03-04 19:39:06 -05:00
Masatoshi Kimura
656df78450 Bug 978442 - Use WindowsVersion.h from VolatileBuffer. r=mwu 2014-03-02 10:29:13 +09:00
Frank Wein
44486fd2a7 Bug 977667 - VolatileBufferFallback.cpp:16:10: error: ‘nullptr’ was not declared in this scope, r=glandium 2014-02-28 12:32:14 +01:00
Ehsan Akhgari
f1e844fd62 Bug 935778 - Part 0.4: Spray even more MOZ_DECLARE_REFCOUNTED_TYPENAME across the tree 2014-02-21 09:11:33 -05:00
Jacek Caban
27ced28d7f Bug 748598 - Fixed cross compilation on case sensitive OSes. 2014-02-20 17:22:42 +01:00
Michael Wu
311b708a9d Bug 972693 - Explicitly ignore return values from moz_posix_memalign, r=glandium 2014-02-14 02:15:44 -05:00
Ehsan Akhgari
9914a6332b Bug 973403 - Move the LOCAL_INCLUDES in memory to moz.build; r=glandium 2014-02-18 01:05:51 -05:00
Ms2ger
6e066deaea Bug 968856 - Move unconditional LOCAL_INCLUDES into moz.build; r=mshal 2014-02-15 21:24:59 +01:00
Michael Wu
19dba2c6c6 Bug 748598 - Implement VolatileBuffer for OSX, Ashmem, and Windows, r=njn,glandium 2014-01-22 08:23:27 -05:00
David Major
3f86601110 Bug 860254 - Part 4: Enable poisoning. r=glandium 2014-02-13 20:11:15 -05:00
David Major
53dfefa060 Bug 860254 - Part 2: Split junk settings into opt_junk (allocate) versus opt_poison (deallocate). r=glandium 2014-01-14 11:56:18 -08:00
David Major
11447fb7c5 Bug 860254 - Part 1: #define MALLOC_FILL but keep the options const-false. r=glandium 2014-02-13 20:10:35 -05:00
Ehsan Akhgari
b870bb3fe9 Bug 969757 - Remove the dead code in our tree which pretends to support OS/2; r=roc,mcmanus,gps,jorendorf,bsmedberg sr=bsmedberg 2014-02-10 17:57:01 -05:00
Eric Rahm
2e1050c23e Bug 968956 - DMD: Acquire state lock before clearing reports. r=njn.
DONTBUILD because DMD is NPOTB.

--HG--
extra : rebase_source : c3e5b2f27d4983c5802f1a38c8accc31a2b07fa2
2014-02-07 15:23:50 -08:00
Marcin Juszkiewicz
f859be2f82 Bug 963028 - AArch64 support for jemalloc. r=froydnj 2014-01-23 16:34:31 -05:00
Shelly Lin
a031d65530 Bug 801571 - Override vasprintf and asprint for Android platform to avoid the mismatch of malloc()/free(). r=glandium 2014-01-17 16:54:06 +08:00
Ryan VanderMeulen
41ae41c2b0 Backed out changeset 4230d328b65f (bug 801571) for memory leaks. 2014-01-17 14:25:28 -05:00
Shelly Lin
7e0c060dfd Bug 801571 - Override vasprintf and asprint for Android platform to avoid the mismatch of malloc()/free(). r=glandium
DONTBUILD
2014-01-17 16:54:06 +08:00
Ryan VanderMeulen
c078284cba Backed out changeset 0496d73bf88e for landing with the wrong bug # in the commit message. 2014-01-17 11:13:30 -05:00
Shelly Lin
ad1c315a7d Bug 801517 - Override vasprintf and asprint for Android platform to avoid the mismatch of malloc()/free(). r=glandium 2014-01-17 16:54:06 +08:00
Kai-Zhen Li
b16aaa6f7f Bug 957450 - fix compile error from jemalloc in gonk-kk. r=gal 2014-01-10 14:14:53 +08:00
Marco Chen
e515090378 Backout 977d6be3df40 Bug 957450 - The added "or condition" didn't prevent gonk-kk version fall into non-const definition. 2014-01-15 15:55:12 +08:00
Jon Coppeard
0956f2e4d6 Bug 956501 - Update mozjemalloc chunk_alloc_mmap functions to latest upstream version r=glandium 2014-01-14 10:06:25 +00:00
Kai-Zhen Li
8d36cf0bd0 Bug 957450 - fix compile error in gonk-kk. r=iacobcatalin 2014-01-10 14:14:53 +08:00
Nicholas Nethercote
bc3240a496 Bug 950545 (part 2) - Fix assertion failures and output mismatches in the DMD test. r=iacobcatalin.
DONTBUILD because DMD is NPOTB

--HG--
extra : rebase_source : 48388b467bcbce8347792c8e7f0cb45b1fc177aa
2013-12-18 13:58:08 -08:00
Nicholas Nethercote
062f3b1e47 Bug 950545 (part 1) - Fix the dump numbering in the DMD test. r=iacobcatalin.
--HG--
extra : rebase_source : 2b04382850c19aff46fce02d02ce1c235edde473
2013-12-18 13:55:47 -08:00
Nicholas Nethercote
c53ec0ce66 Bug 948621 (part 2) - Abort DMD-enabled Windows builds unless --enable-profiling is specified. r=ehsan.
--HG--
extra : rebase_source : 7398d8d7f13792912f27948f9681ff608a0e90c6
2013-12-15 13:50:39 -08:00
Nicholas Nethercote
6d00ee88e5 Bug 948621 (part 1) - DMD: Handle arbitrary PC values in stack frames. r=iacobcatalin.
DONTBUILD because NPOTB

--HG--
extra : rebase_source : 63a30251498dc5e5df2952a468f46ada8598e03e
2013-12-15 13:47:11 -08:00
Mike Hommey
3325256d97 Bug 945042 - Move NO_PROFILE_GUIDED_OPTIMIZE to moz.build. r=gps,r=njn 2013-12-09 13:39:26 +09:00
Birunthan Mohanathas
2a97f4dc0d Bug 713082 - Part 1: Remove unnecessary Util.h includes. r=Waldo 2013-12-08 21:52:33 -05:00
Mike Shal
94d19c46f2 Bug 875013 - Remove VPATH; r=glandium 2013-11-21 14:57:06 -05:00
Markus Stange
3847e1823e Bug 945131 - Fix DMD build by using const char*. r=njn
DONTBUILD because NPOTB
2013-12-02 23:13:20 +01:00
Catalin Iacob
7528af489d Bug 819839 - Part 2 - Print file name and line number if available in DMD report. r=njn 2013-11-29 16:09:42 +01:00
Mike Hommey
9245936f8b Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-27 22:55:07 +09:00
Mike Hommey
2b828323f2 Backout changeset 3fd4b546eed4 (bug 874266) and changeset a35d2e3a872f (bug 942043) for ASAN build bustage and Windows test bustage
--HG--
extra : amend_source : f20d09aeff1c8b5cbd0f1d24c7ce04e86f3aed1d
2013-11-28 14:24:05 +09:00
Mike Hommey
d210f8ff00 Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-28 13:08:16 +09:00
Catalin Iacob
34e8b4863e Bug 940218 - Build memory/ in unified mode; r=ehsan 2013-11-25 12:09:59 +01:00
Ehsan Akhgari
420fcbeed2 Backed out changeset c3d41ab0a2df (bug 940218) for causing bug 941616
--HG--
extra : rebase_source : c0d9b2840ddb6a6b88b86cfc3e3a6810ac9e37e2
2013-11-21 14:28:52 -05:00
Nathan Froyd
769a285e52 Bug 941616 - fix jemalloc build for --enable-replace-malloc; r=ehsan 2013-11-21 09:46:32 -05:00
Chris Peterson
8c9d97fa4e Bug 940218 - Build memory/jemalloc and friends in unified mode. r=glandium 2013-11-17 01:16:36 -08:00
Mike Hommey
b95448fc0b Bug 914245 - Move FORCE_SHARED_LIB to moz.build. r=mshal 2013-11-19 11:47:45 +09:00
Mike Hommey
bb6779efe3 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey
57a2dfcb91 Bug 939039 - Remove now useless FORCE_STATIC_LIB definitions. r=gps 2013-11-19 11:47:28 +09:00
Mike Hommey
d7b6f95761 Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps 2013-11-19 11:47:14 +09:00
Birunthan Mohanathas
58a91e67d8 Bug 784739 - Switch from NULL to nullptr in miscellaneous directories; r=ehsan 2013-11-11 14:17:14 -05:00
Daniel Holbert
bd6e7083c6 Bug 926275: Remove mozalloc_macro_wrappers.h and mozalloc_undef_macro_wrappers.h. r=bsmedberg 2013-10-31 19:39:03 -07:00
David Major
986ec3972c Bug 931196 - Remove MOZ_TEMP_INVESTIGATION poisoning code. r=glandium 2013-10-31 11:52:08 -04:00
Ted Mielczarek
154a815b9e Bug 930674 - convert VISIBILITY_FLAGS in Makefile.in to NO_VISIBILITY_FLAGS in moz.build. r=mshal 2013-10-24 15:06:19 -04:00
Cykesiopka
b49b10627d Bug 914270 - Part 2: Manual moves. r=joey 2013-10-24 18:52:00 +01:00
Cykesiopka
a3710e5c11 Bug 914270 - Part 1: Simple/Automated moves. r=joey 2013-10-24 18:51:00 +01:00
Mike Hommey
1d566f7586 Bug 929905 - Consolidate sources in moz.build. r=gps 2013-10-25 08:23:05 +09:00
Mike Hommey
e2ae65f67a Bug 913268 - Make CPP_SOURCES a StrictOrderingOnAppendList. r=mshal 2013-10-24 08:00:23 +09:00
Masatoshi Kimura
610685c38b Bug 928210 - Get rid of MOZ_INLINE 2013-10-22 06:34:24 +09:00
Nathan Froyd
1012aff6b9 Bug 925169 - part 1 - don't use MOZ_MEMORY_SIZEOF_PTR_2POW in jemalloc.c; r=glandium 2013-10-09 19:04:43 -04:00
Ms2ger
41452165ce Bug 923489 - Part c: qualify paths in memory/replace/dmd/; r=gps 2013-10-05 13:28:25 +02:00
Ms2ger
7b5622b8dd Bug 923489 - Part b: qualify paths in memory/replace/jemalloc/; r=gps 2013-10-05 12:19:08 +02:00
Ms2ger
c521a390af Bug 923489 - Part a: qualify paths in memory/jemalloc/; r=gps 2013-10-05 12:18:36 +02:00
Mike Hommey
f1cf3b4238 Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
Brian O'Keefe
4f68eb9b02 Bug 875934 - Move LIBRARY_NAME to moz.build, batch 3; r=mshal 2013-08-15 09:02:09 -04:00
Douglas Crosher
1c4d303bce Bug 908971 - jemalloc: fix uninitialized 'mapped' variable. r=jlebar 2013-08-24 13:35:08 +10:00
Justin Lebar
b966ab06c5 Bug 903420 - Two fixes to jemalloc's memory reporters. r=glandium
1) We were counting "dirty" pages in "waste", when we shouldn't have
   been.  This was causing the assertion at the end of jemalloc_stats()
   which checks that mapped memory is greater than committed memory to
   fail.

2) jemalloc_stats used stats_chunks.curchunks to measure the number of
   mapped pages.  This was problematic for two reasons.

   a) stats_chunks.curchunks was not locked when it was modified in
      chunk_{de}alloc(), so its value could be garbage.

   b) Even if it had been locked properly, it was possible for an
      allocation to occur during a call to jemalloc_stats which would
      cause the measured amount of allocated memory to exceed the
      measured amount of mapped memory, tripping the assertion we
      tripped in (1).

   We fixed these issues by deleting stats_chunks entirely, and by
   introducing huge_mapped, which measures the amount of memory mapped
   by huge allocations (and is properly protected by huge_mtx).

   We now measure the amount of mapped memory by adding huge_mapped and
   each arena's mapped memory, and we do this in such a way that even if
   an allocation occurs during our call to jemalloc_stats, we'll still
   get a consistent result (where mapped >= committed).
2013-08-15 11:15:04 -07:00
Mike Hommey
987e662e58 Bug 901211 - Don't use static page size on ia64, sparc and mips. r=jlebar 2013-08-05 09:10:35 +09:00
Ms2ger
5c2b63d2c7 Merge m-c to inbound. 2013-08-02 11:07:57 +02:00
Ms2ger
061d88874c Bug 897921 - Remove some dead assignments in makefiles; r=mshal 2013-08-02 09:03:55 +02:00
Justin Lebar
f7f1906708 Bug 899880 - Fix jemalloc3 so it works after bug 898558, which changed jemalloc's stats struct. r=glandium 2013-08-01 16:37:54 -07:00
Ehsan Akhgari
5ee21d6d3f Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:

# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.mm" \) | \
    xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
                   media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
                   modules/libmar/src/mar_private.h \
                   modules/libmar/src/mar.h


# assert_replacer.py
#!/usr/bin/python

import sys
import re

pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")

def replaceInPlace(fname):
  print fname
  f = open(fname, "rw+")
  lines = f.readlines()
  for i in range(0, len(lines)):
    while True:
      index = re.search(pattern, lines[i])
      if index != None:
        index = index.start()
        lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
        for j in range(i + 1, len(lines)):
          if lines[j].find("                 ", index) == index:
            lines[j] = lines[j][0:index] + lines[j][index+4:]
          else:
            break
      else:
        break
  f.seek(0, 0)
  f.truncate()
  f.write("".join(lines))
  f.close()

argc = len(sys.argv)
for i in range(1, argc):
  replaceInPlace(sys.argv[i])

--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Justin Lebar
7502304ad5 Bug 898558 - Rework jemalloc_stats so it exposes how much memory is used for bookkeeping. r=glandium
This patch also gets rid of the redundant "committed" entry, so now
there's no confusion as to which entries overlap.

--HG--
extra : rebase_source : 429f3d44011f02dda43aa10b077c917c4d02fe50
2013-07-29 09:10:53 -07:00
Daniel Holbert
0c439ee560 Bug 581478: undef strdup before (re)defining it in mozalloc_macro_wrappers.h. r=glandium 2013-07-25 18:14:41 -07:00
Mike Shal
576f2400a5 Bug 889787 - Define XP_LINUX globally; r=ted 2013-07-16 17:10:10 -04:00
Mike Hommey
ffd522d5c2 Bug 892904 - Remove useless includes of config.mk. r=gps 2013-07-15 18:48:40 +09:00
Gregory Szorc
bcf3de711c Bug 891632 - Port NO_DIST_INSTALL to moz.build; r=joey
Many of the moved variables are likely not needed. moz.build should one
day validate the sandbox's output and error if "useless" variables are
present.

--HG--
extra : rebase_source : 3abdea056c18d00ede8c15b37db60532eca58630
2013-07-10 12:08:21 -07:00
Catalin Iacob
4f03e5bb1a Bug 798914 (part 5) - Use newly introduced mozilla::MallocSizeOf instead of nsMallocSizeOfFun. r=njn.
--HG--
extra : rebase_source : fc472490dd978d165f02f77ed37f07aed6e5bb61
2013-06-23 14:03:39 +02:00
Brian O'Keefe
25e65a9445 Bug 875934 - Move LIBRARY_NAME to moz.build (batch #2); r=mshal
--HG--
extra : rebase_source : 555b28e5c3412ffc210c60b6fe2fee6f053fd587
2013-06-18 08:13:42 -04:00
Brian O'Keefe
5f8b5163e8 Bug 875934 - Move LIBRARY_NAME to moz.build (batch #1); r=mshal
--HG--
extra : rebase_source : 385d3fd65475ffc18ee44ae088753649470e214b
2013-06-17 15:21:01 -04:00
Joey Armstrong
6829937e70 bug 870406: move CSRCS to mozbuild (config batch #2) r=mshal 2013-06-04 11:08:44 -04:00
Mike Shal
994cfe0b6b Bug 864774 - Part 2: Move CPPSRCS to moz.build as CPP_SOURCES; r=joey CLOSED TREE
From 9e0ba7f425143f545eb6c4b26a9a96b5ade4d8e9 Mon Sep 17 00:00:00 2001
2013-04-23 17:54:15 -04:00
David Zbarsky
f3e4506def Fix b2g build, no bug 2013-05-16 18:07:12 -07:00
Bill McCloskey
1c9af5c86d Bug 863116 - MOZ_ALWAYS_INLINE should not inline in debug builds (r=Waldo) 2013-04-19 10:55:34 -07:00
Mike Shal
77cdb6567d Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey 2013-04-16 15:24:43 -04:00
Nicholas Nethercote
0a5643093d Bug 848560 (part 1) - dmd::ClearReports() needs to check if DMD is running before doing anything to avoid crashing. r=jlebar.
--HG--
extra : rebase_source : bdd7a6d1654dfbf562bc534311869248eb3c8a4a
2013-03-25 21:03:47 -07:00
Kyle Machulis
5aa83c3e11 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps 2013-04-01 11:36:59 -07:00
Kyle Machulis
c79ccc0693 Backout for changeset 03452b187c14 (Bug 855465) due to bustage on a CLOSED TREE; r=qdot 2013-03-29 15:12:58 -07:00
Kyle Machulis
a59d40f143 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
--HG--
extra : rebase_source : 004a756492323e1a049586e85b3be5037159df20
2013-03-29 13:56:18 -07:00
Steve Singer
2a6c9d4ab8 Bug 851859 - Set jemalloc's page size based on the architecture instead of assuming it's always 4kb. r=jlebar 2013-03-27 11:32:34 -04:00
Mike Shal
9680b82df6 Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps 2013-03-19 11:47:00 -07:00
Daniel Holbert
3a2a871ecc Bug 851981: Make loop iterator in mozalloc_handle_oom a size_t instead of an int, to fix build warning for signed/unsigned comparison. r=bsmedberg 2013-03-18 10:58:31 -07:00
Gregory Szorc
2288b28e43 Bug 844635 - Part 3: Remove empty Makefile.in files; r=glandium 2013-03-17 18:01:25 -07:00
Adam Roach [:abr]
5675329857 Bug 846368 - Add number of bytes requested to OOM last-gasp r=bsmedberg 2013-02-28 13:43:51 -06:00
Gregory Szorc
85e5647383 Bug 784841 - Part 18c: Convert /memory, /mfbt, /mozglue; r=ted f=Ms2ger 2013-02-25 12:47:17 -08:00
Nicholas Nethercote
5bdaf1a962 Bug 841564 - DMD: Fix the second percentage in stack frame records. r=jlebar. DONTBUILD.
--HG--
extra : rebase_source : 079bce40754ceb975cac4b3e152b294364adcdc1
2013-02-18 17:02:13 -08:00
Rafael Ávila de Espíndola
9b94369d2b Bug 839338 - ASan alloc/dealloc mismatch in _M_create_nodes/_M_destroy_nodes. r=waldo. 2013-02-12 08:30:16 -05:00
Nicholas Nethercote
28d113eec6 Bug 838942 - DMD: Fix assertion in the test on Windows. r=jlebar. DONTBUILD because DMD isn't built by default.
--HG--
extra : rebase_source : e2075b1b34bbfc7d0a3b9f45523323a7f38dcb63
2013-02-07 11:18:52 -08:00
Nicholas Nethercote
dd6c1ed457 Bug 836054 - DMD: Handle stack entries with PC of 0x0. r=jlebar.
--HG--
rename : accessible/src/base/EventQueue.cpp => accessible/src/base/NotificationController.cpp
rename : accessible/src/base/EventQueue.h => accessible/src/base/NotificationController.h
rename : dom/browser-element/BrowserElementParent.jsm => dom/browser-element/BrowserElementParent.js
rename : testing/modules/AppInfo.jsm => services/healthreport/modules-testing/utils.jsm
extra : rebase_source : a9b8cc73c22c889dd3973bb411a075a7e7d1e954
2013-02-03 20:15:10 -08:00
Daniel Holbert
49440e5f13 Bug 829327: Mark mozalloc_abort() as MOZ_NORETURN (except on ARM, where we're pretty sure it breaks crash stacks). r=cjones 2013-01-11 09:29:02 -08:00
Nicholas Nethercote
feaf9f38bb Bug 827523 (part 3) - DMD: Add --max-frames and --max-records options. r=jlebar.
--HG--
extra : rebase_source : 9840bcfa2d8fc1127a6f367a94e1d8488ae41c6a
2013-01-07 18:32:38 -08:00
Nicholas Nethercote
a2f1339251 Bug 827523 (part 2) - DMD: Swap the diff order in test mode. r=jlebar.
--HG--
extra : rebase_source : d8b96799e7353f9d838f31ddb4b1aaca3ab6ca9c
2013-01-07 18:01:07 -08:00
Nicholas Nethercote
10be959c40 Bug 827523 (part 1) - DMD: Remove valloc() from the test. r=jlebar.
--HG--
extra : rebase_source : a5da90a39a14d45d4d841ec22506e66520791e96
2013-01-07 17:59:44 -08:00
Justin Lebar
367e4b3e82 Bug 826515 - Occasionally GC DMD stacks. r=njn 2013-01-08 11:04:19 +01:00
Nicholas Nethercote
0ea79c11c5 Bug 818793 - Add a |aMaxFrames| parameter to NS_StackWalk. r=jlebar,glandium; sr=dbaron. 2012-12-20 21:31:57 -08:00
Nicholas Nethercote
b6f32fe10b Bug 820566 - DMD: Improve testing by using a script to filter out platform-specific stuff in the output. r=jlebar.
--HG--
extra : rebase_source : 9afed1fade6007f76d69faa1d3bd8d95516380d5
2013-01-06 19:18:13 -08:00
Nicholas Nethercote
5ee4d74504 Bug 826183 - DMD: clear reportedness data before running memory reporters and dumping. r=jlebar.
--HG--
extra : rebase_source : 3ea1c71eacdee712b2d1739a8e25cbf854ea0424
2013-01-06 13:34:39 -08:00
Chris Jones
ed0965e2a9 Bug 824224: Make mozalloc_abort() not MOZ_NORETURN and log errors to logcat. r=glandium 2013-01-04 13:28:37 -08:00
Ehsan Akhgari
816c85df1c Bug 826779 - Get DMD to build on Windows; r=bbondy 2013-01-04 13:57:27 -05:00
Mike Hommey
8ba53b071d Bug 826171 - Fix strndup in memory/build/mozmemory_wrap.c. r=jlebar 2013-01-03 16:05:20 +01:00
Trevor Saunders
e3b2aa92a5 bug 822717 - remove checks for old gcc r=glandium 2012-12-18 13:22:28 -05:00
Justin Lebar
6007d234f5 Bug 824395 - Report used stacks separately from unused stacks. r=njn 2012-12-23 21:48:03 -05:00
Nicholas Nethercote
69cb9559ea Bug 824340 - DMD: fix a deadlock when getting stack traces. r=jlebar.
--HG--
extra : rebase_source : c0bb85cddb6abed0eedd49d959001a0b95667946
2012-12-23 17:35:56 -08:00
Nicholas Nethercote
2f1c02fb31 Bug 824390 - DMD: Don't use PTHREAD_MUTEX_INITIALIZER for non-static mutexes. r=jlebar.
--HG--
extra : rebase_source : a8cdd5e3d3db05cbb78441477508c05168e67ecd
2012-12-23 17:35:23 -08:00
Nicholas Nethercote
743797f969 Bug 822148 (part 9) - DMD: rename "groups" as "records". r=jlebar.
--HG--
extra : rebase_source : e48e309bb7efc62ef52202e50e0f662814108e54
2012-12-17 21:54:08 -08:00
Nicholas Nethercote
ade5910b26 Bug 822148 (part 8) - DMD: remove a friend declaration. r=jlebar.
--HG--
extra : rebase_source : c9c23e0bcb2d6a50085daf23d7be04614efa7ac8
2012-12-19 19:48:43 -08:00
Nicholas Nethercote
3d2cddda2e Bug 822148 (part 7) - DMD: use Percent() in a couple of appropriate places. r=jlebar.
--HG--
extra : rebase_source : 4f99a7aca69ccf821209169a5b91c50738de736c
2012-12-19 19:41:57 -08:00
Nicholas Nethercote
093a10cd69 Bug 822148 (part 6) - DMD: print block counts in the summary. r=jlebar.
--HG--
extra : rebase_source : 84c3cff46912bc7b9fe3bb4790d2cec874ae3201
2012-12-18 19:08:07 -08:00
Nicholas Nethercote
988d28105b Bug 822148 (part 5) - DMD: avoid empty library names in stacks. r=jlebar.
--HG--
extra : rebase_source : dcf7ebcc296663221dc7f671cd151d5d1f438971
2012-12-17 21:55:12 -08:00
Nicholas Nethercote
e98776d28a Bug 822148 (part 4) - DMD: Capitalize class Thread's method names. r=jlebar.
--HG--
extra : rebase_source : 6cb59d548f2e972398c6a14cdfe44d2a2d474af0
2012-12-17 19:59:29 -08:00
Nicholas Nethercote
6c71e7b725 Bug 822148 (part 3) - DMD: Rename |LiveBlock| as |Block|. r=jlebar.
--HG--
extra : rebase_source : 65ccba830ca872fd28a410122ebf65c12cbf6377
2012-12-17 19:56:51 -08:00
Nicholas Nethercote
1cf85ccdfe Bug 822148 (part 2) - DMD: Treat twice-reported blocks more like other blocks. r=jlebar.
--HG--
extra : rebase_source : 345123de945a3c26ec6ca88a599b45efddc4209e
2012-12-17 19:40:07 -08:00
Nicholas Nethercote
fee348194d Bug 822148 (part 1) - DMD: remove reporter names from output because they're redundant. r=jlebar.
--HG--
extra : rebase_source : c9bf57dbd3612719ba60951cb14988ec38b392f0
2012-12-16 16:56:04 -08:00
Nicholas Nethercote
0c5277a734 Bug 822700 - When DMD is disabled its SizeOf() function shouldn't try to measure non-existent structures. r=jlebar.
--HG--
extra : rebase_source : 21066e5173dbc7e4a6c7615f1b355989bf046082
2012-12-18 15:14:31 -08:00
Kartikaya Gupta
2a42945ebb Bug 822698 - Rename GroupSize to GetGroupSize to fix a gcc 4.6 compilation error on Android. r=njn 2012-12-19 11:24:49 -05:00
Nicholas Nethercote
201acb2d9b Bug 821577 - DMD: Fix hang at start-up on Mac. r=jlebar.
--HG--
extra : rebase_source : 39b46f3a7b8aead6e971f55cb0821f443b7368dc
2012-12-13 19:42:47 -08:00
Nicholas Nethercote
3c5ee4f51c Bug 819817 - DMD: cache calls to NS_DescribeCodeAddress for faster dumping. r=jlebar.
--HG--
extra : rebase_source : 418ef965586c5cafa5623d72d1ae92ea8ee749c2
2012-12-13 16:58:28 -08:00
Ehsan Akhgari
74fa25c592 Bug 820875 - Reimplement DMD's MutexBase using critical sections; r=bbondy 2012-12-13 19:51:41 -05:00
Ehsan Akhgari
0a84fb2ffa Bug 821358 - Port the trace-malloc Windows TLS macros to DMD; r=njn 2012-12-13 19:47:41 -05:00
Nicholas Nethercote
ddacf3a6d9 Bug 820652 (part 7) - DMD: Fix bug in strdup_. r=jlebar.
--HG--
extra : rebase_source : d15a08687b465c9c63c8a3786fdc7ba2539f2b82
2012-12-12 21:57:23 -08:00
Nicholas Nethercote
763027966b Bug 820652 (part 6) - DMD: Don't use LiveBlockKey in LiveBlock. r=jlebar.
--HG--
extra : rebase_source : b65e0d34f6787a0f5031b685ececc61e19d4b0a3
2012-12-12 21:40:01 -08:00
Nicholas Nethercote
f6c58f6232 Bug 820652 (part 5) - DMD: Store the block address in LiveBlock. r=jlebar.
--HG--
extra : rebase_source : ff147323054910d946e0023a97726c9e2268f733
2012-12-12 21:16:28 -08:00
Nicholas Nethercote
01065aef3d Bug 820652 (part 4) - DMD: Inline BlockSize into LiveBlock. r=jlebar.
--HG--
extra : rebase_source : a543b4df4cbcecca8c6e59b6722a3a2b7298c2fa
2012-12-12 20:16:20 -08:00
Nicholas Nethercote
617018312e Bug 820652 (part 3) - DMD: Distinguish BlockSize and GroupSize. r=jlebar.
--HG--
extra : rebase_source : de31af9d5c00e52a7f775d7e0e11204edcb9e21b
2012-12-11 19:47:46 -08:00
Nicholas Nethercote
e8b2a75c1f Bug 820652 (part 2) - DMD: Embriefen the hash policy of LiveBlockGroup and DoubleReportBlockGroup. r=jlebar.
--HG--
extra : rebase_source : 41d1190f86cb2514c3b93717be6975d197226474
2012-12-11 19:46:53 -08:00
Nicholas Nethercote
b97d32ac43 Bug 820652 (part 1) - DMD: Split BlockKey in two, and fix the ensuing fall-out. r=jlebar.
--HG--
extra : rebase_source : 9fdda42f633b209b0111fe6104e08b5028dda8b5
2012-12-11 19:08:38 -08:00
Nicholas Nethercote
17193b50db Bug 820682 - DMD: Tweak stress mode. r=jlebar.
--HG--
extra : rebase_source : a9f9fe54ae78a7c959479a8818a62a23f6c7fa53
2012-12-11 17:52:04 -08:00
Ehsan Akhgari
d20928f2f7 Bug 820875 - Implement MutexBase on Windows; r=bbondy 2012-12-12 11:18:17 -05:00
Nicholas Nethercote
7fe17b1ddf Bug 819772 - Add a memory reporter for DMD's data. r=jlebar.
--HG--
extra : rebase_source : d85f4f08b3c0ec5e81bde9caa63699e60a303b33
2012-12-11 13:54:11 -08:00
Nicholas Nethercote
a5d2405ad3 Bug 819833 (part 1) - DMD: Print PCs at the end of lines. r=jlebar.
--HG--
extra : rebase_source : ce17d41f692c2babb9d7aec9dbca00ab42d10250
2012-12-10 19:26:56 -08:00
Justin Lebar
1465b4a37d Bug 820401 - Default DMD to sample-below=4093. r=njn
Also print out the sample size, since it's no longer explicit in the $DMD envvar.
2012-12-11 18:26:43 -05:00
Nicholas Nethercote
0d84313efb Bug 717853 - Add a native version of DMD. r=jlebar,glandium.
--HG--
extra : rebase_source : 9b824556591abd63b42aa7ff823e9cd25976c162
2012-12-10 16:05:07 -08:00
Mike Hommey
a3b372eb70 Bug 804303 part 3 - Build jemalloc3 as a replace-malloc library when building with mozjemalloc. r=khuey 2012-12-07 09:32:24 +01:00
Mike Hommey
6bc0fa9501 Bug 804303 part 2 - Add ability to dynamically replace or supplement jemalloc implementation. r=jlebar,r=khuey 2012-12-07 09:32:24 +01:00
Mike Hommey
95d176978d Bug 804303 part 1 - Cleanup how the mozjemalloc/jemalloc3 glue is set up, attempting to make it clearer. r=jlebar,r=khuey
--HG--
rename : memory/build/extraMallocFuncs.c => memory/build/jemalloc_config.c
rename : memory/mozjemalloc/jemalloc.h => memory/build/mozmemory.h
rename : memory/build/extraMallocFuncs.c => memory/build/mozmemory_wrap.c
2012-12-07 09:32:24 +01:00
Mike Hommey
844bf3bcfb Bug 815071 - Update jemalloc3 to commit 6eb84fb. r=jlebar 2012-12-07 09:32:23 +01:00
Gabriele Svelto
b90b929ddf Bug 811740 - Reduce the amount of unused dirty pages kept by jemalloc to 1MiB in B2G. r=jlebar, r=glandium 2012-11-28 17:03:35 +01:00
Gabriele Svelto
1e1d781bc1 Bug 805855 - Add an extra function to jemalloc to free dirty unused pages. r=glandium 2012-11-08 20:06:50 +01:00
Rafael Ávila de Espíndola
111917a5c3 Bug 807112 - change MOZ_EXPORT_API and MOZ_IMPORT_API to not take the type. r=Waldo. 2012-10-31 18:18:12 -04:00
Jacek Szpot
151a2a463e Bug 800106: Replace more NS_ALWAYS_INLINEs with MOZ_ALWAYS_INLINE; r=ehsan 2012-10-13 17:52:10 +02:00
Jan Beich
1e76df62ca Bug 762445 - Add jemalloc3 glue for heap-committed, heap-dirty in about:memory. r=glandium,jlebar 2012-10-18 16:09:07 +02:00
Jan Beich
0cb1aa598a Bug 788955 - Check for malloc_usable_size() and malloc_np.h via autoconf. r=glandium 2012-10-17 16:39:15 +02:00
Jan Beich
e6ae524816 Bug 788955 - Mark some jemalloc functions as weak on BSDs. r=glandium 2012-10-17 16:38:43 +02:00
Jan Beich
1f2244b4e3 Bug 788955 - Without --enable-jemalloc detect and use jemalloc3 in libc. r=glandium 2012-10-17 16:36:49 +02:00
Mike Hommey
5b63083077 Bug 799090 - Update jemalloc3 to commit d0ffd8e. r=jlebar 2012-10-17 16:29:28 +02:00
Ehsan Akhgari
9e0549e4d9 Backout changeset 0f0797cdb55a (bug 800106) because of Kraken regressions on Windows XP 2012-10-15 14:19:55 -04:00
Chris Jones
8951bf39ba Bug 799849: Wrap nothrow libstdc++ allocators. r=glandium 2012-10-13 03:16:53 -07:00
Jacek Szpot
0ebb25a85a Bug 800106: replace NS_ALWAYS_INLINE with MOZ_ALWAYS_INLINE; r=ehsan 2012-10-13 17:52:10 +02:00
Justin Lebar
ef1cfe7ce6 Bug 787675 - When jemalloc hits a fatal assertion, crash within a new stack frame, in the hopes of making the crashstats more understandable. r=glandium 2012-09-03 22:01:24 -04:00
Michael Wu
a14e332a6a Bug 780287 - Don't wrap jemalloc on gonk, r=glandium 2012-08-06 16:22:26 -04:00
Mike Hommey
6173fa297f Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00