tree 9d0c969615b57716c692c37b8feb7245917738c1
parent 1b719b3122c019754365c08b4d5aab979268cce3
author Stella Laurenzo <stellaraccident@gmail.com> 1728442384 -0700
committer GitHub <noreply@github.com> 1728442384 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJnBfAQCRC1aQ7uu5UhlAAASrIQAKie3FZ2qBCEvieAGH76RRTB
 sYk2PdeXLLy2kanebEJCp26MgRa1OiB2rrQx7D/Z5iFl53AVGKtZwE9x/GCn8OjZ
 e86QMpIVOK/OuakDbmYZNdpHWWYde0p1U+HUzH9nz2wRxQnKbcH5H0LnJKNuFGx/
 NHc6PK1zotc2jUBbS2gVR1vFUCol/nDZPty75vipe3O1zByagDKmorG2iaUhnp0r
 LCufHcLDCdYBo0aZLBort28R1BYXPQTrRJNhgZ5n4U7DWIkES/BHgsa+K5zwUN8e
 57jfdJ0wVnHaPyJJUijsZtbJUPGiOct92iB2bUCZMcyxvqxWK8LZpv8R7EydvvDS
 SBEmLvVfps8okvoGYwhxQEugXjNbnuVfmdkE15gwr4MxylT21nAEBbkvIPdZFjfW
 XKtgSep9qSLDA0OHsAjSSOEO3hJ96WfEA/XfkBIFNEjWlSxM136z7+Wll75Y70tL
 zlrizfIx7okcjrPevAoSf65+UeEyOTUkfVC2gXO5M04AhD4bg7O2EQlg3vBpHQyK
 Jiwyhr/cbim292FmDbptJKE8xOgPPvjfYZDyWOuJsUAA4n1HLDo3ORjT6HopW5pO
 NZdZJ5H3SqURN8cBPlozHDoYFgCJzAkBgAoM4URKg3EM12qmMVeFi2LKXhh4/d+O
 dPfPm3eQ561OZAgWlo2U
 =Qt9G
 -----END PGP SIGNATURE-----
 

Add an integer divisibility analysis. (#18727)

* Also extends the numeric optimization test to elide arith.remui that
exactly divides (a reasonable optimization but primarily used for
testing in this patch).
* Only implements the analysis for `arith.constant` and
`util.int.assume` in this patch.
* Renames assumption `divisor` to `udiv` to match terminology elsewhere
wrt signed/unsigned analysis.
* The lattice tracks unsigned and signed interpretations separately as
this is needed for propagation through signed ops (but this is not
implemented here).

---------

Signed-off-by: Stella Laurenzo <stellaraccident@gmail.com>