src/libFLAC/cpu.c : Remove MSVC6 only code.

Patch from: lvqcl <lvqcl.mail@gmail.com>
Add ASM function FLAC__lpc_compute_autocorrelation_asm_ia32_sse_lag_16.

For the 32 bit x86 ASM functions there were already versions of this
function for lags (N = 4, 8, 12). They require lpc_order less than N.
The best compression preset (flac -8) uses lpc_order up to 12; it
means that during encoding FLAC also uses unaccelerated C function.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
include/share/compat.h : Remove deinition of restrict.

Wasn't being used anywhere in the code and clashes with a symbol in
MSVC.

Suggested-by: lvqcl <lvqcl.mail@gmail.com>
src/flac/iffscan.c : Fix typo.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
MSVS : Add FLAC__ALIGN_MALLOC_DATA definition for MSVS projects.

A preprocessor macro FLAC__ALIGN_MALLOC_DATA is defined in the Makefiles
but absent in *.vcproj files. This patch adds it to libFLAC_static.vcproj
and libFLAC_dynamic.vcproj.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
MSVS : Fix library output directory.

Fix the output directory for plugin_common_static.vcproj and
test_libs_common_static.vcproj.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
Rename win_utf8_io.lib -> win_utf8_io_static.lib.

All MSVS projects that generate .lib files have '_static' suffix in their
names; all but win_utf8_io.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
MSVS : Define _USE_MATH_DEFINES.

MSVS does defined the M_LN2 constant in <math.h> but only makes it
visible if _USE_MATH_DEFINES is defined.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
Move defintion of M_LN2 to include/share/compat.h.
bitmath.h : Minor improvements.

This is part of a larger patch from lvqcl.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
configure.ac : Prepare for x86_64 initrinsics based optimisations.

Detect presence of <x86intrin.h> and set FLAC__HAS_X86INTRIN.
Define FLAC__CPU_X86_64 when CPU is x96_64.
Add CPU features (sse3, ssse3) detection code for x86-64.

Patch-from: lvqcl <lvqcl.mail@gmail.com>
Adds SSE-accelerated lpc functions.

New functions are:
    FLAC__lpc_compute_autocorrelation_intrin_sse_lag_4()
    FLAC__lpc_compute_autocorrelation_intrin_sse_lag_8()
    FLAC__lpc_compute_autocorrelation_intrin_sse_lag_12()
    FLAC__lpc_compute_autocorrelation_intrin_sse_lag_16()
    FLAC__lpc_compute_residual_from_qlp_coefficients_16_intrin_sse2()

Patch-from: lvqcl <lvqcl.mail@gmail.com>
lpc_x86intrin.c : Tweaks.

Include <config.h> before trying to use values defined in that file.
Fix compiler warnings.
src/libFLAC/lpc.c : Fix compiler warning.
configure.ac : Add -Weffc++ to CXXFLAGS.

Also rearrange CFLAGS somewhat.
Fix numerous warnings arising from addition of -Weffc++.
Only allow SSE2 intrinsics for x86_64.
configure.ac : Report Ogg/FLAC support.
test/test_seeking.sh : Fix detection of Ogg support.