[all-commits] [llvm/llvm-project] 6baa97: [clang][cli] Add flexible TableGen multiclass for ...

Jan Svoboda via All-commits all-commits at lists.llvm.org
Sat Dec 12 01:58:20 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 6baa9769ed573741290fb186d02df7cf676fc8de
      https://github.com/llvm/llvm-project/commit/6baa9769ed573741290fb186d02df7cf676fc8de
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2020-12-12 (Sat, 12 Dec 2020)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/unittests/Frontend/CompilerInvocationTest.cpp
    M llvm/include/llvm/Option/OptParser.td

  Log Message:
  -----------
  [clang][cli] Add flexible TableGen multiclass for boolean options

This introduces more flexible multiclass for declaring two flags controlling the same boolean keypath.

Compared to existing Opt{In,Out}FFlag multiclasses, the new syntax makes it easier to read option declarations and reason about the keypath.

This also makes specifying common properties of both flags possible.

I'm open to suggestions on the class names. Not 100% sure the benefits are worth the added complexity.

Depends on D92774.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D92775




More information about the All-commits mailing list