- Sep 08, 2009
-
-
Chris Lattner authored
depth first order, so it wouldn't process unreachable blocks. When compiling at -O0, late dead block elimination isn't done and the bad instructions got to isel. llvm-svn: 81187
-
- Aug 23, 2009
-
-
Chris Lattner authored
llvm-svn: 79834
-
Chris Lattner authored
MachineInstr and MachineOperand. This required eliminating a bunch of stuff that was using DOUT, I hope that bill doesn't mind me stealing his fun. ;-) llvm-svn: 79813
-
- Aug 03, 2009
-
-
Bill Wendling authored
- Tidy up some headers. llvm-svn: 77929
-
- Aug 01, 2009
-
-
Dan Gohman authored
llvm-svn: 77757
-
- Jul 14, 2009
-
-
Torok Edwin authored
This adds location info for all llvm_unreachable calls (which is a macro now) in !NDEBUG builds. In NDEBUG builds location info and the message is off (it only prints "UREACHABLE executed"). llvm-svn: 75640
-
- Jul 11, 2009
-
-
Torok Edwin authored
Make llvm_unreachable take an optional string, thus moving the cerr<< out of line. LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for NDEBUG builds. llvm-svn: 75379
-
- Jun 30, 2009
-
-
Rafael Espindola authored
Avoid unnecessary duplication of operand 0 of X86::FpSET_ST0_80. This duplication would cause one register to remain on the stack at the function return. llvm-svn: 74534
-
Rafael Espindola authored
This was caused by me confounding FP0 and ST(0). llvm-svn: 74523
-
- Jun 29, 2009
-
-
Rafael Espindola authored
Not sure I understand how the temp register gets used, but this fixes a bug and introduces no regressions. llvm-svn: 74446
-
- Jun 21, 2009
-
-
Rafael Espindola authored
Handle FpSET_ST0_80 being used when ST0 is still alive. llvm-svn: 73850
-
- Mar 28, 2009
-
-
Rafael Espindola authored
llvm-svn: 67949
-
Rafael Espindola authored
of operands in an address in so many places. llvm-svn: 67945
-
- Mar 23, 2009
-
-
Evan Cheng authored
Model inline asm constraint which ties an input to an output register as machine operand TIED_TO constraint. This eliminated the need to pre-allocate registers for these. This also allows register allocator can eliminate the unneeded copies. llvm-svn: 67512
-
- Feb 13, 2009
-
-
Dale Johannesen authored
There were some that might even matter in X86FastISel. llvm-svn: 64437
-
- Feb 10, 2009
-
-
Evan Cheng authored
llvm-svn: 64186
-
- Oct 03, 2008
-
-
Dan Gohman authored
isReg, etc., from isRegister, etc. llvm-svn: 57006
-
- Sep 23, 2008
-
-
Evan Cheng authored
llvm-svn: 56475
-
- Sep 22, 2008
-
-
Evan Cheng authored
llvm-svn: 56469
-
- Sep 13, 2008
-
-
Dan Gohman authored
isImmediate(), isRegister(), and friends, to avoid confusion about having two different names with the same meaning. I'm not attached to the longer names, and would be ok with changing to the shorter names if others prefer it. llvm-svn: 56189
-
- Sep 04, 2008
-
-
Dan Gohman authored
llvm-svn: 55779
-
- Aug 14, 2008
-
-
Owen Anderson authored
llvm-svn: 54787
-
- Jul 21, 2008
-
-
Evan Cheng authored
llvm-svn: 53873
-
- Jul 08, 2008
-
-
Dan Gohman authored
MachineMemOperands. The pools are owned by MachineFunctions. This drastically reduces the number of calls to malloc/free made during the "Emit" phase of scheduling, as well as later phases in CodeGen. Combined with other changes, this speeds up the "instruction selection" phase of CodeGen by 10% in some cases. llvm-svn: 53212
-
- Mar 21, 2008
-
-
Chris Lattner authored
This verifies kill info for "ret" fp operands is right. llvm-svn: 48656
-
Chris Lattner authored
x86-64 return conventions correct, but was never enabled. We can now do the "right thing" with multiple return values. llvm-svn: 48635
-
Chris Lattner authored
ST(0)/ST(1). llvm-svn: 48634
-
Chris Lattner authored
llvm-svn: 48633
-
Chris Lattner authored
This allows us to compile fp-stack-2results.ll into: _test: fldz fld1 ret which returns 1 in ST(0) and 0 in ST(1). This is needed for x86-64 _Complex long double. llvm-svn: 48632
-
- Mar 11, 2008
-
-
Chris Lattner authored
works, but probably won't if you mix it with 't' or 'u' yet. llvm-svn: 48243
-
Nick Lewycky authored
llvm-svn: 48212
-
Chris Lattner authored
RET instruction instead of using FpSET_ST0_32. This also generalizes the code to handling returning of multiple FP results. llvm-svn: 48209
-
- Mar 09, 2008
-
-
Chris Lattner authored
llvm-svn: 48094
-
Chris Lattner authored
isel'ing value preserving FP roundings from one fp stack reg to another into a noop, instead of stack traffic. llvm-svn: 48093
-
- Mar 05, 2008
-
-
Evan Cheng authored
findRegisterUseOperandIdx, findRegisterDefOperandIndx. Fix some naming inconsistencies. llvm-svn: 47927
-
- Jan 29, 2008
-
-
Evan Cheng authored
Work in progress. This patch *fixes* x86-64 calls which are modelled as StructRet but really should be return in registers, e.g. _Complex long double, some 128-bit aggregates. This is a short term solution that is necessary only because llvm, for now, cannot model i128 nor call's with multiple results. Status: This only works for direct calls, and only the caller side is done. Disabled for now. llvm-svn: 46527
-
- Jan 14, 2008
-
-
Chris Lattner authored
an instruction kills a register or not. This is cheap and easy to do now that instructions record this on their flags, and this eliminates the second pass of LiveVariables from the x86 backend. This speeds up a release llc by ~2.5%. llvm-svn: 45955
-
- Jan 11, 2008
-
-
Chris Lattner authored
llvm-svn: 45871
-
- Jan 07, 2008
-
-
Chris Lattner authored
Make MachineInstr::getDesc return a reference instead of a pointer, since it can never be null. llvm-svn: 45695
-
Chris Lattner authored
llvm-svn: 45680
-