title: Is uops.info wrong about vinserti128?
body: <p>According to uops.info, the reciprocal throughput of <code>vinserti128</code> is 0.5 if the xmm argument comes from memory, and 1 if the xmm argument is a register. What's the underlying reason behind this? Is it a mistake? <a href="https://uops.info/table.html?search=vinserti128&amp;cb_lat=on&amp;cb_tp=on&amp;cb_uops=on&amp;cb_ports=on&amp;cb_SKX=on&amp;cb_measurements=on&amp;cb_doc=on&amp;cb_base=on&amp;cb_avx=on&amp;cb_avx2=on" rel="nofollow noreferrer">Link</a></p>
  <p>I don't understand why ports 0 and 1 are only an option if the xmm argument is <em>not</em> a register. Is there something in hardware that can explain this?</p>
  <p><a href="https://i.stack.imgur.com/HetkF.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/HetkF.png" alt="enter image description here" /></a></p>