aboutsummaryrefslogtreecommitdiff
path: root/src/zig_llvm.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2016-01-02 20:42:32 -0700
committerAndrew Kelley <superjoe30@gmail.com>2016-01-02 20:42:32 -0700
commitfb1e3a5be976c76f821abf387bdd69446f2ab07b (patch)
tree197fbb7935881c53804dfc29007da0c7063f5b80 /src/zig_llvm.cpp
parent258bc73eee557ada944c9d25ed85d9baf8035ad7 (diff)
downloadzig-fb1e3a5be976c76f821abf387bdd69446f2ab07b.tar.gz
zig-fb1e3a5be976c76f821abf387bdd69446f2ab07b.zip
codegen: emit debug metadata for parameters
Diffstat (limited to 'src/zig_llvm.cpp')
-rw-r--r--src/zig_llvm.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/zig_llvm.cpp b/src/zig_llvm.cpp
index 13e9dc956e..122ddf4843 100644
--- a/src/zig_llvm.cpp
+++ b/src/zig_llvm.cpp
@@ -387,6 +387,17 @@ void LLVMZigRestoreInsertPoint(LLVMBuilderRef builder, LLVMZigInsertionPoint *ip
unwrap(builder)->restoreIP(*ip);
}
+LLVMValueRef LLVMZigInsertDeclareAtEnd(LLVMZigDIBuilder *dibuilder, LLVMValueRef storage,
+ LLVMZigDILocalVariable *var_info, LLVMZigDILocation *debug_loc, LLVMBasicBlockRef basic_block_ref)
+{
+ Instruction *result = reinterpret_cast<DIBuilder*>(dibuilder)->insertDeclare(
+ unwrap(storage),
+ reinterpret_cast<DILocalVariable *>(var_info),
+ reinterpret_cast<DIBuilder*>(dibuilder)->createExpression(),
+ reinterpret_cast<DILocation*>(debug_loc),
+ static_cast<BasicBlock*>(unwrap(basic_block_ref)));
+ return wrap(result);
+}
LLVMValueRef LLVMZigInsertDeclare(LLVMZigDIBuilder *dibuilder, LLVMValueRef storage,
LLVMZigDILocalVariable *var_info, LLVMZigDILocation *debug_loc, LLVMValueRef insert_before_instr)