- 668 名前:・∀・)っ-○●◎ [2006/04/30(日) 05:36:03 ]
- Camellia_Feistel(xx,kk,oo) マクロなら、64bitのレジスタがあればたしかに半分にできると思う。
でも一番実行クロック食うのってテーブル参照のロードレイテンシな気がするんだけど。 テーブルを束ねて参照回数を減らす手もあるけどテーブルがキャッシュに収まらなくなるので 逆にレイテンシ伸びる希ガス。 例えばpextrw eax, mm0で16bitずつ抽出してal と ahで分けることで8bitずつの値になる。 AESのASMコードがこんな感じのことやってた。Camelliaでも大体似たような ことやればいいと思うよ。 まぁフルにASMで書けば扱えるレジスタの制約が多少緩くなるけど、インラインasmで十分だと思う。
|

|