sbc100 created this revision.
Herald added subscribers: wingo, jgravelle-google, dschuff.
sbc100 requested review of this revision.
Herald added subscribers: cfe-commits, aheejin.
Herald added a project: clang.
The superclass method handles a bunch of useful things. For example
it applies flags such as `-fnew-alignment` which doesn't work without
this patch.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D118573

Files:
  clang/lib/Basic/Targets/WebAssembly.cpp
  clang/test/CXX/cpp/cpp.predefined/p1.cpp


Index: clang/test/CXX/cpp/cpp.predefined/p1.cpp
===================================================================
--- clang/test/CXX/cpp/cpp.predefined/p1.cpp
+++ clang/test/CXX/cpp/cpp.predefined/p1.cpp
@@ -1,6 +1,7 @@
 // RUN: %clang_cc1 -std=c++1z %s -verify -triple x86_64-linux-gnu -DALIGN=16
 // RUN: %clang_cc1 -std=c++1z %s -verify -fnew-alignment=2 -DALIGN=2
 // RUN: %clang_cc1 -std=c++1z %s -verify -fnew-alignment=256 -DALIGN=256
+// RUN: %clang_cc1 -std=c++1z %s -verify -triple wasm32-unknown-unknown 
-fnew-alignment=256 -DALIGN=256
 
 // expected-no-diagnostics
 
Index: clang/lib/Basic/Targets/WebAssembly.cpp
===================================================================
--- clang/lib/Basic/Targets/WebAssembly.cpp
+++ clang/lib/Basic/Targets/WebAssembly.cpp
@@ -255,6 +255,7 @@
 
 void WebAssemblyTargetInfo::adjust(DiagnosticsEngine &Diags,
                                    LangOptions &Opts) {
+  TargetInfo::adjust(Diags, Opts);
   // If the Atomics feature isn't available, turn off POSIXThreads and
   // ThreadModel, so that we don't predefine _REENTRANT or __STDCPP_THREADS__.
   if (!HasAtomics) {


Index: clang/test/CXX/cpp/cpp.predefined/p1.cpp
===================================================================
--- clang/test/CXX/cpp/cpp.predefined/p1.cpp
+++ clang/test/CXX/cpp/cpp.predefined/p1.cpp
@@ -1,6 +1,7 @@
 // RUN: %clang_cc1 -std=c++1z %s -verify -triple x86_64-linux-gnu -DALIGN=16
 // RUN: %clang_cc1 -std=c++1z %s -verify -fnew-alignment=2 -DALIGN=2
 // RUN: %clang_cc1 -std=c++1z %s -verify -fnew-alignment=256 -DALIGN=256
+// RUN: %clang_cc1 -std=c++1z %s -verify -triple wasm32-unknown-unknown -fnew-alignment=256 -DALIGN=256
 
 // expected-no-diagnostics
 
Index: clang/lib/Basic/Targets/WebAssembly.cpp
===================================================================
--- clang/lib/Basic/Targets/WebAssembly.cpp
+++ clang/lib/Basic/Targets/WebAssembly.cpp
@@ -255,6 +255,7 @@
 
 void WebAssemblyTargetInfo::adjust(DiagnosticsEngine &Diags,
                                    LangOptions &Opts) {
+  TargetInfo::adjust(Diags, Opts);
   // If the Atomics feature isn't available, turn off POSIXThreads and
   // ThreadModel, so that we don't predefine _REENTRANT or __STDCPP_THREADS__.
   if (!HasAtomics) {
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to