- Mar 12, 2008
-
-
Dan Gohman authored
llvm-svn: 48297
-
Duncan Sands authored
llvm-svn: 48295
-
Duncan Sands authored
getCopyToParts problem was noticed by the new LegalizeTypes infrastructure. In order to avoid this kind of thing in the future I've added a check that EXTRACT_ELEMENT is only used with integers. Once LegalizeTypes is up and running most likely BUILD_PAIR and EXTRACT_ELEMENT can be removed, in favour of using apints instead. llvm-svn: 48294
-
Evan Cheng authored
X86 lowering normalize vector 0 to v4i32. However DAGCombine can fold (sub x, x) -> 0 after legalization. It can create a zero vector of a type that's not expected (e.g. v8i16). We don't want to disable the optimization since leaving a (sub x, x) is really bad. Add isel patterns for other types of vector 0 to ensure correctness. It's highly unlikely to happen other than in bugpoint reduced test cases. llvm-svn: 48279
-
Owen Anderson authored
llvm-svn: 48278
-
Owen Anderson authored
feed the PHI instructions. We'll need these IDs in order to update LiveIntervals properly. llvm-svn: 48277
-
Evan Cheng authored
llvm-svn: 48274
-
Evan Cheng authored
llvm-svn: 48263
-
Evan Cheng authored
llvm-svn: 48261
-
- Mar 11, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 48257
-
Dan Gohman authored
that merely add passes. This allows them to be used with either FunctionPassManager or PassManager, or even with a custom new kind of pass manager. llvm-svn: 48256
-
Anton Korobeynikov authored
llvm-svn: 48249
-
Evan Cheng authored
llvm-svn: 48246
-
Dan Gohman authored
llvm-svn: 48245
-
Dan Gohman authored
llvm-svn: 48244
-
Christopher Lamb authored
llvm-svn: 48223
-
Evan Cheng authored
llvm-svn: 48221
-
Evan Cheng authored
When the register allocator runs out of registers, spill a physical register around the def's and use's of the interval being allocated to make it possible for the interval to target a register and spill it right away and restore a register for uses. This likely generates terrible code but is before than aborting. llvm-svn: 48218
-
Duncan Sands authored
enhancements. llvm-svn: 48215
-
Chris Lattner authored
into: _test: fldz ret instead of: _test: subl $12, %esp #IMPLICIT_DEF %xmm0 movsd %xmm0, (%esp) fldl (%esp) addl $12, %esp ret llvm-svn: 48213
-
Chris Lattner authored
llvm-svn: 48208
-
Dan Gohman authored
and it's the result that requires expansion. This code is a little confusing because the TargetLoweringInfo tables for [US]INT_TO_FP use the operand type (the integer type) rather than the result type. llvm-svn: 48206
-
Chris Lattner authored
verify the register constraint matches what the instruction expects. llvm-svn: 48205
-
Evan Cheng authored
llvm-svn: 48204
-
Dan Gohman authored
llvm-svn: 48201
-
Dan Gohman authored
llvm-svn: 48196
-
Dan Gohman authored
llvm-svn: 48194
-
Dan Gohman authored
llvm-svn: 48189
-
- Mar 10, 2008
-
-
Evan Cheng authored
llvm-svn: 48175
-
Dan Gohman authored
zero extension when checking if an unsigned multiply is safe. llvm-svn: 48171
-
Evan Cheng authored
llvm-svn: 48170
-
Evan Cheng authored
llvm-svn: 48169
-
Evan Cheng authored
llvm-svn: 48167
-
Scott Michel authored
return ValueType can depend its operands' ValueType. This is a cosmetic change, no functionality impacted. llvm-svn: 48145
-
Bill Wendling authored
llvm-svn: 48142
-
Evan Cheng authored
- Fix a subtle bug in RemoveCopyByCommutingDef. ALR is the live range where the source is defined; BLR is the live range which is defined by the copy. If ALR and BLR overlaps and end of BLR extends beyond end of ALR, e.g. A = or A, B ... B = A ... C = A<kill> ... = B then do not add kills of A to the newly created B interval. - Also fix some kill info update bug. llvm-svn: 48141
-
Evan Cheng authored
llvm-svn: 48140
-
Owen Anderson authored
Move StrongPHIElimination after live interval analysis. This will make things happier down the road. llvm-svn: 48138
-
Evan Cheng authored
Avoid creating BUILD_VECTOR of all zero elements of "non-normalized" type (e.g. v8i16 on x86) after legalizer. Instruction selection does not expect to see them. In all likelihood this can only be an issue in a bugpoint reduced test case. llvm-svn: 48136
-
Christopher Lamb authored
Change insert/extract subreg instructions to be able to be used in TableGen patterns. Use the above features to reimplement an x86-64 pseudo instruction as a pattern. llvm-svn: 48130
-