[llvm-commits] Garbage collection patch series

Gordon Henriksen gordonhenriksen at mac.com
Mon Sep 3 23:18:41 PDT 2007


As followups to this post, I will post a series of six patches which  
significantly improve LLVM's garbage collection support. These  
patches are not all fully independent, but I have broken them up into  
more digestible units for review.

• gc-1-registry.patch (+288 lines)
My previous Registry.h header, as well as Collectors.h, which is the  
registry for dynamically-loaded garbage collectors.

• gc-2-metadata.patch (+303 lines)
CollectorMetadata is the data structure populated by back-ends during  
code-generation.

• gc-3-collector.patch (+401 lines)
Collector is the base class for garbage collector code generators. It  
provides its subclasses with both static configuration and callbacks  
through which they can exert its will upon all relevant stages of  
code generation.

• gc-4-integration.patch (+113, -17 lines)
In this patch, Collector winds its tendrils throughout the compiler.  
Overhead should be minimal when disabled.

• gc-5-shadowstack.patch (+59, -406 lines)
With this patch, the LowerGC transformation is adapted to become the  
ShadowStackCollector.

• gc-6-ocaml.patch (+190 lines)
Finally, the new OcamlCollector emits the Ocaml frametable data  
structure and related symbols.

Hopefully I can get feedback so that this can be rolled into 2.2  
early in the development cycle.

— Gordon

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20070904/486c742f/attachment.html>


More information about the llvm-commits mailing list