Граф коммитов

13663 Коммитов

Автор SHA1 Сообщение Дата
Jed Davis 3023c21f00 Bug 1140714 - Pass through remote NS_OpenAnonymousTemporaryFile failure to caller. r=billm
--HG--
extra : rebase_source : fd35b8f72fc8fc0ab3982be510acddef9db57759
2015-03-10 10:32:00 +01:00
Nathan Froyd 4380a42bbc Bug 1141689 - use services::GetObserverService more; r=ehsan 2014-04-29 13:31:06 -04:00
Andrew McCreight def1230d4e Bug 1119482, part 4 - Move IsJSHolder into HoldDropJSObjects. r=smaug 2015-03-10 16:41:38 -07:00
Andrew McCreight 2cf438367a Bug 1119482, part 3 - Move the Hold and DropJSObjects implementations to a new HoldDropJSObjects.cpp file. r=smaug 2015-03-10 16:41:38 -07:00
Andrew McCreight ea55946825 Bug 1119482, part 2 - Move HoldDropJSObjects.h from xpcom/glue to xpcom/base. r=froydnj
This will clear the way for a HoldDropJSObjects.cpp, as xpcom/glue seems to use weird linking rules.

--HG--
rename : xpcom/glue/HoldDropJSObjects.h => xpcom/base/HoldDropJSObjects.h
2015-03-10 16:41:38 -07:00
Andrew McCreight a5fe5ce48e Bug 1119482, part 1 - Use CycleCollectedJSRuntime::Get() in the various CC wrapper methods. r=smaug
It is a little cleaner to use this helper method if we only care about the CCJSRuntime pointer,
and it will let us move some of these methods out of this file more easily.
2015-03-10 16:41:38 -07:00
Andrew McCreight 3367b6f363 Bug 1139050, part 2 - Move nsAlgorithm.h to xpcom/base. r=froydnj
--HG--
rename : xpcom/string/nsAlgorithm.h => xpcom/base/nsAlgorithm.h
2015-03-10 16:41:38 -07:00
Andrew McCreight 75b58ba304 Bug 1139050 - Add moz.build BUG_COMPONENT metadata for xpcom/. r=froydnj 2015-03-10 16:41:38 -07:00
Wes Kocher d8ac0068e5 Merge b2g-inbound to m-c a=merge CLOSED TREE 2015-03-10 15:44:53 -07:00
Wes Kocher 74430ec4c7 Merge inbound to m-c a=merge CLOSED TREE 2015-03-10 15:33:33 -07:00
Carsten "Tomcat" Book cc4d1b9af9 Merge mozilla-central to b2g-inbound 2015-03-10 14:07:36 +01:00
Thomas Zimmermann 614234540f Bug 1137151: Enable test for non-public ref-counted destructors on gcc 4.8 and later, r=nfroyd 2015-03-10 13:44:02 +01:00
Mike Hommey ad8f212161 Bug 1139361 - Remove gTLSThreadID*, NS_TLS and mozilla::threads::ID. r=nfroyd 2015-03-10 11:10:58 +09:00
Andrew McCreight b1093185b2 Bug 1114804 - Make ISupports use the standard deferred finalizer code. r=peterv 2015-03-10 08:35:47 -07:00
Thomas Baquet 0dad1fee4b Bug 1132078 - Remove useless null checks after allocating memory with |new| from xpcom/io. r=nfroyd 2015-03-02 11:59:36 +01:00
Aaron Klotz 05bbe4e32d Bug 1128768: Part 3 - Update BHR to allow for hang annotations; r=vladan
--HG--
extra : rebase_source : ba653b0f314e687c4c7a442291888a538a8c68d1
2015-02-18 23:22:01 -07:00
Aaron Klotz 0f6fdabeee Bug 1128768: Part 2 - Refactor hang annotation code; r=vladan
--HG--
extra : rebase_source : f492ff9a5aa78afd2121afc8fd18c08b6831cdc3
2015-03-09 19:41:24 -06: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
Nathan Froyd b6f5257874 Bug 1138123 - remove xpcom/sample/ as a bygone relic; r=bsmedberg 2015-03-09 11:37:21 -04:00
Ehsan Akhgari 82fce30849 Bug 1140762 - Move TestThreads.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestThreads.cpp => xpcom/tests/gtest/TestThreads.cpp
2015-03-09 11:10:32 -04:00
Ehsan Akhgari db5ec9921e Bug 1140760 - Move TestXPIDLString.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestXPIDLString.cpp => xpcom/tests/gtest/TestXPIDLString.cpp
2015-03-09 11:10:01 -04:00
Ehsan Akhgari a98abb5918 Bug 1140771 - Build more XPCOM code in unified mode; r=froydnj 2015-03-09 11:09:35 -04:00
Jed Davis 19355a43d5 Bug 1137007 - Detect namespace and SECCOMP_FILTER_FLAG_TSYNC support in SandboxInfo. r=kang, r=Unfocused
Currently, only user namespace support is detected.  This is targeted at
desktop, where (1) user namespace creation is effectively a prerequisite
for unsharing any other namespace, and (2) any kernel with user
namespace support almost certainly has all the others.

