4.1.3 VEX and the REX prefix
Any VEX-encoded instruction with a REX prefix proceeding VEX will #UD.
Come on stop! MODS need to look at what your doing here. The AVX PDFclearly states that the rex encode resides inside the prefix of vex. so it can't follow it . The VEX and VEXprefix are not the same . AS clearly shown in the INTEL AVX pdf . Everything your saying applies to AMD only and that why your doing what your doing. It does apply to intel only if they use AVX instruction extension , Not the VEX prefix . HERE I will paste 1 more time so MODS can clearly see what your up to .
1.3.3 VEX Prefix Instruction Encoding Support
Intel AVX introduces a new prefix, referred to as VEX, in the Intel 64 and IA-32
instruction encoding format. Instruction encoding using the VEX prefix provides the
following capabilities:
• Direct encoding of a register operand within VEX. This provides instruction syntax
support for non-destructive source operand.
• Efficient encoding of instruction syntax operating on 128-bit and 256-bit register
sets.
• Compaction of REX prefix functionality: The equivalent functionality of the REX
prefix is encoded within VEX.
• Compaction of SIMD prefix functionality and escape byte encoding: The functionality
of SIMD prefix (66H, F2H, F3H) on opcode is equivalent to an opcode
extension field to introduce new processing primitives. This functionality is
replaced by a more compact representation of opcode extension within the VEX
prefix. Similarly, the functionality of the escape opcode byte (0FH) and two-byte
escape (0F38H, 0F3AH) are also compacted within the VEX prefix encoding.
• Most VEX-encoded SIMD numeric and data processing instruction semantics with
memory operand have relaxed memory alignment requirements than instructions
encoded using SIMD prefixes (see Section 2.5).
VEX prefix encoding applies to SIMD instructions operating on YMM registers, XMM
registers, and in some cases with a general-purpose register as one of the operand.
VEX prefix is not supported for instructions operating on MMX or x87 registers.
Details of VEX prefix and instruction encoding are discussed in Chapter 4.
Intel AVX introduces a new prefix, referred to as VEX, in the Intel 64 and IA-32
What does the above say. Do see AMD written anywere above .
This new instruction set is called AVX not VEX. As far as I know AMD doesn't have VEX, EVERTHING in that PDF referrs to INTEL . When they talk about AMD they say AMD. and they make referance to how AMD has to use the REX prefix when using the AVX instruction set as far as I know AMD has XOP . AMD should never use VEX when referring to AVX instruction set . XOP and VEX are not the same . Ya I caught myself making the same error you did well in that respect . Actually they don't ever mention AMd but they do referance the XOP