Test that compiling and linking of AVX works

Older assemblers don't have support for AVX

Related to #1021

Change-Id: If8da47f9458c592d5408c7322280ffacce81145d
Removed some unnecessary instructions, and fixed a bug in GB kernel

The force-only kernels do not have to load all parts of the table,
which saves a few instructions. This patch also fixes a small error in the
chain-rule force introduced in the new generalized-born kernels. There
will soon be automatic tests for the GB kernels, but not today...

Change-Id: Ib9f8b2294ba98bdcbc040f6563a2889c3a9f47a0
fixed nbnxn x86 SIMD non-bonded performance regression

Commit f40969c2 broke the LJ combination detection,
which effectively made all runs use the full combination rule
matrix for x86 SIMD kernels. This is now corrected.

Change-Id: I1073801546fde23e6a53199120246697a7c61b5f
FindFFTW: Keep checking pkg_config until fftw is found

Prior pkg_config didn't work when PKG_CONFIG_PATH was changed
after initial cmake run.

Change-Id: I7c067bdb634577c7847421f187b4893aa52ff511
fixed incorrect 1-4 energies with OpenMP + energy groups

The OpenMP bonded thread data structure allocated too few energy group
elements with more than 1 energy group. This would lead to incorrect
1-4 interaction energies when atoms beyond the first energy group
were involved in 1-4 interactions (but sampling itself was correct).
Potentially this could also lead to memory corruption.
All this could only happen with more than 1 OpenMP thread.

Change-Id: Ib6b91862eaaddaafc0c609961219e01c7be0f9eb
Verify that FFTW can be used with shared libraries

Fixes #740

Change-Id: If55f9bde72b1b2ce783c2a86a9bf0170a159c266
Merge "Test that compiling and linking of AVX works" into release-4-6
reduced the cost of the nbnxn OpenMP nb-force reduction

The cost of the nbnxn non-bonded force reduction, used with OpenMP
on the CPU, increased linearly with the number of OpenMP threads.
Now blocks of this array are only reduced when a thread writes
forces to it.

Change-Id: I06acf772b7951ad3166d22be2e5876e3e5084bc0
Removes unused files

These files are never compiled

Change-Id: I5ccb808b4021b3c081b947ff3a559bb798babbed
SSE2 single-precision kernels

New single-precision x86 kernels rewritten to use intrinsics
instead of raw assembly. SSE2 is now our lowest-supported
accelerated instruction set on x86. We generate kernels for
the same interaction choices as the plain c kernels, but
have not enabled Buckingham interactions SSE kernels since
that would generate a whole lot more kernels that would only
be use in rare circumstances. The neighborsearching routine
has also been updated to optionally generate lists that
are padded up to the simd width, which is set by each
kernel when we initialize the neighborlist.

Change-Id: Ic51078e10e7f1f29af3d33e256177806ec208646
Merge "Removes unused files" into release-4-6
Remove rest of the xml support

* xml_io was removed in bfab7b6030da6cec449429454e2fa9a720474838

Change-Id: If78d923f292cd5f547d88dfa07c42ec31a797c82
Removing Zn and Ar non-OPLS atom types

Some parameters were clearly wrong and the source of them was
not documented. They can be added back in but then the source
needs to be documented.

Add source for Fe2+.

Leaving Cu2+, Fe2+ and SI given their source is documented.

Fixes #957

Change-Id: I82a5b7ae4a54ab2aeb5690cea6256146a9819250
Added grompp warning

Don't silently allow the user to combine velocity generation and an
unconstrained start.

Change-Id: I62f9f917fe583dfccdddfb5f9fad82a17e15ca25
Merge "Removing Zn and Ar non-OPLS atom types" into release-4-6
Merge "Remove rest of the xml support" into release-4-6
Merge "Added grompp warning" into release-4-6
Rename remaining GMX_ACCELERATION to GMX_CPU_ACCELERATION

366c49a438150 renamed this variable but forgot these three.

Change-Id: Iad653e2deaa2fc7cb218bffab84c6833ff8b3d56
Merge 'release-4-6' into master

Conflicts:
	CMakeLists.txt
	src/config.h.cmakein
	src/mdlib/CMakeLists.txt
	src/mdlib/libmd.pc.cmakein (all 4 trivial)

Removed old src/gromacs/gmxlib/nonbonded/nb_kernel_sse2_single and moved
new ones.

XML not removed (51ec258 reverted as part of merge resolution), besides
HAVE_LIBXML2 (wasn't used).

Change-Id: I831320df04d49fc80fd3bf46c94af50a842b29b8
Merge branch 'master' into alexandria