0

関数ポインターの呼び出しに興味がある LLVM パスに取り組んでいます。ポインタが実際に何を指しているのか(または実際に呼び出されるのか)を知ることに加えて、関数ポインタ自体が必要です。

CallInst::getCalledValue()呼び出される関数を取得できるので、実際に使用された関数ポインタが必要です。

ptr1この例では、 (アドレス、変数オブジェクト自体、名前、何か)を取得したいと思います。

int main() {
    int (*ptr1)(int) = &f1;
    ptr1(42);
    return 0;
}
4

1 に答える 1

0

次に、パスに取り組んでいないので、clang を変更して、関数ポインターを介して呼び出しを取得し、情報をどこかに出力する必要があります。

于 2011-09-01T06:00:18.543 に答える