gecko-dev/xpcom/tests
Nicholas Nethercote 225f3a87e4 Bug 1400193 (part 2) - Shrink PLDHashTable. r=froydnj.
This patch reduces sizeof(PLDHashTable) as follows.

- 64-bit: from 40 bytes to 32
- 32-bit: from 28 bytes to 20

It does this by doing the following.

- It moves mGeneration from EntryStore to PLDHashTable, to avoid unnecessary
  padding on 64-bit. This requires tweaking EntryStore::Set() as explained in a
  comment.

- It also shrinks mGeneration from uint32_t to uint16_t, saving 2 bytes of
  data.

- It shrinks mEntrySize from uint32_t to uint8_t, to cut 3 bytes of data.

- It shrinks mHashShift from int16_t to uint8_t, trimming another byte of data,
  and moves it, saving another 2 bytes of padding.

And it reorders the fields so the word-sized ones are at the start, which makes
it easier to imagine the memory layout.

The patch also adds a test, and fixes some misordered function arguments in
existing tests.

--HG--
extra : rebase_source : 6ed6f7be68477fd4a82f07dd2f51c1f1d9b92dcc
2017-09-15 20:04:29 +10:00
..
gtest Bug 1400193 (part 2) - Shrink PLDHashTable. r=froydnj. 2017-09-15 20:04:29 +10:00
unit Bug 1394989 - Prevent test_nsIProcess.js from running on linux64-ccov. r=Aryx 2017-09-03 17:46:57 -04:00
windows Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
Makefile.in Bug 1333135 - Install test programs from xpcom/tests with moz.build rather than Makefile.in. r=mshal 2017-01-27 13:57:04 -08:00
moz.build Bug 1333135 - Install test programs from xpcom/tests with moz.build rather than Makefile.in. r=mshal 2017-01-27 13:57:04 -08:00
NotXPCOMTest.idl
RegFactory.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
resources.h
SizeTest01.cpp
SizeTest02.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
SizeTest03.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
SizeTest04.cpp
SizeTest05.cpp
SizeTest06.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
test.properties
TestArguments.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
TestBlockingProcess.cpp
TestHarness.h Bug 1362215 - use MOZ_FORMAT_PRINTF in TestHarness.h; r=froydnj 2017-05-05 14:23:00 -06:00
TestingAtomList.h
TestPRIntN.cpp
TestQuickReturn.cpp
TestShutdown.cpp
TestStackCrawl.cpp
TestStreamUtils.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
TestUnicodeArguments.cpp
TestWinReg.js