- Jul 07, 2010
-
-
Jakob Stoklund Olesen authored
INSERT_SUBREG will now only appear in SSA machine instructions. Fix the handling of partial redefs in ProcessImplicitDefs. This is now relevant since partial redef COPY instructions appear. llvm-svn: 107726
-
Dan Gohman authored
SelectBasicBlock doesn't needs its BasicBlock argument. llvm-svn: 107712
-
Devang Patel authored
llvm-svn: 107710
-
- Jul 06, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 107700
-
Jakob Stoklund Olesen authored
llvm-svn: 107698
-
Jakob Stoklund Olesen authored
It is OK for an alias live range to overlap if there is a copy to or from the physical register. CoalescerPair can work out if the copy is coalescable independently of the alias. This means that we can join with the actual destination interval instead of using the getOrigDstReg() hack. It is no longer necessary to merge clobber ranges into subregisters. llvm-svn: 107695
-
Dan Gohman authored
the block before calling the expansion hook. And don't put EFLAGS in a mbb's live-in list twice. llvm-svn: 107691
-
Eric Christopher authored
llvm-svn: 107684
-
Chris Lattner authored
llvm-svn: 107670
-
Dan Gohman authored
llvm-svn: 107668
-
Dan Gohman authored
which do not depend on SelectionDAG. llvm-svn: 107666
-
Anton Korobeynikov authored
Fix a major regression on COFF targets introduced by r103267: 'discardable' section means that it is used only during the program load and can be discarded afterwards. This way *only* debug sections can be discarded, but not the opposite. Seems like the copy-and-pasto from ELF code, since there it contains the reverse flag ('alloc'). llvm-svn: 107658
-
Dan Gohman authored
the pseudo instruction is not at the end of the block. llvm-svn: 107655
-
Eric Christopher authored
registers. Split out testcases per architecture and os now. Patch from Nelson Elhage. llvm-svn: 107640
-
- Jul 05, 2010
-
-
Chris Lattner authored
llvm-svn: 107615
-
Chris Lattner authored
llvm-svn: 107612
-
Jakob Stoklund Olesen authored
llvm-svn: 107602
-
- Jul 04, 2010
-
-
Evan Cheng authored
Infer alignments of fixed frame objects when they are constructed. This ensures remat'ed loads from fixed slots have the right alignments. llvm-svn: 107591
-
Bill Wendling authored
llvm-svn: 107581
-
- Jul 03, 2010
-
-
Eric Christopher authored
llvm-svn: 107556
-
Evan Cheng authored
Remove isSS argument from CreateFixedObject. Fixed objects cannot be spill slots so it's always false. llvm-svn: 107550
-
Jakob Stoklund Olesen authored
This code is transitional, it will soon be possible to eliminate isExtractSubreg, isInsertSubreg, and isMoveInstr in most places. llvm-svn: 107547
-
Eric Christopher authored
llvm-svn: 107537
-
Jakob Stoklund Olesen authored
The COPY instruction is intended to replace the target specific copy instructions for virtual registers as well as the EXTRACT_SUBREG and INSERT_SUBREG instructions in MachineFunctions. It won't we used in a selection DAG. COPY is lowered to native register copies by LowerSubregs. llvm-svn: 107529
-
- Jul 02, 2010
-
-
Jim Grosbach authored
new basic blocks, and if used as a function argument, that can cause call frame setup / destroy pairs to be split across a basic block boundary. That prevents us from doing a simple assertion to check that the pairs match and alloc/ dealloc the same amount of space. Modify the assertion to only check the amount allocated when there are matching pairs in the same basic block. rdar://8022442 llvm-svn: 107517
-
Evan Cheng authored
- X86 unfolding should check if the instructions being unfolded has memoperands. If there is no memoperands, then it must assume conservative alignment. If this would introduce an expensive sse unaligned load / store, then unfoldMemoryOperand etc. should not unfold the instruction. llvm-svn: 107509
-
Dale Johannesen authored
PrologEpilog code, and use it to determine whether the asm forces stack alignment or not. gcc consistently does not do this for GCC-style asms; Apple gcc inconsistently sometimes does it for asm blocks. There is no convenient place to put a bit in either the SDNode or the MachineInstr form, so I've added an extra operand to each; unlovely, but it does allow for expansion for more bits, should we need it. PR 5125. Some existing testcases are affected. The operand lists of the SDNode and MachineInstr forms are indexed with awesome mnemonics, like "2"; I may fix this someday, but not now. I'm not making it any worse. If anyone is inspired I think you can find all the right places from this patch. llvm-svn: 107506
-
Jakob Stoklund Olesen authored
llvm-svn: 107505
-
Jakob Stoklund Olesen authored
llvm-svn: 107503
-
Jakob Stoklund Olesen authored
This allows us to recognize the common case where all uses could be rematerialized, and no stack slot allocation is necessary. If some values could be fully rematerialized, remove them from the live range before allocating a stack slot for the rest. llvm-svn: 107492
-
Jim Grosbach authored
llvm-svn: 107490
-
Jim Grosbach authored
llvm-svn: 107489
-
Dan Gohman authored
llvm-svn: 107451
-
Bill Wendling authored
will still be stripped by the linker when it generates the final image. llvm-svn: 107440
-
- Jul 01, 2010
-
-
Bill Wendling authored
Objective-C metadata types which should be marked as "weak", but which the linker will remove upon final linkage. However, this linkage isn't specific to Objective-C. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". Currently only supported on Darwin platforms. llvm-svn: 107433
-
Devang Patel authored
This is a regression caused by r106792 and caught by gdb testsuite. llvm-svn: 107430
-
Daniel Dunbar authored
llvm-svn: 107426
-
Daniel Dunbar authored
Spencer! llvm-svn: 107418
-
Dan Gohman authored
llvm-svn: 107393
-
Dan Gohman authored
doing the work manually. llvm-svn: 107384
-