Bonus fix: remove extra copy of sandbox flag key names in about:support;
if JS property iteration order ever ceases to follow creation order, the
table rows could be permuted, but this doesn't really matter.
2015-03-06 13:59:00 -05:00
Carsten "Tomcat" Book 58a19cdf9c Merge mozilla-central to fx-team 2015-03-10 14:05:23 +01:00
Roberto A. Vitillo 5820c9e446 Bug 1133521 - Enable BHR on Beta. r=vladan 2015-03-09 09:58:00 +01:00
Phil Ringnalda d5d934be28 Merge f-t to m-c, a=merge 2015-03-07 19:38:53 -08:00
Paolo Amadini f638425f9d Bug 1140435 - Part 2 - Allow JS code to provide an async stack when calling a function. r=bz 2015-03-07 13:30:34 +00:00
Paolo Amadini 6652a00032 Bug 1140435 - Part 1 - Add the asyncCause and asyncCaller properties to nsIStackFrame. r=bz 2015-03-07 13:30:34 +00:00
Carsten "Tomcat" Book 77e821b69f Backed out changeset 34ca2a2e09ea (bug 1133521) for BHR crashes 2015-03-06 16:34:59 +01:00
Roberto A. Vitillo e1d89cb3d4 Bug 1133521 - Enable BHR on Beta. r=vladan
--HG--
extra : rebase_source : cb1a1f383d581fe5660e5d9ca7f12b55e40aae1b
2015-03-03 06:24:00 -05:00
Boris Zbarsky e0532c037e Bug 1122238 part 3. Drop all the DOMException-cloning and sanitization gunk we added in bug 1107592 and bug 1107953 and bug 1117242 . r=bholley 2015-03-06 01:08:06 -05:00
Boris Zbarsky 05aaddd360 Bug 1131805 part 1. Remove remaining JS_GetParent and js::GetObjectParent uses in Gecko. r=bholley 2015-03-06 16:33:31 -05:00
Kartikaya Gupta 542b2626aa Bug 1139547 - Fix unsequenced variable modmification/access error. r=botond,bsmedberg 2015-03-05 06:04:03 -05:00
Andrew McCreight 467633fff8 Bug 1138616, part 3 - Add a faster bloatlog-only mode. r=dbaron 2015-03-04 16:13:54 -08:00
Andrew McCreight 2eb20e5c7f Bug 1138616, part 2 - Inline BloatEntry::AddRef and ::Release. r=dbaron 2015-03-04 16:13:54 -08:00
Andrew McCreight 004ce2f71c Bug 1138616, part 1 - Remove nsTraceRefcntStats::mAddRefs and ::mReleases. r=dbaron 2015-03-04 16:13:54 -08:00
Andrew McCreight 115ce41650 Bug 1073594, part 4 - Remove nsTraceRefcntStats::mObjsOutstanding{Total, Squared}. r=dbaron
They are now unused.
2015-03-04 14:07:59 -08:00
Andrew McCreight 077e5aef7b Bug 1073594, part 3 - Remove the mean and stddev for BloatLog object counts. r=dbaron 2015-03-04 14:07:59 -08:00
Andrew McCreight 3bec966a54 Bug 1073594, part 2 - Remove nsTraceRefcntStats::mRefsOutstanding{Total, Squared}. r=dbaron
They are now unused.
2015-03-04 14:07:59 -08:00
Andrew McCreight 530c64e1b0 Bug 1073594, part 1 - Remove mean and stddev for BloatView addrefs and releases. r=dbaron 2015-03-04 14:07:59 -08:00
Boris Zbarsky 8346b9dfaf Bug 928336. Make defining unforgeable properties on objects faster by just copying them from an unforgeable holder object. r=peterv 2015-03-03 21:01:58 -05:00
Alex Henrie b6bc15079a Bug 1134537 - Delete nsGnomeVFSService. r=nfroyd 2015-02-21 14:49:13 -07:00
Gerald Squelart 4495d81efb Bug 1131445 - variadic NS_NewRunnableMethodWithArgs with storage&passing argument type decorators. r=waldo
--HG--
extra : rebase_source : 3c2104c19bb37624ec32a1ca4c50235e7cefd953
2015-03-01 18:12:00 +01:00
Nicholas Nethercote 237067b8b5 Bug 1138770 - Make memory reporters that have been stashed for testing eligible for unregistration. r=mccr8.
--HG--
extra : rebase_source : 06dcca55a7a47e02d9b43289472c76b810663727
2015-03-02 18:55:42 -08:00
Nathan Froyd 7f88bc2704 Bug 1137464 - add missing include for nsICloneableInputStream.h to nsStreamUtils.cpp; r=bkelly 2015-02-26 16:35:09 -05:00
Nicholas Nethercote 19fa938cf7 Bug 1050035 (part 1, attempt 2) - Lazily allocate PLDHashTable::mEntryStore. r=froydnj.
This makes zero-element hash tables, which are common, smaller, and also avoids
unnecessary malloc/free pairs.

