Author: Andrzej Warzynski Date: 2023-08-18T10:48:55Z New Revision: 3b28dce6daa4e70694cfe9df4526c9e6ee40b87e
URL: https://github.com/llvm/llvm-project/commit/3b28dce6daa4e70694cfe9df4526c9e6ee40b87e DIFF: https://github.com/llvm/llvm-project/commit/3b28dce6daa4e70694cfe9df4526c9e6ee40b87e.diff LOG: [flang][driver] Mark the remaining Flang options as FlangOption This is a follow-up of https://reviews.llvm.org/D157837 in which I missed a few Flang options in Options.td. This patch simply updates the remaining options that are already supported by Flang with the relevant visibility flag: Fixes: * https://lab.llvm.org/buildbot/#/builders/191/builds/22241 Added: Modified: clang/include/clang/Driver/Options.td flang/test/Driver/driver-help-hidden.f90 flang/test/Driver/driver-help.f90 Removed: ################################################################################ diff --git a/clang/include/clang/Driver/Options.td b/clang/include/clang/Driver/Options.td index df2e2adef17dde..acdb206c18d128 100644 --- a/clang/include/clang/Driver/Options.td +++ b/clang/include/clang/Driver/Options.td @@ -1395,10 +1395,6 @@ def fmax_tokens_EQ : Joined<["-"], "fmax-tokens=">, Group<f_Group>, Visibility<[ClangOption, CC1Option]>, HelpText<"Max total number of preprocessed tokens for -Wmax-tokens.">, MarshallingInfoInt<LangOpts<"MaxTokens">>; -def fPIC : Flag<["-"], "fPIC">, Group<f_Group>; -def fno_PIC : Flag<["-"], "fno-PIC">, Group<f_Group>; -def fPIE : Flag<["-"], "fPIE">, Group<f_Group>; -def fno_PIE : Flag<["-"], "fno-PIE">, Group<f_Group>; defm access_control : BoolFOption<"access-control", LangOpts<"AccessControl">, DefaultTrue, NegFlag<SetFalse, [], [ClangOption, CC1Option], @@ -3367,10 +3363,6 @@ def fpcc_struct_return : Flag<["-"], "fpcc-struct-return">, Group<f_Group>, Visibility<[ClangOption, CC1Option]>, HelpText<"Override the default ABI to return all structs on the stack">; def fpch_preprocess : Flag<["-"], "fpch-preprocess">, Group<f_Group>; -def fpic : Flag<["-"], "fpic">, Group<f_Group>; -def fno_pic : Flag<["-"], "fno-pic">, Group<f_Group>; -def fpie : Flag<["-"], "fpie">, Visibility<[ClangOption, FlangOption]>, Group<f_Group>; -def fno_pie : Flag<["-"], "fno-pie">, Visibility<[ClangOption, FlangOption]>, Group<f_Group>; defm pic_data_is_text_relative : SimpleMFlag<"pic-data-is-text-relative", "Assume", "Don't assume", " data segments are relative to text segment">; def fdirect_access_external_data : Flag<["-"], "fdirect-access-external-data">, Group<f_Group>, @@ -3386,12 +3378,12 @@ defm plt : BoolFOption<"plt", PosFlag<SetFalse>>; defm ropi : BoolFOption<"ropi", LangOpts<"ROPI">, DefaultFalse, - PosFlag<SetTrue, [], [ClangOption, CC1Option], + PosFlag<SetTrue, [], [ClangOption, FlangOption, CC1Option], "Generate read-only position independent code (ARM only)">, NegFlag<SetFalse>>; defm rwpi : BoolFOption<"rwpi", LangOpts<"RWPI">, DefaultFalse, - PosFlag<SetTrue, [], [ClangOption, CC1Option], + PosFlag<SetTrue, [], [ClangOption, FlangOption, CC1Option], "Generate read-write position independent code (ARM only)">, NegFlag<SetFalse>>; def fplugin_EQ : Joined<["-"], "fplugin=">, Group<f_Group>, @@ -4254,7 +4246,6 @@ def mguard_EQ : Joined<["-"], "mguard=">, Group<m_Group>, Values<"none,cf,cf-nochecks">; def mmcu_EQ : Joined<["-"], "mmcu=">, Group<m_Group>; def msim : Flag<["-"], "msim">, Group<m_Group>; -def mdynamic_no_pic : Joined<["-"], "mdynamic-no-pic">, Group<m_Group>; def mfix_and_continue : Flag<["-"], "mfix-and-continue">, Group<clang_ignored_m_Group>; def mieee_fp : Flag<["-"], "mieee-fp">, Group<clang_ignored_m_Group>; def minline_all_stringops : Flag<["-"], "minline-all-stringops">, Group<clang_ignored_m_Group>; @@ -5277,7 +5268,7 @@ def undef : Flag<["-"], "undef">, Group<u_Group>, def unexported__symbols__list : Separate<["-"], "unexported_symbols_list">; def u : JoinedOrSeparate<["-"], "u">, Group<u_Group>; def v : Flag<["-"], "v">, - Visibility<[ClangOption, CC1Option, CLOption, DXCOption]>, + Visibility<[ClangOption, CC1Option, CLOption, DXCOption, FlangOption]>, HelpText<"Show commands to run and use verbose output">, MarshallingInfoFlag<HeaderSearchOpts<"Verbose">>; def altivec_src_compat : Joined<["-"], "faltivec-src-compat=">, @@ -5469,6 +5460,22 @@ def _help_hidden : Flag<["--"], "help-hidden">, def _sysroot_EQ : Joined<["--"], "sysroot=">, Visibility<[ClangOption, FlangOption]>; def _sysroot : Separate<["--"], "sysroot">, Alias<_sysroot_EQ>; +//===----------------------------------------------------------------------===// +// pie/pic options (clang + flang-new) +//===----------------------------------------------------------------------===// +let Visibility = [ClangOption, FlangOption] in { + +def fPIC : Flag<["-"], "fPIC">, Group<f_Group>; +def fno_PIC : Flag<["-"], "fno-PIC">, Group<f_Group>; +def fPIE : Flag<["-"], "fPIE">, Group<f_Group>; +def fno_PIE : Flag<["-"], "fno-PIE">, Group<f_Group>; +def fpic : Flag<["-"], "fpic">, Group<f_Group>; +def fno_pic : Flag<["-"], "fno-pic">, Group<f_Group>; +def fpie : Flag<["-"], "fpie">, Group<f_Group>; +def fno_pie : Flag<["-"], "fno-pie">, Group<f_Group>; + +} // let Vis = [Default, FlangOption] + //===----------------------------------------------------------------------===// // Target Options (clang + flang-new) //===----------------------------------------------------------------------===// @@ -5477,6 +5484,7 @@ let Visibility = [ClangOption, FlangOption] in { def mcpu_EQ : Joined<["-"], "mcpu=">, Group<m_Group>, HelpText<"For a list of available CPUs for the target use '-mcpu=help'">; +def mdynamic_no_pic : Joined<["-"], "mdynamic-no-pic">, Group<m_Group>; } // let Vis = [Default, FlangOption] } // let Flags = [TargetSpecific] diff --git a/flang/test/Driver/driver-help-hidden.f90 b/flang/test/Driver/driver-help-hidden.f90 index 5f5e47dfdb7549..1842fc7b03c103 100644 --- a/flang/test/Driver/driver-help-hidden.f90 +++ b/flang/test/Driver/driver-help-hidden.f90 @@ -84,6 +84,8 @@ ! CHECK-NEXT: -fppc-native-vector-element-order ! CHECK-NEXT: Specifies PowerPC native vector element order (default) ! CHECK-NEXT: -freciprocal-math Allow division operations to be reassociated +! CHECK-NEXT: -fropi Generate read-only position independent code (ARM only) +! CHECK-NEXT: -frwpi Generate read-write position independent code (ARM only) ! CHECK-NEXT: -fsave-optimization-record=<format> ! CHECK-NEXT: Generate an optimization record file in a specific format ! CHECK-NEXT: -fsave-optimization-record @@ -129,10 +131,12 @@ ! CHECK-NEXT: --target=<value> Generate code for the given target ! CHECK-NEXT: -U <macro> Undefine macro <macro> ! CHECK-NEXT: --version Print version information +! CHECK-NEXT: -v Show commands to run and use verbose output ! CHECK-NEXT: -W<warning> Enable the specified warning ! CHECK-NEXT: -Xflang <arg> Pass <arg> to the flang compiler ! CHECK-NEXT: -x <language> Treat subsequent input files as having type <language> + ! ERROR-FLANG: error: unknown argument '-help-hidden'; did you mean '--help-hidden'? ! Frontend driver -help-hidden is not supported diff --git a/flang/test/Driver/driver-help.f90 b/flang/test/Driver/driver-help.f90 index 60e5d65db836d4..85d707e35f1f58 100644 --- a/flang/test/Driver/driver-help.f90 +++ b/flang/test/Driver/driver-help.f90 @@ -72,6 +72,8 @@ ! HELP-NEXT: -fppc-native-vector-element-order ! HELP-NEXT: Specifies PowerPC native vector element order (default) ! HELP-NEXT: -freciprocal-math Allow division operations to be reassociated +! HELP-NEXT: -fropi Generate read-only position independent code (ARM only) +! HELP-NEXT: -frwpi Generate read-write position independent code (ARM only) ! HELP-NEXT: -fsave-optimization-record=<format> ! HELP-NEXT: Generate an optimization record file in a specific format ! HELP-NEXT: -fsave-optimization-record @@ -117,6 +119,7 @@ ! HELP-NEXT: --target=<value> Generate code for the given target ! HELP-NEXT: -U <macro> Undefine macro <macro> ! HELP-NEXT: --version Print version information +! HELP-NEXT: -v Show commands to run and use verbose output ! HELP-NEXT: -W<warning> Enable the specified warning ! HELP-NEXT: -Xflang <arg> Pass <arg> to the flang compiler ! HELP-NEXT: -x <language> Treat subsequent input files as having type <language> _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits