| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 199642
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously we had bodged together some hacks mapping MachO embedded
targets (i.e. mainly ARM v6M and v7M) to the "*-*-darwin-eabi" triple.
This is incorrect in both details (they don't run Darwin and they're
not EABI in any real sense).
This commit appropriates the existing "MachO" environment for the
purpose instead.
llvm-svn: 199367
|
|
|
|
|
|
|
|
|
|
|
| |
a subprocess invocation which is pretty significant on Windows. It also
likely saves a bunch of thrashing the host machine needlessly. Finally
it makes the tests much more predictable and less dependent on the host.
For example 'header_lookup1.c' was passing '-fno-ms-extensions' just to
thwart the host detection adding it into the compilation. By runnig CC1
directly we don't have to deal with such oddities.
llvm-svn: 199308
|
|
|
|
|
|
| |
whether an ARM target has the "interrupt" attribute, it will return true for ARM and MSP430 targets, and false for others.
llvm-svn: 198897
|
|
|
|
| |
llvm-svn: 198086
|
|
|
|
|
|
| |
Follows algorithm described here: http://msdn.microsoft.com/en-us/library/36k2cdd4.aspx
llvm-svn: 198082
|
|
|
|
|
|
|
|
|
|
|
|
| |
- krait processor currently modeled with the same features as A9.
- Krait processor additionally has VFP4 (fused multiply add/sub)
and hardware division features enabled.
- krait has currently the same Schedule model as A9
- krait cpu flag is not recognized by the GNU assembler yet,
it is replaced with march=armv7-a to avoid a lower march
from being used.
llvm-svn: 196618
|
|
|
|
|
|
| |
Patch by Oliver Stannard.
llvm-svn: 195641
|
|
|
|
|
|
| |
Patch by Oliver Stannard!
llvm-svn: 195449
|
|
|
|
| |
llvm-svn: 195359
|
|
|
|
| |
llvm-svn: 195068
|
|
|
|
|
|
| |
functional changes - just reflection of the current state.
llvm-svn: 194690
|
|
|
|
|
|
|
| |
Change SizeType, PtrDiffType, IntPtrType, WCharType, WIntType
to follow the XMOS llvm-gcc front end's settings.
llvm-svn: 194461
|
|
|
|
| |
llvm-svn: 194408
|
|
|
|
|
|
|
| |
__FLT_EVAL_METHOD__ accordingly. Add test case for this and the SSE2
variances on NetBSD.
llvm-svn: 194377
|
|
|
|
|
|
|
|
| |
llc waits for input on stdin, which was not provided in this test. It
was running only thanks to a quirk in the way lit concatenates
commands.
llvm-svn: 194071
|
|
|
|
| |
llvm-svn: 194061
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'##'
After lexing a '##', we would look ahead and check to see if it was
followed by '__VA_ARGS__'. After doing so, we would then go ahead and
lex the token.
However we would fail in the case where the '##' was followed by a '#'
followed by an identifier because we would have lexed the '#' separately
from the identifier, bypassing our parameter validation logic.
Instead, lex the tokens coming after the '##' later.
This fixes PR17804.
llvm-svn: 194059
|
|
|
|
| |
llvm-svn: 193985
|
|
|
|
|
|
|
|
| |
Allow users to disable or enable CRC subtarget feature.
Differential Revision: http://llvm-reviews.chandlerc.com/D2037
llvm-svn: 193600
|
|
|
|
|
|
|
|
|
| |
Although we wire up a bit for v8fp for macro setting
purposes, we don't set a macro yet. Need to ask list
about that.
Change-Id: Ic9819593ce00882fbec72757ffccc6f0b18160a0
llvm-svn: 193367
|
|
|
|
|
|
| |
default for A32 armv8.
llvm-svn: 193075
|
|
|
|
|
|
| |
divide in the mode that we are compiling in (depending on the target features), not defined if we don't. Should be compatible with the GCC conterpart. Also adding a -hwdiv option to overide the default behavior.
llvm-svn: 193074
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The C and C++ standards disallow using universal character names to
refer to some characters, such as basic ascii and control characters,
so we reject these sequences in the lexer. However, when the
preprocessor isn't being used on C or C++, it doesn't make sense to
apply these restrictions.
Notably, accepting these characters avoids issues with unicode escapes
when GHC uses the compiler as a preprocessor on haskell sources.
Fixes rdar://problem/14742289
llvm-svn: 193067
|
|
|
|
| |
llvm-svn: 192969
|
|
|
|
|
|
| |
The test should be expanded upon for more powerpc checking.
llvm-svn: 192849
|
|
|
|
|
|
| |
The referenced script no longer seems to exist.
llvm-svn: 192848
|
|
|
|
|
|
|
|
|
|
| |
clang front end. This change will allow the __PRFCHW__ macro to be set on these
processors and hence include prfchwintrin.h in x86intrin.h header. Support for
the intrinsic itself seems to have already been added in r178041.
Differential Revision: http://llvm-reviews.chandlerc.com/D1934
llvm-svn: 192829
|
|
|
|
|
|
| |
it is enabled. Also enable it on the same architectures that GCC does.
llvm-svn: 192045
|
|
|
|
|
|
|
|
| |
This partially addresses PR17435, but it doesn't actually implement the
pragma. If we implement it, we should map levels 1-4 to something like
-Wall and level 0 to something like -w.
llvm-svn: 191833
|
|
|
|
| |
llvm-svn: 191707
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clang uses UTF-16 and UTF-32 for its char16_t's and char32_t's
exclusively. This means that we can define __STDC_UTF_16__ and
__STDC_UTF_32__ unconditionally.
While there, define __STDC_MB_MIGHT_NEQ_WC__ for FreeBSD. FreeBSD's
wchar_t's don't encode characters as ISO-10646; the encoding depends on
the locale used. Because the character set used might not be a superset
of ASCII, we must define __STDC_MB_MIGHT_NEQ_WC__.
llvm-svn: 191631
|
|
|
|
|
|
|
| |
Previously the code would reduce a run of backslashes to a single
backslash, and now it will properly leave behind every other backslash.
llvm-svn: 191382
|
|
|
|
|
|
|
|
|
| |
x86 TBM instruction set. Also adding a __TBM__ macro if the TBM feature is
enabled. Otherwise there should be no functionality change to existing features.
Phabricator code review is located here: http://llvm-reviews.chandlerc.com/D1693
llvm-svn: 191326
|
|
|
|
|
|
| |
this option to the assembler.
llvm-svn: 191282
|
|
|
|
|
|
|
|
|
| |
Intrinsics added shaintrin.h, which is included from x86intrin.h if __SHA__ is
enabled. SHA implies SSE2, which is needed for the __m128i type.
Also add the -msha/-mno-sha option.
llvm-svn: 190999
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before this patch, Lex() would recurse whenever the current lexer changed (e.g.
upon entry into a macro). This patch turns the recursion into a loop: the
various lex routines now don't return a token when the current lexer changes,
and at the top level Preprocessor::Lex() now loops until it finds a token.
Normally, the recursion wouldn't end up being very deep, but the recursion depth
can explode in edge cases like a bunch of consecutive macros which expand to
nothing (like in the testcase test/Preprocessor/macro_expand_empty.c in this
patch).
<rdar://problem/14569770>
llvm-svn: 190980
|
|
|
|
| |
llvm-svn: 190977
|
|
|
|
|
|
| |
Patch by Bradley Smith!
llvm-svn: 190931
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LLVM supports applying conversion instructions to vectors of the same number of
elements (fptrunc, fptosi, etc.) but there had been no way for a Clang user to
cause such instructions to be generated when using builtin vector types.
C-style casting on vectors is already defined in terms of bitcasts, and so
cannot be used for these conversions as well (without leading to a very
confusing set of semantics). As a result, this adds a __builtin_convertvector
intrinsic (patterned after the OpenCL __builtin_astype intrinsic). This is
intended to aid the creation of vector intrinsic headers that create generic IR
instead of target-dependent intrinsics (in other words, this is a generic
_mm_cvtepi32_ps). As noted in the documentation, the action of
__builtin_convertvector is defined in terms of the action of a C-style cast on
each vector element.
llvm-svn: 190915
|
|
|
|
| |
llvm-svn: 190776
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This fixes PR17145 and avoids unknown pragma warnings.
This change does not attempt to map MSVC warning numbers to clang
warning flags. Perhaps in the future we will implement a mapping for
some common subset of Microsoft warnings, but for now we don't.
Reviewers: rsmith
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1652
llvm-svn: 190726
|
|
|
|
| |
llvm-svn: 190496
|
|
|
|
|
|
|
| |
Enabling sse4.2 will implicitly enable popcnt unless popcnt is explicitly disabled.
Disabling sse4.2 will not disable popcnt if popcnt is explicitly enabled.
llvm-svn: 190387
|
|
|
|
|
|
| |
minor cosmetics
llvm-svn: 190162
|
|
|
|
|
|
| |
introduced in commit r190048
llvm-svn: 190159
|
|
|
|
| |
llvm-svn: 189910
|
|
|
|
| |
llvm-svn: 189670
|
|
|
|
|
|
|
| |
Fixes PR17018. Only partial test coverage because I don't want
to try to write a test which generates a file whose name contains a newline.
llvm-svn: 189557
|
|
|
|
|
|
|
|
|
| |
Apparently, gcc's -traditional-cpp behaves slightly differently in C++ mode;
specifically, it discards "//" comments. Match gcc's behavior.
<rdar://problem/14808126>
llvm-svn: 189515
|