I did some measurements during some basic browsing of a few sites. I found that
35% of all live tables were empty with a few tabs open. And cumulatively, for
the whole session, 45% of tables never had an element added to them.

--HG--
extra : rebase_source : 306bb50f250c09aa03a5e4822f41d6f605d76a1d
2015-02-01 14:56:33 -08:00
Ehsan Akhgari c611e2a6a8 Backed out 2 changesets (bug 1133939) because of bug 1136453
Backed out changeset 212080d51fb7 (bug 1133939)
Backed out changeset 27de4b553912 (bug 1133939)
2015-02-25 13:26:41 -05:00
Andrew McCreight e4d15a45bb Bug 1135773 - Initialize QI return values to null in the cycle collector. r=smaug 2015-02-25 09:44:10 -08:00
Ryan VanderMeulen 8979effb6c Merge m-c to inbound. a=merge 2015-02-23 12:33:38 -05:00
ffxbld 26cdf50eea Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2015-02-23 10:22:56 -05:00
Nicholas Nethercote 285d84d141 Bug 1134030 - Add WindowsAddressSpaceReporter. code=njn,dmajor. r=dmajor,njn. 2015-02-20 13:13:16 +11:00
Ben Kelly 9f9db94841 Bug 1133939 P2 Add tests validating nsPipeOutputStream AsyncWait behavior. r=froydnj 2015-02-21 09:51:17 -05:00
Ben Kelly d3eb781bf1 Bug 1133939 P1 Free buffer resources when an nsPipeInputStream is closed. r=froydnj
* * *
Bug 1133939 P1 interdiff 005 don't delete segments still being written
2015-02-21 09:51:17 -05:00
Boris Zbarsky 9e8395b4c9 Bug 742194 part 1. Add support for throwing uncatchable exceptions to Web IDL bindings. People keep asking for this. r=khuey 2015-02-20 23:58:36 -05:00
Ryan VanderMeulen 34d6e2d69c Backed out changesets 4c2b179b71ae and c96050cdedd5 (bug 1133939) for asserts. 2015-02-20 20:00:19 -05:00
Ben Kelly 1eb9f13e73 Bug 1133939 P2 Add tests validating nsPipeOutputStream AsyncWait behavior. r=froydnj 2015-02-20 18:16:04 -05:00
Ben Kelly 78491bc003 Bug 1133939 P1 Free buffer resources when an nsPipeInputStream is closed. r=froydnj 2015-02-20 18:16:04 -05:00
Tom Tromey 795381b915 Bug 1135081 - Fix typo in nsTString::AssertValidDepedentString. r=froydnj 2015-02-20 08:02:00 -05:00
Alex Henrie c90cdd2eef Bug 1134537 - Only support GIO in nsLocalFileUnix. r=froydnj 2015-02-19 12:58:58 -07:00
Andrew McCreight 8ad291fb4d Bug 1130142, part 4 - Use reinterpret_cast for PR_SetThreadPrivate. r=froydnj 2015-02-20 09:38:47 -08:00
Andrew McCreight af29279350 Bug 1130142, part 3 - Use HashNumber method in more places in trace refcounting. r=froydnj
This should not change any behavior.
2015-02-20 09:38:47 -08:00
Andrew McCreight 138983aa4c Bug 1130142, part 2 - Don't explicitly coerce pointer to bool in nsTraceRefCnt. r=froydnj 2015-02-20 09:38:47 -08:00
Andrew McCreight d0ba9119f7 Bug 1130142, part 1 - Don't truncate pointers to 32-bit values in refcount logging. r=froydnj 2015-02-20 09:38:46 -08:00
Nicholas Nethercote a423210355 Bug 1132802 - Add more assertions to pldhash.cpp. r=froydnj.
The use of |new| in PL_NewDHashTable() is necessary to avoid the new
assertions in Init() from failing.

