tree 03f18119640464d423a78cfec310e70ed0eaa472
parent 25bf90eaede41156e45f974c772e320758cbb3c8
author Nikita Popov <npopov@redhat.com> 1751613388 +0200
committer GitHub <noreply@github.com> 1751613388 +0200
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJoZ3/MCRC1aQ7uu5UhlAAAmu4QAH1Gz4GHu0PDNid5akRIfnCo
 jzQnTHI9AOL8vidwsuujuyWljk8pTGp2zhcI6bg2X0FqnGVsq/4HpUCG1tsPbRB0
 5z+FuSc+q09mJM0UfYhdPdpfu5ULbJKvGNOQITy3fRGwrGfjf0XGr5qFQ0wafBhw
 neX7lU0Vd1lWbicY15UPjqUT7R3XtO5ItLm79+mXE/m9tw4fO7qdR5T8A/KAmVQc
 FYG0/nwqyUKSS+S7XAokkgL4HEESYCQec7fhHIgT9+VTl81uPf7pTOXsMNY/abbs
 ob4EkxB74mxV5vcSOizhavgxIuJoFr3zN/UQf27Bl18HqT6soZRO5bMHOotzMKTu
 IXUuWCxn2FXWJpwbtq5SpkbC2xBQbw3wCsEpDx9wDnTzlwO+fNKyNfIll4sJ3Osl
 IM/KKPI97U8WgpAbdAnbWvvNq+Jp+PqTT5mmufcr39O5gK4aFnsoNjgOk1crauBG
 r7NI0Y+Sd4+ZdKRvdwOEkQYgjmsHfMkucthvwOPmnO+FPcKMp1gBeKmHqXxW6Bdg
 Q9LLO9zM/WJ/590Eg+EcZSyFAxRdV08az+xBsASzKhYNRHt+af0Qgt4ng/N8B+w9
 YudrjS7rM29AAPApcpBqd95/H+v86e/tfA8JpnyuzazxbymR4Nh6NG3qlbIMb8db
 XEmQ4gPpZ3lmcogNdzfX
 =R84Z
 -----END PGP SIGNATURE-----
 

[ConstantFolding] Consolidate poison propagation for intrinsics (#146878)

This consolidates the "fold poison arg to poison result" constant
folding logic for intrinsics, based on a common
intrinsicPropagatesPoison() helper, which is also used for poison
propagation reasoning in ValueTracking. This ensures that the set of
supported intrinsics is consistent.

This add ucmp, scmp, smul.fix, smul.fix.sat, canonicalize and sqrt to
the intrinsicPropagatesPoison list, as these were handled by
ConstantFolding but not ValueTracking. The ctpop test is an example of
the converse, where it was handled by ValueTracking but not
ConstantFolding.