Commit Graph

44 Commits

Author SHA1 Message Date
Bill McCloskey
308608ab39 Bug 1262671 - Introduce MFBT BufferList class (r=froydnj) 2016-05-27 09:57:40 -07:00
Mike Hommey
8855262939 Bug 1269171 - Change how mozalloc.h is hooked in STL wrappers. r=froydnj
Since the introduction of the STL wrappers, they have included
mozalloc.h, and multiple times, we've hit header reentrancy problems,
and worked around them as best as we could.

Taking a step back, all mozalloc.h does is:
- declare moz_* allocator functions.
- define inline implementations of various operator new/delete variants.

The first only requires the functions to be declared before they are used,
so mozalloc.h only needs to be included before anything that would use
those functions.

The second doesn't actually require a specific order, as long as the
declaration for those functions comes before their use, and they are
either declared in <new> or implicitly by the C++ compiler.

So all in all, it doesn't matter that mozalloc.h is included before the
wrapped STL headers. What matters is that it's included when STL headers
are included. So arrange things such that mozalloc.h is included after
the first wrapped STL header is fully preprocessed (and all its includes
have been included).
2016-05-22 08:32:40 +09:00
Nicholas Nethercote
2511b2c327 Bug 1267550 (part 2) - Rename MOZ_WARN_UNUSED_RESULT as MOZ_MUST_USE. r=froydnj.
It's an annotation that is used a lot, and should be used even more, so a
shorter name is better.

MozReview-Commit-ID: 1VS4Dney4WX

--HG--
extra : rebase_source : b26919c1b0fcb32e5339adeef5be5becae6032cf
2016-04-27 14:16:50 +10:00
Jim Blandy
1121ad9a09 Bug 1145051: Don't include xpcom-config.h from mozalloc.h; it's unused. r=glandium
--HG--
extra : rebase_source : 7218f1f16db1d6c439583022c4dc73e4da8e4312
2015-03-19 01:03:05 -07:00
Jim Blandy
6afdd6c96b Bug 1145051: Use MOZ_WARN_UNUSED_RESULT instead of NS_WARN_UNUSED_RESULT. r=glandium
--HG--
extra : rebase_source : d210822225d307f3e3685cb5f95b461c48c0be7e
2015-03-19 00:46:40 -07:00
Jim Blandy
a778e9f970 Bug 1145051: Replace uses of NS_ATTR_MALLOC with new MOZ_ALLOCATOR from mfbt/Attributes.h. r=glandium
--HG--
extra : rebase_source : 294215445f084687ed7fa51b88e7a22e586447a2
2015-03-18 23:56:08 -07:00
ISHIKAWA, Chiaki
5933b89b08 Bug 1147248 - GCC 4.9 needs this patch to use address sanitizer. r=glandium
--HG--
extra : rebase_source : 08c553d5b5ff76abd81b070ccd6e2f058a2c4e4b
2015-04-10 15:05:00 +02:00
Mike Hommey
26b3c4f285 Bug 1138293 - Remove moz_malloc/moz_free/moz_realloc/moz_calloc. r=njn
We need to use _impl variants within mozalloc.h when they are defined because
of how mozglue.dll is linked on Windows, where using malloc/free would use
the symbols from the MSVCRT instead of ours.
2015-03-31 12:32:49 +09:00
Mike Hommey
7fef46c799 Bug 1142434 - Remove moz_memalign/moz_valloc, nothing uses them. r=njn 2015-03-31 12:26:45 +09:00
Mike Hommey
d0806aa5f6 Bug 1142434 - Remove moz_strdup/moz_strndup, nothing uses them. r=njn 2015-03-31 12:26:45 +09:00
Mike Hommey
364038011c Bug 868814 - Fold mozalloc library into mozglue. r=njn
--HG--
rename : memory/mozalloc/moz.build => memory/mozalloc/staticruntime/moz.build
2015-03-10 10:01:52 +09:00
Masatoshi Kimura
bf312ad056 Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo 2015-01-11 11:34:52 +09:00
Nicholas Nethercote
e4c12e978c Bug 1102525 (part 1) - Add InfallibleAllocPolicy to mozalloc. r=glandium.
--HG--
extra : rebase_source : a79162fb7f73e52c5c8df29c8229efc64c3451e5
2014-12-08 14:45:10 -08:00
Jim Chen
52a3b4cf21 Bug 1067018 - Always specify throw() for nothrow placement new/delete; r=glandium 2014-09-26 15:45:45 -04:00
Ehsan Akhgari
d91d200572 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
Bill McCloskey
52b75b6ca8 Bug 863116 - MOZ_ALWAYS_INLINE should not inline in debug builds (r=Waldo) 2013-04-19 10:55:34 -07:00
Rafael Ávila de Espíndola
a8f5bd4bfb Bug 839338 - ASan alloc/dealloc mismatch in _M_create_nodes/_M_destroy_nodes. r=waldo. 2013-02-12 08:30:16 -05:00
Jacek Szpot
abf9c51413 Bug 800106: Replace more NS_ALWAYS_INLINEs with MOZ_ALWAYS_INLINE; r=ehsan 2012-10-13 17:52:10 +02:00
Ehsan Akhgari
ee902c51f9 Backout changeset 0f0797cdb55a (bug 800106) because of Kraken regressions on Windows XP 2012-10-15 14:19:55 -04:00
Jacek Szpot
06b915eb2e Bug 800106: replace NS_ALWAYS_INLINE with MOZ_ALWAYS_INLINE; r=ehsan 2012-10-13 17:52:10 +02:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Benjamin Smedberg
433fd36140 Bug 737164 prerequisite - move mozilla::fallible_t to its own header so that everyone can reference it reasonable, r=cjones
--HG--
extra : rebase_source : 1f0e042f6d639b960c85f7813346e82afcf27861
2012-05-08 12:30:37 -04:00
Mike Hommey
609e12c771 Bug 738176 - Completely disable jemalloc when it's supposed to be disabled on OSX, and cleanup exposed APIs. r=jlebar,r=khuey 2012-04-05 09:20:53 +02:00
Nicholas Nethercote
7559a70a04 Bug 715453 - Remove computedSize from nsMallocSizeOfFun. r=jlebar,bhackett.
--HG--
extra : rebase_source : a65039a407daab45360a5b375b53cbf1bc05b7f6
2012-01-25 00:52:51 -08:00
Ms2ger
488d00a8b6 Bug 717441 - Backout bug 715093 / changeset d5f3e38021fd for Fennec crashes. 2012-01-12 21:35:48 +01:00
Ms2ger
83e99e1202 Bug 715093 - Get rid of MOZALLOC_INLINE in favour of MOZ_ALWAYS_INLINE; r=glandium 2012-01-11 09:22:16 +01:00
Nicholas Nethercote
6c6258e659 Bug 698968 - Add mallocSizeOf functions and start using them. r=jlebar,bhackett,jfkthame, sr=bz. 2011-11-27 19:03:14 -08:00
Jeff Muizelaar
bcc953b354 Bug 695171. Make our operator new throw std::bad_alloc. r=cjones
If new doesn't throw bad_alloc the compiler emits a null check after to avoid
calling the constructor. http://llvm.org/bugs/show_bug.cgi?id=10895

