コルーチンで回すタスクを書いたobjをobjdumpしたらdstレジスタをgrepしたらr0-r3を 除外したら保存すべきレジスタを節約出来る気がしたらやってみたら大抵はr4-r7しか 使ってなかったという。THUMBだからそうなのか。 と思いきや、バンバン使ってるのもあった。あーそっか二度に分けてpushするんだ。なるへそ。なんか初めて真面目にarm-elf-gcc の吐くTHUMBコードを読んでる気がする。まあ自分で書く機会は無いんだろうけどなあ。 どうでもいいけどデバッグ用にsprintfを埋め込んだらスタック消費しすぎてて鼻血が 出たよ。00000068 <shitukoi_helico>: 68: b5f0 push {r4, r5, r6, r7, lr} 6a: 4647 mov r7, r8 6c: b480 push {r7}
ゲツマツーъ( ゚ω^)