[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[OSASK 1036] Re: guide0.



光成です。

[OSASK 1025]の川合さん

>  僕はアセンブラが好きです。どの命令がどのくらいの速度で処理され
>るか、どの命令とどの命令が並列実行されるのか、コードは何バイトに
>なるのかが、完全に把握できるからです。

ASKAが究極のアセンブラを目指すなら、私はこんな機能が欲しいです。
それは、現在書いてるコードが、関数の先頭から何byte目かを表示する
機能です。

最近のCPUでは、データのalignmentだけでなくコードのalignmentも大事です。

例えばK6-2/K6-IIIのFPU命令はmodulo 32byteを跨がないように並べないと
いけないとか、PIIIやK7だとジャンプ先が16の倍数の方がいいとか。

私は手を抜いて、

   jmp .lp
   align 16
lp:
  ループ本体

こんな感じのコードをよく書くのですが、リアルタイムで何byteか表示されれば
適当に命令を並び変えたり変更したりしてより効率良く書けると思います。

#無論、現在のアセンブラでも16進コードを出力させてそれを見ながら修正する
#ことは出来るのですがあまりに面倒なので...