[all-commits] [llvm/llvm-project] c03d3a: [InstCombine] Add tests for canonicalizing `(gep <...
goldsteinn via All-commits
all-commits at lists.llvm.org
Mon Jul 1 07:23:07 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c03d3a8560d0275bd585744d4fc14725148517a3
https://github.com/llvm/llvm-project/commit/c03d3a8560d0275bd585744d4fc14725148517a3
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-07-01 (Mon, 01 Jul 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/getelementptr.ll
Log Message:
-----------
[InstCombine] Add tests for canonicalizing `(gep <not i8> p, (exact_ins X, C))`; NFC
Commit: 263268000699b0f0890753674262961229e2a77d
https://github.com/llvm/llvm-project/commit/263268000699b0f0890753674262961229e2a77d
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-07-01 (Mon, 01 Jul 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
Log Message:
-----------
[InstCombine] Canonicalize `(gep <not i8> p, (div exact X, C))`
If C % sizeof(gep_element_type) is zero, we can canonicalize to `i8` via:
`(gep i8 p, (div exact X, C / (sizeof(gep_element_type))))`
Closes #96898
Commit: 5880526b87e56802adf1533a5fe7bd4b9b402a07
https://github.com/llvm/llvm-project/commit/5880526b87e56802adf1533a5fe7bd4b9b402a07
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-07-01 (Mon, 01 Jul 2024)
Changed paths:
M llvm/test/Transforms/InstSimplify/rem.ll
Log Message:
-----------
[InstSimplify] Add test for simplifying `({u,s}rem (mul {nuw,nsw} X, C1), C0)`; NFC
Commit: aef44e49a7b79cfaf4d7c09133ba7c30ddfdfdc7
https://github.com/llvm/llvm-project/commit/aef44e49a7b79cfaf4d7c09133ba7c30ddfdfdc7
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-07-01 (Mon, 01 Jul 2024)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/rem.ll
Log Message:
-----------
[InstSimplify] Add simplification for `({u,s}rem (mul {nuw,nsw} X, C1), C0)`
We can simplify these to `0` if `C1 % C0 == 0`
Proofs: https://alive2.llvm.org/ce/z/EejAdk
Closes #97037
Commit: c8579163ac21877f6223de168663714ff53f43c4
https://github.com/llvm/llvm-project/commit/c8579163ac21877f6223de168663714ff53f43c4
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-07-01 (Mon, 01 Jul 2024)
Changed paths:
M llvm/test/Transforms/Reassociate/reassoc-mul-nuw.ll
Log Message:
-----------
[Reassociate] Add tests for preserving `nuw` and `nsw` on `mul` chains; NFC
Commit: 6e379de3b144363c2f5a6f9335eef6f42e28ef37
https://github.com/llvm/llvm-project/commit/6e379de3b144363c2f5a6f9335eef6f42e28ef37
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-07-01 (Mon, 01 Jul 2024)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/Reassociate.h
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/test/Transforms/Reassociate/reassoc-mul-nuw.ll
Log Message:
-----------
[Reassociate] Preserve `nuw` and `nsw` on `mul` chains
Basically the same rules as `add` but we also need to ensure all
operands a non-zero.
Proofs: https://alive2.llvm.org/ce/z/jzsYht
Closes #97040
Compare: https://github.com/llvm/llvm-project/compare/80ffec78848d...6e379de3b144
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list