Найден ответ.
Идея состоит в том, чтобы перебрать токены ASM, возвращаемые MSAsmStmt, и получить местоположение для каждого токена.
size_t asmTokens = asmStmt->getNumAsmToks();
clang::Token* tokens = asmStmt->getAsmToks();
for (size_t i = 0; i < asmTokens; ++i) {
clang::Token token = tokens[i];
size_t tokloc = SourceManager.getExpansionLineNumber(token.getLocation());
}