[all-commits] [llvm/llvm-project] 62d8ae: [X86][NFC] Remove class (VEX/EVEX/XOP)_4V and add ...

Shengchen Kan via All-commits all-commits at lists.llvm.org
Thu Dec 21 18:39:28 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 62d8ae0a1e7b80a91dc579dc22b335bb22ed07f8
      https://github.com/llvm/llvm-project/commit/62d8ae0a1e7b80a91dc579dc22b335bb22ed07f8
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2023-12-22 (Fri, 22 Dec 2023)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAMX.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrArithmetic.td
    M llvm/lib/Target/X86/X86InstrMisc.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86InstrTBM.td
    M llvm/lib/Target/X86/X86InstrUtils.td
    M llvm/lib/Target/X86/X86InstrXOP.td

  Log Message:
  -----------
  [X86][NFC] Remove class (VEX/EVEX/XOP)_4V and add class VVVV

`VEX_4V` does not look simpler than `VEX, VVVV`. It's kind of confusing
b/c classes like `VEX_L`, `VEX_LIG` do not imply `VEX` but it does.

For APX, we have promote EVEX, NDD, NF and NDD_NF instructions. All of
the 4 variants are in EVEX space and NDD/NDD_NF set the VVVV fields.
To extract the common fields (e.g EVEX) into a class and set VVVV
conditionally, we need VVVV to not imply other prefixes.




More information about the All-commits mailing list