title: Does vzeroall zero registers ymm16 to ymm31?
body: <p>The <a href="https://www.felixcloutier.com/x86/vzeroall" rel="noreferrer">documentation</a> for <code>vzeroall</code> appears inconsistent. The prose says:</p>
  
  <blockquote>
    <p>The instruction zeros contents of all XMM or YMM registers.</p>
  </blockquote>
  
  <p>The pseudocode below that, however, indicates that in 64-bit mode only registers <code>ymm0</code> through <code>ymm15</code> are affected:</p>
  
  <pre><code>IF (64-bit mode)
      limit ←15
  ELSE
      limit ← 7
  FOR i in 0 .. limit:
      simd_reg_file[i][MAXVL-1:0] ← 0
  </code></pre>
  
  <p>On AVX-512 supporting machines clearing up to <code>ymm15</code> is not the same as clearing "all" because <code>ymm16</code> through <code>ymm31</code> exist.</p>
  
  <p>Is the prose or pseudocode correct?</p>