| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 203473
|
| |
|
|
| |
llvm-svn: 203472
|
| |
|
|
|
|
| |
This will replace the now badly named CLANG_IS_PRODUCTION.
llvm-svn: 203471
|
| |
|
|
|
|
| |
x64 FreeBSD in 32-bit mode
llvm-svn: 203470
|
| |
|
|
| |
llvm-svn: 203469
|
| |
|
|
|
|
| |
is already tested.
llvm-svn: 203468
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Add loc() to the dynamic registry.
Other fixes:
- Fix the polymorphic variant value to accept an exact match, even if
there are other possible conversions.
- Fix specifiesTypeLoc() to not crash on an empty
NestedNameSpecifierLoc.
Reviewers: klimek
CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2928
llvm-svn: 203467
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
void f() {
bar([]() {}// Does not respect SpacesBeforeTrailingComments
);
}
After:
void f() {
bar([]() {} // Does not respect SpacesBeforeTrailingComments
);
}
This fixes llvm.org/PR19017.
llvm-svn: 203466
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 203465
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
32-bits of 64-bit FPR
Summary:
This is a white lie to workaround a widespread bug in the -mfp64
implementation.
The problem is that none of the 32-bit fpu ops mention the fact that they
clobber the upper 32-bits of the 64-bit FPR. This allows MFHC1 to be
scheduled on the wrong side of most 32-bit FPU ops. Fixing that requires a
major overhaul of the FPU implementation which can't be done right now due to
time constraints.
MFHC1 is one of two affected instructions. These instructions are the only
FPU instructions that don't read or write the lower 32-bits. We therefore
pretend that it reads the bottom 32-bits to artificially create a dependency and
prevent the scheduler changing the behaviour of the code.
The other instruction is MTHC1 which will be fixed once I've have found a failing
test case for it.
The testcase is test-suite/SingleSource/UnitTests/Vector/simple.c when
given TARGET_CFLAGS="-mips32r2 -mfp64 -mmsa".
Reviewers: jacksprat, matheusalmeida
Reviewed By: jacksprat
Differential Revision: http://llvm-reviews.chandlerc.com/D2966
llvm-svn: 203464
|
| |
|
|
|
|
|
| |
What was use_iterator is now user_iterator. Also switch to range-based
APIs, as in Clang r203365.
llvm-svn: 203463
|
| |
|
|
|
|
|
|
|
|
| |
Older isl versions did not properly guard all function declarations for the
use in C++. Specifically, the isl/val_gmp.h header was not properly guarded.
This patch ensures we have the proper guards in place and do not accidentally
link to name-mangled C++ versions of those functions that are not available in
libisl.so.
llvm-svn: 203462
|
| |
|
|
|
|
|
|
| |
instead, per post-commit review feedback.
Replacing llvm::copy changes with SmallVector range-based construction which is a considerably cleaner approach.
llvm-svn: 203461
|
| |
|
|
|
|
| |
post-commit review feedback. Adding an explicit range-based constructor to SmallVector, which supersedes the llvm::copy functionality.
llvm-svn: 203460
|
| |
|
|
|
|
| |
reorder macro.
llvm-svn: 203459
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
If we need to break the second line here:
// something: aaaaa aaaaa aaaaaa aaaaa aaaaa
// aaaaa aaaaa aaaaaa aaaaa aaaaa aaaaa
with the patch it will be turned to
// something: aaaaa aaaaa aaaaaa aaaaa aaaaa
// aaaaa aaaaa aaaaaa aaaaa aaaaa
// aaaaa
instead of
// something: aaaaa aaaaa aaaaaa aaaaa aaaaa
// aaaaa aaaaa aaaaaa aaaaa aaaaa
// aaaaa
Reviewers: djasper, klimek
Reviewed By: klimek
CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2988
llvm-svn: 203458
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This is immediately useful for generating macro expansion notes, and
may be useful for other things later on.
Reviewers: klimek, djasper
Reviewed By: klimek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2950
llvm-svn: 203457
|
| |
|
|
| |
llvm-svn: 203456
|
| |
|
|
| |
llvm-svn: 203455
|
| |
|
|
|
|
|
|
|
|
| |
Before:
int c = []()->int { return 2; }();
After:
int c = []() -> int { return 2; }();
llvm-svn: 203452
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Peter, I guess, this can help you in testing your check.
Reviewers: djasper, pcc, klimek
Reviewed By: klimek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2989
llvm-svn: 203451
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The function was making too many assumptions about its input:
1. The NEON_VDUP optimisation was far too aggressive, assuming (I
think) that the input would always be BUILD_VECTOR.
2. We were treating most unknown concats as legal (by returning Op
rather than SDValue()). I think only concats of pairs of vectors are
actually legal.
http://llvm.org/PR19094
llvm-svn: 203450
|
| |
|
|
|
|
|
|
|
| |
Seed the QueueItem objects with the item_refs and addresses when they are fetched
in one batch. If additional information is needed from the QueueItem, fetch it
lazily one pending item per function call.
<rdar://problem/16270007>, <rdar://problem/16032150>
llvm-svn: 203449
|
| |
|
|
|
|
|
| |
as well. I don't see any particular need but it imposes no cost to
support it and it makes the API cleaner.
llvm-svn: 203448
|
| |
|
|
|
|
| |
now that there is essentially no cost to doing so. Yay C++11.
llvm-svn: 203447
|
| |
|
|
| |
llvm-svn: 203446
|
| |
|
|
| |
llvm-svn: 203445
|
| |
|
|
| |
llvm-svn: 203444
|
| |
|
|
|
|
| |
map) in r202994. Thanks to Sebastian Redl for the catch.
llvm-svn: 203443
|
| |
|
|
| |
llvm-svn: 203442
|
| |
|
|
|
|
|
| |
and caught by the MSan bootstrap build bot. This should hopefully get
the bot green at long last.
llvm-svn: 203441
|
| |
|
|
|
|
| |
overridden itself.
llvm-svn: 203440
|
| |
|
|
|
|
| |
class.
llvm-svn: 203439
|
| |
|
|
|
|
|
| |
commit. Sorry for the churn, just trying to keep it out of any
functionality changed.
llvm-svn: 203438
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
the stack of the analysis group because they are all immutable passes.
This is made clear by Craig's recent work to use override
systematically -- we weren't overriding anything for 'finalizePass'
because there is no such thing.
This is kind of a lame restriction on the API -- we can no longer push
and pop things, we just set up the stack and run. However, I'm not
invested in building some better solution on top of the existing
(terrifying) immutable pass and legacy pass manager.
llvm-svn: 203437
|
| |
|
|
|
|
|
| |
- Use constructor instead of initializer list.
- Disable ManyUnusedBits for now.
llvm-svn: 203436
|
| |
|
|
| |
llvm-svn: 203435
|
| |
|
|
|
|
| |
lines under 80-columns, etc.
llvm-svn: 203434
|
| |
|
|
|
|
| |
class.
llvm-svn: 203433
|
| |
|
|
|
|
|
| |
clang-format, but with some modifications by me where it got things
wrong or got confused.
llvm-svn: 203432
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
constructors from the classes which only have a single reference member
to many other places. This resulted in them copying their single member
instead of moving. =/ Fix this.
There's really not a useful test to add sadly because these move
constructors are only called when something deep inside some standard
library implementation *needs* to move them. Many of the types aren't
even user-impacting types. Or, the objects are copyable anyways and so
the result was merely a performance problem rather than a correctness
problem.
Anyways, thanks for the review. And this is a great example of why
I wish I colud have the compiler write these for me.
llvm-svn: 203431
|
| |
|
|
|
|
| |
This is fallout from r203429.
llvm-svn: 203430
|
| |
|
|
|
|
|
|
|
| |
Split by comma once instead of multiple times. Moving this upfront
makes the rest of the code considerably simpler.
No functional change.
llvm-svn: 203429
|
| |
|
|
|
|
| |
class that might (at some point) need them.
llvm-svn: 203428
|
| |
|
|
|
|
| |
members as being te workaround MSVC.
llvm-svn: 203427
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
synthesize a move constructor. Thus, for any types where move semantics
are important (yea, that's essentially every type...) you must
explicitly define the special members. Do so systematically throughout
the pass manager as the core of the design relies heavily on move
semantics.
This will hopefully fix the build with MSVC 2013. We still don't know
why MSVC 2012 accepted this code, but it almost certainly wasn't doing
the right thing.
I've also added explicit to a few single-argument constructors spotted
in passing.
llvm-svn: 203426
|
| |
|
|
|
|
|
|
|
| |
if the type's declaration was previously instantiated in an unimported module.
(For an imported type definition, this already worked, because the source
location is set to the location of the definition, but for locally-instantiated
type definitions, it did not.)
llvm-svn: 203425
|
| |
|
|
| |
llvm-svn: 203424
|
| |
|
|
| |
llvm-svn: 203423
|
| |
|
|
| |
llvm-svn: 203422
|