Added a EvalCache that caches eval'ed scripts and compiled function boilerplate.
authorfeng@chromium.org <feng@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 5 Sep 2008 16:27:56 +0000 (16:27 +0000)
committerfeng@chromium.org <feng@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 5 Sep 2008 16:27:56 +0000 (16:27 +0000)
commitebfa9d37b61c9e6eb5512db2b5b3dd1dd8b95e32
tree2e8fa00e3c5f77d431ea9d3a0cbb5aaba2811693
parentbce5ba577b0170d9c34cbb2c41abe8127c243846
Added a EvalCache that caches eval'ed scripts and compiled function boilerplate.
The cache is a hashtable that takes String as key and JSFunction as the value.

Caches are cleared before mark-compact GC's.

Currently I don't put caps on cache size, string size, etc.

This cuts date-parse-totfe.js runtime by half.

Review URL: http://codereview.chromium.org/457

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/heap.cc
src/heap.h
src/objects-inl.h
src/objects.cc
src/objects.h
src/runtime.cc
src/v8-counters.h