Currently nsProxyObject inherits from nsISupports just (apparently) so it can be refcounted. It would be more performant for it to just implement its own refcounting, since the addref and release would not need to be virtual and there would not need to be a vtable pointer.
Created attachment 139781 [details] [diff] [review] patch This does the change I mention above, along with a couple of warning fixes in the proxy code. I'm assuming the note about the 'mac compiler' is no longer relevant. I also inlined a couple of getters and made the dtor nonvirtual.