mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-26 03:36:07 +00:00

Currently, FlangOptionsDocs.td doesn't specify `ExcludedFlags` which means that in the generated documentation file we expose flags that: * we don't necessarily won't to advertise to our users (e.g. hidden flags), or * are not supported altogether (e.g. CL options). This patch defines `ExcludeFlags` to fix that. The definition of `ExcludeFlags` was copied from Clang so that LLVM frontends have consistent documentation. It might be a bit counter-intuitive that IncludeFlags alone is not sufficient here. However, the current logic in ClangOptionDocEmitter.cpp will parse IncludeFlags and print all options that contains one of the included flags, as well as their aliases. So, for example, for -fopenmp (which is a supported Flang option), one would also get /fopenmp (i.e. CL mode equivalent for -fopenmp). By adding ExcludeFlags, we make sure that such aliases are excluded. I've also taken the liberty and moved FlangOptionsDocs.td. Originally it was located in Flang's "flang/include" directory, but there shouldn't be any implementation/documentation files there. Instead, I'm moving it to the "flang/docs" directory. Differential Revision: https://reviews.llvm.org/D130558
37 lines
1.1 KiB
TableGen
37 lines
1.1 KiB
TableGen
//==--- FlangOptionDocs.td - Option documentation -------------------------===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
def GlobalDocumentation {
|
|
code Intro =[{..
|
|
-------------------------------------------------------------------
|
|
NOTE: This file is automatically generated by running clang-tblgen
|
|
-gen-opt-docs. Do not edit this file by hand!!
|
|
-------------------------------------------------------------------
|
|
|
|
=====================================
|
|
Flang command line argument reference
|
|
=====================================
|
|
.. contents::
|
|
:local:
|
|
|
|
Introduction
|
|
============
|
|
|
|
}];
|
|
|
|
string Program = "flang";
|
|
|
|
list<string> ExcludedFlags = ["HelpHidden", "NoDriverOption",
|
|
"CLOption", "Unsupported", "Ignored"];
|
|
list<string> IncludedFlags = ["FlangOption"];
|
|
|
|
}
|
|
|
|
|
|
include "Options.td"
|