| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | INC64_32r -> LEA64_32r is better than INC64_32r -> LEA32r, but it still can | Evan Cheng | 2007-10-05 | 1 | -8/+4 |
| | | | | | | | cause performance degradation. llvm-svn: 42653 | ||||
| * | In 64-bit mode, avoid using leal with 32-bit 32-bit address size, e.g. | Evan Cheng | 2007-10-05 | 1 | -89/+98 |
| | | | | | | | leal 1(%ecx), %edi, which requires 67H prefix. llvm-svn: 42647 | ||||
| * | First round of ppc long double. call/return and | Dale Johannesen | 2007-10-05 | 2 | -2/+15 |
| | | | | | | | | | | basic arithmetic works. Rename RTLIB long double functions to distinguish different flavors of long double; the lib functions have different names, alas. llvm-svn: 42644 | ||||
| * | Add support to convert more 64-bit instructions to 3-address instructions. | Evan Cheng | 2007-10-05 | 2 | -8/+26 |
| | | | | | llvm-svn: 42642 | ||||
| * | ADC and SBB uses EFLAGS. | Evan Cheng | 2007-10-05 | 2 | -0/+8 |
| | | | | | llvm-svn: 42640 | ||||
| * | Change a few more spaces to tabs in assembly output. | Dan Gohman | 2007-10-05 | 1 | -3/+3 |
| | | | | | llvm-svn: 42638 | ||||
| * | Change a space to a tab in the assembly output of a .globl directive | Dan Gohman | 2007-10-05 | 1 | -1/+1 |
| | | | | | | | for consistency. llvm-svn: 42637 | ||||
| * | Testing convertToThreeeAddress as X86 llcbeta. | Evan Cheng | 2007-10-05 | 1 | -5/+24 |
| | | | | | llvm-svn: 42630 | ||||
| * | Added storeRegToAddr, loadRegFromAddr, and unfoldMemoryOperand's. | Evan Cheng | 2007-10-05 | 2 | -114/+331 |
| | | | | | llvm-svn: 42624 | ||||
| * | Not needed any more. | Evan Cheng | 2007-10-05 | 1 | -1/+0 |
| | | | | | llvm-svn: 42623 | ||||
| * | Forgot these. | Evan Cheng | 2007-10-05 | 2 | -0/+72 |
| | | | | | llvm-svn: 42622 | ||||
| * | - Added a few target hooks to generate load / store instructions from / to any | Evan Cheng | 2007-10-05 | 10 | -68/+460 |
| | | | | | | | | | address (not just from / to frameindexes). - Added target hooks to unfold load / store instructions / SDNodes into separate load, data processing, store instructions / SDNodes. llvm-svn: 42621 | ||||
| * | add a note. | Chris Lattner | 2007-10-04 | 1 | -0/+40 |
| | | | | | llvm-svn: 42607 | ||||
| * | Use empty() member functions when that's what's being tested for instead | Dan Gohman | 2007-10-03 | 6 | -12/+12 |
| | | | | | | | of comparing begin() and end(). llvm-svn: 42585 | ||||
| * | add a note | Chris Lattner | 2007-10-03 | 1 | -0/+32 |
| | | | | | llvm-svn: 42579 | ||||
| * | add a note | Chris Lattner | 2007-10-03 | 1 | -0/+16 |
| | | | | | llvm-svn: 42573 | ||||
| * | Bill's example is still not enough to repro this, but it has other issues that | Chris Lattner | 2007-10-03 | 1 | -0/+8 |
| | | | | | | | seem significant as well. llvm-svn: 42564 | ||||
| * | Another micro-opt. | Bill Wendling | 2007-10-02 | 1 | -0/+16 |
| | | | | | llvm-svn: 42554 | ||||
| * | Another missed optimization with LICM. | Bill Wendling | 2007-10-02 | 1 | -0/+23 |
| | | | | | llvm-svn: 42552 | ||||
| * | Small label changes. | Bill Wendling | 2007-10-02 | 1 | -5/+2 |
| | | | | | llvm-svn: 42549 | ||||
| * | Now with source code. | Bill Wendling | 2007-10-02 | 1 | -0/+16 |
| | | | | | llvm-svn: 42548 | ||||
| * | Now with LL code! | Bill Wendling | 2007-10-02 | 1 | -1/+17 |
| | | | | | llvm-svn: 42547 | ||||
| * | Another missed optimization. | Bill Wendling | 2007-10-02 | 1 | -0/+28 |
| | | | | | llvm-svn: 42546 | ||||
| * | Micro-optimization -- missed LICM opportunity. | Bill Wendling | 2007-10-02 | 1 | -0/+24 |
| | | | | | llvm-svn: 42542 | ||||
| * | Rewrite sqrt and powi to use anyfloat. By popular demand. | Dale Johannesen | 2007-10-02 | 1 | -4/+2 |
| | | | | | llvm-svn: 42537 | ||||
| * | Refactor code to add load / store folded instructions -> register only | Evan Cheng | 2007-10-01 | 2 | -607/+599 |
| | | | | | | | instructions reverse map. llvm-svn: 42509 | ||||
| * | Typo. X86comi doesn't read / write chain's. | Evan Cheng | 2007-10-01 | 1 | -2/+1 |
| | | | | | llvm-svn: 42492 | ||||
| * | Add getABITypeSize, getABITypeSizeInBits | Dale Johannesen | 2007-10-01 | 1 | -1/+6 |
| | | | | | llvm-svn: 42488 | ||||
| * | AsmPrinters overriding getAnalysisUsage should call super. | Gordon Henriksen | 2007-09-30 | 2 | -1/+2 |
| | | | | | | | And not super's super, either. llvm-svn: 42482 | ||||
| * | Enabling new condition code modeling scheme. | Evan Cheng | 2007-09-29 | 10 | -1649/+308 |
| | | | | | llvm-svn: 42459 | ||||
| * | Refactor the memcpy lowering for the x86 target. | Rafael Espindola | 2007-09-28 | 2 | -56/+62 |
| | | | | | | | | | The only generated code difference is that now we call memcpy when the size of the array is unknown. This matches GCC behavior and is better since the run time value can be arbitrarily large. llvm-svn: 42433 | ||||
| * | Stop inventing new words. :-) | Evan Cheng | 2007-09-28 | 1 | -1/+1 |
| | | | | | llvm-svn: 42429 | ||||
| * | Pessimisively assume ADJCALLSTACKDOWN / ADJCALLSTACKUP (which becomes sub / ↵ | Evan Cheng | 2007-09-28 | 1 | -1/+3 |
| | | | | | | | add) clobbers EFLAGS. llvm-svn: 42426 | ||||
| * | TargetAsmInfo::getAddressSize() was incorrect for x86-64 and 64-bit targets | Dan Gohman | 2007-09-27 | 3 | -4/+2 |
| | | | | | | | | | other than PPC64. Instead of fixing it, just remove it and fix all the places that use it to use TargetData::getPointerSize() instead, as there aren't very many. Most of the references were in DwarfWriter.cpp. llvm-svn: 42419 | ||||
| * | Use GR64 in 64-bit mode. | Evan Cheng | 2007-09-27 | 1 | -1/+4 |
| | | | | | llvm-svn: 42417 | ||||
| * | Doh. Calls clobber EFLAGS. | Evan Cheng | 2007-09-27 | 1 | -1/+1 |
| | | | | | llvm-svn: 42413 | ||||
| * | Make temporaries explicit to avoid premature | Dale Johannesen | 2007-09-26 | 1 | -1/+3 |
| | | | | | | | destruction of compiler-created ones. llvm-svn: 42383 | ||||
| * | - Move getPhysicalRegisterRegClass() from ScheduleDAG to MRegisterInfo. | Evan Cheng | 2007-09-26 | 1 | -0/+15 |
| | | | | | | | | - Added ability to emit cross class register copies to the BBRU scheduler. - More aggressive backtracking. llvm-svn: 42375 | ||||
| * | - Added MRegisterInfo::getCrossCopyRegClass() hook. For register classes ↵ | Evan Cheng | 2007-09-26 | 2 | -0/+33 |
| | | | | | | | | | where reg to reg copies are not possible, this returns another register class which registers in the specified register class can be copied to (and copy back from). - X86 copyRegToReg() now supports copying between EFLAGS and GR32 / GR64 registers. llvm-svn: 42372 | ||||
| * | Some assemblers do not recognize aliases pushfd, pushfq, popfd, and popfq. ↵ | Evan Cheng | 2007-09-26 | 2 | -4/+4 |
| | | | | | | | Just emit them as pushf and popf. llvm-svn: 42371 | ||||
| * | Enable codegen for long double abs, sin, cos | Dale Johannesen | 2007-09-26 | 1 | -0/+4 |
| | | | | | llvm-svn: 42368 | ||||
| * | Typos: POPQ -> POPFQ, POPD -> POPFD. | Evan Cheng | 2007-09-26 | 2 | -2/+2 |
| | | | | | llvm-svn: 42348 | ||||
| * | move PR1160 here. | Chris Lattner | 2007-09-26 | 1 | -0/+31 |
| | | | | | llvm-svn: 42347 | ||||
| * | Allow copyRegToReg to emit cross register classes copies. | Evan Cheng | 2007-09-26 | 14 | -44/+92 |
| | | | | | | | Tested with "make check"! llvm-svn: 42346 | ||||
| * | move PR1264 here. | Chris Lattner | 2007-09-26 | 1 | -1/+28 |
| | | | | | llvm-svn: 42345 | ||||
| * | Add pushf{d|q}, popf{d|q} to push and pop EFLAGS register. | Evan Cheng | 2007-09-26 | 2 | -4/+12 |
| | | | | | llvm-svn: 42335 | ||||
| * | translateX86CC updates the last two operands. | Evan Cheng | 2007-09-26 | 1 | -2/+5 |
| | | | | | llvm-svn: 42333 | ||||
| * | Correctly restore stack pointer after realignment in main() on Cygwin/Mingw32 | Anton Korobeynikov | 2007-09-26 | 1 | -1/+8 |
| | | | | | llvm-svn: 42332 | ||||
| * | Missing load / store folding entries. | Evan Cheng | 2007-09-25 | 1 | -0/+8 |
| | | | | | llvm-svn: 42323 | ||||
| * | Partly revert invalid r41774 | Anton Korobeynikov | 2007-09-25 | 1 | -0/+20 |
| | | | | | llvm-svn: 42322 | ||||

