diff options
author | Alan Zhao <alanzhao1@users.noreply.github.com> | 2024-02-20 11:14:09 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-20 11:14:09 -0800 |
commit | a9b5753220ef1f24b1b5bb44b5ca485a66c66349 (patch) | |
tree | e78a91fb7654c0c2b626f9b5544bbc0b64d2fd90 /llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp | |
parent | 807ed697beb438407905f3c728ed8c34ccc2d0d2 (diff) | |
download | llvm-a9b5753220ef1f24b1b5bb44b5ca485a66c66349.zip llvm-a9b5753220ef1f24b1b5bb44b5ca485a66c66349.tar.gz llvm-a9b5753220ef1f24b1b5bb44b5ca485a66c66349.tar.bz2 |
[LoopRotate][coroutines] Avoid hoisting addresses of thread-local variables outside loops in coroutines (#81937)
Because loops in coroutines may have a co_await statement that
reschedules the coroutine to another thread, we cannot cache addresses
of thread-local variables obtained inside a loop by moving the
computation of thoes addresses outside a loop.
Since LLVM doesn't have a model for coroutine memory accesses, this
patch fixes this bug by disabling this optimization for coroutines in
the same way as https://reviews.llvm.org/D135550 and
https://reviews.llvm.org/D151774.
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp')
0 files changed, 0 insertions, 0 deletions