# This file gets appended to WebCore.exp when USE(PLUGIN_HOST_PROCESS) is 1.

__ZN3JSC16RuntimeObjectImp6s_infoE
__ZN3JSC8Bindings10RootObjectD1Ev
__ZN3JSC8Bindings8Instance19createRuntimeObjectEPNS_9ExecStateE
__ZN3JSC8Bindings8InstanceC2EN3WTF10PassRefPtrINS0_10RootObjectEEE
__ZN3JSC8Bindings8InstanceD2Ev
__ZN7WebCore13IdentifierRep3getEi
__ZN7WebCore13IdentifierRep3getEPKc
__ZN7WebCore13IdentifierRep7isValidEPS0_
__ZN7WebCore16ScriptController16createRootObjectEPv
__ZN7WebCore16ScriptController17canExecuteScriptsEv
__ZN7WebCore16ScriptController24jsObjectForPluginElementEPNS_17HTMLPlugInElementE
__ZN7WebCore6String26fromUTF8WithLatin1FallbackEPKcm
__ZN7WebCore6String8fromUTF8EPKcm
