我正在尝试检测 LLVM IR 调用指令。我想要实现的是获取函数调用的参数。如果参数是指针类型,那么我想获取指针指向的元素/变量。我知道如果我有争论,我可以使用
getPointerElementType to get the type of element the pointer is pointing to.
但是如何访问元素的值?
你想要
获取指针指向的元素/变量
这也称为“取消引用指针”。这不是你可以在编译时做的事情,但你 can 做的是插入一条执行取消引用的指令 - 换句话说,a
load
• IRBuilder.load(ptr, name='', align=None) 从指针 ptr 加载值。如果传递了 align,它应该是一个 Python 整数,指定保证 指针对齐。