我正在研究llvm项目。最近我尝试使用下一个命令使用clang命令行将我的一个.c文件编译成一个.s文件:
clang --target=arch -S -O0 select.c -o select.s
它在函数ARCHInstrInfo :: storeRegToStackSlot的后端崩溃,带有堆栈的回溯。 但是,当我试图分步进行时:
clang -O0 -emit-llvm select.c -c -o select.bc
llc -filetype=asm -march=arch ./select.bc -o ./select.s -print-after-all -debug-only isel
它成功了!! (?)
我怎么能看到clang如何调用后端(llc)?
我试着用-v标志运行clang,但它没有打印出它如何调用后端...
答案 0 :(得分:0)
所以第一个突出的是IE默认为O2而不是O0所以你可能想先看看那里。