[PATCH] D96572: [Clang][ASan] Introduce `-fsanitize-address-destructor-kind=` driver & frontend option.

Dan Liew via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 23 12:24:53 PST 2021


delcypher added a comment.

In D96572#2563707 <https://reviews.llvm.org/D96572#2563707>, @jansvoboda11 wrote:

> In D96572#2561216 <https://reviews.llvm.org/D96572#2561216>, @delcypher wrote:
>
>> @jansvoboda11 I noticed that the `Options.td` file is making use of some fancy mixins that mean the option gets automatically marshalled by the frontend into the codegen options :). I tried this out using the patch to this patch and all my tests seem to pass. Should I be using these mixins (I don't know how stable they are because this looks like a new feature). Am I using them properly? It seems that the driver still has to parse the option manually (which is actually what I want) but the frontend automagically parses the option and modifies the right codegen option for me.
>
> Hi, yes, this is a new feature. The option generation is not being enforced in any way yet, but the automatic marshalling should work. You can test it by running your `clang -cc1` commands with the `-round-trip-args` flag (or `clang` with `-Xclang -round-trip-args`). With this option, the original `cc1` command line is first parsed into a dummy `CompilerInvocation`, which is used to generate new command line. The new command line is what is then used to create the real `CompilerInvocation`.
>
> As you've correctly discovered, this does not interact with the driver in any way.
>
> I'll be sending an email to cfe-dev about this shortly. Your marshalling code seems correct to me. If something does not work, check out the patch with documentation D95790 <https://reviews.llvm.org/D95790> and feel free to let me know.

@jansvoboda11 Thanks. If it's okay with you I'll make the change to use the new marshalling infrastructure in a separate patch (https://reviews.llvm.org/D97327) because I may need to back port this patch to an older LLVM branch.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D96572/new/

https://reviews.llvm.org/D96572



More information about the llvm-commits mailing list