Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AVX-512 Instruction Encoding - {er} Meaning

In the Intel x86 Instruction Set Reference, there are a number of AVX-512 instructions that have an optional {er} in the instruction. For example, one form of VADDPD is defined as

EVEX.NDS.512.66.0F.W1 58 /r
VADDPD zmm1 {k1}{z}, zmm2,
zmm3/m512/m64bcst{er}

What does the {er} mean?

like image 321
GregoryComer Avatar asked Sep 15 '25 20:09

GregoryComer


1 Answers

From Intel SDM Volume 2A, 3.1.1.3 " Instruction Column in the Opcode Summary Table":

{er} — Indicates support for embedded rounding control, which is only applicable to the register-register form of the instruction. This also implies support for SAE (Suppress All Exceptions).

Section 2.6.8 a bit earlier states that {er}, when applicable, can be encoded in EVEX.L´L:

Static rounding control embedded in the EVEX encoding system applies only to register-to-register flavor of floating-point instructions with rounding semantic at two distinct vector lengths: (i) scalar, (ii) 512-bit. In both cases, the field EVEX.L’L expresses rounding mode control overriding MXCSR.RC if EVEX.b is set. When EVEX.b is set, “suppress all exceptions” is implied. The processor behaves as if all MXCSR masking controls are set.

like image 126
Grigory Rechistov Avatar answered Sep 18 '25 13:09

Grigory Rechistov