HLX-001 の補足ページ#3
(9) その他の雑多な話
- [Q] 共通中間コードについて質問です。基本的にHL-9aの内部コードとよく似ているということはよくわかりますが、大きな違いとして、(1)OpJeq~OpJgtの分岐命令が、OpCmpEq~OpCmpGt + OpJcc の2命令に分割されたこと、(2)OpVoid命令が追加されたこと、が、あると思います。このような変更をした理由を教えてください。
(10) HLX-001内の細かい比較
- hlx001a :
- hlx001b :
- hlx001aではビルドに失敗していたので、hlx001_64.exeを差し替えた。
- hlx001c :
- hlx001bはunrollにバグがあったので修正。else ifが使えるように改造。最適化を少し改良。
- コードの最適化の差異(バイト数)(codemode 1, optmode 1):
| | hlx001a | hlx001c |
| grd.c | regVar(0, x, y, c) | | 120 |
| mandel.c | regVar(0, n, zx, zy) | | 411 |
| maze.c | regVar(0, _t0, yy, xx) | | 944 |
| kcube.c | regVar(0, _t0, _t1, i) | | 2019 |
| invader.c | | | |
こめんと欄