--HG--
extra : rebase_source : 63cf962ce146142b72ffa0d6fcd3d8af1ec88bca
2015-02-11 20:24:33 -08:00
Nicholas Nethercote 6bf8ed2521 Bug 1127201 (attempt 2, part 3) - Remove the NS_ABORT_IF_FALSE macro. r=Waldo.
--HG--
extra : rebase_source : b0ff8671df31c6da4a2063ede611b3c554540950
2015-02-04 20:07:09 -08:00
Trevor Saunders 99d941db3c bug 1133075 - add more MOZ_OVERRIDE r=froydnj, waldo, jrmuizel 2015-02-18 17:03:30 -05:00
Frédéric Wang 3bd556b4ad Bug 467729 - Add a PackageKit XPCOM API. r=karlt 2015-02-16 23:59:00 -05:00
Boris Zbarsky 3aff974cb2 Bug 1117242 followup. Rev the nsIStackFrame IID so things get rebuilt correctly. r=bustage 2015-02-13 20:24:20 -05:00
Nick Fitzgerald ead84e4acf Bug 1117242 - SavedFrame objects should do principal checks for every accessor; r=jimb,jandem,bz 2015-02-13 09:21:50 -08:00
Mason Chang e6f06e5cfc Bug 1127151. Part 4: Update TimeStamp::FromSystemTime with windows testing. r=kats 2015-02-13 17:17:28 +08:00
James Cowgill 716e7de1ef Bug 1130434- xpcom: add support for mips n64 abi. r=froydnj 2015-02-06 08:28:00 -05:00
Makoto Kato 9b07a3a0af Bug 1131436 - WindowsDllInterceptor is always failure with --disable-optimize and --enable-debug. r=dmajor 2015-02-12 15:07:57 +09:00
Nicholas Nethercote 8fc460a98a Bug 1131199, part 3 - Update comments relating to PLDHashTableOp::initEntry. r=mccr8.
DONTBUILD because this is a comment-only change.

--HG--
extra : rebase_source : 51501a06196814dbdabbd8b170ec41ccbf6ed2d0
2015-02-11 14:24:47 -08:00
Nicholas Nethercote fa624bca8a Bug 1131901 (part 2) - Make CCGraphBuilder::AddNode() infallible. r=mccr8.
--HG--
extra : rebase_source : cfbef5e7c783c1abb1e9bb69dcc5ef14d3c96369
2015-02-02 23:58:42 -08:00
Nicholas Nethercote 3a7b0a9f57 Bug 1131901 (part 1) - Make PL_DHashTableAdd() infallible by default, and add a fallible alternative. r=froydnj.
I kept all the existing PL_DHashTableAdd() calls fallible, in order to be
conservative, except for the ones in nsAtomTable.cpp which already were
followed immediately by an abort on failure.

--HG--
extra : rebase_source : 526d96ab65e4d7d71197b90d086d19fbdd79b7b5
2015-02-02 14:48:58 -08:00
Ben Kelly 5c46ccc050 Bug 1100398 P5 Provide NS_CloneInputStream() factory method in nsStreamUtils.h. r=froydnj 2015-02-10 23:55:43 -05:00
Ben Kelly 39a8291465 Bug 1100398 P4 Make nsPipeInputStream cloneable. r=froydnj 2015-02-10 23:55:43 -05:00
Ben Kelly a3fc23c873 Bug 1100398 P3 Make nsStorageStream's input streams cloneable. r=froydnj 2015-02-10 23:55:43 -05:00
Ben Kelly a7631559d4 Bug 1100398 P2 Make nsStringInputStream cloneable. r=froydnj 2015-02-10 23:55:43 -05:00
Ben Kelly 3e70bce6b1 Bug 1100398 P1 Add the nsICloneableInputStream interface. r=froydnj 2015-02-10 23:55:43 -05:00
Ben Kelly b4a93b9b3d Bug 1100398 P0 Break out helper routines to support gtests for more stream types. r=froydnj 2015-02-10 23:55:43 -05:00
Nathan Froyd 87e4b4c13f Bug 1036515 - narrow the scope of unlocking mMonitor in nsTimerImpl::PostTimerEvents; r=bsmedberg 2015-02-06 16:19:36 -05:00
Andrew McCreight 31ba9aaed9 Bug 1131199, part 2 - Make PLDHashtInitEntry infallible. r=froydnj
Also, drop the unused table argument.
2015-02-11 09:46:40 -08:00
Nicholas Nethercote 63e3218e4c Back out changesets 2fcef6b54be7, 2be07829fefc, 66dfe37b8532, df3fcd2be8fd, 0a436bce77a6 (bug 1050035) for causing intermittent crashes and assertion failures.
--HG--
extra : rebase_source : eb30be83c3143c6c203585a80a18f180025efaba
2015-02-10 14:39:49 -08:00
Bobby Holley fa0e01bfea Bug 1129877 - Add a templatized move constructor for nsRefPtr. v1 r=froydnj 2015-02-10 13:45:02 -08:00
L. David Baron 5a1bc25cf4 Bug 680547 bustage fix: Make #pragmas be #ifndef __clang__. No review. 2015-02-10 16:24:54 +11:00
L. David Baron e5f1b47ba8 Bug 680547 - Compile Linux 64-bit NS_InvokeByIndex with -mno-avx to allow compiling with -march=native on new hardware, or similar -march flags. r=froydnj
As explained in bug 1111355, having avx enabled appears to change the
alignment behavior of alloca (apparently adding an extra 16 bytes) of
padding/alignment (and using 32-byte alignment instead of 16-byte).  The
suggestion of using __bultin_alloca_with_align in bug 1111355 didn't fix
the problem, so this seems to be the best available workaround, given
that this code, which should perhaps better be written in assembly, is
written in C++.

