[ms-abi] Makes Virtual Base Alignment Look at All Virtual Bases

Prior to this patch, the alignment imposed by virtual bases only 
included direct virtual bases.  This patch fixes it to look at all 
virtual bases.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@196997 91177308-0d34-0410-b5e6-96231b3b80d8
When performing a delayed access check, use the surrounding lexical context for
any local extern declaration, not just a local extern function.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197000 91177308-0d34-0410-b5e6-96231b3b80d8
Change layering warning tests to not actually build modules.

Specifically, we want to warn only for direct layering violations for
the modules we are calling clang on.

This temporarily unblocks
http://llvm-reviews.chandlerc.com/D2374

Once that is in, we'll also want to investigate whether to check the
layering in the build step of modules that we build transitively.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197021 91177308-0d34-0410-b5e6-96231b3b80d8
Mention LeakSanitizer in AddressSanitizer docs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197022 91177308-0d34-0410-b5e6-96231b3b80d8
Turning IAS on by default on ARM/Thumb

This is an experimental feature, where -integrated-as will be
on by default on ARM/Thumb. We aim to detect the missing features
so that the next release is stable.

Updating the ReleaseNotes, too.

Also moving the AArch64 into the same place.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197024 91177308-0d34-0410-b5e6-96231b3b80d8
Only build ARM-specific runtimes if ARM is enabled

The soft-float variants of (embedded) libclang_rt only make sense for ARM, so
there's no point in trying to build them if the compiler is only capable of
targeting x86.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197033 91177308-0d34-0410-b5e6-96231b3b80d8
Modules: Let -fmodules-decluse ignore headers that aren't in a module

Includes might always pull in arbitrary header or data files outside of
modules. Among others, this includes builtin includes, which do not have
a module (story) yet.

Also cleanup implementation of ModuleMap::findModuleForHeader() to be
non-recursive.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197034 91177308-0d34-0410-b5e6-96231b3b80d8
Add file missing from r197034.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197035 91177308-0d34-0410-b5e6-96231b3b80d8
Add front-end infrastructure now address space casts are in LLVM IR.

With the introduction of explicit address space casts into LLVM, there's
a need to provide a new cast kind the front-end can create for C/OpenCL/CUDA
and code to produce address space casts from those kinds when appropriate.

Patch by Michele Scandale!



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197036 91177308-0d34-0410-b5e6-96231b3b80d8
Add comment about PragmaIntroducerKind

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