SuccessChanges

Summary

  1. [OpenMP] Update allocator trait key/value definitions (details)
  2. [gn build] Reorganize libcxx/include/BUILD.gn a bit (details)
  3. [libc++] Give extern templates default visibility on gcc (details)
  4. [OpenMP] Use persistent memory for omp_large_cap_mem (details)
Commit 6f0f0220380f83e8f3bf9832ffa795e9965fda2d by hansang.bae
[OpenMP] Update allocator trait key/value definitions

Use new definitions introduced in 5.1 specification.

Differential Revision: https://reviews.llvm.org/D94277
The file was modifiedopenmp/runtime/src/include/omp.h.var
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/src/include/omp_lib.f90.var
The file was modifiedopenmp/runtime/src/include/omp_lib.h.var
The file was modifiedopenmp/runtime/src/kmp_alloc.cpp
Commit acea470c167fc40990d9a0f06d625a34d8a4a146 by thakis
[gn build] Reorganize libcxx/include/BUILD.gn a bit

- Merge 6706342f48bea80 -- no more libcxx_needs_site_config, we now
  always need it
- Since it was always off in practice, write_config bitrot. Unbitrot
  it so that it works
- Remove copy step and let concat step write to final location
  immediately -- and fix copy destination directory

As a side effect, libcxx/include/BUILD.gn now has only a single
sources list, which means the cmake sync script should be able to
automatically sync additions and removals of .h files. On the flipside,
this means this file now must be updated after most changes to
libcxx/include/__config_site.in, and looking through the last few months
of changes this looks like it's going to be a wash.
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 0066a09579ca90f60cb1947691e5a441f9f57a5d by smeenai
[libc++] Give extern templates default visibility on gcc

Contrary to the current visibility macro documentation, it appears that
gcc does handle visibility attribute on extern templates correctly, e.g.
https://godbolt.org/g/EejuV7. We need this so that extern template
instantiations of classes not marked _LIBCPP_TEMPLATE_VIS (e.g.
__vector_base_common) are correctly exported with gcc when building with
hidden visibility.

Reviewed By: ldionne

Differential Revision: https://reviews.llvm.org/D35388
The file was modifiedlibcxx/docs/DesignDocs/VisibilityMacros.rst
The file was modifiedlibcxx/include/__config
Commit bba3a82b56c0874757f2c1423bbdff08e2a88967 by hansang.bae
[OpenMP] Use persistent memory for omp_large_cap_mem

This change enables volatile use of persistent memory for omp_large_cap_mem*
on supported systems. It depends on libmemkind's support for persistent memory,
and requirements/details can be found at the following url.

https://pmem.io/2020/01/20/memkind-dax-kmem.html

Differential Revision: https://reviews.llvm.org/D94353
The file was modifiedopenmp/runtime/src/kmp_alloc.cpp