Interestingly, this is NOT fixed by #pragma GCC target ("arch=x86-64").
(I determined the (undocumented) name for the default -march value on
x86_64 from the gcc source code (gcc/config/i386/i386.c, function
ix86_option_override_internal, code that sets opts->x_ix86_arch_string .)
I confirmed that this sets the same macros based on the empty diff
between the output of 'gcc -E -dM -x c++ /dev/null' and 'gcc -E -dM -x
c++ -march=x86-64 /dev/null', which was not an empty diff for other
-march values (e.g., k8).)

I confirmed that the push_options and pop_options actually work by
putting the push/pop pair around a different (earlier) function, and
testing that this did not fix the bug (with the pop_options before
NS_InvokeByIndex).

See the gcc documentation at:
https://gcc.gnu.org/onlinedocs/gcc-4.9.0/gcc/Function-Specific-Option-Pragmas.html
https://gcc.gnu.org/onlinedocs/gcc-4.9.0/gcc/Function-Attributes.html
https://gcc.gnu.org/onlinedocs/gcc-4.9.0/gcc/i386-and-x86-64-Options.html

--HG--
extra : transplant_source : %DA%7CJ4H%DE%80%15%84%0D%116%85Q%9A%F9%2C%D1v%16
2015-02-10 16:04:46 +11:00
Nicholas Nethercote 242708cf72 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 488e401ff87e31a2074c4108c4df0572d9536667
2015-02-09 14:34:50 -08:00
Andrew McCreight d3826daa16 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Andrew McCreight c11d7db0a4 Back out Bug 1127201 (part 3) for various problems. 2015-02-06 15:04:00 -08:00
Andrew McCreight aec1aac3c6 Bug 1125005 - Change the reentrance assertion in IncrementalFinalizeRunnable to a warning. r=smaug 2015-02-06 09:54:21 -08:00
Dhi Aurrahman 5b8f79fc23 Bug 1125766 - Throw proper error types for TextEncoder(), TextDecoder() and TextDecoder.decode(). r=bz 2015-02-04 18:46:26 +07:00
Wes Kocher 834e2d3042 Merge inbound to m-c a=merge CLOSED TREE 2015-02-05 16:55:01 -08:00
Dave Townsend 425a83de72 Bug 1083281: Use flags to determine which chrome and about URIs are loaded in the content process. r=mconley, r=bsmedberg, r=jduell, r=mratcliffe
--HG--
extra : rebase_source : beda0088e7715eeb41525b0123f308068745bd80
2015-02-05 08:09:15 -08:00
Nicholas Nethercote 33e98ebdf0 Bug 1127201 (part 3) - Remove the NS_ABORT_IF_FALSE macro. r=Waldo.
--HG--
extra : rebase_source : 7403ecb72a24be30b3871674b511894af9af1f3a
2015-02-04 20:07:09 -08:00
Nicholas Nethercote d34f0301b8 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 99182e70335d2b5ff95f8c528ae992d37294be3a
2015-02-04 20:05:36 -08:00
Nicholas Nethercote 66223ceeb0 Bug 1050035 (part 5) - Make CCGraphBuilder::AddNode() infallible. r=mccr8.
--HG--
extra : rebase_source : 4ebe842e419f8b887b9e9b98f97c17fe103039bc
2015-02-02 23:58:42 -08:00
Nicholas Nethercote b5913e0b3d Bug 1050035 (part 4) - Make PL_DHashTableAdd() infallible by default, and add a fallible alternative. r=froydnj.
I kept all the existing PL_DHashTableAdd() calls fallible, in order to be
conservative, except for the ones in nsAtomTable.cpp which already were
followed immediately by an abort on failure.

--HG--
extra : rebase_source : eeba14d732077ef2e412f4caca852de6b6b85f55
2015-02-02 14:48:58 -08:00
Nicholas Nethercote f325953043 Bug 1050035 (part 3) - Remove PL_NewDHashTable() and PL_DHashTableDestroy(). r=froydnj.
Because they are now just equivalent to |new PLDHashTable()| +
PL_DHashTableInit() and PL_DHashTableFinish(t) + |delete t|, respectively.

They're only used in a handful of places and obscure things more than they
clarify -- I only recently worked out exactly how they different from Init()
and Finish().

--HG--
extra : rebase_source : c958491447523becff3e01de45a5d2d227d1ecd3
2015-02-01 20:36:52 -08:00
Nicholas Nethercote 9a36fdbde4 Bug 1050035 (part 2) - Remove the fallible version of PL_DHashTableInit(). r=froydnj,mrbkap.
Because it's no longer needed now that entry storage isn't allocated there.
(The other possible causes of failures are much less interesting and simply
crashing is a reasonable thing to do for them.)

This also makes PL_DNewHashTable() infallible.

