| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 248511
|
| |
|
|
|
|
| |
This way we don't need to rebuild the full module name for every decl.
llvm-svn: 248510
|
| |
|
|
| |
llvm-svn: 248509
|
| |
|
|
|
|
|
|
| |
If the shifter operand is a constant, and all of the bits shifted out
are known to be zero, then if X is known non-zero at least one
non-zero bit must remain.
llvm-svn: 248508
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Remove parenthesis surrounding the new loop index.
Reviewers: klimek
Subscribers: cfe-commits, klimek
Differential Revision: http://reviews.llvm.org/D13133
llvm-svn: 248507
|
| |
|
|
|
|
|
|
|
| |
This was prematurely committed (and I take the blame for that).
Ideally, we want to support only ignored options that are really used
by somebody. Some of the options listed are not even supported by gold
(but only by ld.bfd), which says a lot about their "real-world" usefulness.
llvm-svn: 248503
|
| |
|
|
| |
llvm-svn: 248502
|
| |
|
|
| |
llvm-svn: 248501
|
| |
|
|
| |
llvm-svn: 248500
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D13083
llvm-svn: 248499
|
| |
|
|
| |
llvm-svn: 248498
|
| |
|
|
|
|
|
| |
This is closer to the expected behavior of an iterator and avoids awkward
warnings from clang's -Wrange-loop-analysis below.
llvm-svn: 248497
|
| |
|
|
|
|
|
|
| |
StringRefs always point to immutable memory so the const doesn't add value
here. Also quiets clang's -Wrange-loop-analysis which warns about the implicit
copying.
llvm-svn: 248496
|
| |
|
|
|
|
| |
Found by -Wrange-loop-analysis.
llvm-svn: 248495
|
| |
|
|
|
|
|
|
| |
This change removes the KMP_STATS_ENABLED macro inside kmp_stats.cpp since it
is only compiled anyways when LIBOMP_STATS=on. Also, include kmp_config.h in
kmp_stats.h to ensure KMP_STATS_ENABLED is defined.
llvm-svn: 248494
|
| |
|
|
|
|
|
|
| |
Removes absdiff_expand.ll regression test file which is invalid.
Diffrential Revision: http://reviews.llvm.org/D11678
llvm-svn: 248493
|
| |
|
|
| |
llvm-svn: 248492
|
| |
|
|
|
|
|
|
|
| |
* add using namespace llvm::support::endian.
* create a add32le static helper.
Thanks to Rui for the suggestion.
llvm-svn: 248491
|
| |
|
|
| |
llvm-svn: 248490
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Solve comment on rL248418.
Reviewers: alexfh
Subscribers: cfe-commits, klimek
Differential Revision: http://reviews.llvm.org/D13129
llvm-svn: 248489
|
| |
|
|
|
|
| |
Thanks to Sean Silva for noticing.
llvm-svn: 248488
|
| |
|
|
|
|
| |
Library names in the LLVM framework usually do not contain underscores.
llvm-svn: 248487
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: vkalintiris
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13092
llvm-svn: 248486
|
| |
|
|
|
|
|
|
|
|
|
|
| |
After the merge of TempScopInfo into ScopInfo the analysis output
remained because of the existing unit tests. These remains are removed
and the units tests converted to match the equivalent output of
ScopInfo's analysis output. The unit tests are also moved into the
directory of ScopInfo tests.
Differential Revision: http://reviews.llvm.org/D13116
llvm-svn: 248485
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactor all ISL-related cmake build instructions into its own
CMakeLists.txt and build as a separate library.
This is useful to apply ISL-related build flags to ISL only and not to
Polly's files. Also, it the separation of both projects becomes clearer.
Proposed name of the library is Polly_isl. It is not "isl" to avoid
mix-up with potentially installed libisl.{a|so}.
Tested configurations:
- Windows with cmake 3.2
- Ubuntu with cmake 3.0.2
- Ubuntu with cmake 3.0.2 BUILD_SHARED_LIBS on
- Ubuntu with cmake 2.8.12.2 (LLVM minimum version)
- Ubuntu out-of-LLVM-tree
Differential Revision: http://reviews.llvm.org/D12810
llvm-svn: 248484
|
| |
|
|
|
|
|
|
| |
Fixes the overflow case of llvm.*absdiff intrinsic also updats the tests and LangRef.rst accordingly.
Differential Revision: http://reviews.llvm.org/D11678
llvm-svn: 248483
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The byte-swap recognizer can now notice that this
```
uint32_t bswap(uint32_t x)
{
x = (x & 0x0000FFFF) << 16 | (x & 0xFFFF0000) >> 16;
x = (x & 0x00FF00FF) << 8 | (x & 0xFF00FF00) >> 8;
return x;
}
```
is a bswap. Fixes PR23863.
Reviewers: nlewycky, hfinkel, hans, jmolloy, rengolin
Subscribers: majnemer, rengolin, llvm-commits
Differential Revision: http://reviews.llvm.org/D12637
llvm-svn: 248482
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Strictly speaking, the MIPS*R2 ISA's should not permit -mnan=2008 since this
feature was added in MIPS*R3. However, other toolchains permit this and we
should do the same.
Reviewers: atanasyan
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D13057
llvm-svn: 248481
|
| |
|
|
|
|
|
|
|
|
|
| |
Fix of dangling StringRef after temporary std::string is destroyed
Follow-up to: http://reviews.llvm.org/rL248479
Reviewers: alexfh
Subscribers: cfe-commits
llvm-svn: 248480
|
| |
|
|
|
|
|
|
|
|
|
| |
Fix of dangling StringRef after temporary std::string is destroyed
Follow-up to: http://reviews.llvm.org/rL248370
Reviewers: alexfh
Subscribers: cfe-commits
llvm-svn: 248479
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allow a target to do something other than search for copies
that will avoid cross register bank copies.
Implement for SI by only rewriting the most basic copies,
so it should look through anything like a subregister extract.
I'm not entirely satisified with this because it seems like
eliminating a reg_sequence that isn't fully used should work
generically for all targets without them having to override
something. However, it seems to be tricky to have a simple
implementation of this without rewriting to invalid kinds
of subregister copies on some targets.
I'm not sure if there is currently a generic way to easily check
if a subregister index would be valid for the current use.
The current set of TargetRegisterInfo::get*Class functions don't
quite behave like I would expect (e.g. getSubClassWithSubReg
returns the maximal register class rather than the minimal), so
I'm not sure how to make the generic test keep searching if
SrcRC:SrcSubReg is a valid replacement for DefRC:DefSubReg. Making
the default implementation to check for simple copies breaks
a variety of ARM and x86 tests by producing illegal subregister uses.
The ARM tests are not actually changed since it should still be using
the same sharesSameRegisterFile implementation, this just relaxes
them to not check for specific registers.
llvm-svn: 248478
|
| |
|
|
| |
llvm-svn: 248476
|
| |
|
|
| |
llvm-svn: 248475
|
| |
|
|
| |
llvm-svn: 248474
|
| |
|
|
|
|
| |
These just read from a generated table.
llvm-svn: 248473
|
| |
|
|
| |
llvm-svn: 248472
|
| |
|
|
| |
llvm-svn: 248471
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the stores are storing values from loads which partially
alias the stores, we could end up placing the merged loads
and stores on the same chain which has the potential to break.
Each store may have a different chain dependency on only some
of the original loads. Create a new TokenFactor to capture all
of the required dependencies of the stores rather than assuming
all stores can use the same chain.
The testcase is a situation where this happens, although
it does not have an observable change from this. The DAG nodes
just happened to not be reordered before despite this missing
chain dependency.
This is based on an off-list report for an out of tree target
which regressed due to r246307 and I haven't managed to find a case
where the nodes do end up reordered with an in tree target.
llvm-svn: 248468
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of always inserting a copy in case
the super register is itself a subregister,
only extract to the super reg class if this is
actually the case.
This shouldn't really change codegen, but
makes looking at the output of SIFixSGPRCopies
easier to read.
llvm-svn: 248467
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: tfiala, granata.enrico, clayborg
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D13125
llvm-svn: 248466
|
| |
|
|
| |
llvm-svn: 248465
|
| |
|
|
| |
llvm-svn: 248464
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
With Windows 10 SDK, Include and Lib directories now contain an additional subfolder with the name that corresponds to the full version of the SDK, for example:
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\um
- C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\um\x64
Reviewers: ruiu, rnk
Subscribers: majnemer, cfe-commits
Differential Revision: http://reviews.llvm.org/D12832
llvm-svn: 248463
|
| |
|
|
|
|
|
| |
This makes the header more readable and cleans up some unnecessary
header differences between NDEBUG and !NDEBUG.
llvm-svn: 248462
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: clayborg
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D13102
llvm-svn: 248461
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Loop unswitching produces conditional branches with constant condition,
and it's beneficial for later passes to clean this up with simplify-cfg.
We do this after the second invocation of loop-unswitch, but not after
the first one. Not doing so might cause problem for passes like
LoopUnroll, whose estimate of loop body size would be less accurate.
Reviewers: hfinkel
Differential Revision: http://reviews.llvm.org/D13064
llvm-svn: 248460
|
| |
|
|
| |
llvm-svn: 248459
|
| |
|
|
|
|
| |
size_t is not unsigned long for targeting i686 (and Windows x64).
llvm-svn: 248458
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: This is no longer needed as this file no longer calls backtrace().
Reviewers: clayborg
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D13049
llvm-svn: 248457
|
| |
|
|
| |
llvm-svn: 248456
|