| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
method that, given a symbol index, will return the symbol's data.
llvm-svn: 164026
|
| |
|
|
|
|
| |
Hopefully unbreaks compiler-rt build on linux.
llvm-svn: 164025
|
| |
|
|
|
|
| |
passes. This may break the buildbots. I plan to revert it in a few hours.
llvm-svn: 164024
|
| |
|
|
| |
llvm-svn: 164023
|
| |
|
|
|
|
| |
root for gtest-based tests. Support running these tests from lit via check-tsan command.
llvm-svn: 164022
|
| |
|
|
| |
llvm-svn: 164021
|
| |
|
|
|
|
| |
memory-sanitizer branch to sanitizer_common
llvm-svn: 164020
|
| |
|
|
|
|
| |
sure full error report is printed
llvm-svn: 164018
|
| |
|
|
|
|
| |
LLVM_DELETED_FUNCTION.
llvm-svn: 164017
|
| |
|
|
|
|
| |
LLVM_DELETED_FUNCTION.
llvm-svn: 164016
|
| |
|
|
|
|
| |
LLVM_DELETED_FUNCTION.
llvm-svn: 164015
|
| |
|
|
|
|
| |
LLVM_DELETED_FUNCTION.
llvm-svn: 164014
|
| |
|
|
|
|
| |
of unimplemented copy constructor and copy assignment operator that make the class look incomplete. Upcoming patch will mark them deleted.
llvm-svn: 164013
|
| |
|
|
| |
llvm-svn: 164012
|
| |
|
|
| |
llvm-svn: 164011
|
| |
|
|
| |
llvm-svn: 164010
|
| |
|
|
| |
llvm-svn: 164009
|
| |
|
|
| |
llvm-svn: 164008
|
| |
|
|
|
|
| |
operators that aren't implemented.
llvm-svn: 164007
|
| |
|
|
|
|
| |
operators that aren't implemented.
llvm-svn: 164006
|
| |
|
|
| |
llvm-svn: 164005
|
| |
|
|
| |
llvm-svn: 164004
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
partition use lists a bit. No functionality changed.
These visitors are actually visiting a tuple of a Use and an offset into
the alloca. However, we use the InstVisitor to handle the dispatch over
the users, and so the Use and Offset are stored in class member
variables and set just before each call to visit(). This is fairly
awkward and makes the functions a bit harder to read, but its the only
real option we have until InstVisitor can be rewritten to use variadic
templates.
However, this pattern shouldn't be followed on the helper member
functions where there is no interface constraint from the visitor. We
already were passing the instruction as a normal parameter rather than
use the Use to get at it, start passing the offset as well. This will
become more important in subsequent patches as the offset will in some
cases change while visiting a single instruction.
llvm-svn: 164003
|
| |
|
|
| |
llvm-svn: 164002
|
| |
|
|
| |
llvm-svn: 164001
|
| |
|
|
| |
llvm-svn: 164000
|
| |
|
|
| |
llvm-svn: 163999
|
| |
|
|
| |
llvm-svn: 163997
|
| |
|
|
| |
llvm-svn: 163996
|
| |
|
|
|
|
|
|
|
|
|
| |
wide vector types.
It had patterns for zext-loading and extending. This commit adds patterns for loading a wide type, performing a bitcast,
and extending. This is an odd pattern, but it is commonly used when writing code with intrinsics.
rdar://11897677
llvm-svn: 163995
|
| |
|
|
| |
llvm-svn: 163994
|
| |
|
|
| |
llvm-svn: 163993
|
| |
|
|
|
|
| |
No functional change.
llvm-svn: 163992
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The live range of an SSA value forms a sub-tree of the dominator tree.
That means the live ranges of two values overlap if and only if the def
of one value lies within the live range of the other.
This can be used to simplify the interference checking a bit: Visit each
def in the two registers about to be joined. Check for interference
against the value that is live in the other register at the def point
only. It is not necessary to scan the set of overlapping live ranges,
this interference check can be done while computing the value mapping
required for the final live range join.
The new algorithm is prepared to handle more complicated conflict
resolution - We can allow overlapping live ranges with different values
as long as the differing lanes are undef or unused in the other
register.
The implementation in this patch doesn't do that yet, it creates code
that is nearly identical to the old algorithm's, except:
- The new stripCopies() function sees through multiple copies while
the old RegistersDefinedFromSameValue() only can handle one.
- There are a few rare cases where the new algorithm can erase an
IMPLICIT_DEF instuction that RegistersDefinedFromSameValue() couldn't
handle.
llvm-svn: 163991
|
| |
|
|
|
|
|
|
|
|
| |
A value that is live in to a basic block should be returned by valueIn()
in LiveRangeQuery(getMBBStartIdx(MBB)), unless it is a PHI-def which
should be returned by valueDefined() instead.
Current code isn't using this functionality. Future code will.
llvm-svn: 163990
|
| |
|
|
|
|
|
| |
headers and modules in more detail. I'd still like to expand on some
of the modules-related issues further, but this is a decent start.
llvm-svn: 163989
|
| |
|
|
| |
llvm-svn: 163988
|
| |
|
|
| |
llvm-svn: 163987
|
| |
|
|
|
|
| |
declaration for the entity being documented.
llvm-svn: 163986
|
| |
|
|
|
|
|
|
| |
'function-like' type that can be annotated with \param.
Thanks to Eli Friedman for noticing!
llvm-svn: 163985
|
| |
|
|
|
|
| |
parameters.
llvm-svn: 163984
|
| |
|
|
| |
llvm-svn: 163983
|
| |
|
|
| |
llvm-svn: 163982
|
| |
|
|
|
|
| |
UnqualifiedId() properly noncopyable.
llvm-svn: 163981
|
| |
|
|
| |
llvm-svn: 163980
|
| |
|
|
| |
llvm-svn: 163979
|
| |
|
|
| |
llvm-svn: 163978
|
| |
|
|
| |
llvm-svn: 163974
|
| |
|
|
| |
llvm-svn: 163973
|
| |
|
|
|
|
|
| |
Kill flags are removed more and more aggressively during the register
allocation passes, it is better to get information from LiveIntervals.
llvm-svn: 163972
|