タグ

ブックマーク / homepage1.nifty.com (2)

  • Intel optimization

     Intelプロセッサ最適化マニュアルを読もう 今まである程度は読んでたけど, 『Intel 64 and IA-32 Architectures Optimization Reference Manual』を読み直して, 気づいたことなどをまとめてみようという試み. 今手元にあるのは248966-024 April 2011のもの. 日語版もありますが, 多少古いので英語版がよいでしょう. 表記について プロセッサと書いたり, CPUと書いたりします. Intel64をx64と書いたりします. 例えば3サイクルのことを個人的な慣習で3clkと書くことが多いです. すいません. 間違いなどございましたらメール(herumi@nifty.com)か@herumiにお願いします. 2章 Intel64/IA-32 CPUアーキテクチャ 2.1 Sandy Bridge概要 2.1.

    wasabiz
    wasabiz 2014/12/16
  • x86_64 Assembly Language Programming

    レジスタの使い方は次の通りです. レジスタ用途保存 rax戻り値不要 rcx1番目の整数型引数不要 rdx2番目の整数型引数不要 r83番目の整数型引数不要 r94番目の整数型引数不要 r10, r11-必要なら呼び出し元(caller)で保存 r12〜r15, rdi, rsi, rbx, rbp, rsp-必要なら呼び出し側(callee)で保存 xm01番目の浮動小数型引数 / 戻り値不要 xm12番目の浮動小数型引数不要 xm23番目の浮動小数型引数不要 xm34番目の浮動小数型引数不要 xm4, xm5-必要なら呼び出し元(caller)で保存 xm6〜xm15-必要なら呼び出し側(callee)で保存 スタックは常に16byteアラインメントされています. ただし関数呼び出し直後は戻りアドレス(8byte)がpushされているため, 8(mod 1

  • 1