A lot of our thread pools use the default stack size for the platform
they're on, which can be rather large (8MB, usually, on Linux and OS X)
and is probably too much for the typical thread in the thread pool
regardless. SharedThreadPool already has some logic for selecting a
reasonable stack size for worker threads; let's move that logic to
nsIThreadManager so that logic (and constant) can be shared more
broadly. (That we already have a couple of instances of
SharedThreadPool usage solely for this constant suggests that it is a
concept that should be available in a more central location.)
This macro may be used to replace MOZ_LOG in most files, where it is used in
non-static member functions of classes that are registered with
DDLoggedTypeTraits.
MozReview-Commit-ID: A8DYmGoMv7f
--HG--
extra : rebase_source : 51d24f53a19fcbcbe42faea668256f1804f0abc9
This allows logging from the command line without using a webextension.
MozReview-Commit-ID: 6pkDbLXzz3X
--HG--
extra : rebase_source : 92a840d47054e5bef4cd7adf0aadb16f093f7639
This queue may be used heavily when multiple threads are running media code
that logs thousands of messages per second, so using less strict memory
ordering can help with speed.
Benchmarks show an improvement of up to twice the queueing speed in some
situations.
MozReview-Commit-ID: 70UOL8XAZGp
--HG--
extra : rebase_source : 38de1f6ce8a404e2ccc1591392176151edc8d078
sLogState is accessed at least once for every DDLog call, even when logging is
disabled, so we want it to be as quick as possible for minimal impact on most
users.
MozReview-Commit-ID: AMstgXmixrv
--HG--
extra : rebase_source : 475b32f76d9660d03333047eb7e7add62b717a79
Removed non-eager DDLogValue() functions, too confusing for not much value;
users should use macros first anyway.
Changed `EagerLogValue(..., const char (&aLiteral)[N])` to take `const char*`,
it's cleaner and simpler.
MozReview-Commit-ID: J7xcoPkp6Nf
--HG--
extra : rebase_source : 41040c98b89c3035c823a4a9775e727038c07590
(Path is actually r=froydnj.)
Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.
MozReview-Commit-ID: 91U22X2NydP
--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
DecoderDoctorLogger and its related classes offer a cheap way to gather log
messages from media stack objects, and then process these messages to extract
object lifetimes and messages related to separate HTMLMediaElement's.
MozReview-Commit-ID: AIf2nAMjoDy
--HG--
extra : rebase_source : cf10185538aded870b9005e88563751f3638ae65
Templated queue allowing safe and fast multi-threaded pushes.
Popping is not thread-safe (but concurrent pushes are still allowed.)
MozReview-Commit-ID: BHQ3nOlHkLX
--HG--
extra : rebase_source : 4a5dd6b603cbfe9bdd86df339469e870761d742a
Unsigned-number value-class with modified comparison operators that keep
ordering consistent across overflows.
I.e., numbers before the overflow (close to the maximum) will be considered
smaller than numbers after the overflow (close to 0).
(Note that such comparisons break down for numbers separated by more than half
the type range.)
MozReview-Commit-ID: 1hdK2JknlqZ
--HG--
extra : rebase_source : 7be3c1be6bc846e17dd5b396fcf097076b9096c1