Commit Graph

4542 Commits

Author SHA1 Message Date
Jeff Walden
12220c1619 Bug 953296 - Implement mozilla::NullptrT as a typedef to use to accept nullptr values. Also add mozilla::IsNullPointer<T>, a trait for detecting *only* true nullptr (emulated nullptr [__null] used by gcc 4.4/4.5 isn't true nullptr). r=ehsan
Generally, if you want a decltype(nullptr)-based overload, you should use SFINAE and IsNullPointer.  (Examples are provided in NullPtr.h comments.)  The problem is NullptrT matches far more than just __null as emulated nullptr for gcc 4.4/4.5 overloading purposes.  This problem is unavoidable without true nullptr.  Currently, the only valid use for NullptrT is believed to be in operator overloads.  All existing nullptr-overloading code has been rewritten to use the appropriate technique for the situation, and MOZ_HAVE_CXX11_NULLPTR is no longer an API.

--HG--
extra : rebase_source : 01abfcb66ae569db7b04a7b53f5cd5fd8151bffd
2014-01-02 17:27:41 -06:00
Ehsan Akhgari
384530ea4e Bug 884368 - Part 1: Add a memory reporter for AudioContexts; r=roc,njn 2014-01-04 13:15:41 -05:00
Ehsan Akhgari
7efbcd733a Bug 927728 - Part 2: Stop using PRUnichar in our code generators; r=roc,bzbarsky 2014-01-04 10:02:43 -05:00
Ehsan Akhgari
eaa7491d77 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRUnichar char16_t
2014-01-04 10:02:17 -05:00
Ehsan Akhgari
6e482923ff Bug 758992 follow-up - Mark DoNothingCallback final to avoid compiler warnings; blanket-r=bzbarsky 2014-01-03 09:54:32 -05:00
Nicholas Nethercote
aef9fb7509 Bug 955942 (part 3) - Merge the heap reporters. r=mccr8.
--HG--
extra : rebase_source : f836b1b2de9c850fa3d956bf6ef92a7c6c504fce
2014-01-02 15:19:08 -08:00
Nicholas Nethercote
ed423fbdef Bug 955942 (part 2) - Remove MemoryUniReporter. r=mccr8.
--HG--
extra : rebase_source : 9d70016cb19637ffece6409a184bf41d574cc6b4
2013-12-07 22:09:10 -08:00
Nicholas Nethercote
a228c41d0b Bug 955942 (part 1) - Remove unnecessary nsIMemoryReporter qualifiers from UNITS_* and KIND_* constants. r=mccr8.
--HG--
extra : rebase_source : f760568c08af03d9fec316bf95e7d4388078a03d
2013-12-11 11:59:39 -08:00
Andrew McCreight
48ba1d90e6 Bug 950959 - Rename scheduled cycle collector stuff to slice. r=smaug 2014-01-01 11:00:35 -08:00
Andrew McCreight
a33e4dd29e Bug 950949 - Run forgetSkippable per CC not per slice. r=smaug 2014-01-01 11:00:35 -08:00
Ms2ger
6c7c16c6b2 Bug 950130 - Move more INCLUDES / LOCAL_INCLUDES to moz.build; r=mshal 2013-12-31 10:06:11 +01:00
Nomis101
3daa640e18 Bug 909914 - Add a missing include to avoid error: "Use of undeclared identifier 'getpid'" when building with enable-macos-target=10.9; r=smichaud 2013-12-20 13:06:42 +01:00
Andrew McCreight
b4703a0481 Bug 937960, part 3 - Pass in a small time budget with ICC. r=smaug 2013-12-22 09:58:19 -05:00
Nathan Froyd
7890c85b6f Bug 950882 - micro-optimize NS_TableDrivenQI calling sequence by reordering argument list; r=bsmedberg
For register-rich ABIs (e.g. x86-64 and ARM), QueryInterface's incoming
registers are going to look like:

arg register 1: |this|
arg register 2: the IID of interest
arg register 3: the outparam instance pointer

Most of our QI implementations call NS_TableDrivenQI, which expects
arguments like so:

arg register 1: |this|
arg register 2: the QITableEntry table
arg register 3: the IID of interest
arg register 4: the outparam instance pointer

So we're going to have to do a register shuffle of the IID and the
outparam to be able to load the QITableEntry pointer before calling into
NS_TableDrivenQI.

This patch reorders the argument list of NS_TableDrivenQI so that the
first three arguments match the order that QueryInterface receives them
in.  Then your typical QueryInterface implementation becomes:

- load local |table|
- tail-call NS_TableDrivenQI

Eliminating the register shuffling reduces text size by 12K on an
Android ARM build.
2013-12-13 19:50:02 -05:00
Ted Mielczarek
a8dc1906bb bug 918389 - move XPCOM abort messages into separate crash annotations. r=bsmedberg
--HG--
extra : rebase_source : d1762cb08c795020e2ca7612b903cd1f3d5ade50
2013-12-20 10:11:16 -05:00
Ryan VanderMeulen
e4ef933d12 Backed out changesets ccdc3d4f4571, 4dcc91e771e3, 0ae14946314b, and 94d22ab0b17f (bug 937960) for Windows 7 debug xpcshell failures. 2013-12-19 16:57:55 -05:00
Ehsan Akhgari
a7d96f6225 Bug 950856 - Fail the build if you attempt to use NS_StackWalk on Windows where it won't work; r=froydnj,BenWa 2013-12-18 15:03:11 -05:00
Isura Edirisinghe
3eedf5ced4 Bug 676907 - Refactor (replace) calls to Gestalt because it is deprecated in OS X 10.8 and will not work in after 10.9. r=BenWa 2013-12-19 11:42:19 -05:00
Henri Sivonen
4802a84a12 Bug 951110 - Make AssertValidDepedentString() more informative. r=bsmedberg. 2013-12-19 10:15:34 +02:00
Andrew McCreight
0c6b052b16 Bug 937960, part 3 - Pass in a small time budget with ICC. r=smaug 2013-12-18 21:22:55 -08:00
Ryan VanderMeulen
2d5b945f2d Backed out changesets b03bd1170d1c, 419615a1195d, a1b699b80442, and 524c573fd8a6 (bug 937960) for Win7 debug xpcshell orange. 2013-12-18 19:04:11 -05:00
Ryan VanderMeulen
01410baa57 Backed out changeset fc0610680d3b (bug 950856) for Windows bustage.
CLOSED TREE
2013-12-18 16:01:44 -05:00
Ehsan Akhgari
55b50dec3f Bug 950856 - Fail the build if you attempt to use NS_StackWalk on Windows where it won't work; r=froydnj,BenWa
--HG--
extra : rebase_source : 914250c939e4666f4a8630f7e9e57e466b669259
2013-12-18 15:03:11 -05:00
Andrew McCreight
ba157fe9fc Bug 937960, part 3 - Pass in a small time budget with ICC. r=smaug 2013-12-18 11:42:16 -08:00
Andy Wingo
463eca9016 Bug 951483 - Add back nsCycleCollector::ShutdownCollect assertion that was mistakenly removed in bug 945813. r=mccr8 2013-12-18 11:01:32 +01:00
Nils Maier
dd0aa3f370 Bug 950391 - Add nsIMemoryReporterManager.unregisterStrongReporter. r=njn
Also do not allow to register non-native components as weak reporters.
2013-12-18 13:00:03 -05:00
Andrew McCreight
b2c805070f Bug 937818, part 4 - Exceeded refcount nodes should already be black. r=smaug
Due to graph mutation during an incremental cycle collection, objects in the CC graph
may end up with more things pointing to them than they have a ref count. However, these
objects should never become garbage.
2013-12-17 19:29:57 -08:00
Andrew McCreight
84c4a3a065 Bug 937818, part 3 - Add ScanIncrementalRoots(). r=smaug
Any object that has been stored away somewhere in the middle of incremental graph
building must be treated as live, because we can't trust that the CC graph has
accurate information about it. If such an object is truly garbage, we'll unlink it
in the next cycle collection instead.
2013-12-17 19:29:57 -08:00
Andrew McCreight
c815051008 Bug 937818, part 1 - Add objects to the purple buffer on AddRef. r=smaug
ICC uses this to track objects that have been AddRef'd during ICC graph building.
For those objects, we may not have the proper information for them, so treat them
as live.
2013-12-17 19:29:57 -08:00
Carsten "Tomcat" Book
9893f955b9 Backed out changeset 261091719842 (bug 937818) for static rooting hazard analysis bustage on a CLOSED TREE 2013-12-17 09:20:51 +01:00
Carsten "Tomcat" Book
867803f1f1 Backed out changeset a9715a3b0e13 (bug 937818) for static rooting hazard analysis bustage on a CLOSED TREE 2013-12-17 09:20:31 +01:00
Carsten "Tomcat" Book
626de9c65a Backed out changeset ae01d2862600 (bug 937818) for static rooting hazard analysis bustage on a CLOSED TREE 2013-12-17 09:20:10 +01:00
Andrew McCreight
d6c85c988a Bug 937818, part 4 - Exceeded refcount nodes should already be black. r=smaug
Due to graph mutation during an incremental cycle collection, objects in the CC graph
may end up with more things pointing to them than they have a ref count. However, these
objects should never become garbage.
2013-12-16 21:30:54 -08:00
Andrew McCreight
66b7068181 Bug 937818, part 3 - Add ScanIncrementalRoots(). r=smaug
Any object that has been stored away somewhere in the middle of incremental graph
building must be treated as live, because we can't trust that the CC graph has
accurate information about it. If such an object is truly garbage, we'll unlink it
in the next cycle collection instead.
2013-12-16 21:30:53 -08:00
Andrew McCreight
e495d831e0 Bug 937818, part 1 - Add objects to the purple buffer on AddRef. r=smaug
ICC uses this to track objects that have been AddRef'd during ICC graph building.
For those objects, we may not have the proper information for them, so treat them
as live.
2013-12-16 21:30:53 -08:00
Nicholas Nethercote
3b7c5d2e8c Bug 945973 (part 4) - Add SystemMemoryReporter, which presents Linux-specific, system-wide memory measurements taken from the OS. r=glandium.
--HG--
extra : rebase_source : 032d1d2944b790ac9e9e4d7f18c8ac9d79858ef3
2013-12-04 19:32:50 -08:00
Nicholas Nethercote
c5dab89370 Bug 945973 (part 2) - Don't complain if there aren't any "explicit" reports for a process. r=mccr8.
--HG--
extra : rebase_source : 05129260b8a3e7cfbdadcecffe4c18715254323c
2013-12-03 20:19:41 -08:00
Nicholas Nethercote
392bf9cb31 Bug 945973 (part 1) - Remove about:memory's is-a-sentence description check. r=mccr8.
--HG--
extra : rebase_source : bf47145a953a23b73fa1e7c441b695ffeceafbb8
2013-12-03 20:10:59 -08:00
Wes Kocher
34a2e0d974 Backed out changeset ef0eeaec74a8 (bug 949183) on the theory that it somehow broke every single b2g test on a CLOSED TREE 2013-12-16 18:27:43 -08:00
Ben Turner
8426978810 Bug 914762 - Allow nsThread to be subclassed, r=bsmedberg.
--HG--
extra : transplant_source : %BD%C5%CB%7Fx%82q%FC%B6%AA%8B%8E%9Fo%BE%82%DE%09h%FF
2013-11-14 10:06:21 -08:00
Sean Stangl
d081b211ae Bug 949183 - Fix jsid static constructor explosion. r=Waldo 2013-12-16 14:40:05 -08:00
Nathan Froyd
23f5fa315e Bug 950281 - micro-optimize NS_TableDrivenQI by ensuring the table has at least 1 non-null entry; r=bsmedberg 2013-12-13 19:17:18 -05:00
Trevor Saunders
c2b2fcd3d4 bug 949821 - use MOZ_UTF16 more and NS_LITERAL_STRING less r=froydnj 2013-12-12 20:50:01 -05:00
Byron Campen [:bwc]
ac1dd36076 Bug 949749 - Fix up include guard in SyncRunnable.h. r=froydnj 2013-12-12 16:30:59 -08:00
Bill McCloskey
88328fd5a2 Bug 948238 - Read browser.tabs.remote once at startup and never again (r=bsmedberg) 2013-12-12 14:13:20 -08:00
Mike Hommey
255ad3e210 Bug 945042 - Move NO_PROFILE_GUIDED_OPTIMIZE to moz.build. r=gps,r=njn 2013-12-09 13:39:26 +09:00
Bobby Holley
acafd45da4 Bug 937317 - Implement basic script settings stack machinery. r=bz 2013-12-11 17:51:57 -08:00
Alessio Placitelli
36ba830e3c Bug 943511 - Remove allocator parameters from methods using nsSegmentedBuffer. r=bsmedberg 2013-12-11 14:14:56 -05:00
Alessio Placitelli
cf0d597e86 Bug 943511 - Use fallible allocations in nsSegmentedBuffer::AppendNewSegment. r=bsmedberg 2013-12-11 14:14:28 -05:00
Ryan VanderMeulen
1a13081f93 Merge m-c to inbound. 2013-12-11 13:38:14 -05:00
Ryan VanderMeulen
ba670be0c6 Merge b2g-inbound to m-c. 2013-12-11 13:24:26 -05:00
Jan Beich
f337a85fe9 Bug 948833 - Explicitly include <algorithm> for std::max on FreeBSD. r=njn 2013-12-11 10:35:33 -05:00
Andrew McCreight
0fe31cfffa Bug 948686 - Remove unused variable declaration. r=njn 2013-12-11 10:35:13 -05:00
Wes Kocher
7b1ededbc4 Merge m-c to b2g-inbound 2013-12-10 17:14:14 -08:00
Ryan VanderMeulen
a762d43c40 Merge m-c to inbound. 2013-12-10 15:48:16 -05:00
Ryan VanderMeulen
ea9bd0cd52 Merge fx-team to m-c. 2013-12-10 15:39:40 -05:00
Marina Samuel
1916b878aa Bug 945842: Show Metro bookmarks folder in Windows 8 only. r=bbondy 2013-12-10 13:42:16 -05:00
Ryan VanderMeulen
6428c27a28 Merge b2g-inbound to m-c. 2013-12-09 17:26:11 -05:00
Ryan VanderMeulen
ff4c37cb6c Merge inbound to m-c. 2013-12-09 16:45:25 -05:00
Alex Keybl
aca3b4f5cf Merging in version bump NO BUG 2013-12-09 13:38:06 -05:00
Carsten "Tomcat" Book
45f6bd17d4 Backed out changeset 85196889c598 (bug 945042) PGO Test Bustage 2013-12-09 13:00:59 +01:00
Carsten "Tomcat" Book
2810be48a5 merge mozilla-inbound to mozilla-central 2013-12-09 09:02:29 +01:00
Mike Hommey
43fe8673a0 Bug 945042 - Move NO_PROFILE_GUIDED_OPTIMIZE to moz.build. r=gps,r=njn 2013-12-09 13:39:26 +09:00
Phil Ringnalda
14593afdaa Merge m-i to m-c 2013-12-08 18:53:55 -08:00
Phil Ringnalda
b03a02be61 Backed out 5 changesets (bug 944665, bug 922465, bug 930282) for b2g xpcshell crashes
CLOSED TREE

Backed out changeset c4f970dd2a4f (bug 930282)
Backed out changeset 625f5303fc68 (bug 930282)
Backed out changeset bf8e90edd152 (bug 922465)
Backed out changeset a21b57c78253 (bug 944665)
Backed out changeset 9275a2efc9e3 (bug 944665)

--HG--
extra : rebase_source : bfbe3786e0db2073e26dc383b89525d22be0b3bd
2013-12-08 15:32:15 -08:00
Andrew McCreight
a56b513d7c Bug 947626 - Fix index types in nsCOMArray CC helpers and remove whitespace. r=froydnj 2013-12-08 08:56:00 -08:00
Carsten "Tomcat" Book
2469009319 merge b2g-inbound to m-c 2013-12-08 12:23:13 +01:00
Phil Ringnalda
3fe044a75c Merge m-c to b-i 2013-12-07 15:15:53 -08:00
Phil Ringnalda
acb7391a6b Merge m-c to m-i 2013-12-07 11:21:52 -08:00
Phil Ringnalda
04520ec010 Merge m-c to b-i 2013-12-07 11:21:04 -08:00
Phil Ringnalda
d1ba8751f2 Back out 35371620801a:bf2019278b77 (bug 937317) for gaia-ui-test bustage and frequent timeouts in its own test 2013-12-07 11:08:56 -08:00
Jon Coppeard
8da8e2247b Bug 939206 - Fix build error in test code on B2G r=me 2013-12-07 16:09:12 +00:00
Jon Coppeard
1c310eeb46 Bug 942928 - Add tests for nsTArray postbarriers r=sfink 2013-12-07 12:50:44 +00:00
Jon Coppeard
bd741e1e35 Bug 939206 - Fix nsTArray post barriers for JS::Heap<T> elements r=bsmedberg 2013-12-07 12:50:28 +00:00
Wes Kocher
871ed2b150 merge m-c to b2g-inbound 2013-12-06 20:49:02 -06:00
Cervantes Yu
8881943e4b Bug 930282: Part 2: Mark PACMan thread and BackgroundHangMonitor thread. r=khuey 2013-12-07 10:28:42 +08:00
Benjamin Smedberg
ebf67f0c81 Bustage followup to bug 767343 in non-unified builds
On a CLOSED TREE.

--HG--
extra : amend_source : 509032affaebf78b8a0430f2ba8e214639cdcdd1
2013-12-06 16:59:35 -05:00
Ryan VanderMeulen
60ee2fe8a8 Merge b2g-inbound to m-c. 2013-12-06 15:56:46 -05:00
Benjamin Smedberg
0db556e72b Bug 767343 - Use fallible allocation in nsSupportsString::SetData because people are putting arbitrarily-large data in it, perhaps session-restore data but I'm not sure, r=froydnj
--HG--
extra : rebase_source : 2ca78473213f43537886e0108af6f88227278a72
2013-12-06 12:03:47 -05:00
Jim Chen
753b53e693 Bug 946817 - Don't assert mPseudoStack on B2G. r=BenWa 2013-12-06 09:50:21 -05:00
Cameron McCormack
aefbbe49ca Bug 947578 - Expose Contains on nsBaseHashtable. r=froydnj 2013-12-08 11:08:58 +11:00
Birunthan Mohanathas
58325c73be Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo
--HG--
rename : mfbt/Util.h => mfbt/ArrayUtils.h
2013-12-08 21:52:54 -05:00
Birunthan Mohanathas
bd0f161288 Bug 713082 - Part 1: Remove unnecessary Util.h includes. r=Waldo 2013-12-08 21:52:33 -05:00
Phil Ringnalda
7ea1ca0f17 Merge m-c to m-i 2013-12-08 17:32:55 -08:00
Nicholas Nethercote
01579d525d Bug 948201 - Use a StaticRefPtr for gInterfaceInfoManager. r=bz.
--HG--
extra : rebase_source : be06bb4b77914dd1a5ae2a7e1cced40fcd5850f5
2013-12-07 21:41:32 -08:00
Ehsan Akhgari
d9cd92fa17 Bug 947736 - Build modules/libpref/ in unified mode; r=bsmedberg 2013-12-10 18:10:01 -05:00
Andy Wingo
330b422f6d Bug 945813 - Paper over cycle collection problem in IndexedDB. r=mccr8, r=khuey 2013-12-04 14:53:25 +01:00
Nicholas Nethercote
cc1728f40f Bug 947802 (part 2) - Replace enumerateReporters() with getReportsForThisProcess(). r=mccr8.
--HG--
extra : rebase_source : 1c70e838e3600745f69c5772a084398f78d4c477
2013-12-01 16:29:37 -08:00
Nicholas Nethercote
a1ab7d495c Bug 947802 (part 1) - Inline DumpReport(). r=mccr8.
--HG--
extra : rebase_source : f5c8a655e88dc7641c2a9971d1174b0d689bf3b4
2013-12-01 16:14:26 -08:00
Nicholas Nethercote
e02408b49d Bug 947798 (part 2) - Remove MemoryMultiReporter, because it's no longer helpful. r=mccr8.
--HG--
extra : rebase_source : f6f74de69d8c1d79d38b84b19dff5439efc41075
2013-12-07 21:39:47 -08:00
Nicholas Nethercote
67495eb7f8 Bug 947798 (part 1) - Rename NS_MEMORY_REPORTER_MALLOC_SIZEOF_FUN as MOZ_DEFINE_MALLOC_SIZE_OF. r=mccr8.
--HG--
extra : rebase_source : ec09d4c31264c15befb020375bf001a1ad1df6b8
2013-12-07 21:38:32 -08:00
Makoto Kato
313f6f14d0 Bug 943203 - Remove QNX/NTO from xptcall. r=bsmedberg 2013-12-09 14:26:43 +09:00
Benjamin Smedberg
94fd1ea978 Bug 946877 followup - move nsDebugImpl.cpp out of unified sources so that it relaly isn't part of PGO, r=ted 2013-12-10 12:26:53 -05:00
Andrew McCreight
be2fa1b31a Bug 947719 - Call Checkpoint on every slice in nsCycleCollector::MarkRoots. r=smaug 2013-12-10 08:07:20 -08:00
Benjamin Smedberg
678c5c602c Bug 946877 - Don't PGO nsDebugImpl.cpp, to see if that aids stackwalking around NS_OOM_ABORT, r=ted 2013-12-06 09:00:07 -05:00
Carsten "Tomcat" Book
7a75e7c08a Backed out changeset 004fa11e352a (bug 937317) WinXP Build Bustage on a CLOSED TREE 2013-12-06 08:42:40 +01:00
Bobby Holley
c311c9dc85 Bug 937317 - Implement basic script settings stack machinery. r=bz 2013-12-05 21:34:16 -08:00
Anthony Jones
e6e2413777 Bug 839911 - Add a convenient forever() time period constructor; r=roc 2013-12-06 16:21:39 +13:00
Ben Turner
cfa1847293 Bug 939196 - Allow nsThread to have nested event queues, r=bsmedberg.
--HG--
extra : transplant_source : %DE%AF%BF%7E%94%5E%07%CDL%9C%01%28%9F6%8D%90%12%95%06s
2013-11-14 10:06:17 -08:00
Jon Coppeard
2de3b6aa7f Bug 946732 - Reinstate xpcom/glue gtests r=BenWa 2013-12-05 16:48:48 +00:00