Fix inttypes.h and stdint.h for 64-bit (and C++11).

Change-Id: I394630348413c9aafcac137ce1ca5f0a93d9ab6f
Merge "Fix inttypes.h and stdint.h for 64-bit (and C++11)."
Add x86_64 to the bionic headers.

Manual changes:

  cpp.py: cope with macros that refer to other macros.

  defaults.py: x86 no longer always implies __i386__; use __i386__ to replace
  the kernel CONFIG_X86_32 flag.

  asm/page.h: the upstream page.h isn't a uapi header and no longer includes
  the stuff we were using it for. Let's just have our own static file, since
  it's the same for all our architectures (both 32- and 64-bit).

  sys/select.h: we used to use the various FD_SET-related macros from the
  kernel header files, but they've gone. Adjust by adding trivial equivalent
  definitions.

Automated changes:

  libc/kernel/arch-x86, libc/kernel/common: regenerated from
  external/kernel-headers.

Change-Id: I84fc0ed52dc742e043b4ae300fd3b58ee99b7fcd
Merge "Add x86_64 to the bionic headers."
Remove 32-bit assumptions from the ELF code.

Change-Id: I2c1f3d34c33685799aade8866eec44479ff9f963
Fix x86 build.

Change-Id: I1f2d8189bec3d0e25d21ca7d7bd73fd02f8678e2
Merge "Fix x86 build."
Better statfs/fstatfs glibc compatibility.

Change-Id: I069d169c96cd71b75a045ec911fb4bd484c6b2c9
Merge "Remove 32-bit assumptions from the ELF code."
Merge "Better statfs/fstatfs glibc compatibility."
Clean up some comments.

Copyright headers shouldn't contain the filename (and especially
shouldn't contain a different file's filename).

Change-Id: I82690a3bf371265402bc16f5d2fbb9299c3a1926
Merge "Clean up some comments."
x86_64: libm fixes

* Makefile update for x86_64 target
* amd64 arch files

Change-Id: I8f17e3338bffd89a3086fbddd1e91bb4619eac1b
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
x86_64: Add x86_64 syscalls and tune gen scripts for x86_64

* Tune syscall stubs generator for 4th target: x86_64
* Update SYSCALLS.TXT with x86_64 syscalls:
 - Most of the x86 syscalls are equally supported
 - *32 syscalls are not supported on 64-bit
 - *64 syscalls are replaced accordingly without 64 suffix
 - Some syscalls are not supported, replaced with x86_64 analog

Syscalls are regenerated as separate patch for review convenience.

Change-Id: I4ea2e0f13759b0aa61f05208ca68da8d6bc7c048
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
Merge "x86_64: Add x86_64 syscalls and tune gen scripts for x86_64"
Regenerate the system call stubs (to get x86_64).

This touches the x86 stubs too because arm, x86, and x86_64 now
all share the same header (at a source level), which causes a
reordering of the #include lines.

Change-Id: If9a1e2b2718bd41d8399fea748bce672c513ef84
Merge "Regenerate the system call stubs (to get x86_64)."
x86_64: add new __NR_arch_prctl syscall

This is used to set/get TLS on x86_64. There's no public declaration
of this because it's not meant to be used outside the C library, like
glibc (though we don't currently have any visibility controls to ensure
this).

Change-Id: I5fc0a5e3ffc3f4cd597d92ee685ab19568ea18f7
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
Merge "x86_64: add new __NR_arch_prctl syscall"
Remove _FORTIFY_SOURCE in implementation files.

This was causing conflicting declarations for the library definitions of
common functions like sprintf(), snprintf(), and strchr().

Change-Id: I5daaa8a58183aa0d4d0fae8a7cb799671810f576