Как отключить встроенный ассемблер LLVM?
У меня есть проект с использованием рукописного синтаксиса assembly-AT & T, отлично работает с GCC, но не сделан мной, и я очень мало знаю об сборке, что проявляет странную проблему при попытке создать его с помощью Clang.
Документация LLVM упоминает, что "большинство целей X86" используют встроенный ассемблер LLVM в отличие от системного ассемблера; как возможное обходное решение, я хотел бы явно использовать последнее. Мне (ну, Google) не удалось найти информацию о том, как это сделать.
Вопрос: Есть ли способ спросить или, скорее, заставить Clang/LLVM использовать системный ассемблер вместо интегрированного?
(Я знаю, что всегда мог идти и читать The Source ™, но я хочу знать, есть ли документированный подход.)
Ответы
Ответ 1
Оказывается, я полностью пропустил это на странице руководства:
-integrated-as
-no-integrated-as
Используется для включения и отключения, соответственно, использования встроенного ассемблера. Независимо от того, включен ли встроенный ассемблер по умолчанию, он зависит от цели.
Чтобы отключить его при вызове компилятора:
clang -no-integrated-as -c foo.c
Или:
export CC="clang -no-integrated-as"
make