Add support for __builtin___clear_cache in Clang

Adding the mapping between __builtin___clear_cache into @llvm.clear_cache

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@204820 91177308-0d34-0410-b5e6-96231b3b80d8
-fms-extensions: Add __va_start builtin, which is used for x64

The main difference between __va_start and __builtin_va_start is that
the address of the va_list has already been taken, and the va_list is
always a char*.

__va_end and __va_arg are not needed.

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