Update for llvm api change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204783 91177308-0d34-0410-b5e6-96231b3b80d8
Revert "Update for llvm api change."

This reverts commit r204783.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204785 91177308-0d34-0410-b5e6-96231b3b80d8
Fix PR19066 - 0-sized vftable in the presence of virtual inheritance

Reviewed at http://llvm-reviews.chandlerc.com/D3181

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204786 91177308-0d34-0410-b5e6-96231b3b80d8
Make the 'for (auto ...)' names more readable

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204787 91177308-0d34-0410-b5e6-96231b3b80d8
From Matt Thomas: use long long for [u]int64_t and [u]intmax_t on
NetBSD/aarch64 to simplify code sharing with NetBSD/arm.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204798 91177308-0d34-0410-b5e6-96231b3b80d8
ARM: be more flexible about how --mhwdiv is accepted.

Patch by Gabor Ballabas.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204807 91177308-0d34-0410-b5e6-96231b3b80d8
Add support for __builtin___clear_cache in Clang

Adding the mapping between __builtin___clear_cache into @llvm.clear_cache

git-svn-id: https://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: https://llvm.org/svn/llvm-project/cfe/trunk@204821 91177308-0d34-0410-b5e6-96231b3b80d8
-Wglobal-constructors: Don't warn on trivial defaulted dtors

Fixes PR19253.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204825 91177308-0d34-0410-b5e6-96231b3b80d8
Intrin.h: Implement _InterlockedExchangePointer

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204827 91177308-0d34-0410-b5e6-96231b3b80d8
Recommit r204493 with a fix to look in both clang and llvm directories.
Hopefully addresses r204539.

Make clang/test/lit.cfg pre-scan the RUN line looking for tool names,
and substitute fully qualified path names pointing to the build
directory.  This ensures we're testing the just-built tools.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204831 91177308-0d34-0410-b5e6-96231b3b80d8
[analyzer] Handle the M_ZERO and __GFP_ZERO flags in kernel mallocs.

Add M_ZERO awareness to malloc() static analysis in Clang for FreeBSD,
NetBSD, and OpenBSD in a similar fashion to O_CREAT for open(2).
These systems have a three-argument malloc() in the kernel where the
third argument contains flags; the M_ZERO flag will zero-initialize the
allocated buffer.

This should reduce the number of false positives when running static
analysis on BSD kernels.

Additionally, add kmalloc() (Linux kernel malloc()) and treat __GFP_ZERO
like M_ZERO on Linux.

Future work involves a better method of checking for named flags without
hardcoding values.

Patch by Conrad Meyer, with minor modifications by me.

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

This commit fixes a cast instruction assertion failure
due to the incompatible type cast.  This will only happen when
the target requires atomic libcalls.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204834 91177308-0d34-0410-b5e6-96231b3b80d8
[analyzer] Remove the implemented Identical* checkers from the "potential" list.

Edit by Daniel Fahlgren.

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

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204846 91177308-0d34-0410-b5e6-96231b3b80d8
Objective-C. Fixes a bogus warning on unimplemented
selectors because we were not going through entire
elements in list of all implemented selectors. 
// rdar://16428638


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204852 91177308-0d34-0410-b5e6-96231b3b80d8
Objective-C. Improve diagnostic error for '@import' 
when modules are disabled. // rdar://15505492


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