Browse Source

LibJS: Fix build error when some atomics are not lock-free

Normally, we want to avoid accidentally using such atomics, since
they're much slower. In this case however, we're just implementing
another atomics API, it is then up to the JavaScript code to avoid
using the slow atomics.
Sergey Bugaev 1 year ago
parent
commit
9c6c2284d9
1 changed files with 8 additions and 0 deletions
  1. 8 0
      Userland/Libraries/LibJS/Runtime/AtomicsObject.cpp

+ 8 - 0
Userland/Libraries/LibJS/Runtime/AtomicsObject.cpp

@@ -4,6 +4,14 @@
  * SPDX-License-Identifier: BSD-2-Clause
  */
 
+// This file explicitly implements support for JS Atomics API, which can
+// involve slow (non-lock-free) atomic ops.
+#include <AK/Platform.h>
+
+#ifdef AK_COMPILER_CLANG
+#    pragma clang diagnostic ignored "-Watomic-alignment"
+#endif
+
 #include <AK/Atomic.h>
 #include <AK/ByteBuffer.h>
 #include <AK/Endian.h>