Update the call to llvm::sys::fs::UniqueID to match the definition: UniqueID(uint64_t Device, uint64_t File)
Fixes CID 1095247




git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215896 91177308-0d34-0410-b5e6-96231b3b80d8
Add the break in the switch case (even if there is llvm_unreachable. It will silent coverity warning CID 1231654

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215897 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a memory leak in one of the test unit. Silent coverity warning CID 1095912

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215898 91177308-0d34-0410-b5e6-96231b3b80d8
[x32] Handle -m64/-m32 switches by Driver in x32 mode

Summary:
Adding remaining 2 cases handling:
* from x32 to 32 via -m32
* from x32 to 64 via -m64

Test Plan: linux-ld test updated

Reviewers: chandlerc, atanasyan

Subscribers: cfe-commits, zinovy.nis

Differential Revision: http://reviews.llvm.org/D4930

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215899 91177308-0d34-0410-b5e6-96231b3b80d8
Simplify ASTUnit::Parse a bit by passing a std::unique_ptr to it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215900 91177308-0d34-0410-b5e6-96231b3b80d8
Inline function into only use.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215925 91177308-0d34-0410-b5e6-96231b3b80d8
Use std::unique_ptr to simplify this code a bit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215926 91177308-0d34-0410-b5e6-96231b3b80d8
return a std::unique_ptr from getMainBufferWithPrecompiledPreamble. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215927 91177308-0d34-0410-b5e6-96231b3b80d8
Store std::unique_ptr in InMemoryBuffers. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215928 91177308-0d34-0410-b5e6-96231b3b80d8
Fix the rececl chain for redeclarations of predefined decls

Predefined decls like 'Protocol' in objc are not loaded from AST files,
so we cannot rely on loading the canonical decl to complete the redecl
chain for redeclarations of these decls.  The broken redecl chain was
non-circular, so looping over redecls() would hang.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215929 91177308-0d34-0410-b5e6-96231b3b80d8
Update link strategy for sanitizer runtime libraries on Linux:

1. Always put static sanitizer runtimes to the front of the linker
invocation line. This was already done for all sanitizers except UBSan:
in case user provides static libstdc++ we need to make sure that new/delete
operator definitions are picked from sanitizer runtimes instead of libstdc++.
We have to put UBSan runtime first for similar reasons: it depends on some
libstdc++ parts (e.g. __dynamic_cast function), and has to go first in
link line to ensure these functions will be picked up from libstdc++.

2. Put sanitizer libraries system dependencies (-ldl, -lpthread etc.) right
after sanitizer runtimes. This will ensure these libraries participate in
the link even if user provided -Wl,-as-needed flag. This should fix PR15823.

3. In case we link in several sanitizer runtimes (e.g. "ubsan", "ubsan_cxx"
and "san"), add system dependencies (-ldl, -lpthread, ...) only once.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215940 91177308-0d34-0410-b5e6-96231b3b80d8
Add a warning flag for an existing diagnostic.

One more, and the number of flags without a dedicated flag fits in two decimal
digits :-)


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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215968 91177308-0d34-0410-b5e6-96231b3b80d8
MS ABI: Update alias template mangling for VC "14" CTP 3

MSVC "14" CTP 3 has fixed it's mangling for alias templates when used as
template-template arguments; update clang to be compatible with this
mangling.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215972 91177308-0d34-0410-b5e6-96231b3b80d8
[OPENMP] Extract common superclass from all the loop directives. No functional changes (having common superclass is convenient for future loop directives CodeGen implementation)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215975 91177308-0d34-0410-b5e6-96231b3b80d8
Go back to having a takeModule instead of a getModule.

Returning a std::unique_ptr is more constrained. Thanks to David Blaikie for the
suggestion.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215979 91177308-0d34-0410-b5e6-96231b3b80d8
Move the body out of line to try to fix a buildbot.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215980 91177308-0d34-0410-b5e6-96231b3b80d8
C++1y is now C++14!

Changes diagnostic options, language standard options, diagnostic identifiers, diagnostic wording to use c++14 instead of c++1y. It also modifies related test cases to use the updated diagnostic wording.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215982 91177308-0d34-0410-b5e6-96231b3b80d8
ext_vector IRGen. Patch to allow indexing into 
ext_vector_type's 'hi/lo' components when
used as lvalue. rdar://18031917 pr20697


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215991 91177308-0d34-0410-b5e6-96231b3b80d8
Add tests for coverage mapping generation.

This patch adds the tests for the coverage mapping generation. 
Most of the tests check the mapping regions produced by 
the generator, and one checks the llvm IR.

Differential Revision: http://reviews.llvm.org/D4847


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