VPBROADCASTM
Broadcast Mask to Vector Register
estableVMJITAOTinstruccion
Codificaciones
| Opcode | Instruccion | Op/En | 64 bits | Compat/Legacy | Descripcion |
|---|---|---|---|---|---|
EVEX.128.F3.0F38.W1 2A /r | VPBROADCASTMB2Q xmm1, k1 | RM | Valido | Valido | Difusión de bajo valor byte en k1 a dos ubicaciones en AVX512CD) OR AVX10.1 xmm1. |
EVEX.256.F3.0F38.W1 2A /r | VPBROADCASTMB2Q ymm1, k1 | RM | Valido | Valido | Difusión de bajo valor byte en k1 a cuatro ubicaciones en AVX512CD) OR AVX10.1 ymm1. |
EVEX.512.F3.0F38.W1 2A /r | VPBROADCASTMB2Q zmm1, k1 | RM | Valido | Valido | Difusión de bajo valor byte en k1 a ocho lugares en OR AVX10.1 zmm1. |
EVEX.128.F3.0F38.W0 3A /r | VPBROADCASTMW2D xmm1, k1 | RM | Valido | Valido | Difusión de bajo valor de palabra en k1 a cuatro lugares en AVX512CD) OR AVX10.1 xmm1. |
EVEX.256.F3.0F38.W0 3A /r | VPBROADCASTMW2D ymm1, k1 | RM | Valido | Valido | Difusión de bajo valor de palabra en k1 a ocho localidades AVX512CD) OR AVX10.1 en ymm1. |
EVEX.512.F3.0F38.W0 3A /r | VPBROADCASTMW2D zmm1, k1 | RM | Valido | Valido | Difusión de bajo valor de palabra en k1 a dieciséis OR AVX10.1 ubicaciones en zmm1. |
Codificacion de operandos
Cada modo es un valor de la columna Op/En de arriba. Dice en que campo de la instruccion codificada va cada operando, en el orden en que se escriben, y si la instruccion lo lee, lo escribe o ambas cosas.
RM
modrm.regescriturabyte ModRM, campo reg (bits 5-3)modrm.rmlecturabyte ModRM, campo r/m (bits 2-0); con el byte SIB y el desplazamiento cuando el campo mod los pide
Coste medido
Sin medir: no se ejecuta en procesadores de 64 bits.
Descripción
Transmite el valor de 64/32 bits de cero del byte/palabra bajo del operando de origen (el segundo operando) a cada elemento de 64/32 bits del operando de destino (el primer operando). El operando de origen es un registro de opmasco. El operando de destino es un registro ZMM (EVEX.512), registro YMM (EVEX.256), o registro XMM (EVEX.128).
EVEX.vvvv está reservado y debe ser 1111b instrucciones de lo contrario #UD.
Operación
VPBROADCASTMB2Q
(KL, VL) = (2, 128), (4, 256), (8, 512)
FOR j := 0 TO KL-1
i := j*64
DEST[i+63:i] := ZeroExtend(SRC[7:0])
ENDFOR
DEST[MAXVL-1:VL] := 0
VPBROADCASTMW2D
(KL, VL) = (4, 128), (8, 256), (16, 512)
FOR j := 0 TO KL-1
i := j*32
DEST[i+31:i] := ZeroExtend(SRC[15:0])
ENDFOR
DEST[MAXVL-1:VL] := 0Intel C/C++ compilador intrínseco
VPBROADCASTMB2Q __m512i _mm512_broadcastmb_epi64( __mmask8);
VPBROADCASTMW2D __m512i _mm512_broadcastmw_epi32( __mmask16);
VPBROADCASTMB2Q __m256i _mm256_broadcastmb_epi64( __mmask8);
VPBROADCASTMW2D __m256i _mm256_broadcastmw_epi32( __mmask8);
VPBROADCASTMB2Q __m128i _mm_broadcastmb_epi64( __mmask8);
VPBROADCASTMW2D __m128i _mm_broadcastmw_epi32( __mmask8);SIMD coma flotante Excepciones
None
Otras excepciones
Instrucciones codificadas por EVEX, ver Tabla 2-56, "Tipo E6NF Clase Condiciones de Excepción."