[all-commits] [llvm/llvm-project] 292771: [CVP] Deduce no-wrap on `mul`
Roman Lebedev via All-commits
all-commits at lists.llvm.org
Mon Oct 21 01:20:35 PDT 2019
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 292771627735a0d23ba3e82b04f9571def812917
https://github.com/llvm/llvm-project/commit/292771627735a0d23ba3e82b04f9571def812917
Author: Roman Lebedev <lebedev.ri at gmail.com>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/test/Transforms/CorrelatedValuePropagation/mul.ll
Log Message:
-----------
[CVP] Deduce no-wrap on `mul`
Summary:
`ConstantRange::makeGuaranteedNoWrapRegion()` knows how to deal with `mul`
since rL335646, there is exhaustive test coverage.
This is already used by CVP's `processOverflowIntrinsic()`,
and by SCEV's `StrengthenNoWrapFlags()`
That being said, currently, this doesn't help much in the end:
| statistic | old | new | delta | percentage |
| correlated-value-propagation.NumMulNSW | 4 | 275 | 271 | 6775.00% |
| correlated-value-propagation.NumMulNUW | 4 | 1323 | 1319 | 32975.00% |
| correlated-value-propagation.NumMulNW | 8 | 1598 | 1590 | 19875.00% |
| correlated-value-propagation.NumNSW | 5715 | 5986 | 271 | 4.74% |
| correlated-value-propagation.NumNUW | 9193 | 10512 | 1319 | 14.35% |
| correlated-value-propagation.NumNW | 14908 | 16498 | 1590 | 10.67% |
| instcount.NumAddInst | 275871 | 275869 | -2 | 0.00% |
| instcount.NumBrInst | 708234 | 708232 | -2 | 0.00% |
| instcount.NumMulInst | 43812 | 43810 | -2 | 0.00% |
| instcount.NumPHIInst | 316786 | 316784 | -2 | 0.00% |
| instcount.NumTruncInst | 62165 | 62167 | 2 | 0.00% |
| instcount.NumUDivInst | 2528 | 2526 | -2 | -0.08% |
| instcount.TotalBlocks | 842995 | 842993 | -2 | 0.00% |
| instcount.TotalInsts | 7376486 | 7376478 | -8 | 0.00% |
(^ test-suite plain, tests still pass)
Reviewers: nikic, reames, luqmana, sanjoy, timshen
Reviewed By: reames
Subscribers: hiraditya, javed.absar, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69203
llvm-svn: 375396
Commit: 9948fac6c1fae87b31a35afa84fcdb118b671c43
https://github.com/llvm/llvm-project/commit/9948fac6c1fae87b31a35afa84fcdb118b671c43
Author: Roman Lebedev <lebedev.ri at gmail.com>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
Log Message:
-----------
[NFC][InstCombine] Fixup comments
As noted in post-commit review of rL375378375378.
llvm-svn: 375397
Compare: https://github.com/llvm/llvm-project/compare/a861c9aef926...9948fac6c1fa
More information about the All-commits
mailing list