機械語最適化メモ - miura1729/mruby GitHub Wiki
- INCを使わない、1をロードするのにxor eax, eax;inc eaxとしていたが、再考する。 (3.5.1.1)
相当クリティカルな場合でもそれほど差が無いので、あまり気にすることはないが、2をロードするなら素直にmovを使った方がいい(eaxを壊さないから) herumiさんありがとうございます。 https://twitter.com/herumi/status/439567585160343553
- 分岐命令での飛び先はNOPを入れて16バイトアライメントを取る (3.4.1.5) 12
試してみたが、かんばしい効果得られず。却って遅くなる。勘違いかもしれないのでもうちょっと調べる
- gen_exitで生成するコード(RITE VMに戻るための命令列)は実行頻度が少ないので別のところで生成し、そこにジャンプするようにする (3.4.1.5) 13