我正在研究llvm項目。最近我tryed使用下一個命令編譯器的使用鐺命令行下進入一個.s文件我.c文件之一:什麼是從clang傳遞給llc的參數?
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,但它沒有打印它如何調用後端...
你看不到「鏗鏘聲如何調用後端(llc)」,因爲它不是。 llc是一個在某些IR上調用後端的命令行工具,但clang不會調用,其驅動程序將直接構建後端。 – Joky