8 Commits

Author SHA1 Message Date
Dmitri Gribenko
533a22941e [clang][test] Write temporary files to %t
The issue was introduced in
3a9ef4e69a.
2024-07-30 10:26:31 +02:00
Wei Wang
3a9ef4e69a
[Pipelines] Do not run CoroSplit and CoroCleanup in LTO pre-link pipeline (#100205)
This is re-land of #90310 after making asan skip pre-split coroutines in
#99415.

Skip CoroSplit and CoroCleanup in LTO pre-link pipeline so that
CoroElide can happen after callee coroutine is imported into caller's
module in ThinLTO.
2024-07-29 17:42:01 -07:00
Reid Kleckner
aa0776de46 Revert "[Pipelines] Do not run CoroSplit and CoroCleanup in LTO pre-link pipeline (#90310)" and related patches
This change is incorrect when thinlto and asan are enabled, and this can
be observed by adding `-fsanitize=address` to the provided
coro-elide-thinlto.cpp test. It results in the error "Coroutines cannot
handle non static allocas yet", and ASan introduces a dynamic alloca.

In other words, we must preserve the invariant that CoroSplit runs
before ASan. If we move CoroSplit to the post post-link compile stage,
ASan has to be moved to the post-link compile stage first.  It would
also be correct to make CoroSplit handle dynamic allocas so the pass
ordering doesn't matter, but sanitizer instrumentation really ought to
be last, after coroutine splitting.

This reverts commit bafc5f42c0132171287d7cba7f5c14459be1f7b7.
This reverts commit b1b1bfa7bea0ce489b5ea9134e17a43c695df5ec.
This reverts commit 0232b77e145577ab78e3ed1fdbb7eacc5a7381ab.
This reverts commit fb2d3056618e3d03ba9a695627c7b002458e59f0.
This reverts commit 1cb33713910501c6352d0eb2a15b7a15e6e18695.
This reverts commit cd68d7b3c0ebf6da5e235cfabd5e6381737eb7fe.
2024-05-10 21:28:13 +00:00
Wei Wang
b1b1bfa7be
[Coroutines][Test] Only run coro-elide-thinlto under x86_64-linux (#90672)
Previous fix #90549 didn't completely address the Buildbot failures.
Some target may not recognize the target triple. This time, only run the
test under x86_64-linux.
2024-04-30 18:08:40 -07:00
Wei Wang
0232b77e14
[Coroutines][Test] Specify target triple in coro-elide-thinlto (#90549)
Resolve test failure on non-x86 linux host
2024-04-30 14:31:31 -07:00
Danial Klimkin
fb2d305661
Fix output in coro-elide-thinlto.cpp (#90579)
Current dir can be read-only. Use a temp path instead.
2024-04-30 11:42:13 +02:00
David Blaikie
1cb3371391 Ensure test writes objects to test temp dir 2024-04-29 23:50:18 +00:00
Wei Wang
cd68d7b3c0
[Pipelines] Do not run CoroSplit and CoroCleanup in LTO pre-link pipeline (#90310)
Skip CoroSplit and CoroCleanup in LTO pre-link pipeline so that
CoroElide can happen after callee coroutine is imported into caller's
module in ThinLTO.
2024-04-29 10:24:53 -07:00