[cfe-dev] Compile .ll file with coroutines intrinsics

Mehdi AMINI via cfe-dev cfe-dev at lists.llvm.org
Thu Jul 8 15:22:50 PDT 2021


On Fri, Jul 2, 2021 at 10:25 PM Mehdi AMINI <joker.eph at gmail.com> wrote:

> Hi all,
>
> I'm trying to figure out how to use clang to compile some piece of IR in a
> .ll generated with coroutines.
>
> I tried to use the `-fcoroutines-ts`, but it isn't even forwarded by the
> driver to CC1. And even if I use -Xclang to forward it manually it is then
> ignored because LLVM IR input is shortcut
> by CompilerInvocation::ParseLangArgs.
>
> What's the best way here? I could add support
> in CompilerInvocation::ParseLangArgs:
>
> @@ -3547,6 +3546,9 @@ bool CompilerInvocation::ParseLangArgs(L
>      parseSanitizerKinds("-fsanitize=",
> Args.getAllArgValues(OPT_fsanitize_EQ),
>                          Diags, Opts.Sanitize);
>
> +    // Allows to use -fcoroutine-ts with IR input.
> +    Opts.Coroutines = Args.hasArg(OPT_fcoroutines_ts);
> +
>      return Diags.getNumErrors() == NumErrorsBefore;
>    }
>
>
> But I still need to figure out how to have the driver propagate the option
> to cc1, any pointer?
> Is it expected to silently discard it here by the way? It is
> quite surprising to me).
>

Ping on these questions? Anyone want to chime in?

Cheers,

-- 
Mehdi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20210708/c6046540/attachment.html>


More information about the cfe-dev mailing list