[Webkit-unassigned] [Bug 144391] New: Allow large arguments arrays by falling back to passing some or all arguments on the heap

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Apr 29 09:11:47 PDT 2015


https://bugs.webkit.org/show_bug.cgi?id=144391

            Bug ID: 144391
           Summary: Allow large arguments arrays by falling back to
                    passing some or all arguments on the heap
    Classification: Unclassified
           Product: WebKit
           Version: 528+ (Nightly build)
          Hardware: All
                OS: All
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: fpizlo at apple.com

Consider code like:

Math.max.apply(Math, new Array(100000))

If the array size is large enough, this will fail.  Maybe it would be cool if it didn't.  We could make this work by having large arguments arrays passed in the heap - for example as an arguments object allocated by the caller - instead of on the stack.

We'd probably have to only pass overflow arguments in this manner, for example arguments beyond some stack argument limit, in order to have a consistent calling convention. We'd also have to make sure that ExecState's methods for looping over arguments are appropriately clued in - so that they aren't too slow for the common case of few arguments, while allowing existing variadic native functions to work for large arguments lists.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20150429/b02445d0/attachment.html>


More information about the webkit-unassigned mailing list