Maintenant que AnnotationManager de LLVM est parti (il a disparu dans la version 2.6, je pense?), Comment puis-je obtenir les annotations pour des fonctions, globales et instructions spécifiques?L'équivalent moderne de LLVM AnnotationManager?
(Par exemple, j'ai compilé à partir de C code binaire void myFunction(__attribute__((annotate("foo"))) int var)
--- donné une référence Argument *
à cet argument int var
, comment pourrais-je déterminer quels attributs annotate
y sont attachés?)
Eh bien, vous aurez besoin de se pencher sur IR pour les appels de cette fonction, examinez ses arguments et récupérez les informations. Donc, fondamentalement, vous devez "analyser" certaines constructions IR utilisées pour émettre les annotations. –