| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This was in 1.0, but deprecated in 1.1. Accept it and do nothing
for compatability.
llvm-svn: 229403
|
|
|
|
|
|
|
|
|
|
|
| |
Bug report: http://llvm.org/bugs/show_bug.cgi?id=22561
Clang tries to create ObjCBoxedExpression of type 'NSNumber'
when 'NSNumber' has only forward declaration, this cause a crash later,
when 'Sema' refers to a nil QualType of the whole expression.
Please, refer to the bug report for the better explanation.
llvm-svn: 229402
|
|
|
|
|
|
|
|
|
| |
For #pragma comment(linker, ...) MSVC expects the comment string to be quoted, but for #pragma comment(lib, ...) the compiler itself quotes the library name.
Since this distinction disappears by the time the directive reaches the backend, move quoting for the "lib" version to the frontend.
Differential Revision: http://reviews.llvm.org/D7653
llvm-svn: 229376
|
|
|
|
|
|
|
|
| |
subobject initialization is not possible, be sure to note the overall
initialization as having failed so that overload resolution knows that the
relevant candidate is not viable.
llvm-svn: 229353
|
|
|
|
|
|
| |
__builtin_ia32_pslldqi256 to vector shuffles the backend recognizes. This is a step towards removing the corresponding intrinsics from the backend.
llvm-svn: 229348
|
|
|
|
| |
llvm-svn: 229338
|
|
|
|
|
|
| |
macro. NFC; Clang edition.
llvm-svn: 229336
|
|
|
|
| |
llvm-svn: 229294
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The first part of that line doesn't parse correctly and ParseClassSpecifier() for
some reason skips to tok::comma to recover, and then
ParseDeclarationSpecifiers() sees the next struct and calls
ParseClassSpecifier() again with the same DeclSpec object.
However, the first call already called ActOnCXXGlobalScopeSpecifier() on the
DeclSpec's CXXScopeSpec, and sema gets confused when this gets called again.
As a fix, let ParseClassSpecifier() (and ParseEnumSpecifier()) call
ParseOptionalCXXScopeSpec() with a temporary CXXScopeSpec object, and only
copy it into the DeclSpec if things work out. (This is also how all the other
functions that set the DeclSpec's TypeSpecScope set it.)
Found by SLi's bot.
llvm-svn: 229293
|
|
|
|
| |
llvm-svn: 229291
|
|
|
|
| |
llvm-svn: 229289
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The first part of that line doesn't parse correctly and ParseClassSpecifier() for
some reason skips to tok::comma to recover, and then
ParseDeclarationSpecifiers() sees the next struct and calls
ParseClassSpecifier() again with the same DeclSpec object.
However, the first call already called ActOnCXXGlobalScopeSpecifier() on the
DeclSpec's CXXScopeSpec, and sema gets confused when this gets called again.
As a fix, let ParseClassSpecifier() (and ParseEnumSpecifier()) call
ParseOptionalCXXScopeSpec() with a temporary CXXScopeSpec object, and only
copy it into the DeclSpec if things work out. (This is also how all the other
functions that set the DeclSpec's TypeSpecScope set it.)
Found by SLi's bot.
llvm-svn: 229288
|
|
|
|
|
|
| |
migration
llvm-svn: 229274
|
|
|
|
|
|
| |
migration
llvm-svn: 229273
|
|
|
|
|
|
| |
migration
llvm-svn: 229272
|
|
|
|
|
|
| |
pointer migration
llvm-svn: 229271
|
|
|
|
| |
llvm-svn: 229270
|
|
|
|
| |
llvm-svn: 229269
|
|
|
|
|
|
|
|
|
|
| |
We had two bugs:
- We were missing the "on" prefix for unresolved operators.
- We didn't handle the mangling of destructors at all.
This fixes PR22584.
llvm-svn: 229255
|
|
|
|
|
|
|
|
| |
generate weak definitions of the sized operator delete (in terms of unsized operator delete). Instead, provide the funcitonality via a new compiler flag, -fdef-sized-delete.
The current implementation causes link-time ODR violations when the delete symbols are exported into the dynamic table.
llvm-svn: 229241
|
|
|
|
|
|
| |
accident, and accept them even when they begin '//*'.
llvm-svn: 229240
|
|
|
|
| |
llvm-svn: 229229
|
|
|
|
|
|
|
| |
they're given a null pointer as an argument, so we do not need to emit null
checks on their results.
llvm-svn: 229213
|
|
|
|
|
|
|
| |
We could be a little kinder if we did a compare-exchange loop instead of
an atomic-load/store pair.
llvm-svn: 229212
|
|
|
|
|
|
|
| |
This reverts commit r229123. It was a red herring, the bug was present
without r229082.
llvm-svn: 229205
|
|
|
|
|
|
|
|
|
| |
Bools are a little tricky, they are i8 in memory and must be coerced
back to i1 before further operations can be performed on them.
This fixes PR22577.
llvm-svn: 229204
|
|
|
|
|
|
|
|
|
|
|
| |
syntax coming in the near future
The first change won't touch GEPOperators such as these, but the update
script only identifies them by the leading '(' after getelementptr or
'getelementptr inbounds', so update this test to at least have those
features to allow auto-migrating.
llvm-svn: 229198
|
|
|
|
|
|
| |
change updates
llvm-svn: 229197
|
|
|
|
|
|
| |
type to getelementptr
llvm-svn: 229196
|
|
|
|
|
|
| |
a prebuilt form from a module, prefer the modular form, all else being equal.
llvm-svn: 229188
|
|
|
|
| |
llvm-svn: 229146
|
|
|
|
| |
llvm-svn: 229123
|
|
|
|
|
|
|
|
|
|
|
|
| |
The /volatile:ms semantics turn volatile loads and stores into atomic
acquire and release operations. This distinction is important because
volatile memory operations do not form a happens-before relationship
with non-atomic memory. This means that a volatile store is not
sufficient for implementing a mutex unlock routine.
Differential Revision: http://reviews.llvm.org/D7580
llvm-svn: 229082
|
|
|
|
|
|
| |
that had optimizations on. This caused the check patterns to not quite match.
llvm-svn: 229073
|
|
|
|
| |
llvm-svn: 229067
|
|
|
|
|
|
| |
and _mm_srli_si128. This matches Intel documentation and gcc.
llvm-svn: 229066
|
|
|
|
|
| |
FIXME: Rewrite CHECKs for unnamed BBs and Insts.
llvm-svn: 228990
|
|
|
|
|
|
|
|
|
|
| |
entity, put the originally-canonical decl IDs in the right places in the redecl
chain rather than reordering them all to the start. If we don't ensure that the
redecl chain order is consistent with the topological module order, we can fail
to make a declaration visible if later declarations are in more IDNSs than
earlier ones (for instance, because the earlier decls are invisible friends).
llvm-svn: 228978
|
|
|
|
|
|
| |
Reviewed at http://reviews.llvm.org/D7575
llvm-svn: 228977
|
|
|
|
|
|
|
|
|
| |
When mangling the module map path into a .pcm file name, also mangle the
IsSystem bit, which can also depend on the header search paths. For
example, the user may change from -I to -isystem. This can affect
diagnostics in the importing TU.
llvm-svn: 228966
|
|
|
|
|
|
| |
This fixes PR22568.
llvm-svn: 228959
|
|
|
|
|
|
|
|
|
|
| |
Previously the test did not have a RUN: prefix for the clang command.
In addition it was leaving behind a tmp file with no permissions causing issues when
deleting the build directory on Windows.
Differential Revision: http://reviews.llvm.org/D7534
llvm-svn: 228919
|
|
|
|
|
|
|
|
| |
Partially revert r223927 because LLVM gained support for 128-bit integers
in r227089. Modify and keep the tests that verify the definition of the
macro __SIZEOF_INT128__ for MIPS64 BE & LE in the preprocessor.
llvm-svn: 228918
|
|
|
|
|
|
|
|
|
|
|
| |
If the linker is gcc (the default for Generic_ELF toolchains), we end up
passing most of the arguments to the linker.
Some tests were failing to account for this in their usage of *-NOT: lines
and would fail if compiled with
-DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-unknown-unknown
llvm-svn: 228902
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch installs an InlineAsmDiagnosticsHandler to avoid the crash
report when the input is bitcode and the bitcode contains invalid inline
assembly. The handler will simply print the same error message that will
print from the backend.
Add CHECK in test-case
Reviewers: echristo, rafael
Reviewed By: rafael
Subscribers: rafael, cfe-commits
Differential Revision: http://reviews.llvm.org/D7568
llvm-svn: 228898
|
|
|
|
|
|
|
|
|
| |
always use the normal copy-initialization rules. Remove a special case that
tries to stay within the list initialization checker here; that makes us do the
wrong thing when list-initialization of an aggregate would not perform
aggregate initialization.
llvm-svn: 228897
|
|
|
|
|
|
|
|
| |
based on whether "redundant" braces are ever reasonable as part of the
initialization of the entity, rather than whether the initialization is
"top-level". In passing, add a warning flag for it.
llvm-svn: 228896
|
|
|
|
|
|
|
| |
LLVM doesn't support non-call exceptions, so inlining makes it harder to
catch such asynchronous exceptions.
llvm-svn: 228876
|
|
|
|
|
|
| |
the missing commas
llvm-svn: 228870
|
|
|
|
| |
llvm-svn: 228863
|