Method InsertValue
InsertValue(Value, DILocalVariable, DILocation, Instruction)
Inserts a call to the llvm.dbg.value intrinsic before the specified instruction
Declaration
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DILocation location, Instruction insertBefore)
Parameters
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DILocation location, Instruction insertBefore)
Value | value | New value |
DILocalVariable | varInfo | DILocalVariable describing the variable |
DILocation | location | DILocationfor the assignment |
Instruction | insertBefore | Location to insert the intrinsic |
Returns
CallInstruction | CallInstruction for the intrinsic |
Remarks
This intrinsic provides information when a user source variable is set to a new value.
note
The call has no impact on the actual machine code generated, as it is removed or ignored for actual target instruction selection. Instead this provides a means to bind the LLVM Debug information metadata to a particular LLVM Value that allows the transformation and optimization passes to track the debug information. Thus, even with optimized code the actual debug information is retained.
See Also
InsertValue(Value, DILocalVariable, DIExpression, DILocation, Instruction)
Inserts a call to the llvm.dbg.value intrinsic before the specified instruction
Declaration
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DIExpression expression, DILocation location, Instruction insertBefore)
Parameters
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DIExpression expression, DILocation location, Instruction insertBefore)
Value | value | New value |
DILocalVariable | varInfo | DILocalVariable describing the variable |
DIExpression | expression | DIExpression for the variable |
DILocation | location | DILocationfor the assignment |
Instruction | insertBefore | Location to insert the intrinsic |
Returns
CallInstruction | CallInstruction for the intrinsic |
Remarks
This intrinsic provides information when a user source variable is set to a new value.
note
The call has no impact on the actual machine code generated, as it is removed or ignored for actual target instruction selection. Instead this provides a means to bind the LLVM Debug information metadata to a particular LLVM Value that allows the transformation and optimization passes to track the debug information. Thus, even with optimized code the actual debug information is retained.
See Also
InsertValue(Value, DILocalVariable, DILocation, BasicBlock)
Inserts a call to the llvm.dbg.value intrinsic at the end of a basic block
Declaration
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DILocation location, BasicBlock insertAtEnd)
Parameters
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DILocation location, BasicBlock insertAtEnd)
Value | value | New value |
DILocalVariable | varInfo | DILocalVariable describing the variable |
DILocation | location | DILocationfor the assignment |
BasicBlock | insertAtEnd | Block to append the intrinsic to the end of |
Returns
CallInstruction | CallInstruction for the intrinsic |
Remarks
This intrinsic provides information when a user source variable is set to a new value.
note
The call has no impact on the actual machine code generated, as it is removed or ignored for actual target instruction selection. Instead this provides a means to bind the LLVM Debug information metadata to a particular LLVM Value that allows the transformation and optimization passes to track the debug information. Thus, even with optimized code the actual debug information is retained.
See Also
InsertValue(Value, DILocalVariable, DIExpression, DILocation, BasicBlock)
Inserts a call to the llvm.dbg.value intrinsic at the end of a basic block
Declaration
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DIExpression expression, DILocation location, BasicBlock insertAtEnd)
Parameters
public CallInstruction InsertValue(Value value, DILocalVariable varInfo, DIExpression expression, DILocation location, BasicBlock insertAtEnd)
Value | value | New value |
DILocalVariable | varInfo | DILocalVariable describing the variable |
DIExpression | expression | DIExpression for the variable |
DILocation | location | DILocationfor the assignment |
BasicBlock | insertAtEnd | Block to append the intrinsic to the end of |
Returns
CallInstruction | CallInstruction for the intrinsic |
Remarks
This intrinsic provides information when a user source variable is set to a new value.
note
The call has no impact on the actual machine code generated, as it is removed or ignored for actual target instruction selection. Instead, this provides a means to bind the LLVM Debug information metadata to a particular LLVM Value that allows the transformation and optimization passes to track the debug information. Thus, even with optimized code the actual debug information is retained.