Fix for trunk after rev 223802

This commit is contained in:
Vsevolod Livinskiy
2014-12-11 16:24:52 +03:00
parent 0ac7ed3c97
commit 24e8c33506
5 changed files with 124 additions and 12 deletions

21
ctx.cpp
View File

@@ -2805,24 +2805,43 @@ FunctionEmitContext::addGSMetadata(llvm::Value *v, SourcePos pos) {
llvm::Instruction *inst = llvm::dyn_cast<llvm::Instruction>(v);
if (inst == NULL)
return;
#if defined (LLVM_3_2) || defined (LLVM_3_3)|| defined (LLVM_3_4)|| defined (LLVM_3_5)
llvm::Value *str = llvm::MDString::get(*g->ctx, pos.name);
#else // LLVN 3.6++
llvm::MDString *str = llvm::MDString::get(*g->ctx, pos.name);
#endif
llvm::MDNode *md = llvm::MDNode::get(*g->ctx, str);
inst->setMetadata("filename", md);
#if defined (LLVM_3_2) || defined (LLVM_3_3)|| defined (LLVM_3_4)|| defined (LLVM_3_5)
llvm::Value *first_line = LLVMInt32(pos.first_line);
#else // LLVN 3.6++
llvm::Metadata *first_line = llvm::ConstantAsMetadata::get(LLVMInt32(pos.first_line));
#endif
md = llvm::MDNode::get(*g->ctx, first_line);
inst->setMetadata("first_line", md);
#if defined (LLVM_3_2) || defined (LLVM_3_3)|| defined (LLVM_3_4)|| defined (LLVM_3_5)
llvm::Value *first_column = LLVMInt32(pos.first_column);
#else // LLVN 3.6++
llvm::Metadata *first_column = llvm::ConstantAsMetadata::get(LLVMInt32(pos.first_column));
#endif
md = llvm::MDNode::get(*g->ctx, first_column);
inst->setMetadata("first_column", md);
#if defined (LLVM_3_2) || defined (LLVM_3_3)|| defined (LLVM_3_4)|| defined (LLVM_3_5)
llvm::Value *last_line = LLVMInt32(pos.last_line);
#else // LLVN 3.6++
llvm::Metadata *last_line = llvm::ConstantAsMetadata::get(LLVMInt32(pos.last_line));
#endif
md = llvm::MDNode::get(*g->ctx, last_line);
inst->setMetadata("last_line", md);
#if defined (LLVM_3_2) || defined (LLVM_3_3)|| defined (LLVM_3_4)|| defined (LLVM_3_5)
llvm::Value *last_column = LLVMInt32(pos.last_column);
#else // LLVN 3.6++
llvm::Metadata *last_column = llvm::ConstantAsMetadata::get(LLVMInt32(pos.last_column));
#endif
md = llvm::MDNode::get(*g->ctx, last_column);
inst->setMetadata("last_column", md);
}