//===--- ForceLinkageMacros.h - The LLVM Compiler Driver --------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open // Source License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // Preprocessor magic that forces references to static libraries - common // macros used by both driver and plugins. // //===----------------------------------------------------------------------===// #ifndef LLVM_INCLUDE_COMPILER_DRIVER_FORCE_LINKAGE_MACROS_H #define LLVM_INCLUDE_COMPILER_DRIVER_FORCE_LINKAGE_MACROS_H #define LLVMC_FORCE_LINKAGE_PREFIX(PluginName) ForceLinkage ## PluginName #define LLVMC_FORCE_LINKAGE_FUN(PluginName) \ LLVMC_FORCE_LINKAGE_PREFIX(PluginName) #define LLVMC_FORCE_LINKAGE_DECL(PluginName) \ void LLVMC_FORCE_LINKAGE_FUN(PluginName) () #define LLVMC_FORCE_LINKAGE_CALL(PluginName) \ LLVMC_FORCE_LINKAGE_FUN(PluginName) () #endif // LLVM_INCLUDE_COMPILER_DRIVER_FORCE_LINKAGE_MACROS_H