| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Implement review feedback | Anton Korobeynikov | 2007-04-29 | 1 | -12/+3 | |
| | | | | | llvm-svn: 36564 | |||||
| * | memory operands that have a direct operand should have their stores created | Chris Lattner | 2007-04-28 | 1 | -35/+42 | |
| | | | | | | | | | | | | | | before the copies into physregs are done. This avoids having flag operands skip the store, causing cycles in the dag at sched time. This fixes infinite loops on these tests: test/CodeGen/Generic/2007-04-08-MultipleFrameIndices.ll for PR1308 test/CodeGen/PowerPC/2007-01-29-lbrx-asm.ll test/CodeGen/PowerPC/2007-01-31-InlineAsmAddrMode.ll test/CodeGen/X86/2006-07-12-InlineAsmQConstraint.ll for PR828 llvm-svn: 36547 | |||||
| * | eliminate more redundant constraint type analysis | Chris Lattner | 2007-04-28 | 1 | -6/+2 | |
| | | | | | llvm-svn: 36546 | |||||
| * | merge constraint type analysis stuff together. | Chris Lattner | 2007-04-28 | 1 | -14/+21 | |
| | | | | | llvm-svn: 36545 | |||||
| * | Significant refactoring of the inline asm stuff, to support future changes. | Chris Lattner | 2007-04-28 | 1 | -82/+107 | |
| | | | | | | | No functionality change. llvm-svn: 36544 | |||||
| * | Implement review feedback. Aliasees can be either GlobalValue's or | Anton Korobeynikov | 2007-04-28 | 1 | -6/+17 | |
| | | | | | | | bitcasts of them. llvm-svn: 36537 | |||||
| * | memory inputs to an inline asm are required to have an address available. | Chris Lattner | 2007-04-28 | 2 | -20/+34 | |
| | | | | | | | | | | If the operand is not already an indirect operand, spill it to a constant pool entry or a stack slot. This fixes PR1356 and CodeGen/X86/2007-04-27-InlineAsm-IntMemInput.ll llvm-svn: 36536 | |||||
| * | Fix CodeGen/Generic/2007-04-27-LargeMemObject.ll and | Chris Lattner | 2007-04-28 | 1 | -4/+10 | |
| | | | | | | | CodeGen/Generic/2007-04-27-InlineAsm-X-Dest.ll llvm-svn: 36534 | |||||
| * | Fix this to match change to InlineAsm class. | Chris Lattner | 2007-04-28 | 1 | -3/+3 | |
| | | | | | llvm-svn: 36524 | |||||
| * | Fix incorrect legalization of EHSELECTOR. This fixes | Chris Lattner | 2007-04-27 | 1 | -6/+10 | |
| | | | | | | | CodeGen/Generic/2007-04-14-EHSelectorCrash.ll and PR1326 llvm-svn: 36510 | |||||
| * | Expand UINT_TO_FP in turns of SINT_TO_FP when UINTTOFP_* libcalls are not ↵ | Evan Cheng | 2007-04-27 | 1 | -4/+25 | |
| | | | | | | | available. llvm-svn: 36501 | |||||
| * | improve EH global handling, patch by Duncan Sands. | Chris Lattner | 2007-04-27 | 1 | -6/+10 | |
| | | | | | llvm-svn: 36499 | |||||
| * | enable Anton's shift/and switch lowering stuff! It now passes ppc bootstrap | Chris Lattner | 2007-04-26 | 1 | -1/+0 | |
| | | | | | | | successfully! woohoo... llvm-svn: 36496 | |||||
| * | Fixx off-by-one bug, which prevents llvm-gcc bootstrap on ppc32 | Anton Korobeynikov | 2007-04-26 | 1 | -1/+1 | |
| | | | | | llvm-svn: 36490 | |||||
| * | Fix a typo in a comment. | Dan Gohman | 2007-04-26 | 1 | -1/+1 | |
| | | | | | llvm-svn: 36485 | |||||
| * | Rename findRegisterUseOperand to findRegisterUseOperandIdx to avoid confusion. | Evan Cheng | 2007-04-26 | 5 | -10/+11 | |
| | | | | | llvm-svn: 36483 | |||||
| * | Minor bug. | Evan Cheng | 2007-04-26 | 1 | -2/+2 | |
| | | | | | llvm-svn: 36473 | |||||
| * | Be careful when to add implicit kill / dead operands. Don't add them during ↵ | Evan Cheng | 2007-04-26 | 1 | -9/+17 | |
| | | | | | | | / post reg-allocation. llvm-svn: 36458 | |||||
| * | Match MachineFunction::UsedPhysRegs changes. | Evan Cheng | 2007-04-25 | 5 | -48/+25 | |
| | | | | | llvm-svn: 36452 | |||||
| * | Change UsedPhysRegs from array bool to BitVector to save some space. Setting ↵ | Evan Cheng | 2007-04-25 | 1 | -2/+2 | |
| | | | | | | | / getting its states now go through MachineFunction. llvm-svn: 36451 | |||||
| * | Clean up. | Evan Cheng | 2007-04-25 | 1 | -3/+1 | |
| | | | | | llvm-svn: 36449 | |||||
| * | Data structure change to improve compile time (especially in debug mode). | Evan Cheng | 2007-04-25 | 1 | -12/+23 | |
| | | | | | llvm-svn: 36447 | |||||
| * | This was lefted out. Fixed sumarray-dbl. | Evan Cheng | 2007-04-25 | 1 | -0/+1 | |
| | | | | | llvm-svn: 36445 | |||||
| * | Implement aliases. This fixes PR1017 and it's dependent bugs. CFE part | Anton Korobeynikov | 2007-04-25 | 1 | -1/+25 | |
| | | | | | | | will follow. llvm-svn: 36435 | |||||
| * | Fix for PR1306. | Evan Cheng | 2007-04-25 | 2 | -47/+180 | |
| | | | | | | | | | | - A register def / use now implicitly affects sub-register liveness but does not affect liveness information of super-registers. - Def of a larger register (if followed by a use later) is treated as read/mod/write of a smaller register. llvm-svn: 36434 | |||||
| * | Clean up. | Evan Cheng | 2007-04-25 | 1 | -4/+2 | |
| | | | | | llvm-svn: 36431 | |||||
| * | support for >4G stack frames | Chris Lattner | 2007-04-25 | 1 | -1/+1 | |
| | | | | | llvm-svn: 36425 | |||||
| * | support > 4G stack objects | Chris Lattner | 2007-04-25 | 2 | -3/+3 | |
| | | | | | llvm-svn: 36422 | |||||
| * | allow support for 64-bit stack objects | Chris Lattner | 2007-04-25 | 1 | -1/+1 | |
| | | | | | llvm-svn: 36420 | |||||
| * | Be more careful about folding op(x, undef) when we have vector operands. | Chris Lattner | 2007-04-25 | 1 | -9/+16 | |
| | | | | | | | This fixes CodeGen/X86/2007-04-24-VectorCrash.ll llvm-svn: 36413 | |||||
| * | Assertion when using a 1-element vector for an add operation. Get the | Bill Wendling | 2007-04-24 | 1 | -4/+7 | |
| | | | | | | | real vector type in this case. llvm-svn: 36402 | |||||
| * | Use '-1U' where '-1UL' is obvious overkill, eliminating gcc warnings about | Scott Michel | 2007-04-24 | 1 | -2/+2 | |
| | | | | | | | tests always being true in the process. llvm-svn: 36387 | |||||
| * | modify per review commentary | Dale Johannesen | 2007-04-23 | 1 | -2/+2 | |
| | | | | | llvm-svn: 36383 | |||||
| * | make EmitAlignment work the way Chris says it should | Dale Johannesen | 2007-04-23 | 1 | -1/+3 | |
| | | | | | llvm-svn: 36368 | |||||
| * | PR400 phase 2. Propagate attributed load/store information through DAGs. | Christopher Lamb | 2007-04-22 | 3 | -36/+112 | |
| | | | | | llvm-svn: 36356 | |||||
| * | X86 TLS: Implement review feedback. | Lauro Ramos Venancio | 2007-04-21 | 1 | -1/+11 | |
| | | | | | llvm-svn: 36318 | |||||
| * | Revert Christopher Lamb's load/store alignment changes. | Reid Spencer | 2007-04-21 | 3 | -79/+36 | |
| | | | | | llvm-svn: 36309 | |||||
| * | add support for alignment attributes on load/store instructions | Christopher Lamb | 2007-04-21 | 3 | -36/+79 | |
| | | | | | llvm-svn: 36301 | |||||
| * | Allow the lowering of ISD::GLOBAL_OFFSET_TABLE. | Lauro Ramos Venancio | 2007-04-20 | 1 | -1/+1 | |
| | | | | | llvm-svn: 36290 | |||||
| * | Implement "general dynamic", "initial exec" and "local exec" TLS models for | Lauro Ramos Venancio | 2007-04-20 | 2 | -2/+22 | |
| | | | | | | | X86 32 bits. llvm-svn: 36283 | |||||
| * | VarInfo::UsedBlocks is no longer used. Remove. | Evan Cheng | 2007-04-18 | 4 | -17/+2 | |
| | | | | | llvm-svn: 36250 | |||||
| * | allow SRL to simplify its operands, as it doesn't demand all bits as input. | Chris Lattner | 2007-04-18 | 1 | -1/+7 | |
| | | | | | llvm-svn: 36245 | |||||
| * | When replacing a node in SimplifyDemandedBits, if the old node used any | Chris Lattner | 2007-04-18 | 1 | -1/+8 | |
| | | | | | | | | single-use nodes, they will be dead soon. Make sure to remove them before processing other nodes. This implements CodeGen/X86/shl_elim.ll llvm-svn: 36244 | |||||
| * | fix a pasto | Chris Lattner | 2007-04-18 | 1 | -1/+1 | |
| | | | | | llvm-svn: 36242 | |||||
| * | Don't populate TryAgainList when coalescing only physical registers with ↵ | Evan Cheng | 2007-04-18 | 1 | -6/+6 | |
| | | | | | | | virtual registers. llvm-svn: 36240 | |||||
| * | Increment use count of new virtuals created during PHI elimination. | Evan Cheng | 2007-04-18 | 1 | -0/+3 | |
| | | | | | llvm-svn: 36233 | |||||
| * | Fix a bug in my previous patch, grabbing the shift amount width from the | Chris Lattner | 2007-04-17 | 1 | -2/+2 | |
| | | | | | | | wrong operand. llvm-svn: 36223 | |||||
| * | Fold (x << c1)>> c2 into a single shift if the bits shifted out aren't used. | Chris Lattner | 2007-04-17 | 1 | -5/+52 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This compiles: int baz(long long a) { return (short)(((int)(a >>24)) >> 9); } into: _baz: srwi r2, r3, 1 extsh r3, r2 blr on PPC, instead of: _baz: slwi r2, r3, 8 srwi r2, r2, 9 extsh r3, r2 blr GCC produces: _baz: srwi r10,r4,24 insrwi r10,r3,24,0 srawi r9,r3,24 srawi r3,r10,9 extsh r3,r3 blr This implements CodeGen/PowerPC/shl_elim.ll llvm-svn: 36221 | |||||
| * | Copy coalescing change to prevent a physical register from being pin to a | Evan Cheng | 2007-04-17 | 2 | -86/+98 | |
| | | | | | | | | | | | | | | long live interval that has low usage density. 1. Change order of coalescing to join physical registers with virtual registers first before virtual register intervals become too long. 2. Check size and usage density to determine if it's worthwhile to join. 3. If joining is aborted, assign virtual register live interval allocation preference field to the physical register. 4. Register allocator should try to allocate to the preferred register first (if available) to create identify moves that can be eliminated. llvm-svn: 36218 | |||||
| * | Add a register allocation preference field; add a method to compute size of ↵ | Evan Cheng | 2007-04-17 | 1 | -0/+9 | |
| | | | | | | | a live interval. llvm-svn: 36216 | |||||

