mirror of
https://github.com/ldc-developers/ldc.git
synced 2025-04-27 13:40:33 +03:00

gen/module{.h, .cpp} currently is a big kitchen sink for various things related to emitting modules. This hopefully makes the distinction between generating the ModuleInfo data and the code to register it with druntime clearer.
20 lines
672 B
C++
20 lines
672 B
C++
//===-- gen/moduleinfo.h - ModuleInfo instance data emission ----*- C++ -*-===//
|
||
//
|
||
// LDC – the LLVM D compiler
|
||
//
|
||
// This file is distributed under the BSD-style LDC license. See the LICENSE
|
||
// file for details.
|
||
//
|
||
//===----------------------------------------------------------------------===//
|
||
|
||
namespace llvm {
|
||
class GlobalVariable;
|
||
}
|
||
class Module;
|
||
|
||
/// Creates a global variable containing the ModuleInfo data for the given
|
||
/// module.
|
||
///
|
||
/// Note that this just creates data itself, and is not concerned with emitting
|
||
/// a reference pointing to it to register the module with the runtime.
|
||
llvm::GlobalVariable *genModuleInfo(Module *m);
|