LLVM: lib/Target/X86/MCTargetDesc/X86InstComments.cpp File Reference (original) (raw)
Go to the source code of this file.
| Macros | |
|---|---|
| #define | CASE_SSE_INS_COMMON(Inst, src) |
| #define | CASE_AVX_INS_COMMON(Inst, Suffix, src) |
| #define | CASE_MASK_INS_COMMON(Inst, Suffix, src) |
| #define | CASE_MASKZ_INS_COMMON(Inst, Suffix, src) |
| #define | CASE_AVX512_INS_COMMON(Inst, Suffix, src) |
| #define | CASE_MASK_INS_COMMON_INT(Inst, Suffix, src) |
| #define | CASE_MASKZ_INS_COMMON_INT(Inst, Suffix, src) |
| #define | CASE_AVX512_INS_COMMON_INT(Inst, Suffix, src) |
| #define | CASE_FPCLASS_PACKED(Inst, src) |
| #define | CASE_FPCLASS_PACKED_MEM(Inst) |
| #define | CASE_FPCLASS_SCALAR(Inst, src) |
| #define | CASE_PTERNLOG(Inst, src) |
| #define | CASE_MOVDUP(Inst, src) |
| #define | CASE_MASK_MOVDUP(Inst, src) |
| #define | CASE_MASKZ_MOVDUP(Inst, src) |
| #define | CASE_PMOVZX(Inst, src) |
| #define | CASE_UNPCK(Inst, src) |
| #define | CASE_MASK_UNPCK(Inst, src) |
| #define | CASE_MASKZ_UNPCK(Inst, src) |
| #define | CASE_SHUF(Inst, suf) |
| #define | CASE_MASK_SHUF(Inst, src) |
| #define | CASE_MASKZ_SHUF(Inst, src) |
| #define | CASE_VPERMILPI(Inst, src) |
| #define | CASE_MASK_VPERMILPI(Inst, src) |
| #define | CASE_MASKZ_VPERMILPI(Inst, src) |
| #define | CASE_VPERM(Inst, src) |
| #define | CASE_MASK_VPERM(Inst, src) |
| #define | CASE_MASKZ_VPERM(Inst, src) |
| #define | CASE_VSHUF(Inst, src) |
| #define | CASE_MASK_VSHUF(Inst, src) |
| #define | CASE_MASKZ_VSHUF(Inst, src) |
| #define | CASE_AVX512_FMA(Inst, suf) |
| #define | CASE_FMA(Inst, suf) |
| #define | CASE_FMA_PACKED_REG(Inst) |
| #define | CASE_FMA_PACKED_MEM(Inst) |
| #define | CASE_FMA_SCALAR_REG(Inst) |
| #define | CASE_FMA_SCALAR_MEM(Inst) |
| #define | CASE_FMA4(Inst, suf) |
| #define | CASE_FMA4_PACKED_RR(Inst) |
| #define | CASE_FMA4_PACKED_RM(Inst) |
| #define | CASE_FMA4_PACKED_MR(Inst) |
| #define | CASE_FMA4_SCALAR_RR(Inst) |
| #define | CASE_FMA4_SCALAR_RM(Inst) |
| #define | CASE_FMA4_SCALAR_MR(Inst) |
| Functions | |
|---|---|
| static unsigned | getVectorRegSize (MCRegister Reg) |
| static unsigned | getRegOperandNumElts (const MCInst *MI, unsigned ScalarSize, unsigned OperandIndex) |
| static const char * | getRegName (MCRegister Reg) |
| static void | printMasking (raw_ostream &OS, const MCInst *MI, const MCInstrInfo &MCII) |
| Wraps the destination register name with AVX512 mask/maskz filtering. | |
| static bool | printFMAComments (const MCInst *MI, raw_ostream &OS, const MCInstrInfo &MCII) |
| static bool | printPTERNLOGComments (const MCInst *MI, raw_ostream &OS, const MCInstrInfo &MCII) |
| static bool | printFPCLASSComments (const MCInst *MI, raw_ostream &OS, const MCInstrInfo &MCII) |
◆ CASE_AVX512_FMA
| #define CASE_AVX512_FMA | ( | Inst, |
|---|---|---|
| suf ) |
Value:
CASE_AVX512_INS_COMMON(Inst, Z, suf) \
CASE_AVX512_INS_COMMON(Inst, Z256, suf) \
CASE_AVX512_INS_COMMON(Inst, Z128, suf)
Definition at line 183 of file X86InstComments.cpp.
◆ CASE_AVX512_INS_COMMON
| #define CASE_AVX512_INS_COMMON | ( | Inst, |
|---|---|---|
| Suffix, | ||
| src ) |
◆ CASE_AVX512_INS_COMMON_INT
| #define CASE_AVX512_INS_COMMON_INT | ( | Inst, |
|---|---|---|
| Suffix, | ||
| src ) |
Value:
CASE_AVX_INS_COMMON(Inst, Suffix, src##_Int) \
CASE_MASK_INS_COMMON_INT(Inst, Suffix, src) \
CASE_MASKZ_INS_COMMON_INT(Inst, Suffix, src)
Definition at line 49 of file X86InstComments.cpp.
◆ CASE_AVX_INS_COMMON
| #define CASE_AVX_INS_COMMON | ( | Inst, |
|---|---|---|
| Suffix, | ||
| src ) |
◆ CASE_FMA
| #define CASE_FMA | ( | Inst, |
|---|---|---|
| suf ) |
Value:
CASE_AVX512_FMA(Inst, suf) \
CASE_AVX_INS_COMMON(Inst, , suf) \
CASE_AVX_INS_COMMON(Inst, Y, suf)
static TableGen::Emitter::Opt Y("gen-skeleton-entry", EmitSkeleton, "Generate example skeleton entry")
Definition at line 188 of file X86InstComments.cpp.
◆ CASE_FMA4
| #define CASE_FMA4 | ( | Inst, |
|---|---|---|
| suf ) |
◆ CASE_FMA4_PACKED_MR
| #define CASE_FMA4_PACKED_MR | ( | Inst | ) |
|---|
◆ CASE_FMA4_PACKED_RM
| #define CASE_FMA4_PACKED_RM | ( | Inst | ) |
|---|
◆ CASE_FMA4_PACKED_RR
| #define CASE_FMA4_PACKED_RR | ( | Inst | ) |
|---|
◆ CASE_FMA4_SCALAR_MR
| #define CASE_FMA4_SCALAR_MR | ( | Inst | ) |
|---|
Value:
CASE_AVX_INS_COMMON(Inst##SD4, , mr) \
CASE_AVX_INS_COMMON(Inst##SS4, , mr) \
CASE_AVX_INS_COMMON(Inst##SD4, , mr_Int) \
CASE_AVX_INS_COMMON(Inst##SS4, , mr_Int)
Definition at line 251 of file X86InstComments.cpp.
Referenced by printFMAComments().
◆ CASE_FMA4_SCALAR_RM
| #define CASE_FMA4_SCALAR_RM | ( | Inst | ) |
|---|
Value:
CASE_AVX_INS_COMMON(Inst##SD4, , rm) \
CASE_AVX_INS_COMMON(Inst##SS4, , rm) \
CASE_AVX_INS_COMMON(Inst##SD4, , rm_Int) \
CASE_AVX_INS_COMMON(Inst##SS4, , rm_Int)
Definition at line 245 of file X86InstComments.cpp.
Referenced by printFMAComments().
◆ CASE_FMA4_SCALAR_RR
| #define CASE_FMA4_SCALAR_RR | ( | Inst | ) |
|---|
Value:
CASE_AVX_INS_COMMON(Inst##SD4, , rr) \
CASE_AVX_INS_COMMON(Inst##SS4, , rr) \
CASE_AVX_INS_COMMON(Inst##SD4, , rr_Int) \
CASE_AVX_INS_COMMON(Inst##SS4, , rr_Int)
Definition at line 239 of file X86InstComments.cpp.
Referenced by printFMAComments().
◆ CASE_FMA_PACKED_MEM
| #define CASE_FMA_PACKED_MEM | ( | Inst | ) |
|---|
◆ CASE_FMA_PACKED_REG
| #define CASE_FMA_PACKED_REG | ( | Inst | ) |
|---|
◆ CASE_FMA_SCALAR_MEM
| #define CASE_FMA_SCALAR_MEM | ( | Inst | ) |
|---|
Value:
CASE_AVX_INS_COMMON(Inst##SD, , m) \
CASE_AVX_INS_COMMON(Inst##SS, , m) \
CASE_AVX_INS_COMMON(Inst##SD, , m_Int) \
CASE_AVX_INS_COMMON(Inst##SS, , m_Int) \
CASE_AVX_INS_COMMON(Inst##SD, Z, m) \
CASE_AVX_INS_COMMON(Inst##SS, Z, m) \
CASE_AVX512_INS_COMMON_INT(Inst##SD, Z, m) \
CASE_AVX512_INS_COMMON_INT(Inst##SS, Z, m)
Definition at line 213 of file X86InstComments.cpp.
Referenced by printFMAComments().
◆ CASE_FMA_SCALAR_REG
| #define CASE_FMA_SCALAR_REG | ( | Inst | ) |
|---|
Value:
CASE_AVX_INS_COMMON(Inst##SD, , r) \
CASE_AVX_INS_COMMON(Inst##SS, , r) \
CASE_AVX_INS_COMMON(Inst##SD, , r_Int) \
CASE_AVX_INS_COMMON(Inst##SS, , r_Int) \
CASE_AVX_INS_COMMON(Inst##SD, Z, r) \
CASE_AVX_INS_COMMON(Inst##SS, Z, r) \
CASE_AVX512_INS_COMMON_INT(Inst##SD, Z, r) \
CASE_AVX512_INS_COMMON_INT(Inst##SS, Z, r)
Definition at line 203 of file X86InstComments.cpp.
Referenced by printFMAComments().
◆ CASE_FPCLASS_PACKED
| #define CASE_FPCLASS_PACKED | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_AVX_INS_COMMON(Inst, Z, src##i) \
CASE_AVX_INS_COMMON(Inst, Z256, src##i) \
CASE_AVX_INS_COMMON(Inst, Z128, src##i) \
CASE_MASK_INS_COMMON(Inst, Z, src##i)
Definition at line 54 of file X86InstComments.cpp.
Referenced by printFPCLASSComments().
◆ CASE_FPCLASS_PACKED_MEM
| #define CASE_FPCLASS_PACKED_MEM | ( | Inst | ) |
|---|
◆ CASE_FPCLASS_SCALAR
| #define CASE_FPCLASS_SCALAR | ( | Inst, |
|---|---|---|
| src ) |
◆ CASE_MASK_INS_COMMON
| #define CASE_MASK_INS_COMMON | ( | Inst, |
|---|---|---|
| Suffix, | ||
| src ) |
◆ CASE_MASK_INS_COMMON_INT
| #define CASE_MASK_INS_COMMON_INT | ( | Inst, |
|---|---|---|
| Suffix, | ||
| src ) |
◆ CASE_MASK_MOVDUP
| #define CASE_MASK_MOVDUP | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASK_INS_COMMON(Inst, Z, r##src) \
CASE_MASK_INS_COMMON(Inst, Z256, r##src) \
CASE_MASK_INS_COMMON(Inst, Z128, r##src)
Definition at line 81 of file X86InstComments.cpp.
◆ CASE_MASK_SHUF
| #define CASE_MASK_SHUF | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASK_INS_COMMON(Inst, Z, r##src##i) \
CASE_MASK_INS_COMMON(Inst, Z256, r##src##i) \
CASE_MASK_INS_COMMON(Inst, Z128, r##src##i)
Definition at line 125 of file X86InstComments.cpp.
◆ CASE_MASK_UNPCK
| #define CASE_MASK_UNPCK | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASK_INS_COMMON(Inst, Z, r##src) \
CASE_MASK_INS_COMMON(Inst, Z256, r##src) \
CASE_MASK_INS_COMMON(Inst, Z128, r##src)
Definition at line 107 of file X86InstComments.cpp.
◆ CASE_MASK_VPERM
| #define CASE_MASK_VPERM | ( | Inst, |
|---|---|---|
| src ) |
◆ CASE_MASK_VPERMILPI
| #define CASE_MASK_VPERMILPI | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASK_INS_COMMON(Inst, Z, src##i) \
CASE_MASK_INS_COMMON(Inst, Z256, src##i) \
CASE_MASK_INS_COMMON(Inst, Z128, src##i)
Definition at line 142 of file X86InstComments.cpp.
◆ CASE_MASK_VSHUF
| #define CASE_MASK_VSHUF | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASK_INS_COMMON(SHUFF##Inst, Z, r##src##i) \
CASE_MASK_INS_COMMON(SHUFI##Inst, Z, r##src##i) \
CASE_MASK_INS_COMMON(SHUFF##Inst, Z256, r##src##i) \
CASE_MASK_INS_COMMON(SHUFI##Inst, Z256, r##src##i)
Definition at line 171 of file X86InstComments.cpp.
◆ CASE_MASKZ_INS_COMMON
| #define CASE_MASKZ_INS_COMMON | ( | Inst, |
|---|---|---|
| Suffix, | ||
| src ) |
◆ CASE_MASKZ_INS_COMMON_INT
| #define CASE_MASKZ_INS_COMMON_INT | ( | Inst, |
|---|---|---|
| Suffix, | ||
| src ) |
◆ CASE_MASKZ_MOVDUP
| #define CASE_MASKZ_MOVDUP | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASKZ_INS_COMMON(Inst, Z, r##src) \
CASE_MASKZ_INS_COMMON(Inst, Z256, r##src) \
CASE_MASKZ_INS_COMMON(Inst, Z128, r##src)
Definition at line 86 of file X86InstComments.cpp.
◆ CASE_MASKZ_SHUF
| #define CASE_MASKZ_SHUF | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASKZ_INS_COMMON(Inst, Z, r##src##i) \
CASE_MASKZ_INS_COMMON(Inst, Z256, r##src##i) \
CASE_MASKZ_INS_COMMON(Inst, Z128, r##src##i)
Definition at line 130 of file X86InstComments.cpp.
◆ CASE_MASKZ_UNPCK
| #define CASE_MASKZ_UNPCK | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASKZ_INS_COMMON(Inst, Z, r##src) \
CASE_MASKZ_INS_COMMON(Inst, Z256, r##src) \
CASE_MASKZ_INS_COMMON(Inst, Z128, r##src)
Definition at line 112 of file X86InstComments.cpp.
◆ CASE_MASKZ_VPERM
| #define CASE_MASKZ_VPERM | ( | Inst, |
|---|---|---|
| src ) |
◆ CASE_MASKZ_VPERMILPI
| #define CASE_MASKZ_VPERMILPI | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASKZ_INS_COMMON(Inst, Z, src##i) \
CASE_MASKZ_INS_COMMON(Inst, Z256, src##i) \
CASE_MASKZ_INS_COMMON(Inst, Z128, src##i)
Definition at line 147 of file X86InstComments.cpp.
◆ CASE_MASKZ_VSHUF
| #define CASE_MASKZ_VSHUF | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_MASKZ_INS_COMMON(SHUFF##Inst, Z, r##src##i) \
CASE_MASKZ_INS_COMMON(SHUFI##Inst, Z, r##src##i) \
CASE_MASKZ_INS_COMMON(SHUFF##Inst, Z256, r##src##i) \
CASE_MASKZ_INS_COMMON(SHUFI##Inst, Z256, r##src##i)
Definition at line 177 of file X86InstComments.cpp.
◆ CASE_MOVDUP
| #define CASE_MOVDUP | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_AVX512_INS_COMMON(Inst, Z, r##src) \
CASE_AVX512_INS_COMMON(Inst, Z256, r##src) \
CASE_AVX512_INS_COMMON(Inst, Z128, r##src) \
CASE_AVX_INS_COMMON(Inst, , r##src) \
CASE_AVX_INS_COMMON(Inst, Y, r##src) \
CASE_SSE_INS_COMMON(Inst, r##src)
Definition at line 73 of file X86InstComments.cpp.
Referenced by llvm::EmitAnyX86InstComments().
◆ CASE_PMOVZX
| #define CASE_PMOVZX | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_AVX512_INS_COMMON(Inst, Z, r##src) \
CASE_AVX512_INS_COMMON(Inst, Z256, r##src) \
CASE_AVX512_INS_COMMON(Inst, Z128, r##src) \
CASE_AVX_INS_COMMON(Inst, , r##src) \
CASE_AVX_INS_COMMON(Inst, Y, r##src) \
CASE_SSE_INS_COMMON(Inst, r##src)
Definition at line 91 of file X86InstComments.cpp.
Referenced by llvm::EmitAnyX86InstComments().
◆ CASE_PTERNLOG
| #define CASE_PTERNLOG | ( | Inst, |
|---|---|---|
| src ) |
◆ CASE_SHUF
| #define CASE_SHUF | ( | Inst, |
|---|---|---|
| suf ) |
Value:
CASE_AVX512_INS_COMMON(Inst, Z, suf) \
CASE_AVX512_INS_COMMON(Inst, Z256, suf) \
CASE_AVX512_INS_COMMON(Inst, Z128, suf) \
CASE_AVX_INS_COMMON(Inst, , suf) \
CASE_AVX_INS_COMMON(Inst, Y, suf) \
CASE_SSE_INS_COMMON(Inst, suf)
Definition at line 117 of file X86InstComments.cpp.
Referenced by llvm::EmitAnyX86InstComments().
◆ CASE_SSE_INS_COMMON
| #define CASE_SSE_INS_COMMON | ( | Inst, |
|---|---|---|
| src ) |
◆ CASE_UNPCK
| #define CASE_UNPCK | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_AVX512_INS_COMMON(Inst, Z, r##src) \
CASE_AVX512_INS_COMMON(Inst, Z256, r##src) \
CASE_AVX512_INS_COMMON(Inst, Z128, r##src) \
CASE_AVX_INS_COMMON(Inst, , r##src) \
CASE_AVX_INS_COMMON(Inst, Y, r##src) \
CASE_SSE_INS_COMMON(Inst, r##src)
Definition at line 99 of file X86InstComments.cpp.
Referenced by llvm::EmitAnyX86InstComments().
◆ CASE_VPERM
| #define CASE_VPERM | ( | Inst, |
|---|---|---|
| src ) |
◆ CASE_VPERMILPI
| #define CASE_VPERMILPI | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_AVX512_INS_COMMON(Inst, Z, src##i) \
CASE_AVX512_INS_COMMON(Inst, Z256, src##i) \
CASE_AVX512_INS_COMMON(Inst, Z128, src##i) \
CASE_AVX_INS_COMMON(Inst, , src##i) \
CASE_AVX_INS_COMMON(Inst, Y, src##i)
Definition at line 135 of file X86InstComments.cpp.
Referenced by llvm::EmitAnyX86InstComments().
◆ CASE_VSHUF
| #define CASE_VSHUF | ( | Inst, |
|---|---|---|
| src ) |
Value:
CASE_AVX512_INS_COMMON(SHUFF##Inst, Z, r##src##i) \
CASE_AVX512_INS_COMMON(SHUFI##Inst, Z, r##src##i) \
CASE_AVX512_INS_COMMON(SHUFF##Inst, Z256, r##src##i) \
CASE_AVX512_INS_COMMON(SHUFI##Inst, Z256, r##src##i)
Definition at line 165 of file X86InstComments.cpp.
Referenced by llvm::EmitAnyX86InstComments().
◆ getRegName()
◆ getRegOperandNumElts()
◆ getVectorRegSize()
◆ printFMAComments()
Definition at line 305 of file X86InstComments.cpp.
References CASE_FMA4_PACKED_MR, CASE_FMA4_PACKED_RM, CASE_FMA4_PACKED_RR, CASE_FMA4_SCALAR_MR, CASE_FMA4_SCALAR_RM, CASE_FMA4_SCALAR_RR, CASE_FMA_PACKED_MEM, CASE_FMA_PACKED_REG, CASE_FMA_SCALAR_MEM, CASE_FMA_SCALAR_REG, llvm::FMSUB, llvm::FNMADD, llvm::FNMSUB, getRegName(), MI, and printMasking().
Referenced by llvm::EmitAnyX86InstComments().