Ignore:
Timestamp:
May 7, 2009, 3:52:19 PM (16 years ago)
Author:
[email protected]
Message:

Improve native call performance

Reviewed by Gavin Barraclough.

Fix the windows build by adding calling convention declarations everywhere,
chose fastcall as that seemed most sensible given we were having to declare
the convention explicitly. In addition switched to fastcall on mac in the
deluded belief that documented fastcall behavior on windows would match
actual its actual behavior.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp

    r43156 r43372  
    269269}
    270270
    271 JSValue globalFuncEval(ExecState* exec, JSObject* function, JSValue thisValue, const ArgList& args)
     271JSValue JSC_HOST_CALL globalFuncEval(ExecState* exec, JSObject* function, JSValue thisValue, const ArgList& args)
    272272{
    273273    JSObject* thisObject = thisValue.toThisObject(exec);
     
    294294}
    295295
    296 JSValue globalFuncParseInt(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     296JSValue JSC_HOST_CALL globalFuncParseInt(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    297297{
    298298    JSValue value = args.at(0);
     
    313313}
    314314
    315 JSValue globalFuncParseFloat(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     315JSValue JSC_HOST_CALL globalFuncParseFloat(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    316316{
    317317    return jsNumber(exec, parseFloat(args.at(0).toString(exec)));
    318318}
    319319
    320 JSValue globalFuncIsNaN(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     320JSValue JSC_HOST_CALL globalFuncIsNaN(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    321321{
    322322    return jsBoolean(isnan(args.at(0).toNumber(exec)));
    323323}
    324324
    325 JSValue globalFuncIsFinite(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     325JSValue JSC_HOST_CALL globalFuncIsFinite(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    326326{
    327327    double n = args.at(0).toNumber(exec);
     
    329329}
    330330
    331 JSValue globalFuncDecodeURI(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     331JSValue JSC_HOST_CALL globalFuncDecodeURI(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    332332{
    333333    static const char do_not_unescape_when_decoding_URI[] =
     
    337337}
    338338
    339 JSValue globalFuncDecodeURIComponent(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     339JSValue JSC_HOST_CALL globalFuncDecodeURIComponent(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    340340{
    341341    return decode(exec, args, "", true);
    342342}
    343343
    344 JSValue globalFuncEncodeURI(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     344JSValue JSC_HOST_CALL globalFuncEncodeURI(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    345345{
    346346    static const char do_not_escape_when_encoding_URI[] =
     
    353353}
    354354
    355 JSValue globalFuncEncodeURIComponent(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     355JSValue JSC_HOST_CALL globalFuncEncodeURIComponent(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    356356{
    357357    static const char do_not_escape_when_encoding_URI_component[] =
     
    364364}
    365365
    366 JSValue globalFuncEscape(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     366JSValue JSC_HOST_CALL globalFuncEscape(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    367367{
    368368    static const char do_not_escape[] =
     
    395395}
    396396
    397 JSValue globalFuncUnescape(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     397JSValue JSC_HOST_CALL globalFuncUnescape(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    398398{
    399399    UString result = "";
     
    423423
    424424#ifndef NDEBUG
    425 JSValue globalFuncJSCPrint(ExecState* exec, JSObject*, JSValue, const ArgList& args)
     425JSValue JSC_HOST_CALL globalFuncJSCPrint(ExecState* exec, JSObject*, JSValue, const ArgList& args)
    426426{
    427427    CStringBuffer string;
Note: See TracChangeset for help on using the changeset viewer.