gecko-dev/xpcom
Nathan Froyd 2c8aa84236 Bug 1178317 - eliminate large static constructor from ShimInterfaceInfo.cpp; r=poiru
Constructing kComponentsInterfaceShimMap required a static constructor
on some compilers, due to a non-constexpr constructor and the necessity
of copying non-constexpr things like nsIID.  This static constructor is
large (several kilobytes of object code on x86-64) and completely
unnecessary.

To fix this, let's add a constexpr (well, MOZ_CONSTEXPR) constructor to
ComponentsInterfaceShimEntry.  This change alone doesn't completely
solve our problem, because the nsIID member still needs to be copied.
But doing that copying is silly: we only use the IID for constructing a
ShimInterfaceInfo in ShimInterfaceInfo::MaybeConstruct, and the
ShimInterfaceInfo constructor takes a const reference.  So let's store a
const reference in ComponentsInterfaceShimEntry, too, and make that
structure significantly smaller in the process.
2015-06-29 10:59:59 -04:00
..
base Backed out changeset 8b4e4083639e (bug 1171931) for B2G debug emulator bustage. 2015-06-25 19:48:42 -04:00
build Backed out changeset 8b4e4083639e (bug 1171931) for B2G debug emulator bustage. 2015-06-25 19:48:42 -04:00
components Backed out changeset 8b4e4083639e (bug 1171931) for B2G debug emulator bustage. 2015-06-25 19:48:42 -04:00
doc
ds Bug 1143006 - Show warning for http-on-* in child process (r=mrbkap) 2015-06-19 17:35:06 -07:00
glue Bug 1172216 - Move nsStackwalk to mozglue. r=glandium 2015-06-10 16:32:45 -04:00
idl-parser Bug 997325 - Implement main process scriptable only flag in XPIDL (r=mrbkap) 2015-03-26 14:39:48 -07:00
io Backed out changeset 8b4e4083639e (bug 1171931) for B2G debug emulator bustage. 2015-06-25 19:48:42 -04:00
libxpcomrt Backed out changeset 8b4e4083639e (bug 1171931) for B2G debug emulator bustage. 2015-06-25 19:48:42 -04:00
libxpt/xptcall
reflect Bug 1178317 - eliminate large static constructor from ShimInterfaceInfo.cpp; r=poiru 2015-06-29 10:59:59 -04:00
string Bug 1165518 - Part 2: Replace prlog.h with Logging.h. rs=froydnj 2015-05-19 11:15:34 -07:00
system bug 1166759 - force annotateCrashReport arguments to be UTF-8. r=bsmedberg 2015-05-22 10:50:32 -04:00
tests Bug 704368 - Re-enable test_nsIProcess_stress.js on Linux64 debug. 2015-06-18 11:28:51 -04:00
threads Bug 1178363 - make nsTimerImpl::GetGeneration a private method; r=poiru 2015-06-29 13:09:11 -04:00
typelib Bug 1155969 - Make xpt.py flake8 compliant. r=ted 2015-05-25 19:58:00 -04:00
windbgdlg
xpidl
Makefile.in
moz.build Bug 1093934 - Create a XPCOM library that can be used to support standalone WebRTC. r=nfroyd 2015-04-03 15:52:00 +02:00
xpcom-config.h.in Bug 1145051: Use MOZ_WARN_UNUSED_RESULT instead of NS_WARN_UNUSED_RESULT. r=glandium 2015-03-19 00:46:40 -07:00
xpcom-private.h.in