| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 207848
|
|
|
|
| |
llvm-svn: 207842
|
|
|
|
| |
llvm-svn: 207841
|
|
|
|
|
|
|
| |
And refactor to have just one place in code that sets up the empty
pragma handlers.
llvm-svn: 207758
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This test didn't work as intended and was ultimately disabled some years ago in
r169458.
Indeed it's not clear if the '\n' was ever passed through to the driver
correctly given that lit would insert '&& {' at the newline.
Test rewritten to use printf/xargs to insert '\n' in a more reliable manner and
to use FileCheck for verification.
llvm-svn: 206703
|
|
|
|
|
|
|
| |
This covers all tests in tests/Driver and tests/Preprocessor, but there are some
failing tests in test/Sema that need looking into.
llvm-svn: 206464
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit r206413.
This was proposed before, but it's not clear if this is really a good
idea:
http://reviews.llvm.org/D3034
llvm-svn: 206415
|
|
|
|
|
|
|
| |
If someone on Linux asks for -fms-extensions, there's no reason not to
define the feature test macros that MSVC defines.
llvm-svn: 206413
|
|
|
|
|
|
| |
pass -target-feature +neon.
llvm-svn: 206394
|
|
|
|
| |
llvm-svn: 206390
|
|
|
|
|
|
|
|
|
| |
This introduces the definitions needed for the Windows on ARM target. Add
target definitions for both the MSVC environment and the MSVC + Itanium C++ ABI
environment. The Visual Studio definitions correspond to the definitions
provided by Visual Studio 2012.
llvm-svn: 205650
|
|
|
|
|
|
|
|
|
|
|
| |
This is consistent with -Wbuiltin-macro-redefined, and puts this common
extension warning under a flag.
Reviewers: rsmith
Differential Revision: http://llvm-reviews.chandlerc.com/D3283
llvm-svn: 205591
|
|
|
|
| |
llvm-svn: 205152
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
contents than the header file by the same name under the system header
search root. Surprisingly, this is required to get the test to pass on
some systems.
So, it turns out that there exist filesystems in the world which unique
the inode of all files based on their contents. This results in two
files with the same contents at different paths suddenly having the same
inode. This doesn't actually cause any problems in practice as the
contents are the same, and the path used to access the files are the
same. However, it can cause tests like this one to be more brittle
because the file manager ends up de-duplicating the file entries by
inode. We don't have any other really easy ways to observe the behavior
shift because the whole point is that the #include written in the source
code doesn't contain the information -- instead it is contained in the
header map.
If folks have other solutions they would prefer, I'm more than happy to
work on them, but this seems a reasonable way to ensure that the test in
question exercises the code it wants to exercise.
llvm-svn: 205149
|
|
|
|
| |
llvm-svn: 205073
|
|
|
|
| |
llvm-svn: 205072
|
|
|
|
|
|
|
|
| |
LookupFileCacheInfo when we reset the start point.
rdar://16462455
llvm-svn: 205071
|
|
|
|
|
|
| |
Reviewed at http://llvm-reviews.chandlerc.com/D3096
llvm-svn: 205008
|
|
|
|
|
|
| |
NetBSD/aarch64 to simplify code sharing with NetBSD/arm.
llvm-svn: 204798
|
|
|
|
|
|
|
| |
This is a testcase follow-up to r204627.
(see also r204614 for CALL_ELF usage).
llvm-svn: 204669
|
|
|
|
| |
llvm-svn: 204604
|
|
|
|
|
|
|
|
|
|
| |
framework import (non-absolute path)
then we fail to find it if it is re-included later on.
rdar://16285490
llvm-svn: 203542
|
|
|
|
| |
llvm-svn: 203455
|
|
|
|
|
|
|
| |
This commit reverts r201037, it's functionality is not needed given the
definition of std::max_align_t in libcxx circa r201843.
llvm-svn: 202667
|
|
|
|
|
| |
FIXME: Implement and check x86_64-cygwin.
llvm-svn: 202094
|
|
|
|
|
|
|
| |
from a macro in column 0, ensure that we print whitespace before it in the -E
output. Patch by Harald van Dijk!
llvm-svn: 202070
|
|
|
|
|
|
|
| |
nothing, be sure to inform the *next* token expanded from the macro that it is
now at the start of a line. Patch by Harald van Dijk!
llvm-svn: 202068
|
|
|
|
| |
llvm-svn: 202058
|
|
|
|
|
|
|
|
|
|
| |
Most 64-bit targets define int64_t as long int, and AArch64 should
make same definition to follow LP64 model. In GNU tool chain, int64_t
is defined as long int for 64-bit target. So to get consistent with GNU,
it's better Changing int64_t from 'long long int' to 'long int',
otherwise clang will get different name mangling suffix compared with g++.
llvm-svn: 202004
|
|
|
|
| |
llvm-svn: 202003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcc never expands macros in pragmas and MSVC always expands macros
before processing pragmas. Clang usually allows macro expansion, except
in a handful of pragmas, most of which are handled by the lexer.
Also remove PPCallbacks for pragmas that are currently handled in the
parser. Without a Parser, such as with clang -E, these callbacks would
never be called.
Fixes PR18576.
llvm-svn: 201821
|
|
|
|
| |
llvm-svn: 201617
|
|
|
|
|
|
|
|
|
|
|
| |
This makes Clang and LLVM -Wmsvc-include clean.
I believe the correct behavior here is to avoid updating the cache when
we find the header via MSVC's search rules.
Differential Revision: http://llvm-reviews.chandlerc.com/D2733
llvm-svn: 201615
|
|
|
|
| |
llvm-svn: 201477
|
|
|
|
| |
llvm-svn: 201475
|
|
|
|
| |
llvm-svn: 201458
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"Foo/Foo.h"),
continue header lookup using the framework include as filename.
This allows us to conveniently treat
#import "Foo.h"
as an implicit module import if we can resolve "Foo/Foo.h" as such.
rdar://16042979
llvm-svn: 201419
|
|
|
|
| |
llvm-svn: 201384
|
|
|
|
|
|
|
|
|
|
| |
TargetInfo::getSuitableAlign() was introduced in r146762 and is defined
as alignof(std::max_align_t).
Introduce __ALIGNOF_MAX_ALIGN_T__ which exposes getSuitableAlign() so
that libc++ may take advantage of it.
llvm-svn: 201037
|
|
|
|
| |
llvm-svn: 200845
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a macro expansion does not result in any tokens, and the macro name
is preceded by whitespace, the whitespace should be passed to the first
token that follows the macro expansion. Similarly when a macro expansion
ends with a placemarker token, and that placemarker token is preceded by
whitespace. This worked already for top-level macro expansions, but is
now extended to also work for nested macro expansions.
Patch by Harald van Dijk!
llvm-svn: 200787
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a function-like macro definition ends with one of the macro's
parameters, and the argument is empty, any whitespace before the
parameter name in the macro definition needs to be preserved. Promoting
the existing NextTokGetsSpace to a preserved bit-field and checking it
at the end of the macro expansion allows it to be moved to the first
token following the macro expansion result.
Patch by Harald van Dijk!
llvm-svn: 200786
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In x ## y, where x and y are regular tokens, whitespace between x and ##
is ignored, and whitespace between ## and y is also ignored. When either
x or y is a function argument, whitespace was preserved, but it should
not be. This patch removes the checks for whitespace before ## and
before y, and in the special case where x is an empty macro argument and
y is a regular token, actively removes whitespace before y.
One existing test is affected by that change, but as clang's output now
matches the standard's requirements and that of GCC, I've tweaked the
testcase.
Patch by Harald van Dijk!
llvm-svn: 200785
|
|
|
|
| |
llvm-svn: 200656
|
|
|
|
|
|
|
| |
This is causing a failure in the msan buildbot that I am having trouble
reproducing. Reverting until I can figure out what went wrong.
llvm-svn: 200492
|
|
|
|
|
|
|
| |
In particular, #pragma clang __debug, and #include implicitly changed
into @import were causing assertion failures.
llvm-svn: 200475
|
|
|
|
| |
llvm-svn: 200223
|
|
|
|
|
|
| |
mips32r2/mips64r2 respectively.
llvm-svn: 200222
|
|
|
|
| |
llvm-svn: 200221
|
|
|
|
|
|
|
|
|
|
| |
currently, for thumbv8, two predefined macros are missing:
define __THUMB_INTERWORK__ 1
define __THUMB_INTERWORK__ 1
This patch adds them for thumbv8.
llvm-svn: 199819
|