- Jun 22, 2011
-
-
Nick Lewycky authored
is larger than the sum of the elements (including per-element padding). llvm-svn: 133631
-
Jay Foad authored
that takes an ArrayRef. llvm-svn: 133615
-
Rafael Espindola authored
be one with only one unconditional branch and no phis. Duplicating the phis in this case is possible, but requeres liveness analysis or breaking edges. llvm-svn: 133607
-
Devang Patel authored
llvm-svn: 133569
-
Owen Anderson authored
llvm-svn: 133567
-
Bill Wendling authored
llvm-svn: 133561
-
Devang Patel authored
There could be more than one DBG_VALUE instructions for variables where all of them have offset based on one register. llvm-svn: 133560
-
Bill Wendling authored
explanation of what the EH table describes. llvm-svn: 133559
-
- Jun 21, 2011
-
-
Evan Cheng authored
1. (((x) & 0xFF00) >> 8) | (((x) & 0x00FF) << 8) => (bswap x) >> 16 2. ((x&0xff)<<8)|((x&0xff00)>>8)|((x&0xff000000)>>8)|((x&0x00ff0000)<<8)) => (rotl (bswap x) 16) This allows us to eliminate most of the def : Pat patterns for ARM rev16 revsh instructions. It catches many more cases for ARM and x86. rdar://9609108 llvm-svn: 133503
-
- Jun 20, 2011
-
-
Rafael Espindola authored
llvm-svn: 133446
-
Rafael Espindola authored
* Don't introduce a duplicated bb in the CFG * When making a branch unconditional, clear the PredCond array so that it is really unconditional. llvm-svn: 133432
-
Duncan Sands authored
dragonegg buildbots back to life. Original commit message: Teach early dup how to duplicate basic blocks with one successor and only phi instructions into more complex blocks. llvm-svn: 133430
-
Nadav Rotem authored
source vector type is to be split while the target vector is to be promoted. (eg: <4 x i64> -> <4 x i8> ) llvm-svn: 133424
-
Francois Pichet authored
Fix MSVC build. next() function already exists in the MSVC headers. This create a overload conflict. Make sure we pick up the llvm one. llvm-svn: 133416
-
Rafael Espindola authored
into more complex blocks. llvm-svn: 133415
-
Chris Lattner authored
all over the place in different styles and variants. Standardize on two preferred entrypoints: one that takes a StructType and ArrayRef, and one that takes StructType and varargs. In cases where there isn't a struct type convenient, we now add a ConstantStruct::getAnon method (whose name will make more sense after a few more patches land). It would be "really really nice" if the ConstantStruct::get and ConstantVector::get methods didn't make temporary std::vectors. llvm-svn: 133412
-
- Jun 19, 2011
-
-
Jay Foad authored
const Constant *. llvm-svn: 133400
-
Nadav Rotem authored
llvm-svn: 133389
-
Nadav Rotem authored
llvm-svn: 133388
-
Nadav Rotem authored
instead of scalarizing, and doing an element-by-element truncat. llvm-svn: 133382
-
Chris Lattner authored
much cleaner. llvm-svn: 133364
-
- Jun 18, 2011
-
-
Benjamin Kramer authored
llvm-svn: 133350
-
Benjamin Kramer authored
llvm-svn: 133348
-
Benjamin Kramer authored
llvm-svn: 133347
-
Eric Christopher authored
range without a libcall to a new mulo<mode> libcall that we'd have to create. Finishes the rest of rdar://9090077 and rdar://9210061 llvm-svn: 133318
-
Jakob Stoklund Olesen authored
llvm-svn: 133313
-
Eric Christopher authored
llvm-svn: 133307
-
- Jun 17, 2011
-
-
Bill Wendling authored
llvm-svn: 133292
-
Eric Christopher authored
calls if we haven't been able to lower them any other way. Fixes rdar://9090077 and rdar://9210061 llvm-svn: 133288
-
Bill Wendling authored
The LSDA is a bit difficult for the non-initiated to read. Even with comments, it's not always clear what's going on. This wraps the ASM streamer in a class that retains the LSDA and then emits a human-readable description of what's going on in it. So instead of having to make sense of: Lexception1: .byte 255 .byte 155 .byte 168 .space 1 .byte 3 .byte 26 Lset0 = Ltmp7-Leh_func_begin1 .long Lset0 Lset1 = Ltmp812-Ltmp7 .long Lset1 Lset2 = Ltmp913-Leh_func_begin1 .long Lset2 .byte 3 Lset3 = Ltmp812-Leh_func_begin1 .long Lset3 Lset4 = Leh_func_end1-Ltmp812 .long Lset4 .long 0 .byte 0 .byte 1 .byte 0 .byte 2 .byte 125 .long __ZTIi@GOTPCREL+4 .long __ZTIPKc@GOTPCREL+4 you can read this instead: ## Exception Handling Table: Lexception1 ## @LPStart Encoding: omit ## @TType Encoding: indirect pcrel sdata4 ## @TType Base: 40 bytes ## @CallSite Encoding: udata4 ## @Action Table Size: 26 bytes ## Action 1: ## A throw between Ltmp7 and Ltmp812 jumps to Ltmp913 on an exception. ## For type(s): __ZTIi@GOTPCREL+4 __ZTIPKc@GOTPCREL+4 ## Action 2: ## A throw between Ltmp812 and Leh_func_end1 does not have a landing pad. llvm-svn: 133286
-
Jakub Staszak authored
llvm-svn: 133271
-
Jakub Staszak authored
llvm-svn: 133265
-
Rafael Espindola authored
* We should change the generated code because of a debug use. * Avoid creating debug uses of undef, as they become a kill. Test to follow. llvm-svn: 133255
-
Lang Hames authored
Add a hook for PBQP clients to run a custom pre-alloc pass to run prior to PBQP allocation. Patch by Arnaud Allard de Grandmaison. llvm-svn: 133249
-
Rafael Espindola authored
be made, but this is already a win. llvm-svn: 133240
-
Jakob Stoklund Olesen authored
Also switch the return type to ArrayRef<unsigned> which works out nicely for ARM's implementation of this function because of the clever ArrayRef constructors. The name change indicates that the returned allocation order may contain reserved registers as has been the case for a while. llvm-svn: 133216
-
Jakob Stoklund Olesen authored
In Thumb mode we cannot handle GPR virtual registers, even though some instructions can. When isel is lowering a CopyFromReg, it should limit itself to subclasses of getRegClassFor(VT). <rdar://problem/9624323> llvm-svn: 133210
-
- Jun 16, 2011
-
-
Jakob Stoklund Olesen authored
No functional change was intended. llvm-svn: 133202
-
Jakob Stoklund Olesen authored
I think PBQP could use RegisterClassInfo, but it didn't fit neatly with the external interfaces that PBQP uses, so I'll leave that to Lang. llvm-svn: 133186
-
Jakub Staszak authored
BranchProbabilityInfo (expect setEdgeWeight which is not available here). Branch Weights are kept in MachineBasicBlocks. To turn off this analysis set -use-mbpi=false. llvm-svn: 133184
-