Till now, preserve_mostcc/preserve_allcc calling convention attributes were only available at the LLVM IR level. This patch adds attributes for preserve_mostcc/preserve_allcc calling conventions to the C/C++ front-end.
The code was mostly written by Juergen Ributzka. I just added support for the AArch64 target and tests.
Do these attributes do anything on targets other than AArch64 and x86-64? If not, these should probably be inheriting from TargetSpecificAttr. (With tests confirming the behavior on other targets.)