Search code examples
firefoxgarbage-collectionspidermonkey

Understanding Firefox 32 Garbage Collectioni


I have downloaded the Firefox 32 source code. I have read about the Generational Garbage Collection over here [1][2]. I have also gone through files like js/src/jsgc.h, js/src/jsgc.cpp, js/src/gc/zone.h, js/src/gc/heap.h, js/src/gc/marking.h etc. But I am unable to find in which file exactly the Generational GC Algorithm is implemented. In some places I find the GC code is written for Incremental GC and at some places I find for Generational GC using ifdef JSGC_GENERATIONAL. In which file do they have the code for Minor and Major collection? Even a quick walk-through will be a great help. Thanks in advance.

[1]https://blog.mozilla.org/javascript/2013/07/18/clawing-our-way-back-to-precision/ [2]https://developer.mozilla.org/enUS/docs/Mozilla/Projects/SpiderMonkey/Internals/Garbage_collection


Solution

  • The implementation details should be tracked in bug 619558, you can see the bug tree here