Use enumerators instead of hardcoded integers when we decide if keyword is enabled.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220849 91177308-0d34-0410-b5e6-96231b3b80d8
Improved capturing variable-length array types in CapturedStmt.
An updated implemnentation of VLA types capturing based on previously committed solution for Lambdas.
This version captures the whole VLA type instead of particular variables which are part of VLA size expression and allows to use previusly calculated size of VLA type in captured regions. Required for OpenMP.
Differential Revision: http://reviews.llvm.org/D5099


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220850 91177308-0d34-0410-b5e6-96231b3b80d8
clang/test/CodeGen/captured-statements-nested.c: Tweak for -Asserts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220851 91177308-0d34-0410-b5e6-96231b3b80d8
[PowerPC ABI] Bug 21398 - Consider C++ base classes in HA classification

As discussed in bug 21398, PowerPC ABI code needs to consider C++ base
classes when classifying a class as homogeneous aggregate (or not) for
ABI purposes.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220852 91177308-0d34-0410-b5e6-96231b3b80d8
clang/lib/AST/Decl.cpp: Tweak isVLATypeCapturingAllowed() for -Asserts. [-Wunused-function]

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220853 91177308-0d34-0410-b5e6-96231b3b80d8
Pass aggregates on the stack without splitting in NVPTX.

Following the NVVM IR specifications, arguments of aggregate type should be
passed on the stack without splitting (byval).

http://reviews.llvm.org/D6020

Patch by Jacques Pienaar.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220854 91177308-0d34-0410-b5e6-96231b3b80d8
Fix warning in Altivec code when building with GCC 4.8.2 on Ubuntu 14.04.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220855 91177308-0d34-0410-b5e6-96231b3b80d8
CodeGen: add __readfsdword builtin

The Windows NT SDK uses __readfsdword and declares it as a compiler provided
builtin (#pragma intrinsic(__readfsword).  Because intrin.h is not referenced
by winnt.h, it is not possible to provide an out-of-line definition for the
intrinsic.  Provide a proper compiler builtin definition.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220859 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: [JS] Support more regex literals.

Previously a regex-literal containing "/*" would through clang-format
off, e.g.:
  var regex = /\/*$/;

Would lead to none of the following code to be formatted.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220860 91177308-0d34-0410-b5e6-96231b3b80d8
test: generalise the test matching

The value names may change in different builds, use pattern based tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220861 91177308-0d34-0410-b5e6-96231b3b80d8
Enable display of compiler diagnostics in clang-tidy.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220862 91177308-0d34-0410-b5e6-96231b3b80d8
Refactor libTooling to reduce required dependencies.

This moves classes for storing and applying replacements to separate
files. These classes specifically are used by clang-format which doesn't
have any other dependencies on clangAST. Thereby, the size of
clang-format's binary can be cut roughly in half and its build time sped
up.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220867 91177308-0d34-0410-b5e6-96231b3b80d8
Follow-up to r216619: use isCXXCLassMember() instead of trying to
check the context ourselves when selectively allowing late-added
dll attributes on unused free functions and variables (PR20746)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220874 91177308-0d34-0410-b5e6-96231b3b80d8
Trim some includes. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220877 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Cut more clangAST dependencies.

Hopefully fixing windows builds.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220878 91177308-0d34-0410-b5e6-96231b3b80d8
Sink a #include while we're here. NFC.

Format.h doesn't use stack.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220879 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Format line if invoked on the trailing newline.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220883 91177308-0d34-0410-b5e6-96231b3b80d8
[CMake] clangToolingCore requires clangLex.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220889 91177308-0d34-0410-b5e6-96231b3b80d8
[CMake] Add dependencies on clangToolingCore.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220890 91177308-0d34-0410-b5e6-96231b3b80d8
[CMake] Prune redundant libdeps.

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