Код операции NVPTX для шестнадцатеричного кода в LLVM
В LLVM, когда исходный файл CUDA компилируется в файл PTX, генерируются коды операций. Теперь какой раздел в LLVM преобразует эти коды операций в файле PTX в двоичный файл (шестнадцатеричный код) (т. Е. Конечный исполняемый файл). Поиск по lvm/lib/Target/NVPTX не дал ответа на этот вопрос.
1 ответ
Решение
Обычно это происходит в NVPTXInstrInfo.td, хотя похоже, что в них указана мнемоника сборки, но не биты кодирования. Обычно это означает, что LLVM не выполняет сборку, а вместо этого передается внешнему ассемблеру.
Вы можете посмотреть на HexagonInstrInfo.td, чтобы увидеть, как будут выглядеть биты кодирования. Искать "let Inst{"