Bug 813423. A bit more inlining for stuff that should really be inline. r=peterv
authorBoris Zbarsky <bzbarsky@mit.edu>
Tue, 20 Nov 2012 11:36:06 -0500
changeset 113792 800bbc1295785b8f455d26b47c40e7eab6b0b34d
parent 113791 eaa549c9bce79317349e75a3b9e15a64e39162ef
child 113793 5387f2b5423fd907bdc47f8b72fcebe0d36754d6
push id23890
push userryanvm@gmail.com
push dateWed, 21 Nov 2012 02:43:32 +0000
treeherdermozilla-central@4f19e7fd8bea [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerspeterv
bugs813423
milestone20.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 813423. A bit more inlining for stuff that should really be inline. r=peterv
dom/bindings/BindingUtils.h
js/xpconnect/src/XPCQuickStubs.h
js/xpconnect/src/nsDOMQS.h
--- a/dom/bindings/BindingUtils.h
+++ b/dom/bindings/BindingUtils.h
@@ -470,17 +470,17 @@ public:
   static bool const Value = HasWrapObjectMember<T>::Value &&
                             sizeof(Check<T>(nullptr)) == sizeof(yes);
 };
 
 // Create a JSObject wrapping "value", for cases when "value" is a
 // non-wrapper-cached object using WebIDL bindings.  "value" must implement a
 // WrapObject() method taking a JSContext and a scope.
 template <class T>
-inline bool
+MOZ_ALWAYS_INLINE bool
 WrapNewBindingObject(JSContext* cx, JSObject* scope, T* value, JS::Value* vp)
 {
   JSObject* obj = value->GetWrapperPreserveColor();
   if (obj) {
     xpc_UnmarkNonNullGrayObject(obj);
     if (js::GetObjectCompartment(obj) == js::GetObjectCompartment(scope)) {
       *vp = JS::ObjectValue(*obj);
       return true;
--- a/js/xpconnect/src/XPCQuickStubs.h
+++ b/js/xpconnect/src/XPCQuickStubs.h
@@ -521,17 +521,17 @@ xpc_qsUnwrapArg(JSContext *cx, jsval v, 
     nsISupports* argRef = *ppArgRef;
     nsresult rv = xpc_qsUnwrapArgImpl(cx, v, NS_GET_TEMPLATE_IID(Interface),
                                       reinterpret_cast<void **>(ppArg), &argRef,
                                       vp);
     *ppArgRef = static_cast<StrongRefType*>(argRef);
     return rv;
 }
 
-inline nsISupports*
+MOZ_ALWAYS_INLINE nsISupports*
 castNativeArgFromWrapper(JSContext *cx,
                          jsval v,
                          uint32_t bit,
                          uint32_t protoID,
                          int32_t protoDepth,
                          nsISupports **pArgRef,
                          jsval *vp,
                          nsresult *rv)
--- a/js/xpconnect/src/nsDOMQS.h
+++ b/js/xpconnect/src/nsDOMQS.h
@@ -57,17 +57,17 @@ xpc_qsUnwrapThis<_interface>(JSContext *
     *ppThis = NULL;  /* avoids uninitialized warnings in callers */           \
     if (failureFatal && !native)                                              \
         return xpc_qsThrow(cx, rv);                                           \
     *ppThis = static_cast<_interface*>(static_cast<_base*>(native));          \
     return true;                                                              \
 }                                                                             \
                                                                               \
 template <>                                                                   \
-inline nsresult                                                               \
+MOZ_ALWAYS_INLINE nsresult                                                    \
 xpc_qsUnwrapArg<_interface>(JSContext *cx,                                    \
                             jsval v,                                          \
                             _interface **ppArg,                               \
                             nsISupports **ppArgRef,                           \
                             jsval *vp)                                        \
 {                                                                             \
     nsresult rv;                                                              \
     nsISupports *native =                                                     \