<div dir="ltr"><div>We have quite a lot of code in AutoUpgrade.cpp to upgrade X86 intrinsics that have been replaced with native IR over the years. Has enough time and/or versions passed that we can begin phasing out some of this code?</div><div><br></div><div>As I'm writing these we don't seem to have tests for a lot of the older upgrades. We've done better at this in the last few years.</div><div><br></div><div>3.1 added upgrade for:</div><div>x86.sse2.pcmpeq.*  - we have almost no test cases for this</div><div>x86.sse2.pcmpgt.* - we no test cases for this</div><div>x86.avx2.pcmpeq.*  - we have no test cases</div><div>x86.avx2.pcmpgt.* - we have no test cases for this</div><div>x86.avx.vpermil.* - we do test this</div><div><br></div><div>3.2 added upgrade for:</div><div>x86.avx.movnt.* - we have tests for this</div><div>x86.xop.vpcom* - we have tests for this</div><div>x86.sse41.ptest.* had its signature chagned and we upgrade from the old signature. We don't have tests for the old signature.</div><div>x86.xop.vfrcz.ss/sd had an argument dropped that we upgrade for. We don't have any tests for the old signature.</div><div><br></div><div>3.3 had no upgrades</div><div><br></div><div>3.4 removed:</div><div>x86.sse42.crc32.64.8 we do have tests that use it</div><div><br></div><div>For the complete list of intrinsic upgrade support, there's an annotated list in ShouldUpgradeX86Intrinsic in AutoUpgrade.cpp</div><br clear="all"><div><div class="gmail_signature">~Craig</div></div>
</div>