--HG--
extra : rebase_source : 848cc9bbdfe434525857183b8370d309f3acbf49
2015-02-01 20:19:08 -08:00
Nicholas Nethercote 2438e023a8 Bug 1050035 (part 1) - Lazily allocate PLDHashTable::mEntryStore. r=froydnj.
This makes zero-element hash tables, which are common, smaller, and also avoids
unnecessary malloc/free pairs.

I did some measurements during some basic browsing of a few sites. I found that
35% of all live tables were empty with a few tabs open. And cumulatively, for
the whole session, 45% of tables never had an element added to them.

There is more to be done w.r.t. simplifying initialization, which will occur in
the next patch.

--HG--
extra : rebase_source : b9bfdcd680f39f3c947a49ae8462c04bc5e38805
2015-02-01 14:56:33 -08:00
Xidorn Quan f303a6cca2 Bug 1127045 part 3 - Make nsTArray support reverse iterating. r=froydnj
--HG--
extra : source : 6cd8187de27872308575077e6b4ba4d6df1fc312
2015-02-04 19:07:32 +11:00
Xidorn Quan 9a5955f0b8 Bug 1126552 part 1 - Make nsTArray support range-based for loops. r=froydnj
--HG--
extra : source : d8670bac983f9bc2b5886af2396d84ec9b4832a7
2015-02-04 19:07:32 +11:00
Xidorn Quan f910a5e603 Bug 1126552 part 0 - Rename end to iend to avoid shadowing warnings. r=froydnj
--HG--
extra : source : 7466982b362d61eda808c1ec848ecd45ef1c1c97
2015-02-04 19:07:32 +11:00
Nicholas Nethercote 27f5668308 Bug 1127401 - Tweak PL_DHashTableSearch() to counter a Fennec regression. r=froydnj.
PL_DHashTableLookup() had the same return protocol as SearchTable(), which
meant that compilers could generate a tail call from the former to the latter.
Bug 1124973 replaced PL_DHashTableLookup() with PL_DHashTableSearch(), which
has a slightly different return protocol, and so the tail call was lost. This
appears to be the cause of the Fennec performance regression.

This patch splits SearchTable() in two (using templates to avoid explicit code
duplication). SearchTable<false>() now has the same return protocol as
PL_DHashTableSearch(), and so the tail call can now be used again.
2015-01-29 20:18:28 -08:00
Masatoshi Kimura c10ac9defc Bug 1128273 - Stop using |typedef enum class tag_nsresult { ... } nsresult;| trick. r=froydnj 2015-02-02 23:44:25 +09:00
Mike Hommey a35dbaeebf Bug 1126593 - Add a global fallible instance, so that using fallible works directly, everywhere. r=njn
--HG--
rename : memory/mozalloc/fallible.h => memory/fallible/fallible.h
2015-02-02 09:56:13 +09:00
Masatoshi Kimura ef6e024c45 Bug 1126269 - Part 3: Always use the C++11 enum class for nsresult. r=froydnj 2015-01-30 08:53:47 +09:00
Jim Mathies d5d37f938c Bug 1095754 - Miscellaneous code cleanup nits found along the way. r=me 2015-01-29 13:41:57 -06:00
Daniel Holbert 7bf2f630e4 Bug 1126808: Mark xpcom/build as FAIL_ON_WARNINGS. r=froydnj 2015-01-29 00:38:15 -08:00
Nicholas Nethercote 4d7c72cbf7 Bug 1126546 - Make PLDHashTable::keyHash private. r=froydnj.
As well as renaming and privatizing |keyHash|, this patch also:

- renames GetKeyHash() to ComputeKeyHash(), which better indicates it's not
  some kind of getter function; and

- makes PLDHashEntryStub inherit from PLDHashEntryHdr, for consistency with
  everywhere else.
2015-01-28 21:33:38 -08:00
Daniel Holbert 72ede6c1ec Bug 1126923: #undef HAVE_STDINT_H (provided by mozilla-config.h) before including vpx headers, since they redefine it. r=froydnj 2015-01-28 19:01:46 -08:00
Ben Kelly 2ebbf80a47 Bug 1126985 Fix xpcom/base build with --enable-warnings-on-errors. r=froydnj 2015-01-28 15:11:18 -05:00
Daniel Holbert 7707190851 Bug 1126790: Move MainThreadIOLoggerImpl into anonymous namespace (joining a type used in one of its fields), to fix gcc warning. r=froydnj 2015-01-28 09:40:28 -08:00
Nicholas Nethercote 7f17f40494 Bug 1124973 (part 7) - Remove PL_DHashTableLookup. r=froydnj.
This patch:

- Removes PL_DHashTableLookup().

- Removes PL_DHASH_ENTRY_IS_BUSY(). It's barely used and
  PL_DHASH_ENTRY_IS_FREE() suffices.

- Removes a non-useful, non-sequitur comment ("However, use...").

--HG--
extra : rebase_source : 8ee03b52f78e726515902d59af633f9ad015affa
2015-01-26 16:02:05 -08:00
Nicholas Nethercote 3163cfc2c1 Bug 1124973 (part 2) - Introduce PL_DHashTableSearch(), and replace most PL_DHashTableLookup() calls with it. r=froydnj.
It feels safer to use a function with a new name, rather than just changing the
behaviour of the existing function.

