Author: kparzysz Date: Tue Mar 13 06:30:43 2018 New Revision: 327393 URL: http://llvm.org/viewvc/llvm-project?rev=327393&view=rev Log: [Hexagon] Clang side of r327302 in LLVM
Add option -m[no-]packets to control generation of instruction packets (enabled by default). Added: cfe/trunk/test/Driver/hexagon-packets.c Modified: cfe/trunk/include/clang/Driver/Options.td Modified: cfe/trunk/include/clang/Driver/Options.td URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/Options.td?rev=327393&r1=327392&r2=327393&view=diff ============================================================================== --- cfe/trunk/include/clang/Driver/Options.td (original) +++ cfe/trunk/include/clang/Driver/Options.td Tue Mar 13 06:30:43 2018 @@ -2472,41 +2472,45 @@ def _write_dependencies : Flag<["--"], " def _write_user_dependencies : Flag<["--"], "write-user-dependencies">, Alias<MMD>; def _ : Joined<["--"], "">, Flags<[Unsupported]>; -def mieee_rnd_near : Flag<["-"], "mieee-rnd-near">, Group<m_hexagon_Features_Group>; +// Hexagon feature flags. +def mieee_rnd_near : Flag<["-"], "mieee-rnd-near">, + Group<m_hexagon_Features_Group>; def mv4 : Flag<["-"], "mv4">, Group<m_hexagon_Features_Group>, - Alias<mcpu_EQ>, AliasArgs<["hexagonv4"]>; + Alias<mcpu_EQ>, AliasArgs<["hexagonv4"]>; def mv5 : Flag<["-"], "mv5">, Group<m_hexagon_Features_Group>, Alias<mcpu_EQ>, - AliasArgs<["hexagonv5"]>; + AliasArgs<["hexagonv5"]>; def mv55 : Flag<["-"], "mv55">, Group<m_hexagon_Features_Group>, - Alias<mcpu_EQ>, AliasArgs<["hexagonv55"]>; + Alias<mcpu_EQ>, AliasArgs<["hexagonv55"]>; def mv60 : Flag<["-"], "mv60">, Group<m_hexagon_Features_Group>, - Alias<mcpu_EQ>, AliasArgs<["hexagonv60"]>; + Alias<mcpu_EQ>, AliasArgs<["hexagonv60"]>; def mv62 : Flag<["-"], "mv62">, Group<m_hexagon_Features_Group>, - Alias<mcpu_EQ>, AliasArgs<["hexagonv62"]>; + Alias<mcpu_EQ>, AliasArgs<["hexagonv62"]>; def mv65 : Flag<["-"], "mv65">, Group<m_hexagon_Features_Group>, - Alias<mcpu_EQ>, AliasArgs<["hexagonv65"]>; -def mhexagon_hvx : Flag<[ "-" ], "mhvx">, - Group<m_hexagon_Features_HVX_Group>, - HelpText<"Enable Hexagon Vector eXtensions">; + Alias<mcpu_EQ>, AliasArgs<["hexagonv65"]>; +def mhexagon_hvx : Flag<[ "-" ], "mhvx">, Group<m_hexagon_Features_HVX_Group>, + HelpText<"Enable Hexagon Vector eXtensions">; def mhexagon_hvx_EQ : Joined<[ "-" ], "mhvx=">, - Group<m_hexagon_Features_HVX_Group>, - HelpText<"Enable Hexagon Vector eXtensions">; + Group<m_hexagon_Features_HVX_Group>, + HelpText<"Enable Hexagon Vector eXtensions">; def mno_hexagon_hvx : Flag<[ "-" ], "mno-hvx">, - Group<m_hexagon_Features_HVX_Group>, - HelpText<"Disable Hexagon Vector eXtensions">; + Group<m_hexagon_Features_HVX_Group>, + HelpText<"Disable Hexagon Vector eXtensions">; def mhexagon_hvx_length_EQ : Joined<[ "-" ], "mhvx-length=">, - Group<m_hexagon_Features_HVX_Group>, - HelpText<"Set Hexagon Vector Length">, Values<"64B,128B">; -// hvx-double deprecrated flag. -def mhexagon_hvx_double : Flag<[ "-" ], "mhvx-double">, - Group<m_hexagon_Features_HVX_Group>, - HelpText<"Enable Hexagon Double Vector eXtensions">; -def mno_hexagon_hvx_double - : Flag<[ "-" ], "mno-hvx-double">, - Group<m_hexagon_Features_HVX_Group>, - HelpText<"Disable Hexagon Double Vector eXtensions">; + Group<m_hexagon_Features_HVX_Group>, HelpText<"Set Hexagon Vector Length">, + Values<"64B,128B">; def ffixed_r19: Flag<["-"], "ffixed-r19">, HelpText<"Reserve the r19 register (Hexagon only)">; +def mpackets : Flag<["-"], "mpackets">, Group<m_hexagon_Features_Group>, + Flags<[CC1Option]>, HelpText<"Enable generation of instruction packets">; +def mno_packets : Flag<["-"], "mno-packets">, Group<m_hexagon_Features_Group>, + Flags<[CC1Option]>, HelpText<"Disable generation of instruction packets">; +// hvx-double deprecrated flag. +def mhexagon_hvx_double : Flag<[ "-" ], "mhvx-double">, + Group<m_hexagon_Features_HVX_Group>, + HelpText<"Enable Hexagon Double Vector eXtensions">; +def mno_hexagon_hvx_double : Flag<[ "-" ], "mno-hvx-double">, + Group<m_hexagon_Features_HVX_Group>, + HelpText<"Disable Hexagon Double Vector eXtensions">; // X86 feature flags Added: cfe/trunk/test/Driver/hexagon-packets.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/hexagon-packets.c?rev=327393&view=auto ============================================================================== --- cfe/trunk/test/Driver/hexagon-packets.c (added) +++ cfe/trunk/test/Driver/hexagon-packets.c Tue Mar 13 06:30:43 2018 @@ -0,0 +1,10 @@ +// RUN: %clang -target hexagon -### -mpackets %s 2>&1 \ +// RUN: | FileCheck %s -check-prefix CHECK-PACKETS + +// RUN: %clang -target hexagon -### -mno-packets %s 2>&1 \ +// RUN: | FileCheck %s -check-prefix CHECK-NO-PACKETS + +// CHECK-PACKETS: "-target-feature" "+packets" + +// CHECK-NO-PACKETS: "-target-feature" "-packets" + _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits