将分配的地址提取为成员指针类型

时间:2018-09-28 17:24:56

标签: clang llvm

对于以下代码:

class Testpm {
    public:void m_func1() { cout << "m_func1\n"; }
    int a;
};
void (Testpm::*pmfn)();
int main(){
    Testpm ATestpm;pmfn = &Testpm::m_func1;
}

铛为pmfn = &Testpm::m_func1生成以下LLVM IR:

store { i64, i64 } { i64 ptrtoint (void (%class.Testpm*)* @_ZN6Testpm7m_func1Ev to i64), i64 0 }, { i64, i64 }* @pmfn, align 8

我想在此之前或之后添加指令以提取存储在“ pmfn”(目标地址)中的内容。我所拥有的是StoreInst以及关联的值(源)和地址(目的地)。任何人都可以提出解决此问题的方法吗?

0 个答案:

没有答案