我正在开发LLVM/Clang 分叉 (用于AVR)。如何迫使Clang驱动程序使用LLVM汇编程序而不是system?
MBA-Anton:bin asmirnov$ ./clang++ -I/Applications/avr.app/Contents/Resources/Java/hardware/avr/cores/avr -I/Applications/avr.app/Contents/Resources/Java/hardware/avr/variants/standard /var/folders/64/fwfkm1k51zbd4_c5lwpsbljh0000gn/T/build5450310618632673119.tmp/Blink.cpp -o /tmp/blin.avr.hex -I /Applications/avr.app//Contents/Resources/Java/hardware/tools/avr/avr/include/ --target=avr -O1 -v
它使用LLVM clang编译器(不是系统,正确):
clang version 3.6.0 (https://github.com/4ntoine/clang.git 0d08deedd548d964f63cf896ae9acb8d878a5fd8) (https://github.com/dylanmckay/avr-llvm.git 447b58bced825fa7bea31f3882f277535cc9fca6)
Target: avr
Thread model: posix
"/Users/asmirnov/Documents/dev/src/llvm_dylan/installed/bin/clang" -cc1 ...但是系统汇编程序(不正确):
"/usr/bin/as“-o .
它应该使用LLVM的llvm-as,因为它“知道”AVR目标(操作码等)。我如何强制它使用LLVM的汇编程序?
发布于 2014-12-15 19:48:28
通过使用-emit-llvm选项,您可以使用clang来发出LLVM IR代码。
假设您希望将一个C文件编译到LLVM IR中:
clang -emit-llvm -c file.c
它将创建一个LLVM字节码文件file.bc。您将能够使用llc编译该文件。
https://stackoverflow.com/questions/27467293
复制相似问题