| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
polymorphically
llvm-svn: 245378
|
| |
|
|
| |
llvm-svn: 245368
|
| |
|
|
|
|
| |
move constructed in ConditionalCleanup::restore
llvm-svn: 245367
|
| |
|
|
|
|
| |
intended.
llvm-svn: 245361
|
| |
|
|
|
|
| |
Thanks for the catch Hal!
llvm-svn: 245359
|
| |
|
|
| |
llvm-svn: 245352
|
| |
|
|
|
|
|
| |
ASTContext. Fixes some cases where we could previously initialize the AST
consumer more than once.
llvm-svn: 245346
|
| |
|
|
|
|
|
| |
This is needed to prevent breakage of -Wl,-as-needed link when
interceptors for functions in libutil are added. See PR15823.
llvm-svn: 245344
|
| |
|
|
| |
llvm-svn: 245342
|
| |
|
|
| |
llvm-svn: 245339
|
| |
|
|
|
|
| |
inline keyword can also be specified on a FunctionDecl, this is a polymorphic matcher.
llvm-svn: 245337
|
| |
|
|
| |
llvm-svn: 245332
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
__builtin_object_size would return incorrect answers for many uses where
type=3. This fixes the inaccuracy by making us emit 0 instead of LLVM's
objectsize intrinsic.
Additionally, there are many cases where we would emit suboptimal (but
correct) answers, such as when arrays are involved. This patch fixes
some of these cases (please see new tests in test/CodeGen/object-size.c
for specifics on which cases are improved)
Patch mostly by Richard Smith.
Differential Revision: http://reviews.llvm.org/D12000
This fixes PR15212.
llvm-svn: 245323
|
| |
|
|
| |
llvm-svn: 245320
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: The code comments in the Makefile indicate this was put in place to support issues when building clang with GCC. Today clang's strict aliasing works, so we shouldn't pass -fno-strict-aliasing when building with clang.
Reviewers: bogner, echristo
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D12036
llvm-svn: 245304
|
| |
|
|
| |
llvm-svn: 245271
|
| |
|
|
|
|
| |
OpenMP 4.1 allows to use variables with reference types in all private clauses (private, firstprivate, lastprivate, linear etc.). Patch allows to use such variables and fixes codegen for linear variables with reference types.
llvm-svn: 245268
|
| |
|
|
|
|
|
|
|
|
|
| |
Bootstrap bots were failing:
http://lab.llvm.org:8080/green/job/clang-stage2-configure-Rlto_build/6382/
http://bb.pgr.jp/builders/clang-3stage-i686-linux/builds/2969
This reverts r245264.
llvm-svn: 245267
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generating call assume(icmp %vtable, %global_vtable) after constructor
call for devirtualization purposes.
For more info go to:
http://lists.llvm.org/pipermail/cfe-dev/2015-July/044227.html
Edit:
Fixed version because of PR24479.
http://reviews.llvm.org/D11859
llvm-svn: 245264
|
| |
|
|
|
|
| |
It caused PR24479
llvm-svn: 245260
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D11994
llvm-svn: 245259
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Generating call assume(icmp %vtable, %global_vtable) after constructor
call for devirtualization purposes.
For more info go to:
http://lists.llvm.org/pipermail/cfe-dev/2015-July/044227.html
http://reviews.llvm.org/D11859
llvm-svn: 245257
|
| |
|
|
|
|
| |
the default behavior.
llvm-svn: 245251
|
| |
|
|
|
|
| |
Capture line numbers in a variable for FileCheck instead of hardcoding them.
llvm-svn: 245250
|
| |
|
|
|
|
|
|
| |
context is the class itself but lookups should be performed starting with the
lookup parent of the class (class and base members don't shadow types from the
surrounding context because they have not been declared yet).
llvm-svn: 245236
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
If a module was unavailable (either a missing requirement on the module
being imported, or a missing file anywhere in the top-level module (and
not dominated by an unsatisfied `requires`)), we would silently treat
inclusions as textual. This would cause all manner of crazy and
confusing errors (and would also silently "work" sometimes, making the
problem difficult to track down).
I'm really not a fan of the `M->isAvailable(getLangOpts(), getTargetInfo(),
Requirement, MissingHeader)` function; it seems to do too many things at
once, but for now I've done things in a sort of awkward way.
The changes to test/Modules/Inputs/declare-use/module.map
were necessitated because the thing that was meant to be tested there
(introduced in r197805) was predicated on silently falling back to textual
inclusion, which we no longer do.
The changes to test/Modules/Inputs/macro-reexport/module.modulemap
are just an overlooked missing header that seems to have been missing since
this code was committed (r213922), which is now caught.
Reviewers: rsmith, benlangmuir, djasper
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D10423
llvm-svn: 245228
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Added an additional ctor that takes a NumOccurrenceFlag parameter for the
SourcePaths option. This frees applications from always having to pass at least
one source file, e.g., -list-checks.
http://reviews.llvm.org/D12069
Patch by Don Hinton!
llvm-svn: 245204
|
| |
|
|
|
|
|
| |
the produced pcm file for stable file creation across distributed build
systems.
llvm-svn: 245199
|
| |
|
|
| |
llvm-svn: 245184
|
| |
|
|
|
|
| |
Discussed with Richard Smith.
llvm-svn: 245162
|
| |
|
|
|
|
| |
function, and remove a duplicate var.
llvm-svn: 245154
|
| |
|
|
| |
llvm-svn: 245153
|
| |
|
|
| |
llvm-svn: 245145
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(PR23542)
This enables Clang to correctly handle code such as:
struct __declspec(dllexport) S {
int x = 42;
};
where it would otherwise error due to trying to generate the default
constructor before the in-class initializer for x has been parsed.
Differential Revision: http://reviews.llvm.org/D11850
llvm-svn: 245139
|
| |
|
|
|
|
| |
when building with implicit modules disabled.
llvm-svn: 245136
|
| |
|
|
| |
llvm-svn: 245124
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Adding check to emit diagnostic for invalid tag when concept is specified and associated tests.
Reviewers: rsmith, hubert.reinterpretcast, fraggamuffin, faisalv, aaron.ballman
Subscribers: aaron.ballman, cfe-commits
Differential Revision: http://reviews.llvm.org/D11916
llvm-svn: 245123
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add checkers that detect code-level localizability issues for OS X / iOS:
- A path sensitive checker that warns about uses of non-localized
NSStrings passed to UI methods expecting localized strings.
- A syntax checker that warns against not including a comment in
NSLocalizedString macros.
A patch by Kulpreet Chilana!
(This is the second attempt with the compilation issue on Windows and
the random test failures resolved.)
llvm-svn: 245093
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
long double on x86 mingw is 80bits and is aligned to 16bytes
Fixes:
https://llvm.org/bugs/show_bug.cgi?id=24398
Reviewers: rnk
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D12037
llvm-svn: 245084
|
| |
|
|
|
|
|
|
|
|
|
| |
It is flaky due to inability to remove files with open handles. We
could paper over it with rm -f, but then the file would still be
present.
This is more evidence to me that we should roll our own 'rm'
implementation in LLVM.
llvm-svn: 245083
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
MSDN says that fastcall, stdcall, thiscall, and vectorcall are all
accepted but ignored on ARM and X64.
https://msdn.microsoft.com/en-us/library/984x0h58.aspx
MSDN also says cdecl is also accepted and typically ignored
This patch brings ARM in line with how we ignore them for X64
Reviewers: rnk
Subscribers: compnerd, cfe-commits
Differential Revision: http://reviews.llvm.org/D12034
llvm-svn: 245076
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D11991
llvm-svn: 245063
|
| |
|
|
|
|
| |
Hopefully this makes the sanitizer build bot happy.
llvm-svn: 245054
|
| |
|
|
|
|
|
|
|
|
|
| |
So, we now reject that. We also warn for any external-linkage global
variable named main in C, because it results in undefined behavior.
PR: 24309
Differential Revision: http://reviews.llvm.org/D11658
Reviewed by: rsmith
llvm-svn: 245051
|
| |
|
|
|
|
|
|
|
|
| |
Before:
#elif(AAAA && BBBB)
After:
#elif (AAAA && BBBB)
llvm-svn: 245043
|
| |
|
|
|
|
|
| |
blender uses statements expression in condition of the loop under control of the '#pragma omp parallel for'. This condition is used several times in different expressions required for codegen of the loop directive. If there are some variables defined in statement expression, it fires an assert during codegen because of redefinition of the same variables.
We have to rebuild several expression to be sure that all variables are unique.
llvm-svn: 245041
|
| |
|
|
|
|
|
|
|
|
|
| |
Fix a bug in the matcher docs where callExpr(on(...)) was in the examples,
but didn't work (on() only works for memberCallExpr).
Fix a bug in the doc dump script that was introduced in r231575 when
removing a regexp capture without adapting the code that uses the
captures.
llvm-svn: 245040
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, arguments are passed via the string attribute 'command',
assuming a shell-escaped / quoted command line to extract the original
arguments. This works well enough on Unix systems, but turns out to be
problematic for Windows tools to generate.
This CL adds a new attribute 'arguments', an array of strings, which
specifies the exact command line arguments. If 'arguments' is available
in the compilation database, it is preferred to 'commands'.
Currently there is no plan to retire 'commands': there are enough
different use cases where users want to create their own mechanism for
creating compilation databases, that it doesn't make sense to force them
all to implement shell command line parsing.
Patch by Daniel Dilts.
llvm-svn: 245036
|
| |
|
|
|
|
|
|
|
|
|
| |
file in the .pcm files. This allows a smaller set of files to be sent to a
remote build worker when building with explicit modules (for instance, module
map files need not be sent along with the corresponding precompiled modules).
This doesn't actually make the embedded files visible to header search, so
it's not useful as a packaging format for public header files.
llvm-svn: 245028
|
| |
|
|
|
|
|
|
|
| |
ConsumedBlockInfo objects were move assigned, but only in a state where
the dtor was a no-op anyway. Subtle and easily could've happened in ways
that wouldn't've been safe - so this change makes it safe no matter what
state the ConsumedBlockInfo object is in.
llvm-svn: 244998
|