| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
i8 field when they really do not. This fixes rdar://7840289
llvm-svn: 101629
|
| |
|
|
|
|
|
|
|
|
|
| |
CGSCC can delete nodes in regions of the callgraph that
have already been visited. If new CG nodes are allocated
to the same pointer, we shouldn't abort, just handle it
correctly by assigning a new number. This should restore
stability by removing invalidated pointers that *will* be
reused from the densemap in the iterator.
llvm-svn: 101628
|
| |
|
|
|
|
|
|
| |
the live-in sets of BBs in the loop. Otherwise later pass may end up using the
registers and override the invariant. rdar://7852937
No reasonablly sized test case possible.
llvm-svn: 101626
|
| |
|
|
|
|
|
|
| |
- LLVMgold.so --> libLLVMgold.so
- the GCC LTO project is no longer 'upcoming'
- document the plugin support for 'ar' and 'nm'
llvm-svn: 101624
|
| |
|
|
|
|
|
|
|
|
| |
void exit_picture()
{
char yuv_types[4][6]= {"4:0:0","4:2:0","4:2:2","4:4:4"};
foo(yuv_types);
}
llvm-svn: 101623
|
| |
|
|
| |
llvm-svn: 101622
|
| |
|
|
| |
llvm-svn: 101621
|
| |
|
|
| |
llvm-svn: 101620
|
| |
|
|
| |
llvm-svn: 101618
|
| |
|
|
|
|
|
|
|
| |
may be called when either the source or destination type is i64, and my
change also hadn't fixed the most obvious problem -- assuming that i64 will
only be bitconverted to f64, ignoring the various vector types.
Radar 7873160.
llvm-svn: 101615
|
| |
|
|
| |
llvm-svn: 101613
|
| |
|
|
|
|
|
|
|
|
|
| |
to determine where to place PHIs by iteratively comparing reaching definitions
at each block. That was just plain wrong. This version now computes the
dominator tree within the subset of the CFG where PHIs may need to be placed,
and then places the PHIs in the iterated dominance frontier of each definition.
The rest of the patch is mostly the same, with a few more performance
improvements added in.
llvm-svn: 101612
|
| |
|
|
| |
llvm-svn: 101611
|
| |
|
|
|
|
|
|
| |
checking into a single function and use that throughout. Remove some
now unnecessary diagnostics and update tests with now more accurate
diagnostics.
llvm-svn: 101610
|
| |
|
|
|
|
|
| |
just remove them all. Radar 7873207 (working around the root problem of
Radar 7759363).
llvm-svn: 101604
|
| |
|
|
|
|
|
|
| |
register in RegAllocLocal."
This reverts commit 101392. It broke a buildbot.
llvm-svn: 101595
|
| |
|
|
| |
llvm-svn: 101594
|
| |
|
|
| |
llvm-svn: 101591
|
| |
|
|
| |
llvm-svn: 101587
|
| |
|
|
| |
llvm-svn: 101586
|
| |
|
|
| |
llvm-svn: 101585
|
| |
|
|
|
|
| |
and don't cause any problems on Darwin.
llvm-svn: 101584
|
| |
|
|
| |
llvm-svn: 101583
|
| |
|
|
| |
llvm-svn: 101581
|
| |
|
|
| |
llvm-svn: 101580
|
| |
|
|
|
|
|
| |
Probably the best way to know that all getOperand() calls have been handled
is to replace that API instead of updating.
llvm-svn: 101579
|
| |
|
|
|
|
|
| |
the result of comparisons are 'int' in C, it doesn't work to
test just the result type of the expression.
llvm-svn: 101576
|
| |
|
|
| |
llvm-svn: 101575
|
| |
|
|
|
|
|
|
| |
in RegAllocLocal.
This makes the local register allocator about 20% faster.
llvm-svn: 101574
|
| |
|
|
| |
llvm-svn: 101573
|
| |
|
|
|
|
|
| |
do *not* suggest that the function could be attribute 'noreturn';
overridden functions may end up returning.
llvm-svn: 101572
|
| |
|
|
|
|
|
| |
This is the last of the uses of TryImplicitConversion outside of
overload resolution and InitializationSequence itself.
llvm-svn: 101569
|
| |
|
|
| |
llvm-svn: 101568
|
| |
|
|
| |
llvm-svn: 101567
|
| |
|
|
| |
llvm-svn: 101566
|
| |
|
|
|
|
|
|
|
|
|
|
| |
to keep the node entries in scc_iterator up to date instead of dangling as
the SCC mutates.
This is a really terrible problem which was causing -g to affect codegen
because it would permute the memory image of the compiler process.
Thanks to Dale for expertly hunting it down.
llvm-svn: 101565
|
| |
|
|
| |
llvm-svn: 101564
|
| |
|
|
|
|
| |
on it.
llvm-svn: 101563
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 101562
|
| |
|
|
| |
llvm-svn: 101561
|
| |
|
|
|
|
|
| |
use of that option with it. This eliminates an imprecise "Linux"
test, and should help support old versions of gold.
llvm-svn: 101560
|
| |
|
|
| |
llvm-svn: 101559
|
| |
|
|
|
|
|
|
| |
to CallGraphSCCPass's instead of passing around a
std::vector<CallGraphNode*>. No functionality change,
but now we have a much tidier interface.
llvm-svn: 101558
|
| |
|
|
|
|
|
|
|
|
| |
case. Also, the 0xFF hex literal involved in the shift for ESize64 should be
suffixed "ul" to preserve the shift result.
Implemented printHex*ImmOperand() by copying from ARMAsmPrinter.cpp and added a
test case for DisassembleN1RegModImmFrm()/printHex64ImmOperand().
llvm-svn: 101557
|
| |
|
|
|
|
| |
Sema::TryImplicitConversion is, for my own sanity. No functionality change
llvm-svn: 101554
|
| |
|
|
|
|
| |
case until -promote-16bit is enabled.
llvm-svn: 101551
|
| |
|
|
|
|
| |
functionality change
llvm-svn: 101550
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TryStaticImplicitCast (for references, class types, and everything
else, respectively) into a single invocation of
InitializationSequence.
One of the paths (for class types) was the only client of
Sema::TryInitializationByConstructor, which I have eliminated. This
also simplified the interface for much of the cast-checking logic,
eliminating yet more code.
I've kept the representation of C++ functional casts with <> 1
arguments the same, despite the fact that I hate it. That fix will
come soon. To satisfy my paranoia, I've bootstrapped + tested Clang
with these changes.
llvm-svn: 101549
|
| |
|
|
| |
llvm-svn: 101548
|
| |
|
|
| |
llvm-svn: 101543
|