mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-01-26 01:23:13 +01:00
Make LDC work with LLVM trunk (s/LinkOnceLinkage/LinkOnceOdrLinkage/)
Also moved the #defines for linkage types into a separate header instead of mars.h so we can #include revisions.h without having to rebuild the entire frontend every time we update. (I'm using revisions.h to get the LLVM revision for use in preprocessor conditionals. It should work with LLVM release 2.5, old trunk and new trunk)
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
#include "gen/tollvm.h"
|
||||
#include "gen/logger.h"
|
||||
#include "gen/llvmhelpers.h"
|
||||
#include "gen/linkage.h"
|
||||
|
||||
#include "ir/irmodule.h"
|
||||
|
||||
@@ -33,7 +34,9 @@ using namespace llvm::dwarf;
|
||||
*/
|
||||
static LLGlobalVariable* emitDwarfGlobalDecl(const LLStructType* type, const char* name, bool linkonce=false)
|
||||
{
|
||||
LLGlobalValue::LinkageTypes linkage = linkonce ? LLGlobalValue::LinkOnceLinkage : LLGlobalValue::InternalLinkage;
|
||||
LLGlobalValue::LinkageTypes linkage = linkonce
|
||||
? DEBUGINFO_LINKONCE_LINKAGE_TYPE
|
||||
: LLGlobalValue::InternalLinkage;
|
||||
LLGlobalVariable* gv = new LLGlobalVariable(type, true, linkage, NULL, name, gIR->module);
|
||||
gv->setSection("llvm.metadata");
|
||||
return gv;
|
||||
|
||||
Reference in New Issue
Block a user