dox: doxygen -u

Ran doxygen -u to update Doxyfile to the doxygen 1.8.4

Signed-off-by: Matthias Kretz <kretz@kde.org>
dox: fix warning about fontpath

I don't care for the font used with dot. Whatever the default is works
fine for me.

Signed-off-by: Matthias Kretz <kretz@kde.org>
OptimizeForArchitecture: AMD 14h and 16h support

use btver2 or btver1 for AMD 16h / 14h CPUs

This fixes #620

Signed-off-by: Matthias Kretz <kretz@kde.org>
Allocator<T> now uses minimum alignment of the SIMD target

Allocator<T> just got more useful: e.g. Allocator<float> now allocates
aligned memory suitable for the default Vc::float_v aligned load/stores.
It uses hardcoded alignments for AVX and SSE - but that's all that Vc
0.7 supports anyway.

includes unit test that fails without the special handling in Allocator.

closes #616

Signed-off-by: Matthias Kretz <kretz@kde.org>
Memory: use SIMD load/stores for copies

Implemented copies of Memory objects that have size information (i.e.
not pointers to EntryType) to use dst.vector(i) = src.vector(i) loops.
Additionally I added 4-way unrolling for it to use more than a single
SIMD register for the copy. This replaces std::memcpy calls that were
there previously. Memory has more information (about alignment and
padding) that allows to implement this more efficiently.

closes #618

Signed-off-by: Matthias Kretz <kretz@kde.org>

Conflicts:

	common/memory.h
	common/memorybase.h
	tests/memory.cpp
fix previous commit: Vc_ALIGN_OF macro was removed

in master we use alignof directly

Signed-off-by: Matthias Kretz <kretz@kde.org>
cmake: warn about unused functions and typedefs

Signed-off-by: Matthias Kretz <kretz@kde.org>
fix log2(Scalar::float_v) failure on MacOS

according to Lorenzo Moneta the Apple std::log2(float) implementation
only provides results with 2 ulp distance (like with MSVC)

refs #630

Signed-off-by: Matthias Kretz <kretz@kde.org>
fix Vc::Scalar atan/atan2 failures on MacOS

according to Lorenzo Moneta the Apple std::atan and std::atan2
implementations do not conform to the man page documentation provided on
Linux. The man pages say that some special input values return specific
results. But the std::atan/atan2 functions on MacOS apparently return
values that don't match exactly.

fixes #630

Signed-off-by: Matthias Kretz <kretz@kde.org>
comment out unused function

The filename<T, Acos> function was added because the test data is
already available. But now that clang warns about this function being
unused it's better to comment the function. I don't want to remove it
because it serves as a reminder for the reference data.

Signed-off-by: Matthias Kretz <kretz@kde.org>
Merge branch 'master' into staging

Signed-off-by: Matthias Kretz <kretz@kde.org>

Conflicts:
	common/memorybase.h
less noise: #warning -> comment

It really isn't very useful for a user that compiles the test to see the
warning about the GCC bug all the time. Keep it as a comment in the
code, though.

Signed-off-by: Matthias Kretz <kretz@kde.org>
mark functions as inline instead of static

this gets rid of unused function warnings (it's not the code I want to
write, but warnings win...)

Signed-off-by: Matthias Kretz <kretz@kde.org>
remove dead code from conversion unittest

this code was here to test that some type combinations as arguments to
operators do not work. It was disabled long ago and doesn't work in this
way - so remove it.

Signed-off-by: Matthias Kretz <kretz@kde.org>
remove unused typedefs

These typedefs lead to noisy warnings. They might have been useful to
keep around for future work - but for now it's actually cleaner without
them.

Signed-off-by: Matthias Kretz <kretz@kde.org>
Merge remote branch 'origin/master' into staging
simdarray: remove old implementation

it was already #if0'ed out. Removed the dead code.

refs #613

Signed-off-by: Matthias Kretz <kretz@kde.org>
adjust test for missing operator bool

refs #652

Signed-off-by: Matthias Kretz <kretz@kde.org>
Vector: assert that T is_arithmetic

Signed-off-by: Matthias Kretz <kretz@kde.org>
simdarray: remove dead code

Signed-off-by: Matthias Kretz <kretz@kde.org>