LLVM inserta llamadas de función pthread en IR

Estoy escribiendo un pase de LLVM (es unLoopPass) que necesita insertar llamadas de funciones pthread como pthread_create () y pthread_join () en el IR. Sé cómo crear e insertar una llamada de función en IR, pero tengo problemas para obtener la representación de pthread deFunction* en LLVM.

Esto es lo que tengo:

Function *pthread_create_func = currentModule->getFunction("pthread_create"); pero devuelve NULL.

Como comparacionFunction *printf_func = currentModule->getFunction("printf"); devolverá el correctoFunction* eso me permite insertar una nueva llamada de función a printf en IR.

yo tengo#include "pthread.h" en mi pase y-pthread justo después declang -emit-llvm pero aun no puede encontrarpthread_create u otropthread_* funciona de alguna manera.

Respuestas a la pregunta(2)

Su respuesta a la pregunta