Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1 |
|
#
37e5319a |
| 20-Sep-2024 |
Nikita Popov <npopov@redhat.com> |
[UnitTests] Fix APInt signed flags (NFC)
This makes unit tests compatible with the assertion added in https://github.com/llvm/llvm-project/pull/106524, by setting the isSigned flag to the correct va
[UnitTests] Fix APInt signed flags (NFC)
This makes unit tests compatible with the assertion added in https://github.com/llvm/llvm-project/pull/106524, by setting the isSigned flag to the correct value or changing how the value is constructed.
show more ...
|
Revision tags: llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init |
|
#
f6d6809d |
| 02-Dec-2023 |
Kazu Hirata <kazu@google.com> |
[llvm] Stop including array (NFC)
Identified with clangd.
|
#
96d0a3b5 |
| 02-Dec-2023 |
Kazu Hirata <kazu@google.com> |
[llvm] Stop including optional (NFC)
Identified with clangd.
|
Revision tags: llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3 |
|
#
f8f3db27 |
| 20-Feb-2023 |
Kazu Hirata <kazu@google.com> |
Use APInt::count{l,r}_{zero,one} (NFC)
|
Revision tags: llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7 |
|
#
3f749a5d |
| 04-Jan-2023 |
Craig Topper <craig.topper@sifive.com> |
[Support][SelectionDAG][GlobalISel] Hoist PostShift adjustment for IsAdd into UnsignedDivideUsingMagic.
Instead of doing the adjustment in 3 different places in the code base, do it inside UnsignedD
[Support][SelectionDAG][GlobalISel] Hoist PostShift adjustment for IsAdd into UnsignedDivideUsingMagic.
Instead of doing the adjustment in 3 different places in the code base, do it inside UnsignedDivideUsingMagic::get.
Differential Revision: https://reviews.llvm.org/D141014
show more ...
|
#
8bca60fb |
| 04-Jan-2023 |
Craig Topper <craig.topper@sifive.com> |
[SelectionDAG][GlobalISel] Don't use UnsignedDivisionByConstantInfo for divisor of 1.
The magic algorithm sets IsAdd indication for division by 1 that the caller had to ignore.
I considered folding
[SelectionDAG][GlobalISel] Don't use UnsignedDivisionByConstantInfo for divisor of 1.
The magic algorithm sets IsAdd indication for division by 1 that the caller had to ignore.
I considered folding the ignore into UnsignedDivisionByConstantInfo, but we only allow 1 for vectors of mixed visiors. And really what we want to end up with is undef. Currently, we get to undef via DemandedElts optimizations using the select instruction. We could directly emit undef.
Differential Revision: https://reviews.llvm.org/D140940
show more ...
|
#
84daed7f |
| 04-Jan-2023 |
Craig Topper <craig.topper@sifive.com> |
[SelectionDAG][GlobalISel] Move even divisor optimization for division by constant into UnsignedDivideUsingMagic implementation. NFC
I've added a bool to UnsignedDivideUsingMagic so we can continue
[SelectionDAG][GlobalISel] Move even divisor optimization for division by constant into UnsignedDivideUsingMagic implementation. NFC
I've added a bool to UnsignedDivideUsingMagic so we can continue testing it in the unit test with and without this optimization in the unit test.
This is a step towards supporting "uncooperative" odd divisors. See https://ridiculousfish.com/blog/posts/labor-of-division-episode-iii.html
Reviewed By: lebedev.ri
Differential Revision: https://reviews.llvm.org/D140924
show more ...
|
#
8abd7008 |
| 29-Dec-2022 |
Craig Topper <craig.topper@sifive.com> |
[TargetLowering] Teach BuildUDIV to take advantage of leading zeros in the dividend.
If the dividend has leading zeros, we can use them to reduce the size of the multiplier and avoid the fixup cases
[TargetLowering] Teach BuildUDIV to take advantage of leading zeros in the dividend.
If the dividend has leading zeros, we can use them to reduce the size of the multiplier and avoid the fixup cases.
This patch is for scalars only, but we might be able to do this for vectors in a follow up.
Differential Revision: https://reviews.llvm.org/D140750
show more ...
|
#
012afbba |
| 25-Dec-2022 |
Roman Lebedev <lebedev.ri@gmail.com> |
[NFC][SupportTests] Adjust `UnsignedDivideUsingMagic()` for readability
|
#
066b492b |
| 24-Dec-2022 |
Roman Lebedev <lebedev.ri@gmail.com> |
[NFC] Add exhaustive test coverage for `{Un}signedDivisionByConstantInfo`
Use this wrapper if you want to try brute-forcing wider bit widths: https://godbolt.org/z/3xGzTM881
I've brute-forced i16 f
[NFC] Add exhaustive test coverage for `{Un}signedDivisionByConstantInfo`
Use this wrapper if you want to try brute-forcing wider bit widths: https://godbolt.org/z/3xGzTM881
I've brute-forced i16 for both signed and unsigned, and we're all good. As mentioned in https://reviews.llvm.org/D140636
show more ...
|