В следующем разделе кода MIPS я должен сказать, какие регистры должны быть сохранены во время пролога, а затем восстановлены позже.Я нашел некоторые из них, включая: $ ra, $ a0 и $ v0
Но нужно ли сохранять / восстанавливать что-нибудь неочевидное, например, $ sp или $ fp?Спасибо.
func: #insert function prologue here
bne $a0, $0, else
addi $v0, $0, 1
j ret
else:
srl $a0, $a0, 1
jal func
addi $v0, $v0, 1
ret: #insert function epilogue here
jr $ra