Make source compile under Linux X32 ABI
authorErik Lindahl <erik@kth.se>
Mon, 23 Jun 2014 19:30:51 +0000 (21:30 +0200)
committerGerrit Code Review <gerrit@gerrit.gromacs.org>
Wed, 25 Jun 2014 17:26:17 +0000 (19:26 +0200)
commit72e3e8f51bf905d0688dab63e146785e6eba1a19
treeeac952c77c451d907de4213cf4acc30311b11e27
parentef0530b7e38bef6d0fdd5a4c55c3975e71ad897c
Make source compile under Linux X32 ABI

The X32 ABI uses 32-bit pointers in combination with all
other features of x86-64 to save memory. This requires two
minor changes to x86 inline assembly macro checks, where we
need check for __LP64__ (64-bit pointers) rather than
__x86_64__ (which is set for X32). The resulting binaries
run approximately 2% faster, but since it requires all
dependent libraries to be available in X32 format it is
not something we will enable with a simple setting for now.
To use it manually, set CFLAGS and CXXFLAGS to "-O3 -mx32".

Fixes #1263.

Change-Id: I2555b2c68d4bba24f4e581268c472a47fe7d1531
cmake/TestInlineASM_gcc_x86.c
src/external/thread_mpi/include/thread_mpi/atomic/gcc_x86.h