For most of these cases the PL_DHashTableLookup() result was checked with
PL_DHASH_ENTRY_IS_{FREE,BUSY} so the conversion was easy. A few of them
preceded that check with a useless null check, but the intent of these was
still easy to determine.

I'll do the trickier ones in subsequent patches.

--HG--
extra : rebase_source : ab37a7a30be563861ded8631771181aacf054fd4
2015-01-22 21:06:55 -08:00
Nicholas Nethercote 097aa5a98e Bug 1124973 (part 1) - Always use inheritance rather than composition for PLDHashTable entries. r=froydnj.
Because (a) this is how it's usually done, (b) it allows static_cast<> instead
of reinterpret_cast<>, and (c) it will make subsequent patches easier.

--HG--
extra : rebase_source : 76e67d4b6ec0e5dc898a8214b6a6b562f9e08380
2015-01-22 21:05:52 -08:00
Xidorn Quan c6aaaa4c77 Bug 1124029 - Fix 64bit shift warning in nsVoidArray. r=froydnj
--HG--
extra : source : dba319233ef2df517d3ba37b4406357fb007dec7
extra : histedit_source : 4ad36db364b75ceb3566ef2f48507ad314d2e238
2015-01-28 08:55:44 +11:00
Ehsan Akhgari e08ad38a33 Bug 1126301 - Move TestUTF.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestUTF.cpp => xpcom/tests/gtest/TestUTF.cpp
rename : xpcom/tests/UTFStrings.h => xpcom/tests/gtest/UTFStrings.h
extra : rebase_source : 6c08b56d9cdb2af10a436792de7bee03d8c41070
2015-01-27 12:38:44 -05:00
Ehsan Akhgari a4a005ae1b Backed out changeset 186127d71076 (bug 1126295) because of test bustage on Windows on a CLOSED TREE
--HG--
rename : xpcom/tests/gtest/TestAtoms.cpp => xpcom/tests/TestAtoms.cpp
rename : xpcom/tests/gtest/UTFStrings.h => xpcom/tests/UTFStrings.h
2015-01-27 13:47:44 -05:00
Ehsan Akhgari 39a6fe9c60 Backed out 2 changesets (bug 1126301) on a CLOSED TREE because the test was apparently busted on some platforms
Backed out changeset 4aecd46afeb1 (bug 1126301)
Backed out changeset c61a87a20888 (bug 1126301)

