[Webkit-unassigned] [Bug 80797] Argument length limited to 65536

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Mar 11 22:13:48 PDT 2012


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





--- Comment #1 from Gavin Barraclough <barraclough at apple.com>  2012-03-11 22:13:48 PST ---
This is a restriction we place on code to enforce reasonable resource allocation, and to avoid the need for otherwise unnecessary timeout checking in argument copying loops in the VM.  This isn't something that's likely to change any time soon.

The maximum number of arguments you can pass to a function is always going to be physically limited by the size of the stack.  We do artificially cap the argument count below this right now, and we could reasonably raise the hard limit to around 2^31 or 2^32, but (1) this would still be an arbitrary limit and (2) the stack size limit would never let you get there anyway.

Stack size is finite, and 0xFFFF seems as good an arbitrary limit as any other would be. :-)

Any patch to change this will have to be careful not to introduce integer overflow, I think we may steal a couple of bits from the arguments count in either CodeBlock or Executable, and I think we may mix use of uint32t & int32t in our handling of argument counts.

Do you have a specific web compatibility concern here?

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list