bionic/libm: fix x86 support regression

Support for x86 and MIPS broke due to an incorrect merge conflict
resolution in commit 5015fe9.  Commit d348cd5 repaired MIPS support
but not x86.  This commit repairs the incorrect merge conflict
resolution, bringing back support for x86 (and potential future
architectures).

Change-Id: I8994d653e5a2f79c9bfacb1c87159c8cdd4f81a7
bionic/libc: fix getsid() syscall number for mips

According to libc/kernel/arch-mips/asm/unistd.h, the syscall number
for mips is 151, not 147.

Only bionic/libc/SYSCALLS.TXT was manually edited;
bionic/libc/include/sys/linux-syscalls.h was generated from
SYSCALLS.TXT by running bionic/libc/tools/gensyscalls.py.

Change-Id: Ia14da35acbc36aafd44a059146a37271bd358ae2
Dynamically allocate soinfo-structs in linker

Request memory from the system when needed instead of having a fixed
array for soinfo structs. Note that malloc() et al can't be used in
linker, so use mmap() instead.

Change-Id: Ia77e6a835db0f4a0bfeccc4a6610b857459fd437