--HG--
rename : xpcom/tests/gtest/TestUTF.cpp => xpcom/tests/TestUTF.cpp
2015-01-27 13:44:15 -05:00
Ehsan Akhgari 18a949c894 Bug 1126301 follow-up: Fix a signed/unsigned comparison fatal warning, landed on a CLOSED TREE 2015-01-27 12:56:15 -05:00
Daniel Holbert 98fd7110d5 Bug 1125632 followup: Mark remaining CollectReports impls in nsMemoryReporterManager.cpp and SystemMemoryReporter.cpp as MOZ_OVERRIDE. 2015-01-27 09:48:54 -08:00
Ehsan Akhgari 313bd50abd Bug 1126301 - Move TestUTF.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestUTF.cpp => xpcom/tests/gtest/TestUTF.cpp
extra : rebase_source : db5e0418f89bb1cf71a0543a48a6a063f61e4033
2015-01-27 12:38:44 -05:00
Ehsan Akhgari 6fd135f8ae Bug 1126295 - Move TestAtoms.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestAtoms.cpp => xpcom/tests/gtest/TestAtoms.cpp
rename : xpcom/tests/UTFStrings.h => xpcom/tests/gtest/UTFStrings.h
extra : rebase_source : 16340d826f39339dd38e77810cd08e59b324c380
2015-01-27 09:28:45 -05:00
Nicholas Nethercote 48710afc66 Bug 1124920 - Remove PLDHashTable::Operate(). r=froydnj.
--HG--
extra : rebase_source : f029d3ca8835232b3c1d4188aa63a0004c1aad4b
2015-01-22 15:43:18 -08:00
Ehsan Akhgari 1ac680d086 Bug 1125138 - Move TestTimeStamp.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestTimeStamp.cpp => xpcom/tests/gtest/TestTimeStamp.cpp
extra : rebase_source : d6f92fb8be26504164a1b54bd40811f6f1c3cc3a
extra : source : 67496f44f4617eda8f650d5c801fd9b327e5ac96
2015-01-26 17:08:24 -05:00
Chris Peterson 2da1f21a45 Bug 1125665 - Fix -Wunused-private-field warning in PLDHashTable and mark xpcom/glue as FAIL_ON_WARNINGS. r=froydnj 2015-01-25 00:25:13 -08:00
Chris Peterson 7251d442c0 Bug 1125693 - Fix -Wformat warning in xpcom/base/nsStackWalk.cpp and mark as FAIL_ON_WARNINGS. r=njn 2015-01-25 13:49:06 -08:00
Ehsan Akhgari 1ff610e6bd Bug 1125559 - Move TestThreadPool.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestThreadPool.cpp => xpcom/tests/gtest/TestThreadPool.cpp
extra : amend_source : 9d779a219338a8cbf854af28070ddc5559d28d2b
extra : histedit_source : 59dd08d1722b1fe621f3d5070b64d791012fa026%2C5231f875b1e958f393079ac9258a2d3812a1feb1
2015-01-26 20:49:22 -05:00
Wes Kocher 878e2e5f26 Backed out changeset 67496f44f461 (bug 1125138) for checktest failures
--HG--
rename : xpcom/tests/gtest/TestTimeStamp.cpp => xpcom/tests/TestTimeStamp.cpp
2015-01-26 16:14:06 -08:00
Wes Kocher 1f45146bdb Backed out changeset 8ae4f78d7e25 (bug 1125559) for checktest orange
--HG--
rename : xpcom/tests/gtest/TestThreadPool.cpp => xpcom/tests/TestThreadPool.cpp
2015-01-26 15:18:50 -08:00
Ehsan Akhgari 87ec49dc6f Bug 1125559 - Move TestThreadPool.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestThreadPool.cpp => xpcom/tests/gtest/TestThreadPool.cpp
extra : amend_source : 08b95083290e67062ebaecff820ff627f87b35a2
2015-01-26 17:10:09 -05:00
Ehsan Akhgari e6a83f6014 Bug 1125138 - Move TestTimeStamp.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestTimeStamp.cpp => xpcom/tests/gtest/TestTimeStamp.cpp
2015-01-26 17:08:24 -05:00
Xidorn Quan cdc6637443 Bug 1124029 - Suppress different __unaligned qualifiers warnings. r=froydnj
--HG--
extra : source : e854844083bcb065d649eea337c558f05291a647
extra : histedit_source : 9563e1ccb80018ade7b7f21f563bdf6954f13e35
2015-01-27 08:37:38 +11:00
Daniel Holbert 8ccda8f49a Bug 1125632: Annotate ResidentUniqueReporter::CollectReports as MOZ_OVERRIDE. r=njn 2015-01-25 15:14:00 -08:00
Masatoshi Kimura 6cc5dabbee Bug 1111290 - Part 3: Remove TypedEnum.h and fold TypedEnumInternal.h into TypedEnumBits.h. r=waldo 2015-01-26 07:22:11 +09:00
Masatoshi Kimura 86502e6537 Bug 1111290 - Part 2: Non-mechanical changes. r=waldo 2015-01-26 07:22:08 +09:00
Jim Mathies 516bfc595a Bug 1092525 - Enable e10s for Windows systems that activate accessibility through UIA. r=trev 2015-01-23 15:41:55 -06:00
Tom Schuster 66ad9a2e49 Bug 1125356 - Use JS_NewPlainObject in the browser. r=bz 2015-01-24 16:38:08 +01:00
Ehsan Akhgari f4b09875cf Bug 1125179 - Mark some functions generated by CC macros as override; r=mccr8 2015-01-23 14:27:18 -05:00
Ehsan Akhgari 9cfc822740 Remove TestTArray from the list of disabled XPCOM tests, because it's not disabled, no bug, DONTBUILD 2015-01-23 09:38:42 -05:00
Carsten "Tomcat" Book fbdef879d2 merge mozilla-inbound to mozilla-central a=merge 2015-01-22 14:30:51 +01:00
Geoff Lankow e77e679f44 Bug 675372 - Allow resource protocol mappings in chrome.manifest files of bootstrapped add-ons; r=Unfocused 2015-01-22 20:00:13 +13:00
Ehsan Akhgari c9abc4481d Bug 1124048 - Move TestStorageStream.cpp to gtest and enable it; r=froydnj 2015-01-21 11:29:20 -05:00
Ehsan Akhgari 5fc1133195 Bug 1124047 - Move TestPriorityQueue.cpp to gtest and enable it; r=froydnj 2015-01-21 11:25:34 -05:00
Ehsan Akhgari acfa245a0a Bug 1124041 - Move TestPipes.cpp to gtest and enable it; r=froydnj 2015-01-21 11:21:10 -05:00
Masatoshi Kimura 9656ec51c3 Bug 895582 - Get rid of MOZ_ENUM_TYPE. r=waldo 2015-01-21 22:35:19 +09:00
Jim Mathies 60cb268efa Bug 1121970 - Debug output from printf_stderr gets clipped on Windows. r=nfroyd 2015-01-20 08:18:26 -06:00
Ehsan Akhgari de6c8e779d Bug 1123007 - Mark ReadSegmentsClosure as stack class, and its mRealInputStream member as nsCOMPtr; r=froydnj 2015-01-21 22:42:39 -05:00