- Sep 12, 2011
-
-
Jakob Stoklund Olesen authored
It has been enabled by default for a while, it was only there to allow performance comparisons. llvm-svn: 139501
-
Jakob Stoklund Olesen authored
SplitKit always computes a complement live range to cover the places where the original live range was live, but no explicit region has been allocated. Currently, the complement live range is created to be as small as possible - it never overlaps any of the regions. This minimizes register pressure, but if the complement is going to be spilled anyway, that is not very important. The spiller will eliminate redundant spills, and hoist others by making the spill slot live range overlap some of the regions created by splitting. Stack slots are cheap. This patch adds the interface to enable spill modes in SplitKit. In spill mode, SplitKit will assume that the complement is going to spill, so it will allow it to overlap regions in order to avoid back-copies. By doing some of the spiller's work early, the complement live range becomes simpler. In some cases, it can become much simpler because no extra PHI-defs are required. This will speed up both splitting and spilling. This is only the interface to enable spill modes, no implementation yet. llvm-svn: 139500
-
Jakob Stoklund Olesen authored
llvm-svn: 139498
-
Richard Osborne authored
This information is required if we want LDWCP to be hoisted out of loops. llvm-svn: 139495
-
Richard Osborne authored
llvm-svn: 139494
-
Nadav Rotem authored
llvm-svn: 139491
-
Craig Topper authored
Fix disassembling of one of the register/register forms of MOVUPS/MOVUPD/MOVAPS/MOVAPD/MOVSS/MOVSD and their VEX equivalents. Fixes PR10877. llvm-svn: 139486
-
- Sep 11, 2011
-
-
Craig Topper authored
llvm-svn: 139485
-
Craig Topper authored
Fix disassembling of PAUSE instruction. Fixes PR10900. Also fixed NOP disassembling to ignore OpSize and REX.W. llvm-svn: 139484
-
Nick Lewycky authored
llvm-svn: 139481
-
Nick Lewycky authored
llvm-svn: 139480
-
Nadav Rotem authored
Undo the changes from r139285 which added custom lowering to vselect. Add tablegen lowering for vselect. llvm-svn: 139479
-
- Sep 10, 2011
-
-
Eli Friedman authored
llvm-svn: 139459
-
Eli Friedman authored
r139454 activates an assert in a case where we were doing the right thing anyway. Make that explicit, and un-XFAIL the testcase. llvm-svn: 139458
-
Richard Trieu authored
lib/ExecutionEngine/MCJIT/MCJIT.cpp from: assert("error"); to: assert(0 && "error"); llvm-svn: 139456
-
Richard Trieu authored
assert("not implemented for target shuffle node"); to: assert(0 && "not implemented for target shuffle node"); This causes a test failure in CodeGen/X86/palignr.ll which has been marked as XFAIL for the time being. Test failure filed at PR10901. llvm-svn: 139454
-
Andrew Trick authored
better. Don't immediately give up when an add operation can't be trivially sign/zero-extended within a loop. If it has NSW/NUW flags, generate a new expression with sign extended (non-recurrent) operand. As before, if SCEV says that all sign extends are loop invariant, then we can widen the operation. llvm-svn: 139453
-
Andrew Trick authored
such. I'm doing this now for completeness because I can't think of/remember any reason that it was left out. I'm not sure it will help anything, but if we don't do it we need to explain why in comments. llvm-svn: 139450
-
Richard Trieu authored
assert("error"); to: assert(0 && "error"); llvm-svn: 139449
-
Jim Grosbach authored
Some aliases for MOV(register) also to keep existing T1 tests happy when run in thumbv7 mode. llvm-svn: 139440
-
Akira Hatanaka authored
Generate code for Mips32r1 unless a Mips32r2 feature is tested. llvm-svn: 139433
-
Owen Anderson authored
llvm-svn: 139432
-
Owen Anderson authored
llvm-svn: 139431
-
Owen Anderson authored
llvm-svn: 139429
-
Owen Anderson authored
llvm-svn: 139422
-
Akira Hatanaka authored
llvm-svn: 139421
-
Akira Hatanaka authored
llvm-svn: 139420
-
Chris Lattner authored
llvm-svn: 139419
-
- Sep 09, 2011
-
-
Owen Anderson authored
Thumb unconditional branches are allowed in IT blocks, and therefore should have a predicate operand, unlike conditional branches. llvm-svn: 139415
-
Douglas Gregor authored
llvm-svn: 139414
-
Akira Hatanaka authored
llvm-svn: 139412
-
Eli Friedman authored
Make the SelectionDAG verify that all the operands of BUILD_VECTOR have the same type. Teach DAGCombiner::visitINSERT_VECTOR_ELT not to make invalid BUILD_VECTORs. Fixes PR10897. llvm-svn: 139407
-
Akira Hatanaka authored
llvm-svn: 139405
-
Nadav Rotem authored
Implement vector-select support for avx256. Refactor the vblend implementation to have tablegen match the instruction by the node type llvm-svn: 139400
-
Jim Grosbach authored
llvm-svn: 139399
-
Duncan Sands authored
the instruction. llvm-svn: 139398
-
Jim Grosbach authored
llvm-svn: 139397
-
Jim Grosbach authored
llvm-svn: 139396
-
Jim Grosbach authored
llvm-svn: 139395
-
Jim Grosbach authored
llvm-svn: 139393
-