| #
29441e4f |
| 29-Jan-2025 |
Nikita Popov <npopov@redhat.com> |
[IR] Convert from nocapture to captures(none) (#123181)
This PR removes the old `nocapture` attribute, replacing it with the new
`captures` attribute introduced in #116990. This change is
intended
[IR] Convert from nocapture to captures(none) (#123181)
This PR removes the old `nocapture` attribute, replacing it with the new
`captures` attribute introduced in #116990. This change is
intended to be essentially NFC, replacing existing uses of `nocapture`
with `captures(none)` without adding any new analysis capabilities.
Making use of non-`none` values is left for a followup.
Some notes:
* `nocapture` will be upgraded to `captures(none)` by the bitcode
reader.
* `nocapture` will also be upgraded by the textual IR reader. This is to
make it easier to use old IR files and somewhat reduce the test churn in
this PR.
* Helper APIs like `doesNotCapture()` will check for `captures(none)`.
* MLIR import will convert `captures(none)` into an `llvm.nocapture`
attribute. The representation in the LLVM IR dialect should be updated
separately.
show more ...
|
|
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, 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, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2 |
|
| #
689ace53 |
| 28-Sep-2023 |
Craig Topper <craig.topper@sifive.com> |
[MemCpyOptimizer] Support scalable vectors in performStackMoveO… (#67632)
…ptzn.
This changes performStackMoveOptzn to take a TypeSize instead of
uint64_t to avoid an implicit conversion when ca
[MemCpyOptimizer] Support scalable vectors in performStackMoveO… (#67632)
…ptzn.
This changes performStackMoveOptzn to take a TypeSize instead of
uint64_t to avoid an implicit conversion when called from
processStoreOfLoad.
performStackMoveOptzn has been updated to allow scalable types in the
rest of its code.
show more ...
|
| #
2a207128 |
| 26-Sep-2023 |
Kohei Asano <32860920+khei4@users.noreply.github.com> |
[MemCpyOpt] move SrcAlloca to the entry if transformation is performed (#67226)
This is fixup for
https://github.com/llvm/llvm-project/pull/66618#discussion_r1328523770 .
This transformation check
[MemCpyOpt] move SrcAlloca to the entry if transformation is performed (#67226)
This is fixup for
https://github.com/llvm/llvm-project/pull/66618#discussion_r1328523770 .
This transformation checks whether allocas are static, if the
transformation is performed. This patch moves the SrcAlloca to the entry
of the BB when the optimization performed.
show more ...
|
|
Revision tags: llvmorg-17.0.1 |
|
| #
baf031a8 |
| 18-Sep-2023 |
Kohei Asano <32860920+khei4@users.noreply.github.com> |
[MemCpyOpt] fix miscompile for non-dominated use of src alloca for stack-move optimization (#66618)
Stack-move optimization, the optimization that merges src and dest
alloca of the full-size copy,
[MemCpyOpt] fix miscompile for non-dominated use of src alloca for stack-move optimization (#66618)
Stack-move optimization, the optimization that merges src and dest
alloca of the full-size copy, replaces all uses of the dest alloca with
src alloca. For safety, we needed to check all uses of the dest alloca
locations are dominated by src alloca, to be replaced. This PR adds the
check for that.
Fixes #65225
show more ...
|
|
Revision tags: llvmorg-17.0.0 |
|
| #
7f3610ac |
| 11-Sep-2023 |
khei4 <kk.asano.luxy@gmail.com> |
Reapply "Revert "[MemCpyOpt] implement multi BB stack-move optimization"
This reverts commit efe8aa2e618122e8050af10cc5d6ad83f24ef557.
Differential Revision: https://reviews.llvm.org/D155406
|
| #
efe8aa2e |
| 07-Sep-2023 |
Vitaly Buka <vitalybuka@google.com> |
Revert "Reapply "Revert "[MemCpyOpt] implement multi BB stack-move optimization""
Suspecting incorrect lifetime markers.
This reverts commit 3a1409f93da32bf626f76257e0aac71716f2f67e.
|
|
Revision tags: llvmorg-17.0.0-rc4 |
|
| #
c4d37c35 |
| 30-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt] fix false negative case and add it as a true positive case(NFC)
|
| #
3a1409f9 |
| 27-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
Reapply "Revert "[MemCpyOpt] implement multi BB stack-move optimization"
This reverts commit e0f9cc71cb6f4eb2e1566177e05425c497759dc6. Differential Revision: https://reviews.llvm.org/D155406
|
| #
c652987d |
| 29-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt] remove test noises (NFC)
|
| #
5a9a7f53 |
| 28-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt] add tests for unreachable cycles for post dominators(NFC)
|
| #
98d1b0eb |
| 27-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt] add tests for unreachable block before calculating common dominator(NFC)
|
| #
e0f9cc71 |
| 27-Aug-2023 |
Vitaly Buka <vitalybuka@google.com> |
Revert "Reapply "Revert "[MemCpyOpt] implement multi BB stack-move optimization"""
Breaks multiple bots. e.g. https://lab.llvm.org/buildbot/#/builders/19/builds/18856
This reverts commit ac0072602c
Revert "Reapply "Revert "[MemCpyOpt] implement multi BB stack-move optimization"""
Breaks multiple bots. e.g. https://lab.llvm.org/buildbot/#/builders/19/builds/18856
This reverts commit ac0072602c9d01fc031a2d0acb418f7191480ef0.
show more ...
|
| #
ac007260 |
| 24-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
Reapply "Revert "[MemCpyOpt] implement multi BB stack-move optimization""
This reverts commit 3bb32c61b2f1f5d14dd056dd198dc898dce5a44e.
Use InsertionPt for DT to handle non-memory access dominators
Reapply "Revert "[MemCpyOpt] implement multi BB stack-move optimization""
This reverts commit 3bb32c61b2f1f5d14dd056dd198dc898dce5a44e.
Use InsertionPt for DT to handle non-memory access dominators
Differential Revision: https://reviews.llvm.org/D155406
show more ...
|
| #
fe285ae0 |
| 24-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[NFC][MemCpyOpt] add test for MemoryAccess crash on D155406
|
| #
3bb32c61 |
| 24-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
Revert "[MemCpyOpt] implement multi BB stack-move optimization"
This reverts commit ef867d2ea10e8246be20c608160e07a54eb2ed14.
crash on sanitizer build https://lab.llvm.org/buildbot/#/builders/70/bu
Revert "[MemCpyOpt] implement multi BB stack-move optimization"
This reverts commit ef867d2ea10e8246be20c608160e07a54eb2ed14.
crash on sanitizer build https://lab.llvm.org/buildbot/#/builders/70/builds/42861/steps/10/logs/stdio
show more ...
|
|
Revision tags: llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init |
|
| #
ef867d2e |
| 20-Jul-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt] implement multi BB stack-move optimization Differential Revision: https://reviews.llvm.org/D155406
|
| #
e0911b98 |
| 20-Jul-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt] precommit test for D155406 (NFC) Differential Revision: https://reviews.llvm.org/D155422
|
| #
ca68a7f9 |
| 15-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas
This reverts commit 207718029e1e62d82145b479f6349941b6384045.
|
| #
0b4f8c9f |
| 15-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
(NFC)[MemCpyOpt] add a test to avoid crash for last memory use
|
| #
20771802 |
| 13-Aug-2023 |
Vitaly Buka <vitalybuka@google.com> |
Revert "Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas"
Fails on https://lab.llvm.org/buildbot/#/builders/85/builds/18296
This reverts com
Revert "Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas"
Fails on https://lab.llvm.org/buildbot/#/builders/85/builds/18296
This reverts commit 43698c1ddc179ccd97b3f3b2bb03f4a3fe9556f3.
show more ...
|
| #
43698c1d |
| 08-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas
Differential Revision: https://reviews.llvm.org/D153453
This reverts commit 00653889883f2d8
Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas
Differential Revision: https://reviews.llvm.org/D153453
This reverts commit 00653889883f2d818536efcb21c6c8b739f0888b.
show more ...
|
| #
90ecb9d5 |
| 08-Aug-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt][test] add memssa verification on stack-move tests(NFC)
|
| #
00653889 |
| 02-Aug-2023 |
Vitaly Buka <vitalybuka@google.com> |
Revert "Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas"""
Breaks Asan and LTO.
This reverts commit ea72b5137eb72391ad192dbb01084c21b9fe8b7
Revert "Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas"""
Breaks Asan and LTO.
This reverts commit ea72b5137eb72391ad192dbb01084c21b9fe8b71.
show more ...
|
| #
ea72b513 |
| 22-Jul-2023 |
khei4 <kk.asano.luxy@gmail.com> |
Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas""
This reverts commit c9d419c1df72b0160e374f8d0b9f30508b3b98a7. Differential Revision: https
Reapply: [MemCpyOpt] implement single BB stack-move optimization which unify the static unescaped allocas""
This reverts commit c9d419c1df72b0160e374f8d0b9f30508b3b98a7. Differential Revision: https://reviews.llvm.org/D153453
show more ...
|
| #
d878916c |
| 22-Jul-2023 |
khei4 <kk.asano.luxy@gmail.com> |
[MemCpyOpt] add noalias metadata on lifetime intrinsic test case for stack-move optimization(NFC)
|