| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 249288
|
| |
|
|
| |
llvm-svn: 249287
|
| |
|
|
| |
llvm-svn: 249286
|
| |
|
|
| |
llvm-svn: 249285
|
| |
|
|
| |
llvm-svn: 249284
|
| |
|
|
|
|
| |
We already check for LandingPadInst two lines above.
llvm-svn: 249280
|
| |
|
|
| |
llvm-svn: 249277
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The bitcode format is described in this document:
https://drive.google.com/file/d/0B036uwnWM6RWdnBLakxmeDdOeXc/view
For more info on ThinLTO see:
https://sites.google.com/site/llvmthinlto
The first customer is ThinLTO, however the data structures are designed
and named more generally based on prior feedback. There are a few
comments regarding how certain interfaces are used by ThinLTO, and the
options added here to gold currently have ThinLTO-specific names as the
behavior they provoke is currently ThinLTO-specific.
This patch includes support for generating per-module function indexes,
the combined index file via the gold plugin, and several tests
(more are included with the associated clang patch D11908).
Reviewers: dexonsmith, davidxl, joker.eph
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13107
llvm-svn: 249270
|
| |
|
|
|
|
| |
EXTRQI/INSERTQI ops.
llvm-svn: 249263
|
| |
|
|
| |
llvm-svn: 249262
|
| |
|
|
|
|
|
|
| |
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D12690
llvm-svn: 249261
|
| |
|
|
|
|
|
|
| |
Track which basic blocks belong to which funclets. Permit branch
folding to fire but only if it can prove that doing so will not cause
code in one funclet to be reused in another.
llvm-svn: 249257
|
| |
|
|
| |
llvm-svn: 249253
|
| |
|
|
|
|
|
|
| |
Updated the FADD combines to work with vectors as well as scalars.
Differential Revision: http://reviews.llvm.org/D13416
llvm-svn: 249251
|
| |
|
|
|
|
|
| |
These are based on PR25016 and likely caused by a bug in
MachineCombiner's definition of improvesCriticalPathLen().
llvm-svn: 249249
|
| |
|
|
| |
llvm-svn: 249248
|
| |
|
|
| |
llvm-svn: 249247
|
| |
|
|
|
|
| |
This was the last tool relying on this pattern.
llvm-svn: 249244
|
| |
|
|
|
|
| |
The custom lowering in LowerExtendedLoad is doing the equivalent shuffle, so make use of existing lowering code to reduce duplication.
llvm-svn: 249243
|
| |
|
|
| |
llvm-svn: 249242
|
| |
|
|
| |
llvm-svn: 249241
|
| |
|
|
| |
llvm-svn: 249240
|
| |
|
|
|
|
|
|
|
|
| |
visitSIGN_EXTEND_INREG calls SelectionDAG::getNode to constant fold scalar constants but handles vector constants itself, despite getNode being capable of dealing with them.
This required a minor change to the getNode implementation to actually deal with cases where the scalars of a BUILD_VECTOR were wider integers than the vector type - which was the only extra ability of the visitSIGN_EXTEND_INREG implementation.
No codegen intended and all existing tests remain the same.
llvm-svn: 249236
|
| |
|
|
| |
llvm-svn: 249231
|
| |
|
|
|
|
|
| |
This is a temporary assembly syntax that will likely evolve along with
broader upcoming syntax changes.
llvm-svn: 249225
|
| |
|
|
| |
llvm-svn: 249224
|
| |
|
|
|
|
|
|
| |
This time by lifting the lambda's in `createNodeFromSelectLikePHI` to
the file scope. Looks like there are differences in capture rules
between clang and MSVC?
llvm-svn: 249222
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: arsenm
Subscribers: arsenm, llvm-commits
Differential Revision: http://reviews.llvm.org/D13395
llvm-svn: 249221
|
| |
|
|
|
|
|
| |
They are constructed without one and they can't go back, so this was
effectively dead code.
llvm-svn: 249220
|
| |
|
|
| |
llvm-svn: 249219
|
| |
|
|
| |
llvm-svn: 249218
|
| |
|
|
| |
llvm-svn: 249217
|
| |
|
|
| |
llvm-svn: 249216
|
| |
|
|
|
|
| |
int instead of void. The actual return value is not *yet* used (and expected to be 0). This change is API breaking, so the fuzzers will need to be updated.
llvm-svn: 249214
|
| |
|
|
|
|
|
|
| |
The trailing backslashes in some ASCII art added in r248527 cause a
"error: multi-line comment [-Werror=comment]" when building with gcc
4.9.1 -Wall. Swallow (ASCII-)artistic integrity and use pipes instead.
llvm-svn: 249212
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Teach SCEV to match patterns like
```
br %cond, label %left, label %right
left:
br label %merge
right:
br label %merge
merge:
V = phi [ %x, %left ], [ %y, %right ]
```
as "select %cond, %x, %y". Before this SCEV would match PHI nodes
exclusively to add recurrences.
This addresses PR25005.
Reviewers: joker.eph, joker-eph, atrick
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13378
llvm-svn: 249211
|
| |
|
|
|
|
|
|
| |
LLVM_BUILD_EXTERNAL_COMPILER_RT can depend on llvm-config.
This patch is a required stepping stone to fix PR14109.
llvm-svn: 249202
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The most important part required to make clang
devirtualization works ( ͡°͜ʖ ͡°).
The code is able to find non local dependencies, but unfortunatelly
because the caller can only handle local dependencies, I had to add
some restrictions to look for dependencies only in the same BB.
http://reviews.llvm.org/D12992
llvm-svn: 249196
|
| |
|
|
| |
llvm-svn: 249194
|
| |
|
|
| |
llvm-svn: 249187
|
| |
|
|
| |
llvm-svn: 249184
|
| |
|
|
|
|
|
| |
Call the correct overload so a string literal does not get converted to a bool.
Also fix the test case to match the names given.
llvm-svn: 249183
|
| |
|
|
| |
llvm-svn: 249181
|
| |
|
|
| |
llvm-svn: 249178
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We will shortly re-use this for select-like br-phi pairs.
Reviewers: atrick, joker-eph, joker.eph
Subscribers: sanjoy, llvm-commits
Differential Revision: http://reviews.llvm.org/D13377
llvm-svn: 249177
|
| |
|
|
| |
llvm-svn: 249174
|
| |
|
|
|
|
| |
description of what's going on.
llvm-svn: 249173
|
| |
|
|
| |
llvm-svn: 249172
|
| |
|
|
| |
llvm-svn: 249171
|
| |
|
|
|
|
|
| |
Make sure we aren't accidentally not setting
these in the instruction definitions.
llvm-svn: 249170
|