-
ricow@chromium.org authored
Due to issues relating mostly to chrome extensions we have lately been running into OOMs that are caused by our executable space running out. This change introduces flushing of code from regexps if we have not used the code for 5 mark sweeps. The approach is different from the normal function code flusing. Here we make a copy of the code inside the data array, and exchange the original code with a smi determined by the sweep_generation (a new heap variable increased everytime we do mark sweep/compact). If we encounter a smi in EnsureCompiled we simply reinstate the code object. If, in the marking phase of mark sweep, we find a regexp that already have a smi in the code field, and this is more than 5 generations old we flush the code from the saved index. Review URL: http://codereview.chromium.org/7282026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8532 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
0f682143