VEX.L

読み:ヴィーイーエックス・ドット・エル
外語:VEX.L 英語
品詞:名詞

x86のオペコードの表記で、VEX.Lフィールドが1となったVEXプリフィックスが存在すること。

目次

VEXプリフィックスは2バイト長と3バイト長があるほか、さまざまな情報フィールドがあり、このためVEX.L=1の表現をしようとしても、オペコードが一定しない。

しかも、VEX.Lフィールドは2バイトVEXプリフィックスにも、3バイトVEXプリフィックスにも存在する。

具体的には、VEX.L=1に限定しても、2バイトVEXプリフィックスでは32通りの自由度、3バイトVEXプリフィックスでは2バイト目は8通り、3バイト目は32通りの自由度があるため、32+8×32通りで計288通りが存在する事になる。そこで、16進数での表記を諦めて、「VEX.L」と記載する。

機能

VEX.Lフィールドは、ベクトル長を表わす。

  • VEX.L=0: 128ビットベクトルまたは32/64ビットスカラー
  • VEX.L=1: 256ビットベクトル

動作

切り替わり方は、命令ごとに若干の差があるが、概ね次のような傾向を示す。

  • xmmやm32の命令は、VEX.L=1にすることでymm命令に切り替わる。
    • VEX.L=0 ‐ vbroadcastss xmm1, m32
    • VEX.L=1 ‐ vbroadcastss ymm1, m32
  • xmmやm64の命令は、VEX.L=1にすることでymmやm128命令に切り替わる。
    • VEX.L=0 ‐ vcvtph2ps xmm1, xmm2/m64
    • VEX.L=1 ‐ vcvtph2ps ymm1, xmm2/m128
  • xmmやm128の命令は、VEX.L=1にすることでymmやm256命令に切り替わる。
    • VEX.L=0 ‐ vfmaddsub132pd xmm0, xmm1, xmm2/m128
    • VEX.L=1 ‐ vfmaddsub132pd ymm0, ymm1, ymm2/m256

VEX.L=0でXMMレジスター、VEX.L=1でYMMレジスターとなるのが主たる目的であるが、それに合わせてメモリーアクセスなども変化することがある。

用語の所属
VEXプリフィックス
関連する用語
VEX.W

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club