[NFC] Replace HEADER_GLOBAL with inline (C++17).

HEADER_GLOBAL was using non-standard attributes to achieve what C++17
now permits with a keyword.  Use the standard formulation.

Update the README to note that gcc is still not recommended, but because
of its poor codegen for 128-bit atomic compare and exchange, rather than
because it doesn't support the attribute used for HEADER_GLOBAL.
This commit is contained in:
David Chisnall
2019-08-13 14:03:37 +01:00
committed by David Chisnall
parent bbf016bac8
commit 6dbe24da2e
5 changed files with 7 additions and 16 deletions

View File

@@ -50,9 +50,8 @@ To use snmalloc on NetBSD, you must either acquire a `libatomic` implementation
snmalloc has very few dependencies, CMake, Ninja, Clang 6.0 or later and a C++17
standard library.
Building with GCC is currently not recommended because GCC lacks support for the
`selectany` attribute to specify variables in a COMDAT.
It will build with GCC-7, but some of global variables will be preemptible.
Building with GCC is currently not recommended because GCC emits calls to
libatomic for 128-bit atomic operations.
To build a debug configuration:
```