- Jun 14, 2011
-
-
Rafael Espindola authored
sharp all or nothing transition when one extra predecessor was added. Now we still test first ones for merging. llvm-svn: 132974
-
- Jun 13, 2011
-
-
Nadav Rotem authored
only if the number of packed elements is a power of two. Bug found in Duncan's testcase. llvm-svn: 132923
-
Jakob Stoklund Olesen authored
In particular, don't spill dirty registers only to satisfy a hint. It is not worth it. The attached test case provides an example where the fast allocator would spill a register when other registers are available. llvm-svn: 132900
-
Jakob Stoklund Olesen authored
llvm-svn: 132899
-
Rafael Espindola authored
having. llvm-svn: 132898
-
- Jun 12, 2011
-
-
Nadav Rotem authored
types such as i33 were rounded to i32. Originated from Duncan's testcase. llvm-svn: 132893
-
Nadav Rotem authored
Instead of scalarizing, and doing an element-by-element truncat, use vector truncate. Add support for scalarization of vectors: i8 -> <1 x i1> (from Duncan's testcase). llvm-svn: 132892
-
Rafael Espindola authored
Add a triple to the tests. llvm-svn: 132885
-
Rafael Espindola authored
llvm-svn: 132883
-
Rafael Espindola authored
we try to branch to them. Before we were creating successor lists with duplicated entries. Fixing that found a bug in isBlockOnlyReachableByFallthrough that would causes it to return the wrong answer for ----------- ... jne foo jmp bar foo: ---------- llvm-svn: 132882
-
- Jun 11, 2011
-
-
Chad Rosier authored
llvm-svn: 132872
-
Chad Rosier authored
llvm-svn: 132871
-
Eric Christopher authored
llvm-svn: 132863
-
- Jun 10, 2011
-
-
Rafael Espindola authored
llvm-svn: 132857
-
Cameron Zwarich authored
comment on their meaning. llvm-svn: 132854
-
Cameron Zwarich authored
llvm-svn: 132853
-
Cameron Zwarich authored
llvm-svn: 132852
-
Rafael Espindola authored
Thanks Bob Wilson for noticing it! llvm-svn: 132851
-
Chad Rosier authored
and definitions when emitting global variables. This was causing global declarations to be emitted as if they were definitions. Fixes <rdar://problem/9429892>. llvm-svn: 132825
-
Rafael Espindola authored
llvm-svn: 132822
-
Rafael Espindola authored
llvm-svn: 132821
-
Rafael Espindola authored
With this I am able to bootstrap clang with early tail duplication enabled for any small bb and setting tail-dup-size to a relatively large value(8) to stress this code. llvm-svn: 132816
-
Rafael Espindola authored
llvm-svn: 132814
-
Eli Friedman authored
Change this DAGCombine to build AND of SHR instead of SHR of AND; this matches the ordering we prefer in instcombine. Part of rdar://9562809. The potential DAGCombine which enforces this more generally messes up some other very fragile patterns, so I'm leaving that alone, at least for now. llvm-svn: 132809
-
- Jun 09, 2011
-
-
Rafael Espindola authored
eh edges. Swap the order of the checks to avoid it. llvm-svn: 132806
-
Rafael Espindola authored
llvm-svn: 132805
-
Rafael Espindola authored
No functionality change. llvm-svn: 132798
-
Eric Christopher authored
llvm-svn: 132776
-
Eric Christopher authored
llvm-svn: 132771
-
Eric Christopher authored
of the frame then increase the maximum alignment of the frame to match. Fixes PR6965 llvm-svn: 132764
-
Eric Christopher authored
No functional change. Part of PR6965 llvm-svn: 132763
-
- Jun 08, 2011
-
-
Andrew Trick authored
llvm-svn: 132751
-
Rafael Espindola authored
llvm-svn: 132749
-
Rafael Espindola authored
llvm-svn: 132748
-
Cameron Zwarich authored
operands to an early clobber register. This fixes <rdar://problem/9566076>. llvm-svn: 132738
-
Rafael Espindola authored
Fixes PR10095. llvm-svn: 132735
-
- Jun 07, 2011
-
-
Andrew Trick authored
I've been sitting on this long enough trying to find a test case. I think the fix should go in now, but I'll keep working on the test case. llvm-svn: 132701
-
Jakob Stoklund Olesen authored
When local live range splitting creates a live range with the same number of instructions as the old range, mark it as RS_Local. When such a range is seen again, require that it be split in a way that reduces the number of instructions. That guarantees we are making progress while still being able to perform 3 -> 2+3 splits as required by PR10070. This also means that the PrevSlot map is no longer needed. This was also used to estimate new spill weights, but that is no longer necessary after slotIndexes::insertMachineInstrInMaps() got the extra Late insertion argument. llvm-svn: 132697
-
- Jun 06, 2011
-
-
Jakob Stoklund Olesen authored
Only target-dependent hints require callbacks. The RCI allocation order has CSR aliases last according to their order of appearance in the getCalleeSavedRegs list. This can depend on the calling convention. This way, AllocationOrder::next doesn't have to check for reserved registers, and CSRs are always allocated last, even with weird calling conventions. llvm-svn: 132690
-
Nadav Rotem authored
legalize SDNodes such as BUILD_VECTOR, EXTRACT_VECTOR_ELT, etc. llvm-svn: 132689
-