gecko-dev/xpcom/tests
Nicholas Nethercote e4dec8d42f Bug 1261735 (part 1) - Overhaul the atom implementation. r=froydnj,erahm.
This patch changes things so that dynamic atoms and static atoms have distinct
implementations. This is a step towards allowing dynamic atoms and static atoms
to have different layouts in memory, which will allow static atoms to be
represented more compactly.

Specifically, the patch does the following.

- It renames AtomImpl as DynamicAtom and PermanentAtomImpl as StaticAtom, and
  the latter is no longer a subclass of the former. This required duplicating
  some methods from the former into the latter: ScriptableToString(),
  ToUTF8String(), ScriptableEquals(), IsStaticAtom(). (This duplication will
  disappear in the future if the representations of dynamic atoms and static
  atoms diverge. Indeed, SizeOfIncludingThis() is already different in the two
  classes.)

- It replaces all mentions of "permanent"/"non-permanent" atoms with
  "static"/"dynamic".

- In ~DynamicAtom() it removes the check that causes gAtomTable to be deleted
  when it becomes empty. This will only happen at shutdown and so doesn't seem
  useful.

- It documents better various things, especially the basics of the
  dynamic/static split, the transmutation of dynamic atoms to static atoms, and
  the details of the SizeOf functions.

--HG--
extra : rebase_source : dbf903012e70ebf1a43de1e1088db1bc1b8dd4f4
2016-04-01 11:18:06 +11:00
..
bug656331_component Bug 1241976 - port INSTALL_TARGETS in xpcom/tests to moz.build; r=glandium 2016-01-21 21:06:50 -05:00
component Bug 1241976 - port INSTALL_TARGETS in xpcom/tests to moz.build; r=glandium 2016-01-21 21:06:50 -05:00
component_no_aslr Bug 1241976 - port INSTALL_TARGETS in xpcom/tests to moz.build; r=glandium 2016-01-21 21:06:50 -05:00
external Bug 1213862 - Align nsString whitespace handling with web specs; r=froydnj 2015-10-12 20:47:57 +03:00
gtest Bug 1261735 (part 1) - Overhaul the atom implementation. r=froydnj,erahm. 2016-04-01 11:18:06 +11:00
regorder
unit Bug 1248252 - Improper outdated octal constant syntax in M-C tree. Use '0o' prefix. r=dao 2016-02-15 08:57:00 +01:00
windows Bug 1257410 - Use %p and cast in printf to avoid C4477 on VS2015; r=khuey 2016-03-21 14:19:18 -07:00
Makefile.in
MoreTestingAtomList.h
MoreTestingAtoms.cpp
MoreTestingAtoms.h
NotXPCOMTest.idl
RegFactory.cpp
ShowAlignments.cpp
SizeTest01.cpp
SizeTest02.cpp
SizeTest03.cpp
SizeTest04.cpp
SizeTest05.cpp
SizeTest06.cpp
TestArguments.cpp
TestAutoPtr.cpp Bug 1229985 - remove nsAutoArrayPtr; r=erahm 2015-12-06 10:51:43 -05:00
TestAutoRef.cpp
TestBase64.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TestBlockingProcess.cpp Bug 1220544 - Fix -Wunreachable-code warnings in xpcom. r=mccr8 2015-11-02 21:03:03 -08:00
TestCOMArray.cpp
TestCOMPtr.cpp
TestCOMPtrEq.cpp
TestCallTemplates.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TestDeadlockDetector.cpp
TestDeadlockDetectorScalability.cpp
TestFile.cpp
TestHarness.h Bug 1259294: Part 2 - Use MOZ_ALWAYS_SUCCEEDS. r=froydnj 2016-03-28 10:28:15 -07:00
TestHashtables.cpp Bug 1181444 (part 2) - Remove nsBaseHashtable::Enumerate(). r=froydnj. 2015-11-24 19:42:28 -08:00
TestID.cpp
TestINIParser.cpp
TestJemalloc.cpp
TestNsRefPtr.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TestObserverArray.cpp
TestObserverService.cpp
TestPRIntN.cpp
TestPipe.cpp
TestQuickReturn.cpp
TestRacingServiceManager.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TestRegistrationOrder.cpp
TestSTLWrappers.cpp
TestShutdown.cpp
TestStackCrawl.cpp
TestStaticAtoms.cpp Bug 1260871 - Remove do_GetAtom() and rename NS_NewAtom() as NS_Atomize(). r=erahm. 2016-03-29 10:09:43 +11:00
TestStreamUtils.cpp
TestStringAPI.cpp
TestTArray.cpp bug 1259753 - fix some C++ unittests to use ScopedXPCOM to init XPCOM. r=ms2ger 2016-03-25 10:04:37 -04:00
TestTextFormatter.cpp
TestThreadPoolListener.cpp
TestThreadUtils.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TestTimers.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TestUnicodeArguments.cpp
TestWinReg.js
TestingAtomList.h
TestingAtoms.cpp
TestingAtoms.h
moz.build Bug 1227388 - Finish removing dehydra support. r=mshal 2015-11-25 08:23:25 +09:00
nsIFileEnumerator.cpp Bug 1204403 - Fix -Wshadow warnings in xpcom. r=mccr8 2015-09-07 23:56:16 -07:00
resources.h
test.properties