Browse Source

Merge pull request #1765 from martin-frbg/issue1761

Do not use the new TLS-enabled memory allocator for non-threaded builds, and disable TLS by default in gmake as well
tags/v0.3.4
Martin Kroeker GitHub 7 years ago
parent
commit
4d183e5567
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 3 deletions
  1. +2
    -2
      Makefile.rule
  2. +6
    -1
      driver/others/memory.c

+ 2
- 2
Makefile.rule View File

@@ -107,13 +107,13 @@ BUILD_LAPACK_DEPRECATED = 1
# BUILD_RELAPACK = 1

# If you want to use legacy threaded Level 3 implementation.
USE_SIMPLE_THREADED_LEVEL3 = 1
# USE_SIMPLE_THREADED_LEVEL3 = 1

# If you want to use the new, still somewhat experimental code that uses
# thread-local storage instead of a central memory buffer in memory.c
# Note that if your system uses GLIBC, it needs to have at least glibc 2.21
# for this to work.
USE_TLS = 1
# USE_TLS = 1

# If you want to drive whole 64bit region by BLAS. Not all Fortran
# compiler supports this. It's safe to keep comment it out if you


+ 6
- 1
driver/others/memory.c View File

@@ -73,8 +73,13 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

#include "common.h"

#if defined(USE_TLS)
#if defined(USE_TLS) && defined(SMP)
#define COMPILE_TLS

#if USE_TLS != 1
#undef COMPILE_TLS
#endif

#if defined(__GLIBC_PREREQ)
#if !__GLIBC_PREREQ(2,20)
#undef COMPILE_TLS


Loading…
Cancel
Save