Pass VM instead of ExecState to JSFunction constructors.
<https://webkit.org/b/122014>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

JSFunction doesn't need the ExecState for anything during its
construction, so reduce the amount of loads by just passing the
VM around instead.

Factored out putDirectNonIndexAccessor() from the existing
putDirectAccessor() to avoid snowballing the patch (and because
it's kinda neat to avoid the extra branch.)

JSC release binary size -= 9680 bytes.

Source/WebCore:

Updated for new JSFunction::create() signature.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156602 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK build fix after r156560.

Source/WebKit/gtk:

* WebCoreSupport/AcceleratedCompositingContext.h:

Source/WebKit2:

* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::paintContents):
(WebKit::LayerTreeHostGtk::createPageOverlayLayer):
(WebKit::LayerTreeHostGtk::destroyPageOverlayLayer):
* WebProcess/WebPage/gtk/LayerTreeHostGtk.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156603 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Message sending functions should only accept rvalues
https://bugs.webkit.org/show_bug.cgi?id=122041

Reviewed by Andreas Kling.

In order to safely encode move-only types, make all send variants accept rvalues only, except
for the "send to all processes" ones. For them, copy the message before sending. This ensures that trying
to send a move-only type in a message will fail to compile.

* NetworkProcess/NetworkResourceLoader.h:
(WebKit::NetworkResourceLoader::sendAbortingOnFailure):
* Platform/CoreIPC/Connection.h:
(CoreIPC::Connection::send):
(CoreIPC::Connection::sendSync):
* Platform/CoreIPC/MessageSender.h:
(CoreIPC::MessageSender::sendSync):
* Shared/ChildProcessProxy.h:
(WebKit::ChildProcessProxy::send):
(WebKit::ChildProcessProxy::sendSync):
* UIProcess/WebContext.h:
(WebKit::WebContext::sendToNetworkingProcess):
(WebKit::WebContext::sendToNetworkingProcessRelaunchingIfNecessary):
(WebKit::WebContext::sendToAllProcesses):
(WebKit::WebContext::sendToAllProcessesRelaunchingThemIfNecessary):
(WebKit::WebContext::sendToOneProcess):
* UIProcess/WebPageGroup.h:
(WebKit::WebPageGroup::sendToAllProcessesInGroup):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156604 268f45cc-cd09-0410-ab3c-d52691b4dbfc