Ignore:
Timestamp:
Sep 22, 2008, 2:20:52 PM (17 years ago)
Author:
[email protected]
Message:

JavaScriptCore:

2008-09-22 Sam Weinig <[email protected]>

Reviewed by Darin Adler.

Patch for https://bugs.webkit.org/show_bug.cgi?id=20982
Speed up the apply method of functions by special-casing array and 'arguments' objects

1% speedup on v8-raytrace.

Test: fast/js/function-apply.html

  • kjs/Arguments.cpp: (JSC::Arguments::fillArgList):
  • kjs/Arguments.h:
  • kjs/FunctionPrototype.cpp: (JSC::functionProtoFuncApply):
  • kjs/JSArray.cpp: (JSC::JSArray::fillArgList):
  • kjs/JSArray.h:

LayoutTests:

2008-09-22 Sam Weinig <[email protected]>

Reviewed by Darin Adler.

Test for https://bugs.webkit.org/show_bug.cgi?id=20982

  • fast/js/function-apply-expected.txt: Added.
  • fast/js/function-apply.html: Added.
  • fast/js/resources/function-apply.js: Added.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/Arguments.h

    r36743 r36779  
    4444        virtual void mark();
    4545
     46        void fillArgList(ExecState*, ArgList&);
     47
    4648    private:
    4749        virtual bool getOwnPropertySlot(ExecState*, const Identifier& propertyName, PropertySlot&);
Note: See TracChangeset for help on using the changeset viewer.