[clang] [WebAssembly] Enable multivalue and reference-types in generic CPU config (PR #80923)

Thomas Lively via cfe-commits cfe-commits at lists.llvm.org
Tue Apr 23 12:00:04 PDT 2024


================
@@ -147,19 +147,25 @@ void WebAssemblyTargetInfo::setFeatureEnabled(llvm::StringMap<bool> &Features,
 bool WebAssemblyTargetInfo::initFeatureMap(
     llvm::StringMap<bool> &Features, DiagnosticsEngine &Diags, StringRef CPU,
     const std::vector<std::string> &FeaturesVec) const {
-  if (CPU == "bleeding-edge") {
-    Features["nontrapping-fptoint"] = true;
+  auto addGenericFeatures = [&]() {
     Features["sign-ext"] = true;
+    Features["mutable-globals"] = true;
+    Features["reference-types"] = true;
+    Features["multivalue"] = true;
+  };
+  auto addBleedingEdgeFeatures = [&]() {
+    addGenericFeatures();
+    Features["nontrapping-fptoint"] = true;
----------------
tlively wrote:

Looks like this was enabled in Safari in September 2021. Should we enable this by default as well?

https://github.com/llvm/llvm-project/pull/80923


More information about the cfe-commits mailing list