This separates the 32-bit sysv/linux/bsd code from the 64-bit linux
code, and makes it possible to link code compiled with different
options to those used to compile libffi.  For example, a
-mlong-double-128 libffi can be used with -mlong-double-64 code.

Using the return value area as a place to pass parameters wasn't such
a good idea, causing a failure of cls_ulonglong.c.  I didn't see this
when running the mainline gcc libffi testsuite because that version of
the test is inferior to the upstreamm libffi test.

Using NUM_FPR_ARG_REGISTERS rather than NUM_FPR_ARG_REGISTERS64 meant
that a parameter save area could be allocated before it was strictly
necessary.  Wrong but harmless.  Found when splitting apart ffi.c
into 32-bit and 64-bit support.
Merge branch 'master' of github.com:/atgreen/libffi

Conflicts:
	ChangeLog
Darwin: Silence Clang warnings.
Darwin/iOS: Simplify RETLDM arguments for LLVM 3.1

Signed-off-by: Zachary Waldowski <zwaldowski@gmail.com>
Darwin/iOS: More unified syntax support w/ Clang.

Signed-off-by: Zachary Waldowski <zwaldowski@gmail.com>
Darwin/Mac: Also exclude OS X generated source
Darwin: Clean up, modernize generator scripts
Darwin/iOS: Fix LLVM 3.3 warning re: memcpy.
Darwin: Rebuild Xcode project
Darwin: Fix dlmalloc warnings due to sizeof(size_t)
Darwin: Misc size_t warnings
Darwin/Mac: Fix 64/32 shortening warnings
Darwin/aarch64: Use CNAME refs
Darwin/aarch64: Potentially(?) fix compile error
Darwin/aarch64: Restrict .size to ELF like arm32.
Darwin/iOS prep script: try and compile for arm64
Darwin/aarch64: double == long double
Darwin/aarch64: Inhibit Xcode warning
Darwin/aarch64: Use Clang cache invalidation builtin
Darwin/aarch64: Fix “shadows declaration” warnings