[clang] [llvm] [WebAssembly] Sort target features (NFC) (PR #90777)

2024-05-02 Thread Heejin Ahn via cfe-commits

https://github.com/aheejin closed 
https://github.com/llvm/llvm-project/pull/90777
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [WebAssembly] Sort target features (NFC) (PR #90777)

2024-05-01 Thread Thomas Lively via cfe-commits

https://github.com/tlively approved this pull request.


https://github.com/llvm/llvm-project/pull/90777
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [WebAssembly] Sort target features (NFC) (PR #90777)

2024-05-01 Thread Heejin Ahn via cfe-commits

https://github.com/aheejin updated 
https://github.com/llvm/llvm-project/pull/90777

>From b9fd03c2740fe924c0ea49bb78c9898412364105 Mon Sep 17 00:00:00 2001
From: Heejin Ahn 
Date: Mon, 29 Apr 2024 22:16:46 +
Subject: [PATCH 1/2] [WebAssembly] Sort target features (NFC)

---
 clang/include/clang/Driver/Options.td |  40 ++---
 clang/lib/Basic/Targets/WebAssembly.cpp   | 166 +-
 clang/lib/Basic/Targets/WebAssembly.h |  18 +-
 clang/test/Driver/wasm-features.c |  88 +-
 llvm/lib/Target/WebAssembly/WebAssembly.td|  64 +++
 .../WebAssembly/WebAssemblyInstrInfo.td   |  72 
 .../Target/WebAssembly/WebAssemblySubtarget.h |  32 ++--
 7 files changed, 241 insertions(+), 239 deletions(-)

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 864da4e1157f7d..5b79b066d384ad 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -4895,34 +4895,34 @@ def mharden_sls_EQ : Joined<["-"], "mharden-sls=">, 
Group,
" blr(ARM/AArch64), comdat(ARM/AArch64), nocomdat(ARM/AArch64),"
" return(X86), indirect-jmp(X86)">;
 
-def msimd128 : Flag<["-"], "msimd128">, Group;
-def mno_simd128 : Flag<["-"], "mno-simd128">, Group;
-def mrelaxed_simd : Flag<["-"], "mrelaxed-simd">, Group;
-def mno_relaxed_simd : Flag<["-"], "mno-relaxed-simd">, 
Group;
-def mhalf_precision : Flag<["-"], "mhalf-precision">, 
Group;
-def mno_half_precision : Flag<["-"], "mno-half-precision">, 
Group;
-def mnontrapping_fptoint : Flag<["-"], "mnontrapping-fptoint">, 
Group;
-def mno_nontrapping_fptoint : Flag<["-"], "mno-nontrapping-fptoint">, 
Group;
-def msign_ext : Flag<["-"], "msign-ext">, Group;
-def mno_sign_ext : Flag<["-"], "mno-sign-ext">, Group;
-def mexception_handing : Flag<["-"], "mexception-handling">, 
Group;
-def mno_exception_handing : Flag<["-"], "mno-exception-handling">, 
Group;
 def matomics : Flag<["-"], "matomics">, Group;
 def mno_atomics : Flag<["-"], "mno-atomics">, Group;
 def mbulk_memory : Flag<["-"], "mbulk-memory">, Group;
 def mno_bulk_memory : Flag<["-"], "mno-bulk-memory">, 
Group;
-def mmutable_globals : Flag<["-"], "mmutable-globals">, 
Group;
-def mno_mutable_globals : Flag<["-"], "mno-mutable-globals">, 
Group;
-def mmultivalue : Flag<["-"], "mmultivalue">, Group;
-def mno_multivalue : Flag<["-"], "mno-multivalue">, 
Group;
-def mtail_call : Flag<["-"], "mtail-call">, Group;
-def mno_tail_call : Flag<["-"], "mno-tail-call">, Group;
-def mreference_types : Flag<["-"], "mreference-types">, 
Group;
-def mno_reference_types : Flag<["-"], "mno-reference-types">, 
Group;
+def mexception_handing : Flag<["-"], "mexception-handling">, 
Group;
+def mno_exception_handing : Flag<["-"], "mno-exception-handling">, 
Group;
 def mextended_const : Flag<["-"], "mextended-const">, 
Group;
 def mno_extended_const : Flag<["-"], "mno-extended-const">, 
Group;
+def mhalf_precision : Flag<["-"], "mhalf-precision">, 
Group;
+def mno_half_precision : Flag<["-"], "mno-half-precision">, 
Group;
 def mmultimemory : Flag<["-"], "mmultimemory">, Group;
 def mno_multimemory : Flag<["-"], "mno-multimemory">, 
Group;
+def mmultivalue : Flag<["-"], "mmultivalue">, Group;
+def mno_multivalue : Flag<["-"], "mno-multivalue">, 
Group;
+def mmutable_globals : Flag<["-"], "mmutable-globals">, 
Group;
+def mno_mutable_globals : Flag<["-"], "mno-mutable-globals">, 
Group;
+def mnontrapping_fptoint : Flag<["-"], "mnontrapping-fptoint">, 
Group;
+def mno_nontrapping_fptoint : Flag<["-"], "mno-nontrapping-fptoint">, 
Group;
+def mreference_types : Flag<["-"], "mreference-types">, 
Group;
+def mno_reference_types : Flag<["-"], "mno-reference-types">, 
Group;
+def mrelaxed_simd : Flag<["-"], "mrelaxed-simd">, Group;
+def mno_relaxed_simd : Flag<["-"], "mno-relaxed-simd">, 
Group;
+def msign_ext : Flag<["-"], "msign-ext">, Group;
+def mno_sign_ext : Flag<["-"], "mno-sign-ext">, Group;
+def msimd128 : Flag<["-"], "msimd128">, Group;
+def mno_simd128 : Flag<["-"], "mno-simd128">, Group;
+def mtail_call : Flag<["-"], "mtail-call">, Group;
+def mno_tail_call : Flag<["-"], "mno-tail-call">, Group;
 def mexec_model_EQ : Joined<["-"], "mexec-model=">, 
Group,
  Values<"command,reactor">,
  HelpText<"Execution model (WebAssembly only)">,
diff --git a/clang/lib/Basic/Targets/WebAssembly.cpp 
b/clang/lib/Basic/Targets/WebAssembly.cpp
index 1f0418b21c1f86..a363478680570c 100644
--- a/clang/lib/Basic/Targets/WebAssembly.cpp
+++ b/clang/lib/Basic/Targets/WebAssembly.cpp
@@ -45,20 +45,20 @@ bool WebAssemblyTargetInfo::setABI(const std::string ) 
{
 
 bool WebAssemblyTargetInfo::hasFeature(StringRef Feature) const {
   return llvm::StringSwitch(Feature)
-  .Case("simd128", SIMDLevel >= SIMD128)
-  .Case("relaxed-simd", SIMDLevel >= RelaxedSIMD)
+  .Case("atomics", HasAtomics)
+  .Case("bulk-memory", HasBulkMemory)
+  

[clang] [llvm] [WebAssembly] Sort target features (NFC) (PR #90777)

2024-05-01 Thread via cfe-commits

github-actions[bot] wrote:




:warning: C/C++ code formatter, clang-format found issues in your code. 
:warning:



You can test this locally with the following command:


``bash
git-clang-format --diff a1c12794226ffde0a84c96b9188a266eafd85fb3 
b9fd03c2740fe924c0ea49bb78c9898412364105 -- 
clang/lib/Basic/Targets/WebAssembly.cpp clang/lib/Basic/Targets/WebAssembly.h 
clang/test/Driver/wasm-features.c 
llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
``





View the diff from clang-format here.


``diff
diff --git a/clang/lib/Basic/Targets/WebAssembly.cpp 
b/clang/lib/Basic/Targets/WebAssembly.cpp
index a363478680..b9c1f3c0f0 100644
--- a/clang/lib/Basic/Targets/WebAssembly.cpp
+++ b/clang/lib/Basic/Targets/WebAssembly.cpp
@@ -88,7 +88,7 @@ void WebAssemblyTargetInfo::getTargetDefines(const 
LangOptions ,
 Builder.defineMacro("__wasm_half_precision__");
   if (HasMultivalue)
 Builder.defineMacro("__wasm_multivalue__");
- if (HasMutableGlobals)
+  if (HasMutableGlobals)
 Builder.defineMacro("__wasm_mutable_globals__");
   if (HasNontrappingFPToInt)
 Builder.defineMacro("__wasm_nontrapping_fptoint__");

``




https://github.com/llvm/llvm-project/pull/90777
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [WebAssembly] Sort target features (NFC) (PR #90777)

2024-05-01 Thread via cfe-commits

llvmbot wrote:




@llvm/pr-subscribers-backend-webassembly

Author: Heejin Ahn (aheejin)


Changes



---

Patch is 33.79 KiB, truncated to 20.00 KiB below, full version: 
https://github.com/llvm/llvm-project/pull/90777.diff


7 Files Affected:

- (modified) clang/include/clang/Driver/Options.td (+20-20) 
- (modified) clang/lib/Basic/Targets/WebAssembly.cpp (+83-83) 
- (modified) clang/lib/Basic/Targets/WebAssembly.h (+9-9) 
- (modified) clang/test/Driver/wasm-features.c (+44-44) 
- (modified) llvm/lib/Target/WebAssembly/WebAssembly.td (+32-32) 
- (modified) llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td (+37-35) 
- (modified) llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h (+16-16) 


``diff
diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 864da4e1157f7d..5b79b066d384ad 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -4895,34 +4895,34 @@ def mharden_sls_EQ : Joined<["-"], "mharden-sls=">, 
Group,
" blr(ARM/AArch64), comdat(ARM/AArch64), nocomdat(ARM/AArch64),"
" return(X86), indirect-jmp(X86)">;
 
-def msimd128 : Flag<["-"], "msimd128">, Group;
-def mno_simd128 : Flag<["-"], "mno-simd128">, Group;
-def mrelaxed_simd : Flag<["-"], "mrelaxed-simd">, Group;
-def mno_relaxed_simd : Flag<["-"], "mno-relaxed-simd">, 
Group;
-def mhalf_precision : Flag<["-"], "mhalf-precision">, 
Group;
-def mno_half_precision : Flag<["-"], "mno-half-precision">, 
Group;
-def mnontrapping_fptoint : Flag<["-"], "mnontrapping-fptoint">, 
Group;
-def mno_nontrapping_fptoint : Flag<["-"], "mno-nontrapping-fptoint">, 
Group;
-def msign_ext : Flag<["-"], "msign-ext">, Group;
-def mno_sign_ext : Flag<["-"], "mno-sign-ext">, Group;
-def mexception_handing : Flag<["-"], "mexception-handling">, 
Group;
-def mno_exception_handing : Flag<["-"], "mno-exception-handling">, 
Group;
 def matomics : Flag<["-"], "matomics">, Group;
 def mno_atomics : Flag<["-"], "mno-atomics">, Group;
 def mbulk_memory : Flag<["-"], "mbulk-memory">, Group;
 def mno_bulk_memory : Flag<["-"], "mno-bulk-memory">, 
Group;
-def mmutable_globals : Flag<["-"], "mmutable-globals">, 
Group;
-def mno_mutable_globals : Flag<["-"], "mno-mutable-globals">, 
Group;
-def mmultivalue : Flag<["-"], "mmultivalue">, Group;
-def mno_multivalue : Flag<["-"], "mno-multivalue">, 
Group;
-def mtail_call : Flag<["-"], "mtail-call">, Group;
-def mno_tail_call : Flag<["-"], "mno-tail-call">, Group;
-def mreference_types : Flag<["-"], "mreference-types">, 
Group;
-def mno_reference_types : Flag<["-"], "mno-reference-types">, 
Group;
+def mexception_handing : Flag<["-"], "mexception-handling">, 
Group;
+def mno_exception_handing : Flag<["-"], "mno-exception-handling">, 
Group;
 def mextended_const : Flag<["-"], "mextended-const">, 
Group;
 def mno_extended_const : Flag<["-"], "mno-extended-const">, 
Group;
+def mhalf_precision : Flag<["-"], "mhalf-precision">, 
Group;
+def mno_half_precision : Flag<["-"], "mno-half-precision">, 
Group;
 def mmultimemory : Flag<["-"], "mmultimemory">, Group;
 def mno_multimemory : Flag<["-"], "mno-multimemory">, 
Group;
+def mmultivalue : Flag<["-"], "mmultivalue">, Group;
+def mno_multivalue : Flag<["-"], "mno-multivalue">, 
Group;
+def mmutable_globals : Flag<["-"], "mmutable-globals">, 
Group;
+def mno_mutable_globals : Flag<["-"], "mno-mutable-globals">, 
Group;
+def mnontrapping_fptoint : Flag<["-"], "mnontrapping-fptoint">, 
Group;
+def mno_nontrapping_fptoint : Flag<["-"], "mno-nontrapping-fptoint">, 
Group;
+def mreference_types : Flag<["-"], "mreference-types">, 
Group;
+def mno_reference_types : Flag<["-"], "mno-reference-types">, 
Group;
+def mrelaxed_simd : Flag<["-"], "mrelaxed-simd">, Group;
+def mno_relaxed_simd : Flag<["-"], "mno-relaxed-simd">, 
Group;
+def msign_ext : Flag<["-"], "msign-ext">, Group;
+def mno_sign_ext : Flag<["-"], "mno-sign-ext">, Group;
+def msimd128 : Flag<["-"], "msimd128">, Group;
+def mno_simd128 : Flag<["-"], "mno-simd128">, Group;
+def mtail_call : Flag<["-"], "mtail-call">, Group;
+def mno_tail_call : Flag<["-"], "mno-tail-call">, Group;
 def mexec_model_EQ : Joined<["-"], "mexec-model=">, 
Group,
  Values<"command,reactor">,
  HelpText<"Execution model (WebAssembly only)">,
diff --git a/clang/lib/Basic/Targets/WebAssembly.cpp 
b/clang/lib/Basic/Targets/WebAssembly.cpp
index 1f0418b21c1f86..a363478680570c 100644
--- a/clang/lib/Basic/Targets/WebAssembly.cpp
+++ b/clang/lib/Basic/Targets/WebAssembly.cpp
@@ -45,20 +45,20 @@ bool WebAssemblyTargetInfo::setABI(const std::string ) 
{
 
 bool WebAssemblyTargetInfo::hasFeature(StringRef Feature) const {
   return llvm::StringSwitch(Feature)
-  .Case("simd128", SIMDLevel >= SIMD128)
-  .Case("relaxed-simd", SIMDLevel >= RelaxedSIMD)
+  .Case("atomics", HasAtomics)
+  .Case("bulk-memory", HasBulkMemory)
+  .Case("exception-handling", HasExceptionHandling)
+  

[clang] [llvm] [WebAssembly] Sort target features (NFC) (PR #90777)

2024-05-01 Thread Heejin Ahn via cfe-commits

https://github.com/aheejin created 
https://github.com/llvm/llvm-project/pull/90777

None

>From b9fd03c2740fe924c0ea49bb78c9898412364105 Mon Sep 17 00:00:00 2001
From: Heejin Ahn 
Date: Mon, 29 Apr 2024 22:16:46 +
Subject: [PATCH] [WebAssembly] Sort target features (NFC)

---
 clang/include/clang/Driver/Options.td |  40 ++---
 clang/lib/Basic/Targets/WebAssembly.cpp   | 166 +-
 clang/lib/Basic/Targets/WebAssembly.h |  18 +-
 clang/test/Driver/wasm-features.c |  88 +-
 llvm/lib/Target/WebAssembly/WebAssembly.td|  64 +++
 .../WebAssembly/WebAssemblyInstrInfo.td   |  72 
 .../Target/WebAssembly/WebAssemblySubtarget.h |  32 ++--
 7 files changed, 241 insertions(+), 239 deletions(-)

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 864da4e1157f7d..5b79b066d384ad 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -4895,34 +4895,34 @@ def mharden_sls_EQ : Joined<["-"], "mharden-sls=">, 
Group,
" blr(ARM/AArch64), comdat(ARM/AArch64), nocomdat(ARM/AArch64),"
" return(X86), indirect-jmp(X86)">;
 
-def msimd128 : Flag<["-"], "msimd128">, Group;
-def mno_simd128 : Flag<["-"], "mno-simd128">, Group;
-def mrelaxed_simd : Flag<["-"], "mrelaxed-simd">, Group;
-def mno_relaxed_simd : Flag<["-"], "mno-relaxed-simd">, 
Group;
-def mhalf_precision : Flag<["-"], "mhalf-precision">, 
Group;
-def mno_half_precision : Flag<["-"], "mno-half-precision">, 
Group;
-def mnontrapping_fptoint : Flag<["-"], "mnontrapping-fptoint">, 
Group;
-def mno_nontrapping_fptoint : Flag<["-"], "mno-nontrapping-fptoint">, 
Group;
-def msign_ext : Flag<["-"], "msign-ext">, Group;
-def mno_sign_ext : Flag<["-"], "mno-sign-ext">, Group;
-def mexception_handing : Flag<["-"], "mexception-handling">, 
Group;
-def mno_exception_handing : Flag<["-"], "mno-exception-handling">, 
Group;
 def matomics : Flag<["-"], "matomics">, Group;
 def mno_atomics : Flag<["-"], "mno-atomics">, Group;
 def mbulk_memory : Flag<["-"], "mbulk-memory">, Group;
 def mno_bulk_memory : Flag<["-"], "mno-bulk-memory">, 
Group;
-def mmutable_globals : Flag<["-"], "mmutable-globals">, 
Group;
-def mno_mutable_globals : Flag<["-"], "mno-mutable-globals">, 
Group;
-def mmultivalue : Flag<["-"], "mmultivalue">, Group;
-def mno_multivalue : Flag<["-"], "mno-multivalue">, 
Group;
-def mtail_call : Flag<["-"], "mtail-call">, Group;
-def mno_tail_call : Flag<["-"], "mno-tail-call">, Group;
-def mreference_types : Flag<["-"], "mreference-types">, 
Group;
-def mno_reference_types : Flag<["-"], "mno-reference-types">, 
Group;
+def mexception_handing : Flag<["-"], "mexception-handling">, 
Group;
+def mno_exception_handing : Flag<["-"], "mno-exception-handling">, 
Group;
 def mextended_const : Flag<["-"], "mextended-const">, 
Group;
 def mno_extended_const : Flag<["-"], "mno-extended-const">, 
Group;
+def mhalf_precision : Flag<["-"], "mhalf-precision">, 
Group;
+def mno_half_precision : Flag<["-"], "mno-half-precision">, 
Group;
 def mmultimemory : Flag<["-"], "mmultimemory">, Group;
 def mno_multimemory : Flag<["-"], "mno-multimemory">, 
Group;
+def mmultivalue : Flag<["-"], "mmultivalue">, Group;
+def mno_multivalue : Flag<["-"], "mno-multivalue">, 
Group;
+def mmutable_globals : Flag<["-"], "mmutable-globals">, 
Group;
+def mno_mutable_globals : Flag<["-"], "mno-mutable-globals">, 
Group;
+def mnontrapping_fptoint : Flag<["-"], "mnontrapping-fptoint">, 
Group;
+def mno_nontrapping_fptoint : Flag<["-"], "mno-nontrapping-fptoint">, 
Group;
+def mreference_types : Flag<["-"], "mreference-types">, 
Group;
+def mno_reference_types : Flag<["-"], "mno-reference-types">, 
Group;
+def mrelaxed_simd : Flag<["-"], "mrelaxed-simd">, Group;
+def mno_relaxed_simd : Flag<["-"], "mno-relaxed-simd">, 
Group;
+def msign_ext : Flag<["-"], "msign-ext">, Group;
+def mno_sign_ext : Flag<["-"], "mno-sign-ext">, Group;
+def msimd128 : Flag<["-"], "msimd128">, Group;
+def mno_simd128 : Flag<["-"], "mno-simd128">, Group;
+def mtail_call : Flag<["-"], "mtail-call">, Group;
+def mno_tail_call : Flag<["-"], "mno-tail-call">, Group;
 def mexec_model_EQ : Joined<["-"], "mexec-model=">, 
Group,
  Values<"command,reactor">,
  HelpText<"Execution model (WebAssembly only)">,
diff --git a/clang/lib/Basic/Targets/WebAssembly.cpp 
b/clang/lib/Basic/Targets/WebAssembly.cpp
index 1f0418b21c1f86..a363478680570c 100644
--- a/clang/lib/Basic/Targets/WebAssembly.cpp
+++ b/clang/lib/Basic/Targets/WebAssembly.cpp
@@ -45,20 +45,20 @@ bool WebAssemblyTargetInfo::setABI(const std::string ) 
{
 
 bool WebAssemblyTargetInfo::hasFeature(StringRef Feature) const {
   return llvm::StringSwitch(Feature)
-  .Case("simd128", SIMDLevel >= SIMD128)
-  .Case("relaxed-simd", SIMDLevel >= RelaxedSIMD)
+  .Case("atomics", HasAtomics)
+  .Case("bulk-memory", HasBulkMemory)
+