Move some ARM-specific code from CGCall.cpp to TargetInfo.cpp

This tidies up some ARM-specific code added by r208417 to move it out
of the target-independent parts of clang into TargetInfo.cpp. This
also has the advantage that we can now flatten struct arguments to
variadic AAPCS functions.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@216535 91177308-0d34-0410-b5e6-96231b3b80d8