- Jul 02, 2010
-
-
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
-
Dan Gohman authored
from a Value to a Type, because it doesn't actually care about the Value. llvm-svn: 107383
-
Dan Gohman authored
llvm-svn: 107381
-
Dan Gohman authored
available in a register. This is pretty primitive, but it reduces the number of instructions in common testcases by 4%. llvm-svn: 107380
-
Dan Gohman authored
llvm-svn: 107377
-
Dan Gohman authored
SelectionDAGBuilder::getValue into a helper function, with fixes to use DenseMaps safely. llvm-svn: 107371
-
Dan Gohman authored
value if the search fails. llvm-svn: 107368
-
Mikhail Glushenkov authored
llvm-svn: 107360
-
Jakob Stoklund Olesen authored
llvm-svn: 107355
-
Jakob Stoklund Olesen authored
llvm-svn: 107351
-
Bill Wendling authored
correct catch-all value. This saves having to iterate through all of the selectors in the program again. llvm-svn: 107345
-
Jim Grosbach authored
structs. rdar://8145832 llvm-svn: 107332
-
- Jun 30, 2010
-
-
Jim Grosbach authored
llvm-svn: 107321
-
Jakob Stoklund Olesen authored
llvm-svn: 107307
-
Jakob Stoklund Olesen authored
LocalRewriter::runOnMachineFunction uses this information to mark dead spill slots. This means that InlineSpiller now also works for functions that spill. llvm-svn: 107302
-
Duncan Sands authored
this could break something (but doesn't seem to). llvm-svn: 107295
-
Gabor Greif authored
llvm-svn: 107282
-
Gabor Greif authored
llvm-svn: 107279
-
Gabor Greif authored
llvm-svn: 107276
-
John Mosby authored
llvm-svn: 107244
-
Devang Patel authored
llvm-svn: 107237
-
Jakob Stoklund Olesen authored
llvm-svn: 107234
-
Jakob Stoklund Olesen authored
llvm-svn: 107233
-
Devang Patel authored
Add variables into a scope before constructing scope DIE otherwise variables won't be included DIE tree. llvm-svn: 107228
-
Jakob Stoklund Olesen authored
InlineSpiller inserts loads and spills immediately instead of deferring to VirtRegMap. This is possible now because SlotIndexes allows instructions to be inserted and renumbered. This is work in progress, and is mostly a copy of TrivialSpiller so far. It works very well for functions that don't require spilling. llvm-svn: 107227
-
Bill Wendling authored
llvm-svn: 107215
-
Devang Patel authored
llvm-svn: 107214
-