Adding throw(std::bad_alloc) shaves 57KB of .text off a gcc mac build and 61KB off
a clang build.

--HG--
extra : rebase_source : 098c1f5df472bcc572b812fe5d4f12c8eadf14d2
2011-10-18 14:19:23 -04:00
Justin Lebar
975f0d3e57 Bug 682437 - Add memory reporter for History::mObservers. r=bz
--HG--
extra : rebase_source : f280a6beefd32319816ff8720f7bf65c04343b1e
2011-09-14 17:37:45 -07:00
Paul Biggar ext:(%2C%20Jason%20Evans%20%3Cjasone%40canonware.com%3E%20and%20Dale%20Kim%20%3Cdalekim1%40illinois.edu%3E)
b960b62118 Bug 414946 (part 1): Fix jemalloc on Mac, but leave disabled (r=pavlov)
Overwrite the OSX default zone allocator, taking into account the malloc_zone_t
version (supported versions are 3, 6, and 8) for Leopard, Snow Leopard and
Lion. jemalloc can be dynamically disabled for unknown malloc_zone_t versions,
for OSX 10.8 and beyond.

The changeset does not enable jemalloc, to allow for easy disabling if there's
a problem. It will be enabled in the next changeset.

This should be a 15-20% improvement in memory usage.
2011-05-21 20:27:00 -07:00
Mike Hommey
a1346a7c29 Bug 662224 - Define NS_ATTR_MALLOC and NS_WARN_UNUSED_RESULT in xpcom-config.h, and include it from mozalloc.h. r=bsmedberg 2011-06-07 03:09:46 +02:00
Ryan VanderMeulen
017ef708cc Bug 578546 - Fix MSVC warning spam by adjusting ifdef to include MSVC. r=cjones a=benjamin 2010-11-16 10:19:23 +01:00
Chris Jones
52d0f01838 Bug 550611: Make nsTArray optionally infallible. sr=bsmedberg a=blocking
--HG--
rename : xpcom/glue/nsTArray.cpp => xpcom/glue/nsTArray-inl.h
2010-11-08 20:48:59 -06:00
Saint Wesonga
e6180061d8 Bug 570553 - mozalloc.h:208:1: warning: C++ style comments are not allowed in ISO C90. r=vlad 2010-06-16 18:54:25 +02:00
Vladimir Vukicevic
73cbd73f4a b=566447; add presshell memory reporter; r=bz 2010-05-31 19:19:35 -07:00
Brad Lassey
74db90d53e bug 559263 - implement jemalloc for android r=vlad 2010-05-25 11:28:14 -04:00
Daniel Holbert
7d1e5ba861 Bug 564261: fix build warning about C++ style comment in mozalloc.h. r=cjones 2010-05-11 12:07:33 -07:00
Chris Jones
7af55eecbb Bug 550692: Wrap posix_memalign, memalign, and valloc if jemalloc provides them and the OS doesn't. r=bsmedberg 2010-04-21 23:41:40 -05:00
Chris Jones
ce99d8226f Bug 557060: Interpose _Throw() on MSVC and centralize pseudo-throw code in mozalloc. r=ehsan sr=bsmedberg 2010-04-20 15:12:02 -05:00
Chris Jones
aeb1d69308 Bug 550401: Do the __declspec import/export dance in mozalloc to avoid MSVC warnings. r=bsmedberg 2010-04-08 13:05:02 -05:00
Ginn Chen
6fd562ba57 Bug 550371 mozalloc failed to build on Solaris r=bsmedberg 2010-04-07 14:16:32 +08:00
Jacek Caban
c7fbbd516c Bug 441324 - mingw fix 2010-03-06 05:59:00 -06:00
Mats Palmgren
693b5f56ed Implement std::nothrow variants of operator new/delete. b=550805 r=cjones 2010-03-14 20:56:47 +01:00
Chris Jones
58d2b77983 Bug 441324, part 2: Implement libmozalloc with support for fallible and infallible malloc et al. and |operator new|s. r=bsmedberg 2010-03-03 23:02:56 -06:00