Использование этого:
Как добавить узлы метаданных с помощью привязок LLVM C Api / llvm-fs
Мне удалось увидеть, как добавить метаданные к значению LLVM. Но я хочу добавить общее значение метаданных c. Моя цель - иметь ключ (например, «номер_файла») и значение (например, 127). Я попытался добавить его как флаг:
char len_str[50];
sprintf(len_str, "%d", 127);
LLVMValueRef len_val = LLVMMDString(len_str, strlen(len_str));
LLVMValueRef len_v_md = LLVMMDNode(&len_val, 1);
LLVMMetadataRef len_md = LLVMValueAsMetadata(len_v_md);
LLVMAddModuleFlag(mod, LLVMModuleFlagBehaviorAppend, "file_number", sizeof("file_number") - 1, len_md);
Но у меня были проблемы с проверкой модуля. Кроме того, я не смог прочитать значение. Я также не знаю, является ли использование флага лучшей практикой. Есть идеи?