| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
In passing, add a warning group for "ignored qualifier in inline assembly" warnings.
llvm-svn: 288548
|
| |
|
|
|
|
|
|
| |
When a C++ record is marked with dllexport mark both the typeinfo and the
typeinfo name as being exported. Handle dllimport as the inverse. This applies
to the itanium environment and not the MinGW environment.
llvm-svn: 288546
|
| |
|
|
| |
llvm-svn: 288545
|
| |
|
|
|
|
| |
Looks like the reset() call was omitted by accident.
llvm-svn: 288534
|
| |
|
|
|
|
|
|
|
|
| |
This is to match the behavior of non-LTO;
when -fsave-optimization-record is passed and PGO is available we enable
the generation of hotness information in the optimization records.
Differential Revision: https://reviews.llvm.org/D27332
llvm-svn: 288520
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This is an improvement on rL288448 where address sanitization was listed
as supported for the CudaToolChain. Since the intent is for the
CudaToolChain not to reject any flags supported by the host compiler,
this patch switches to forwarding the CudaToolChain sanitizer support to
the host toolchain rather than explicitly whitelisting address
sanitization.
Thanks to hfinkel for this suggestion.
Reviewers: jlebar
Subscribers: hfinkel, cfe-commits
Differential Revision: https://reviews.llvm.org/D27351
llvm-svn: 288512
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the file.
Summary:
This avoid inserting #include into:
- raw string literals containing #include.
- #if block.
- Special #include among declarations (e.g. functions).
Reviewers: djasper
Subscribers: cfe-commits, klimek
Differential Revision: https://reviews.llvm.org/D26909
llvm-svn: 288493
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
removed as a duplicate header search path
The commit r126167 started passing the First index into RemoveDuplicates, but
forgot to update 0 to First in the loop that looks for the duplicate. This
resulted in a bug where an -iquoted search path was incorrectly removed if you
passed in the same path into -iquote and more than one time into -isystem.
rdar://23991350
Differential Revision: https://reviews.llvm.org/D27298
llvm-svn: 288491
|
| |
|
|
| |
llvm-svn: 288452
|
| |
|
|
|
|
|
|
|
|
|
| |
We try to include the headers of the module textually in this case, still
enforcing the modules semantic rules. In order to make that work, we need to
still track that we're entering and leaving the module. Also, if the module was
also marked as unavailable (perhaps because it was missing a file), we
shouldn't mark the module unavailable -- we don't need the module to be
complete if we're going to enter it textually.
llvm-svn: 288449
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a bug that was introduced in rL287285. The bug made it
illegal to pass -fsanitize=address during CUDA compilation because the
CudaToolChain class was switched from deriving from the Linux toolchain
class to deriving directly from the ToolChain toolchain class. When
CudaToolChain derived from Linux, it used Linux's getSupportedSanitizers
method, and that method allowed ASAN, but when it switched to deriving
directly from ToolChain, it inherited a getSupportedSanitizers method
that didn't allow for ASAN.
This patch fixes that bug by creating a getSupportedSanitizers method
for CudaToolChain that supports ASAN.
This patch also fixes the test that checks that -fsanitize=address is
passed correctly for CUDA builds. That test didn't used to notice if an
error message was emitted, and that's why it didn't catch this bug when
it was first introduced. With the fix from this patch, that test will
now catch any similar bug in the future.
llvm-svn: 288448
|
| |
|
|
|
|
|
| |
Add a target flag for enabling the new direct wasm object emission
feature.
llvm-svn: 288447
|
| |
|
|
|
|
|
|
| |
After r256463, both the LHS and RHS now refer to the same variable. Before,
they referred to the member, the parameter respectively. Now GCC6's
-Wtautological-compare complains.
llvm-svn: 288444
|
| |
|
|
|
|
|
| |
to do this unconditionally, given that the indices will always be small
constant integers anyway.
llvm-svn: 288440
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
In bigger projects like an Operating System, the same source code is
often compiled in slightly different ways. This could be the difference
between PIC and non-PIC code for static vs dynamic libraries, it could
also be the difference between size optimised versions of tools for
ramdisk images. At the moment, the compilation database has no way to
distinguish such cases. As first step, add a field in the JSON format
for it and process it accordingly.
Differential Revision: https://reviews.llvm.org/D27138
llvm-svn: 288436
|
| |
|
|
|
|
|
|
|
|
|
| |
have the same size.
This fixes an asset that is triggered when an address of a boolean
variable is passed to __builtin_arm_ldrex or __builtin_arm_strex.
rdar://problem/29269006
llvm-svn: 288404
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Adds support for -Wa,-defsym,abc=1 option.
Related llvm patch: https://reviews.llvm.org/D26214
Reviewers: rafael, t.p.northover, colinl, echristo, compnerd, rengolin
Subscribers: mehdi_amini
Tags: #clang-c
Differential Revision: https://reviews.llvm.org/D26213
llvm-svn: 288397
|
| |
|
|
|
|
| |
register
llvm-svn: 288394
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D27207
llvm-svn: 288366
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This patch ensures that the typo fixit for the @try/@finally/@autoreleasepool {}
directive is shown only when we're parsing an actual statement where such
directives can actually be present.
rdar://19669565
Differential Revision: https://reviews.llvm.org/D26916
llvm-svn: 288334
|
| |
|
|
|
|
|
|
|
|
|
| |
This adds the access qualifier to the Pipe Type, rather than using a class
hierarchy.
It also fixes mergeTypes for Pipes, by disallowing merges. Only identical
pipe types can be merged. The test case in invalid-pipes-cl2.0.cl is added
to check that.
llvm-svn: 288332
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: This patch adds a check and an error message to gnutools::Linker::ConstructJob in case the architecture is not supported. For most other operating systems, the error message is created in lib/Basic/Targets.cpp:AllocateTarget, but when construction the linker arguments for the gnutools linker a supported architecture is required.
Reviewers: rafael, joerg, echristo
Subscribers: mehdi_amini, joerg, dschuff, cfe-commits
Differential Revision: https://reviews.llvm.org/D27066
llvm-svn: 288327
|
| |
|
|
|
|
| |
that will be filled in when the initializer is set.
llvm-svn: 288313
|
| |
|
|
|
|
| |
and catching as noexcept.
llvm-svn: 288305
|
| |
|
|
|
|
| |
here.
llvm-svn: 288304
|
| |
|
|
|
|
|
| |
arguments from a declaration; despite what the standard says, this form of
deduction should not be considering exception specifications.
llvm-svn: 288301
|
| |
|
|
| |
llvm-svn: 288295
|
| |
|
|
|
|
|
|
| |
This patch is to implement sema and parsing for 'teams distribute parallel for simd' pragma.
Differential Revision: https://reviews.llvm.org/D27084
llvm-svn: 288294
|
| |
|
|
| |
llvm-svn: 288289
|
| |
|
|
|
|
|
|
|
|
| |
performed at the CodeGenModule level.
Would be NFC except we now also use a different uniquing structure so
that we don't get spurious conflicts if you ask for both an NSString
and a CFString for the same content (which is possible with builtins).
llvm-svn: 288287
|
| |
|
|
| |
llvm-svn: 288272
|
| |
|
|
| |
llvm-svn: 288269
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
declared variables.
Teach Sema to check the aligned attribute attached to variable
declarations so that it doesn't issue spurious warnings.
rdar://problem/26517471
Differential revision: https://reviews.llvm.org/D21099
llvm-svn: 288267
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When constructing a temporary object region, which represents the result of
MaterializeTemporaryExpr, track down the sub-expression for which the temporary
is necessary with a trick similar to the approach used in CodeGen, namely
by using Expr::skipRValueSubobjectAdjustments().
Then, create the temporary object region with type of that sub-expression.
That type would propagate further in a path-sensitive manner.
During destruction of lifetime-extened temporaries, consult the type of
the temporary object region, rather than the type of the lifetime-extending
variable, in order to call the correct destructor (fixes pr17001) and,
at least, not to crash by trying to call a destructor of a plain type
(fixes pr19539).
rdar://problem/29131302
rdar://problem/29131576
Differential Revision: https://reviews.llvm.org/D26839
llvm-svn: 288263
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Fix the bug with transition handling in ExprInspectionChecker's
checkDeadSymbols implementation.
- Test this bug by adding a new function clang_analyzer_numTimesReached() to
catch number of passes through the code, which should be handy for testing
against unintended state splits.
- Add two more functions should help debugging issues quickly without running
the debugger or dumping exploded graphs - clang_analyzer_dump() which dump()s
an SVal argument to a warning message, and clang_analyzer_printState(), which
dump()s the current program state to stderr.
Differential Revision: https://reviews.llvm.org/D26835
llvm-svn: 288257
|
| |
|
|
|
|
|
| |
declaration should find the right type, assuming it's supported
evenly across all our hosts.
llvm-svn: 288231
|
| |
|
|
|
|
|
| |
Not strictly NFC because I did change the order of emission of
some global constants, but it shouldn't make any difference.
llvm-svn: 288229
|
| |
|
|
| |
llvm-svn: 288227
|
| |
|
|
| |
llvm-svn: 288223
|
| |
|
|
|
|
|
|
| |
Other AST consumers can deserialize interesting decls that we might
codegen, but they won't make it to the final object file and can trigger
assertions in debug information generation after finalization.
llvm-svn: 288221
|
| |
|
|
|
|
|
|
|
| |
specifications in this mode in C++17, since they're part of the function type,
so check and diagnose them like we would if exceptions were enabled.
Better ideas welcome.
llvm-svn: 288220
|
| |
|
|
|
|
| |
builtin with the type of an explicit declaration of the same function.
llvm-svn: 288208
|
| |
|
|
| |
llvm-svn: 288207
|
| |
|
|
| |
llvm-svn: 288203
|
| |
|
|
|
|
| |
functions, in order to support constexpr std::char_traits<wchar_t>.
llvm-svn: 288193
|
| |
|
|
|
|
|
|
|
|
| |
Avoid using shortcut for const qualified non-constant address space
aggregate variables while generating them on the stack such that
the alloca object is used instead of a global variable containing
initializer.
Review: https://reviews.llvm.org/D27109
llvm-svn: 288163
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Patch by Egor Churaev (echuraev).
Reviewers: Anastasia
Subscribers: cfe-commits, yaxunl, bader
Differential Revision: https://reviews.llvm.org/D27099
llvm-svn: 288126
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Defining DEBUG_TYPE in a header file doesn't make sense.
It is already defined in the corresponding source file.
Reviewers: klimek, ioeric
Subscribers: klimek
Differential Revision: https://reviews.llvm.org/D27164
llvm-svn: 288125
|
| |
|
|
| |
llvm-svn: 288124
|
| |
|
|
| |
llvm-svn: 288121
|