From 1046ead0cc409287b88554a90c2f80718e1af46d Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Tue, 8 Mar 2022 13:01:58 -0700 Subject: LLVM: no longer store args into alloca instructions Previously, we did this so that we could insert a debug variable declaration intrinsic on the alloca. But there is a dbg.value intrinsic for declaring variables that are values. --- src/zig_llvm.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/zig_llvm.cpp') diff --git a/src/zig_llvm.cpp b/src/zig_llvm.cpp index aa07a7fed1..21e83319d9 100644 --- a/src/zig_llvm.cpp +++ b/src/zig_llvm.cpp @@ -942,6 +942,19 @@ LLVMValueRef ZigLLVMInsertDeclareAtEnd(ZigLLVMDIBuilder *dibuilder, LLVMValueRef return wrap(result); } +LLVMValueRef ZigLLVMInsertDbgValueIntrinsicAtEnd(ZigLLVMDIBuilder *dib, LLVMValueRef val, + ZigLLVMDILocalVariable *var_info, ZigLLVMDILocation *debug_loc, + LLVMBasicBlockRef basic_block_ref) +{ + Instruction *result = reinterpret_cast(dib)->insertDbgValueIntrinsic( + unwrap(val), + reinterpret_cast(var_info), + reinterpret_cast(dib)->createExpression(), + reinterpret_cast(debug_loc), + static_cast(unwrap(basic_block_ref))); + return wrap(result); +} + LLVMValueRef ZigLLVMInsertDeclare(ZigLLVMDIBuilder *dibuilder, LLVMValueRef storage, ZigLLVMDILocalVariable *var_info, ZigLLVMDILocation *debug_loc, LLVMValueRef insert_before_instr) { -- cgit v1.2.3