[1/2] libc: support using old property system via makefile flag

* In 4.4, Google switched to new property system which is based on
  binary tree instead of array of strings. It is faster, but old
  updater-binaries in ZIP files flashed in recovery are not compatible
  with new system, causing inability to flash older ZIPs in TWRP built
  in 4.4 tree.
* This patch backports old system into standalone file and modifies
  the header to be compatible with both
* To turn this on, specify following in device's BoardConfig.mk:

    BUILD_OLD_SYS_PROPS := true
    COMMON_GLOBAL_CFLAGS += -DBUILD_OLD_SYS_PROPS

Signed-off-by: Vojtech Bocek <vbocek@gmail.com>

Change-Id: I941bf192955f61688a3f447fdbfbf382f6294f11
Fix the detection of alt-network in dns resolver.

Used to determine proper A/AAAA record request.

bug:10132565
Change-Id: I7229f6672e879920a6fae58672cddd72db78546c

Conflicts:
	libc/netbsd/net/getaddrinfo.c
Add ssse3 implementation of __memcmp16.

__memcmp16 was missing in x86. Also added C-version for backward
compatibility. Added bionic test for __memcmp16 and for wmemcmp.

Change-Id: I33718441e7ee343cdb021d91dbeaf9ce2d4d7eb4
Signed-off-by: Alexander Ivchenko <alexander.ivchenko@intel.com>

Conflicts:
	libc/arch-x86/string/ssse3-memcmp3-new.S
	libc/arch-x86/string/ssse3-wmemcmp-atom.S
	libc/arch-x86/x86.mk

Conflicts:
	libc/arch-x86/x86.mk
don't hardcode register r0/v1 when reading the TLS

this leads to much improved code when calling __get_tls()

Change-Id: I21d870fb33c33a921ca55c4e100772e0f7a8d1e4

Conflicts:
	libc/private/bionic_tls.h
Change hard-coded temporary directory.

The properties tests creates a temporary directory in /data/nativetest,
but this directory might not exist in all circumstances.
Change this to create the temporary directory in /data/local/tmp.

Change-Id: I812d3e24fcd084c5d74055c9faa95b1656f255bc

Conflicts:
	tests/property_benchmark.cpp
	tests/system_properties_test.cpp

Conflicts:
	tests/system_properties_test.cpp
Fix abort(3) to raise SIGABRT rather than causing SIGSEGV.

tgkill() needs the .save stack unwinding directive to get the complete
stack trace.

BUG: https://code.google.com/p/android/issues/detail?id=16672

Change-Id: Ifb447dca2147a592c48baf32769dfc175d8aea72

Conflicts:
	libc/unistd/abort.c