This patch enable sibling call optimization on ppc64 ELFv1/ELFv2 abi, and add a couple of test cases.
This patch also passed llvm/clang bootstrap test, and spec2006 build/run/result validation.
Original issue: https://llvm.org/bugs/show_bug.cgi?id=25617
Great thanks to Tom's help, he contributed a lot to this patch.
Function names should start with a lower-case letter.