llvm-capstone/clang/test/CodeGenCoroutines
Nikita Popov 158d72d728
[Clang] Set writable and dead_on_unwind attributes on sret arguments (#77116)
Set the writable and dead_on_unwind attributes for sret arguments. These
indicate that the argument points to writable memory (and it's legal to
introduce spurious writes to it on entry to the function) and that the
argument memory will not be used if the call unwinds.

This enables additional MemCpyOpt/DSE/LICM optimizations.
2024-01-11 09:46:54 +01:00
..
Inputs
coro-aligned-alloc-2.cpp Revert "[clang] Enable sized deallocation by default in C++14 onwards" 2023-08-29 09:36:59 -04:00
coro-aligned-alloc.cpp Revert "[clang] Enable sized deallocation by default in C++14 onwards" 2023-08-29 09:36:59 -04:00
coro-alloc-2.cpp
coro-alloc.cpp Revert "[clang] Enable sized deallocation by default in C++14 onwards" 2023-08-29 09:36:59 -04:00
coro-always-inline.cpp [Coroutines] Directly remove unnecessary lifetime intrinsics 2023-04-14 10:22:30 +02:00
coro-attributes.cpp
coro-await-domination.cpp
coro-await-resume-eh.cpp
coro-await.cpp [Clang] Set writable and dead_on_unwind attributes on sret arguments (#77116) 2024-01-11 09:46:54 +01:00
coro-awaiter-noinline-suspend.cpp Recommit [C++20] [Coroutines] Mark await_suspend as noinline if the awaiter is not empty 2023-08-28 17:07:30 +08:00
coro-builtins-err.c [Coroutines] Remove -fcoroutines-ts 2023-02-23 14:40:58 +08:00
coro-builtins.c Extend retcon.once coroutines lowering to optionally produce a normal result (#66333) 2023-09-15 09:54:38 -07:00
coro-cleanup.cpp [ItaniumCXXABI] Add -fassume-nothrow-exception-dtor to assume that all exception objects' destructors are non-throwing 2023-11-05 00:39:38 -07:00
coro-dealloc.cpp Revert "[clang] Enable sized deallocation by default in C++14 onwards" 2023-08-29 09:36:59 -04:00
coro-dest-slot.cpp
coro-destructor-of-final_suspend.cpp
coro-dwarf.cpp
coro-eh-cleanup.cpp Extend retcon.once coroutines lowering to optionally produce a normal result (#66333) 2023-09-15 09:54:38 -07:00
coro-elide.cpp [Clang] Convert some tests to opaque pointers (NFC) 2023-01-26 11:33:19 +01:00
coro-function-try-block.cpp Fix codegen for coroutine with function-try-block 2023-03-30 11:16:32 -07:00
coro-gro2.cpp [Clang] Set writable and dead_on_unwind attributes on sret arguments (#77116) 2024-01-11 09:46:54 +01:00
coro-gro.cpp [Clang][LLVM][Coroutines] Prevent __coro_gro from outliving __promise (#66706) 2023-09-21 22:52:05 -07:00
coro-halo.cpp [Coroutines] [CoroElide] Don't think exceptional terminator don't leak coro handle unconditionally any more 2023-08-23 16:51:53 +08:00
coro-init-await-nontrivial-return.cpp [Clang] CGCoroutines skip emitting try block for value returning noexcept init await_resume calls (#73160) 2023-11-28 19:04:29 -08:00
coro-lambda.cpp
coro-newpm-pipeline.cpp
coro-only-destroy-when-complete.cpp [Coroutines] Introduce [[clang::coro_only_destroy_when_complete]] (#71014) 2023-11-09 14:42:07 +08:00
coro-params.cpp [clang] Convert a few tests to opaque pointers 2023-05-14 21:00:15 +03:00
coro-promise-dtor.cpp
coro-ret-void.cpp
coro-return-voidtype-initlist.cpp
coro-return.cpp
coro-symmetric-transfer-01.cpp
coro-symmetric-transfer-02.cpp [Clang] Convert some tests to opaque pointers (NFC) 2023-02-16 15:48:10 +01:00
coro-symmetric-transfer-03.cpp
coro-unhandled-exception.cpp [Clang] Convert some tests to opaque pointers (NFC) 2023-02-17 09:49:03 +01:00
microsoft-abi-operator-coawait.cpp
pr56301.cpp Recommit [C++20] [Coroutines] Mark await_suspend as noinline if the awaiter is not empty 2023-08-28 17:07:30 +08:00
pr56329.cpp
pr56919.cpp Revert "[clang] Enable sized deallocation by default in C++14 onwards" 2023-08-29 09:36:59 -04:00
pr59181.cpp Revert "Reapply: [IRGen] Emit lifetime intrinsics around temporary aggregate argument allocas" 2023-09-01 12:53:24 +02:00
pr59221.cpp [Coroutines] Fix premature conversion of return object 2023-03-21 21:42:25 -07:00
pr59723.cpp [Coroutines] [CoroElide] Don't think exceptional terminator don't leak coro handle unconditionally any more 2023-08-23 16:51:53 +08:00
pr65018.cpp [NFC] Correct the test code in pr65018 2023-08-29 11:30:47 +08:00
pr65054.cpp [Coroutines] Mark 'coroutine_handle<>::address' as always-inline 2023-08-29 14:35:27 +08:00