diff options
author | Xun Li <lxfind@gmail.com> | 2021-04-11 22:01:36 -0700 |
---|---|---|
committer | Xun Li <lxfind@gmail.com> | 2021-04-18 14:54:04 -0700 |
commit | 2b50f5a4343f8fb06acaa5c36355bcf58092c9cd (patch) | |
tree | 91170e62bfa44a793690b5eeb9e75f3de0232eb9 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | d0b03ec401e8465b88893a4c56aeb0c787a54ad9 (diff) | |
download | llvm-2b50f5a4343f8fb06acaa5c36355bcf58092c9cd.zip llvm-2b50f5a4343f8fb06acaa5c36355bcf58092c9cd.tar.gz llvm-2b50f5a4343f8fb06acaa5c36355bcf58092c9cd.tar.bz2 |
[Coroutines] Move CoroEarly pass to before AlwaysInliner
Presplit coroutines cannot be inlined. During AlwaysInliner we check if a function is a presplit coroutine, if so we skip inlining.
The presplit coroutine attributes are set in CoroEarly pass.
However in O0 pipeline, AlwaysInliner runs before CoroEarly, so the attribute isn't set yet and will still inline the coroutine.
This causes Clang to crash: https://bugs.llvm.org/show_bug.cgi?id=49920
Differential Revision: https://reviews.llvm.org/D100282
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions