diff options
| author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2010-07-06 22:36:24 +0000 |
|---|---|---|
| committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2010-07-06 22:36:24 +0000 |
| commit | e2bd058d320328018a0ee6bd99ef266c4864545c (patch) | |
| tree | 2953eb0ddff5c32673a56e313705b832ccb14b38 /llvm/lib/Target/X86/X86InstrInfo.h | |
| parent | ee0cb70381d73bdee1fbfc1ff157c99f39abc859 (diff) | |
| download | bcm5719-llvm-e2bd058d320328018a0ee6bd99ef266c4864545c.tar.gz bcm5719-llvm-e2bd058d320328018a0ee6bd99ef266c4864545c.zip | |
Add AVX vblendvpd, vblendvps and vpblendvb instructions
Update VEX encoding to support those new instructions
llvm-svn: 107715
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrInfo.h')
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.h b/llvm/lib/Target/X86/X86InstrInfo.h index daf980eac14..0b4551699e3 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.h +++ b/llvm/lib/Target/X86/X86InstrInfo.h @@ -424,14 +424,22 @@ namespace X86II { // those enums below are used, TSFlags must be shifted right by 32 first. enum { //===------------------------------------------------------------------===// - // VEXPrefix - VEX prefixes are instruction prefixes used in AVX. + // VEX - A prefix used by AVX instructions + VEX = 1, + + // VEX_W is has a opcode specific functionality, but is used in the same + // way as REX_W is for regular SSE instructions. + VEX_W = 1 << 1, + // VEX_4V is used to specify an additional AVX/SSE register. Several 2 // address instructions in SSE are represented as 3 address ones in AVX // and the additional register is encoded in VEX_VVVV prefix. - // - VEX = 1, - VEX_W = 1 << 1, - VEX_4V = 1 << 2 + VEX_4V = 1 << 2, + + // VEX_I8IMM specifies that the last register used in a AVX instruction, + // must be encoded in the i8 immediate field. This usually happens in + // instructions with 4 operands. + VEX_I8IMM = 1 << 3 }; // getBaseOpcodeFor - This function returns the "base" X86 opcode for the |

