-
Notifications
You must be signed in to change notification settings - Fork 13.5k
[DAG] Add knownbits/signbits handling for ISD::AVG* nodes #53622
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Labels
Comments
ISD::AVGCEILU handling - https://reviews.llvm.org/D119629 |
I can take this as well |
davemgreen
pushed a commit
that referenced
this issue
Apr 6, 2024
…ndling (#76644) Fold BICi if all destination bits are already known to be zeroes ```llvm define <8 x i16> @haddu_known(<8 x i8> %a0, <8 x i8> %a1) { %x0 = zext <8 x i8> %a0 to <8 x i16> %x1 = zext <8 x i8> %a1 to <8 x i16> %hadd = call <8 x i16> @llvm.aarch64.neon.uhadd.v8i16(<8 x i16> %x0, <8 x i16> %x1) %res = and <8 x i16> %hadd, <i16 511, i16 511, i16 511, i16 511,i16 511, i16 511, i16 511, i16 511> ret <8 x i16> %res } declare <8 x i16> @llvm.aarch64.neon.uhadd.v8i16(<8 x i16>, <8 x i16>) ``` ``` haddu_known: // @haddu_known ushll v0.8h, v0.8b, #0 ushll v1.8h, v1.8b, #0 uhadd v0.8h, v0.8h, v1.8h bic v0.8h, #254, lsl #8 <-- this one will be removed as we know high bits are zero extended ret ``` Fixes #53881 Fixes #53622
@llvm/issue-subscribers-backend-aarch64 Author: Simon Pilgrim (RKSimon)
https://reviews.llvm.org/D106237 adds the ISD::AVGFLOORS/AVGFLOORU/AVGCEILS/AVGCEILU nodes which we will require value tracking handling for in SelectionDAG.
CC @davemgreen |
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
https://reviews.llvm.org/D106237 adds the ISD::AVGFLOORS/AVGFLOORU/AVGCEILS/AVGCEILU nodes which we will require value tracking handling for in SelectionDAG.
CC @davemgreen
The text was updated successfully, but these errors were encountered: