We currently create an prototype object for every JSFunction and put it in the prototype property. I have a patch to do this lazily instead.
Created attachment 24647 [details] Proposed patch
Comment on attachment 24647 [details] Proposed patch r=me
Landed in r37859.