我優化OpenRISC C代碼,我想手動prereserve在寄存器中的一些計算值,僞代碼看起來像這樣:的內聯彙編使用寄存器
external loop
compute eight values (heavy calculations)
internal loop
use values computed above
當我看着GCC ABI爲OpenRISC我看到兩組寄存器:被保存的和臨時的?我應該使用哪些寄存器來存儲這八個值?我的意思是,哪些寄存器可以放入內聯asm中的clobbered列表?
我需要努力註冊,因爲我們在自定義的OpenRISC上運行可執行文件。