A named anonymous function that accesses a global or closure scope variable is slower than a non-named anonymous function. See the attached test case. This is a regression since SquirrelFish.
Created attachment 21876 [details]
Can you give more data on the SquirrelFish regression:
* Is access to a global from a named anonymous function slower in SF than it was before SF?
* How big (%) is the regression?
The cause of the relative slowness is that, according to the spec, a named anonymous function should have a vanilla (i.e. unoptimized) object inserted into its scope chain, with one property: the function's name.
We can / should improve this situation, but that's how things are implemented today (and how they've always been implemented).
It is not a regression, since SquirrelFish is faster than Safari 3.1. But there is now a difference in speed between named anonymous functions and non-named anonymous function that didn't exist in Safari 3.1.
Committing to http://svn.webkit.org/repository/webkit/trunk ...