| //===-- GCs.h - Garbage collector linkage hacks ---------------------------===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| // This file contains hack functions to force linking in the GC components. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #ifndef LLVM_CODEGEN_GCS_H |
| #define LLVM_CODEGEN_GCS_H |
| |
| namespace llvm { |
| class GCStrategy; |
| class GCMetadataPrinter; |
| |
| /// FIXME: Collector instances are not useful on their own. These no longer |
| /// serve any purpose except to link in the plugins. |
| |
| /// Creates an ocaml-compatible garbage collector. |
| void linkOcamlGC(); |
| |
| /// Creates an ocaml-compatible metadata printer. |
| void linkOcamlGCPrinter(); |
| |
| /// Creates a shadow stack garbage collector. This collector requires no code |
| /// generator support. |
| void linkShadowStackGC(); |
| } |
| |
| #endif |